[Principio de red neuronal] ¿Cómo actualiza el método de descenso de gradiente los pesos y sesgos?
La función de pérdida suele ser una función multivariada y sus variables independientes incluyen todos los valores W y todos los desplazamientos B contenidos en la red. En algunos lugares, también se le llama función de costo o función de valor. Aquí solo presentamos la función de pérdida de error cuadrático medio (MSE):
El gradiente de una función multivariada es similar a la derivada de una función unidimensional: encuentre las derivadas parciales de primer orden de cada variable de la función multivariada a su vez, y luego combine los valores de la derivada parcial en un vector de columna unidimensional para obtener el gradiente de una función multivariada. La función de pérdida suele ser una función multivariada y su gradiente es el siguiente:
Para estructuras de redes neuronales, si tiene preguntas sobre convenciones simbólicas, puede consultar mi artículo: Principios de redes neuronales y estructuras de redes neuronales; & Convenciones simbólicas
Dirección negativa del gradiente: debido a que el gradiente es un vector, tiene direccionalidad. La reducción aquí se refiere a la reducción del valor de la función de pérdida.
Entonces, ¿por qué el valor de la función de pérdida disminuye más rápidamente en la dirección negativa del gradiente? Aquí utilizamos principalmente la expansión de Taylor de primer orden de funciones multivariadas (la forma de primer orden es relativamente simple) y la fórmula del producto escalar vectorial para demostrar:
Solo el peso del parámetro de red de capa L (matriz) y sesgo (vector) se dan aquí La fórmula de actualización de descenso de gradiente, las fórmulas de actualización de otros parámetros de red de capas se pueden obtener utilizando el método amp amp; Si tiene preguntas sobre los símbolos, consulte: Principios de redes neuronales, Estructura de redes neuronales;
Con la fórmula de actualización de los parámetros de red (vector/matriz) de cada capa, ¿cómo resolver el gradiente de la función de pérdida para cada parámetro? De hecho, dado que las redes neuronales suelen tener muchos parámetros (pesos w y compensaciones b), es extremadamente difícil resolver directamente el gradiente de la función de pérdida con respecto a estos parámetros. Por lo tanto, en el entrenamiento real de la red, generalmente utilizamos la propagación de errores inversa, es decir, el algoritmo BP, que utiliza inteligentemente el residuo entre el valor predicho y el valor de la etiqueta para resolver inversamente la función de pérdida para calcular los parámetros de red de cada uno. capa desde la capa de salida hasta la capa de entrada.