¿Qué significa esto exactamente, “Cambiar los puntos de inicialización durante el entrenamiento” para el aprendizaje profundo?

Cambiar su punto de inicialización significa cambiar la matriz de ‘Peso’ que inicializa de antemano para que la red neuronal se propague hacia adelante. Una mala elección de la matriz de peso inicializada puede causar problemas de desaparición o explosión de gradientes. El problema de gradiente explosivo ocurre cuando tiene una red neuronal profunda con un valor de matriz de peso inicializado mayor que, digamos, 1.5, lo que hace que el resultado predicho sea muy grande. Cuando ocurre lo contrario, es decir, sus valores iniciales de la matriz de peso están muy cerca de 0, hace que la salida predicha se desvanezca (acercarse a 0) y esto se llama un problema de gradiente de fuga.

Solución lógica :

Considere el ejemplo de una sola neurona con función de activación sigmoidea que tiene n unidades de entrada.

Tendremos z = w1x1 + w2x2 +… + wnxn (ignorando el término de sesgo)

Supongamos que el valor de n es grande: hay muchas entradas para esta neurona individual. Por lo tanto, desearíamos que el valor de wi sea pequeño para que z no explote (similar a la analogía anterior).

Como a = g (z), lo mismo sigue para ‘a’ también.

Para lograr esto, multiplicamos el valor inicializado al azar por la raíz cuadrada de (1 / n [l-1]), donde n [l-1] es el número de unidades ocultas en la capa 1-n.

Intenta esto :

Inicialice los pesos de una distribución normal gaussiana con media 0 y st.dev. 1 de la forma requerida. Y luego multiplique como se indicó anteriormente.

(Código de Python usando numpy)

W [lth layer] = np.random.randn (shape) * np.sqrt (1 / n [l-1 th layer])

Si está utilizando una función de activación ReLU:

W [lth layer] = np.random.randn (shape) * np.sqrt (2 / n [l-1 th layer])

Lea también : método de inicialización de Xavier

More Interesting

¿Cuál es el significado de la investigación de OpenAI sobre estrategias de evolución y el hallazgo de que rivalizan con el desempeño del aprendizaje por refuerzo?

¿Por qué se usa tanto el aumento de gradiente con los árboles de decisión, en lugar de con otros clasificadores?

¿Cómo una red neuronal artificial calcula su salida?

¿Cuál es el punto de ejecutar un modelo de regresión logística antes de un árbol de decisión?

¿Cuál es una explicación intuitiva para el equilibrio de sesgo-varianza?

¿Cuál es la diferencia entre la deserción y la normalización de lotes?

¿Cómo deciden las personas en aprendizaje profundo qué artículos no leer?

¿Qué es la entropía cruzada en palabras fáciles?

¿Cuál es la mejor manera de aprender la optimización numérica para el aprendizaje automático y el aprendizaje profundo?

¿Qué parámetros en los datos de entrenamiento / prueba deben considerarse para decidir la elección de un método de clasificación de aprendizaje automático (fuera de SVM, red neuronal, regresión logística, etc.)?

¿La 'automatización' y la 'inteligencia artificial' conducirán al desempleo crónico y al colapso económico?

¿Cuáles son algunos modelos matemáticos o técnicas estadísticas que son útiles para los científicos que trabajan con grandes datos?

¿Cuáles son algunos buenos proyectos de aprendizaje automático que implican el uso de estructuras de datos y tienen aplicaciones de la vida real y se pueden hacer en 2-3 semanas?

¿Cómo reconocemos a un usuario en particular en un registro de chat de Internet multiusuario largo?

¿Por qué y cuándo subestima 'varianza de Bayes variacional de campo'?