El principal problema con los métodos de segundo orden en el aprendizaje profundo es que el Hessian es bastante grande. Si tiene una matriz de peso de 256 x 256, entonces tiene una arpillera de 2 ^ 64 x 2 ^ 64. De ese modo, superará rápidamente la capacidad de memoria de su computadora, incluso con cientos de GB de RAM. Por supuesto, podría restringirse a redes pequeñas, pero eso frustra todo el punto. ¿Por qué tener un método poderoso de segundo orden que solo funciona para redes con menos poder predictivo?
Entonces podemos abandonar la idea de un hessiano exacto y buscar aproximaciones con un número razonable de parámetros. Para eso, realmente deberías leer los artículos de investigación de Yann Ollivier. En particular, estoy pensando en un artículo que escribió sobre el aprendizaje de la curvatura riemanniana de la variedad de datos utilizando tales métodos aproximados (métricas riemannianas para redes neuronales I: redes de avance | Información e inferencia: una revista del IMA | Oxford Academic). Pero realmente debería revisar todo su trabajo, especialmente su trabajo en Gradientes Naturales, que tienen una estrecha relación con la matriz de covarianza de parámetros que mencionó.
En la práctica, las personas usan métodos como RMSProp. RMSProp mantiene un promedio móvil del gradiente y lo divide por él. Este método: RMSprop pierde ante SMORMS3 va aún más lejos y mantiene el promedio móvil Y la varianza móvil. El gradiente por parámetro luego se multiplica por la razón del promedio al cuadrado sobre la varianza.
Por lo tanto, este SMORMS3 no está lejos de lo que está buscando. En términos generales, utiliza la autovarianza relativa del gradiente como factor de escala para un método de segundo orden. La varianza del gradiente representa la diagonal de la arpillera. Estas relaciones probablemente podrían hacerse más explícitas, pero en términos prácticos, funciona bien.
- ¿Podemos obtener un rendimiento equivalente de C ++ para operaciones de álgebra lineal en Python usando algunas bibliotecas?
- ¿Cuáles son algunos buenos libros para comprender PDE, vectores y álgebra lineal para principiantes?
- ¿Cuál es un ejemplo de un espacio vectorial para el que no existe un producto interno?
- Si a = b = | a – b |, ¿cuál es el ángulo entre un vector y un vector ab?
- Cómo resolver el siguiente sistema de ecuaciones usando matrices
En cuanto a la covarianza completa de todos los parámetros, es prácticamente incuestionable como el Hessian.