Comment le nouvel «ordinateur neuronal différenciable» de Deepmind évoluerait-il?

12

Deepmind vient de publier un article sur un "ordinateur neuronal différenciable" , qui combine essentiellement un réseau neuronal avec une mémoire .

L'idée est d'apprendre au réseau neuronal à créer et à rappeler des mémoires explicites utiles pour une certaine tâche. Cela complète bien les capacités d'un réseau de neurones, car les NN stockent uniquement les connaissances implicitement dans les poids et les informations utilisées pour travailler sur une seule tâche ne sont stockées que dans l'activation du réseau et se dégradent rapidement plus vous ajoutez d'informations. (Les LSTM sont un essai pour ralentir cette dégradation des mémoires à court terme, mais cela se produit toujours.)

Maintenant, au lieu de conserver les informations nécessaires dans l'activation, ils conservent probablement les adresses des emplacements de mémoire pour des informations spécifiques dans l'activation, de sorte que celles-ci devraient également être sujettes à dégradation. Ma question est de savoir pourquoi cette approche devrait évoluer. Un nombre un peu plus élevé d'informations spécifiques à une tâche ne devrait-il pas à nouveau submerger la capacité du réseau à conserver les adresses de tous les emplacements de mémoire appropriés lors de son activation?

BlindKungFuMaster
la source

Réponses:

3

L'examen de l'architecture du DNC montre en effet de nombreuses similitudes avec le LSTM . Considérez le diagramme de l'article DeepMind auquel vous avez lié:

Architecture DeepMind DNC

Comparez cela à l'architecture LSTM (crédit à ananth sur SlideShare):

entrez la description de l'image ici

Il y a quelques analogues proches ici:

  • Tout comme le LSTM, le DNC effectuera une conversion de l' entrée en vecteurs d'état de taille fixe ( h et c dans le LSTM)
  • De même, le DNC effectuera une conversion de ces vecteurs d'état de taille fixe en sortie potentiellement de longueur arbitraire (dans le LSTM, nous échantillonnons à plusieurs reprises de notre modèle jusqu'à ce que nous soyons satisfaits / le modèle indique que nous avons terminé)
  • Les portes d’ oubli et d’ entrée du LSTM représentent l’ opération d’ écriture dans le DNC (l’oubli consiste essentiellement à mettre à zéro ou partiellement à zéro la mémoire)
  • La porte de sortie du LSTM représente l' opération de lecture dans le DNC

Cependant, le DNC est certainement plus qu'un LSTM. De toute évidence, il utilise un état plus grand qui est discrétisé (adressable) en morceaux; cela lui permet de rendre la porte d'oubli du LSTM plus binaire. J'entends par là que l'état n'est pas nécessairement érodé par une fraction à chaque pas de temps, alors que dans le LSTM (avec la fonction d'activation sigmoïde), il l'est nécessairement. Cela pourrait réduire le problème d'oubli catastrophique que vous avez mentionné et ainsi mieux évoluer.

Le DNC est également nouveau dans les liens qu'il utilise entre la mémoire. Cependant, cela pourrait être une amélioration plus marginale du LSTM qu'il n'y paraît si nous ré-imaginons le LSTM avec des réseaux neuronaux complets pour chaque porte au lieu d'une seule couche avec une fonction d'activation (appelons cela un super-LSTM); dans ce cas, nous pouvons réellement apprendre toute relation entre deux emplacements en mémoire avec un réseau suffisamment puissant. Bien que je ne connaisse pas les détails des liens suggérés par DeepMind, ils impliquent dans l'article qu'ils apprennent tout simplement en rétropropagantant des gradients comme un réseau neuronal régulier. Par conséquent, quelle que soit la relation qu'ils codent dans leurs liens, cela devrait théoriquement être apprenable par un réseau de neurones, et donc un «super-LSTM» suffisamment puissant devrait être capable de le capturer.

Cela étant dit , il est souvent le cas en apprentissage profond que deux modèles ayant la même capacité théorique d'expressivité fonctionnent très différemment dans la pratique. Par exemple, considérons qu'un réseau récurrent peut être représenté comme un énorme réseau à action directe si nous le déroulons. De même, le réseau convolutionnel n'est pas meilleur qu'un réseau neuronal vanille car il a une capacité supplémentaire d'expressivité; en fait, ce sont les contraintes imposées à ses poids qui le rendent plus efficace. Ainsi, comparer l'expressivité de deux modèles n'est pas nécessairement une comparaison équitable de leurs performances dans la pratique, ni une projection précise de la façon dont ils évolueront.

Une question que j'ai sur le DNC est ce qui se passe quand il manque de mémoire. Lorsqu'un ordinateur classique manque de mémoire et qu'un autre bloc de mémoire est demandé, les programmes se bloquent (au mieux). Je suis curieux de voir comment DeepMind prévoit de résoudre ce problème. Je suppose qu'il s'appuiera sur une cannibalisation intelligente de la mémoire actuellement utilisée. Dans un certain sens, les ordinateurs le font actuellement lorsqu'un système d'exploitation demande que les applications libèrent de la mémoire non critique si la pression de la mémoire atteint un certain seuil.

eric.mitchell
la source