¿Cómo sería la nueva escala de "computadora neural diferenciable" de Deepmind?

12

Deepmind acaba de publicar un artículo sobre una "computadora neuronal diferenciable" , que básicamente combina una red neuronal con una memoria .

La idea es enseñar a la red neuronal a crear y recordar recuerdos explícitos útiles para una determinada tarea. Esto complementa bien las capacidades de una red neuronal, porque los NN solo almacenan el conocimiento implícitamente en los pesos y la información utilizada para trabajar en una sola tarea solo se almacena en la activación de la red y se degrada rápidamente a medida que se agrega más información. (Los LSTM son un intento de desacelerar esta degradación de los recuerdos a corto plazo, pero aún así sucede).

Ahora, en lugar de mantener la información necesaria en la activación, presumiblemente conservan las direcciones de las ranuras de memoria para información específica en la activación, por lo que también deberían estar sujetas a degradación. Mi pregunta es por qué este enfoque debería escalar. ¿No debería un número algo mayor de información específica de tareas abrumar una vez más la capacidad de las redes de mantener las direcciones de todas las ranuras de memoria apropiadas en su activación?

BlindKungFuMaster
fuente

Respuestas:

3

Examinar la arquitectura del DNC muestra muchas similitudes con el LSTM . Considere el diagrama en el artículo de DeepMind al que se vinculó:

Arquitectura DeepMind DNC

Compare esto con la arquitectura LSTM (crédito a ananth en SlideShare):

ingrese la descripción de la imagen aquí

Aquí hay algunos análogos cercanos:

  • Al igual que el LSTM, el DNC realizará alguna conversión de entrada a vectores de estado de tamaño fijo ( h y c en el LSTM)
  • Del mismo modo, el DNC realizará alguna conversión de estos vectores de estado de tamaño fijo a una salida potencialmente arbitrariamente alargada (en el LSTM tomamos muestras de nuestro modelo repetidamente hasta que estemos satisfechos / el modelo indica que hemos terminado)
  • Las puertas de olvido y entrada del LSTM representan la operación de escritura en el DNC ('olvidar' es esencialmente solo poner a cero o parcialmente memoria a cero)
  • La puerta de salida del LSTM representa la operación de lectura en el DNC

Sin embargo, el DNC es definitivamente más que un LSTM. Lo más obvio es que utiliza un estado más grande que está discretizado (direccionable) en trozos; esto le permite hacer que la puerta olvidada del LSTM sea más binaria. Con esto quiero decir que el estado no es necesariamente erosionado por alguna fracción en cada paso de tiempo, mientras que en el LSTM (con la función de activación sigmoidea) necesariamente lo es. Esto podría reducir el problema del olvido catastrófico que mencionó y, por lo tanto, escalar mejor.

El DNC también es novedoso en los enlaces que utiliza entre la memoria. Sin embargo, esto podría ser una mejora más marginal en el LSTM de lo que parece si re-imaginamos el LSTM con redes neuronales completas para cada puerta en lugar de una sola capa con una función de activación (llame a esto un super-LSTM); en este caso, podemos aprender cualquier relación entre dos ranuras en la memoria con una red lo suficientemente potente. Si bien no conozco los detalles de los enlaces que sugiere DeepMind, implican en el artículo que están aprendiendo todo simplemente propagando hacia atrás los gradientes como una red neuronal normal. Por lo tanto, cualquier relación que estén codificando en sus enlaces debería ser teóricamente aprendeble por una red neuronal, por lo que un 'super-LSTM' suficientemente poderoso debería ser capaz de capturarlo.

Dicho todo esto , a menudo ocurre en el aprendizaje profundo que dos modelos con la misma capacidad teórica de expresividad tienen un desempeño muy diferente en la práctica. Por ejemplo, considere que una red recurrente se puede representar como una gran red de retroalimentación si simplemente la desenrollamos. Del mismo modo, la red convolucional no es mejor que una red neuronal vainilla porque tiene una capacidad extra de expresividad; de hecho, son las restricciones impuestas a sus pesos lo que lo hace más efectivo. Por lo tanto, comparar la expresividad de dos modelos no es necesariamente una comparación justa de su desempeño en la práctica, ni una proyección precisa de qué tan bien se escalarán.

Una pregunta que tengo sobre el DNC es qué sucede cuando se queda sin memoria. Cuando una computadora clásica se queda sin memoria y se solicita otro bloque de memoria, los programas comienzan a fallar (en el mejor de los casos). Tengo curiosidad por ver cómo DeepMind planea abordar esto. Supongo que dependerá de una canibalización inteligente de la memoria actualmente en uso. En cierto sentido, las computadoras actualmente hacen esto cuando un sistema operativo solicita que las aplicaciones liberen memoria no crítica si la presión de la memoria alcanza un cierto umbral.

eric.mitchell
fuente