El algoritmo de vigilia-sueño [1] es un algoritmo de aprendizaje no supervisado para modelos generativos profundos , especialmente máquinas de Helmholtz . [2] El algoritmo es similar al algoritmo de maximización de expectativas , [3] y optimiza la probabilidad del modelo para los datos observados. [4] El nombre del algoritmo deriva del uso de dos fases de aprendizaje, la fase de “vigilia” y la fase de “sueño”, que se realizan alternativamente. [1] Puede concebirse como un modelo para el aprendizaje en el cerebro, [5] pero también se está aplicando al aprendizaje automático . [6]
El objetivo del algoritmo de vigilia-sueño es encontrar una representación jerárquica de los datos observados. [7] En una representación gráfica del algoritmo, los datos se aplican al algoritmo en la parte inferior, mientras que las capas superiores forman gradualmente representaciones más abstractas. Entre cada par de capas hay dos conjuntos de ponderaciones: ponderaciones de reconocimiento, que definen cómo se infieren las representaciones a partir de los datos, y ponderaciones generativas, que definen cómo estas representaciones se relacionan con los datos. [8]
El entrenamiento consta de dos fases: la fase de "vigilia" y la fase de "sueño". Se ha demostrado que este algoritmo de aprendizaje es convergente. [3]
Las neuronas se activan mediante conexiones de reconocimiento (desde lo que sería entrada hasta lo que sería salida). Las conexiones generativas (que van de las salidas a las entradas) luego se modifican para aumentar la probabilidad de que recreen la actividad correcta en la capa inferior, más cercana a los datos reales de la entrada sensorial. [1]
El proceso se invierte en la fase de "sueño": las neuronas se activan mediante conexiones generativas mientras las conexiones de reconocimiento se modifican para aumentar la probabilidad de que recreen la actividad correcta en la capa superior, según los datos reales de la entrada sensorial. [1]
Dado que la red de reconocimiento tiene una flexibilidad limitada, es posible que no pueda aproximarse bien a la distribución posterior de las variables latentes. [6] Para aproximarse mejor a la distribución posterior, es posible emplear un muestreo de importancia , con la red de reconocimiento como distribución de propuesta. Esta aproximación mejorada de la distribución posterior también mejora el rendimiento general del modelo. [6]