Notas de lectura de Huashu (7) -optimización en el modelo de profundidad

Resumen de todas las notas: Libro de flores de "aprendizaje profundo" - Resumen de notas de lectura

Descarga gratuita de PDF de "Deep Learning" : "Deep Learning"

1. ¿Cuál es la diferencia entre el aprendizaje y la optimización pura?

En la mayoría de los problemas de aprendizaje automático, nos centramos en determinadas métricas de rendimiento PPP , que se define en el equipo de prueba y puede ser irresoluble. Por lo tanto, solo optimizamos indirectamente elPPP . Esperamos que al reducir la función de costoJ (θ) J (θ)J ( θ ) para aumentarPPP . Esto es diferente de la optimización pura, que minimiza el objetivoJJJ en sí.

  • Minimización del riesgo empírico E (x, y) ∼ p ^ datos [L (f (x; θ), y)] = 1 m ∑ i = 1 m L (f (x (i); θ), y (i) ) E _ {(x, y) \ sim \ hat p_ {datos}} [L (f (x; \ theta), y)] = \ frac1m \ sum_ {i = 1} ^ mL (f (x ^ {( i)}; \ theta), y ^ {(i)})mi(x,y)pags^d un t una[ L ( f ( x ;θ ) ,y)]=metro1i = 1mL ( f ( x( i ) ;θ ) ,y( i ) )Minimizar el riesgo empírico puede conducir fácilmente a un sobreajuste. Los modelos de gran volumen simplemente recordarán el conjunto de entrenamiento. En muchos casos, minimizar el riesgo empírico no es realmente factible.
  • Función de pérdida de proxy y terminación anticipada El
    algoritmo de entrenamiento generalmente no se detiene en el mínimo local. Por el contrario, el aprendizaje automático generalmente optimiza la función de pérdida de proxy, pero se detiene cuando se cumple la condición de convergencia basada en la terminación anticipada.
  • Algoritmo por lotes y algoritmo por mini lotes

2. Desafíos en la optimización de redes neuronales

La optimización suele ser una tarea extremadamente difícil. El aprendizaje automático tradicional diseñará cuidadosamente la función objetivo y las restricciones para garantizar que el problema de optimización sea convexo, evitando así la complejidad de los problemas generales de optimización. Al entrenar redes neuronales, definitivamente nos encontraremos con situaciones generales no convexas. Incluso la optimización convexa no está exenta de problemas.

  • Enfermedad (el método de Newton necesita muchos cambios cuando se aplica a redes neuronales)
  • Mínimo local
  • Mesetas, puntos de silla y otras áreas planas (en los puntos de silla, la matriz de Hesse tiene valores propios positivos y negativos)
  • Explosión de acantilado y gradiente
  • Dependencia a largo plazo
  • Gradiente inexacto
  • Débil correspondencia entre la estructura local y global
  • Limitaciones teóricas de la optimización (cualquier algoritmo de optimización tiene limitaciones de rendimiento)

Tres, el algoritmo básico

  • Descenso de gradiente estocástico
    Tome m muestras de lotes pequeños (independientes e idénticamente distribuidos) de acuerdo con la distribución de generación de datos y, al calcular su media de gradiente, podemos obtener una estimación insesgada del gradiente.
  • Momentum Los
    métodos Momentum están diseñados para acelerar el aprendizaje, especialmente cuando se trata de altas curvaturas, gradientes pequeños pero consistentes o gradientes ruidosos. El algoritmo de impulso acumula la media móvil anterior de la caída exponencial del gradiente y continúa moviéndose en esa dirección.
  • El impulso de Nesterov
    reduce la tasa de convergencia de errores adicionales (después de k pasos, 1 k → 1 k 2 \ frac1k \ rightarrow \ frac1 {k ^ 2}k1k21), pero en el caso de gradientes estocásticos, el impulso de Nesterov no mejora la tasa de convergencia.

Cuatro, estrategia de inicialización de parámetros

El entrenamiento de un modelo profundo es un problema suficientemente difícil que la mayoría de los algoritmos se ven muy afectados por las opciones de inicialización.

Las estrategias de inicialización modernas son simples y heurísticas. Establecer una estrategia de inicialización mejorada es una tarea difícil porque la optimización de la red neuronal aún no se comprende bien.

En circunstancias normales, podemos establecer una constante de selección heurística para el sesgo de cada unidad y solo inicializar el peso de forma aleatoria. Los parámetros adicionales (como los que se utilizan para codificar la varianza de las condiciones de predicción) generalmente se establecen como constantes seleccionadas heurísticamente como el sesgo.

Cinco, algoritmo de tasa de aprendizaje adaptativo

La tasa de aprendizaje es uno de los hiperparámetros que es difícil de establecer porque tiene un impacto significativo en el rendimiento del modelo. El algoritmo Momentum puede aliviar estos problemas hasta cierto punto, pero el precio de hacerlo es la introducción de otro hiperparámetro.

  • AdaGrad se
    adapta de forma independiente a la tasa de aprendizaje de todos los parámetros del modelo, escalando cada parámetro inversamente a la raíz cuadrada de la suma de todos sus valores cuadrados del historial de gradientes. Los parámetros con la mayor pérdida de derivadas parciales tienen una tasa de aprendizaje que disminuye correspondientemente rápidamente, mientras que los parámetros con pequeñas derivadas parciales tienen una disminución relativamente pequeña en la tasa de aprendizaje.
  • RMSProp
    modificó AdaGrad para lograr mejores resultados en configuraciones no convexas, cambiando la acumulación de gradiente a una media móvil ponderada exponencialmente.
  • El
    impulso de Adam se incorpora directamente a la estimación del primer momento del gradiente (ponderado exponencialmente). La forma más intuitiva de agregar impulso a RMSProp es aplicar impulso al gradiente escalado.

Seis método de aproximación de segundo orden

  • La
    complejidad del método de Newton es O (k 3) O (k ^ 3)O ( k3 )
  • Gradiente conjugado
  • BFGS

Siete, estrategias de optimización y meta métodos

  • Estandarización por lotes: De hecho, no se trata de un algoritmo de optimización, sino de un método de reparametrización adaptativa, intentando solucionar la dificultad de entrenar modelos muy profundos.

  • Coordinar hacia abajo: Optimice una o un bloque de coordenadas a la vez.

  • Promedio de Polyak: El algoritmo de optimización promedio visita varios puntos de la trayectoria en el espacio de parámetros.

  • Entrenamiento previo supervisado: antes de entrenar el modelo objetivo para resolver el problema objetivo, entrene un modelo simple para resolver el problema simplificado

  • Diseña un modelo que ayude a optimizar

  • Método de extensión: utilizado para superar el problema de los mínimos locales.

  • Aprendizaje del curso: se refleja en el entrenamiento de redes neuronales recurrentes para capturar la dependencia a largo plazo

El portal del próximo capítulo: notas de lectura de Huashu (8) -red evolutiva

Supongo que te gusta

Origin blog.csdn.net/qq_41485273/article/details/112912765
Recomendado
Clasificación