Une machine de Turing neuronale (MTN) est un modèle de réseau neuronal récurrent représentant une machine de Turing. Cette approche a été publiée par Alex Graves et al. en 2014, combinant les capacités de correspondance floue des réseaux de neurones avec la puissance algorithmique des ordinateurs programmables. Les MTN sont conçues pour apprendre des algorithmes simples à partir d'exemples en utilisant une mémoire externe qui peut être lue et écrite pendant le calcul.
Une MTN se compose d'un contrôleur de réseau neuronal couplé à des ressources de mémoire externe, avec lesquelles il interagit via des mécanismes attentionnels. Les interactions avec la mémoire sont différentiables de bout en bout, ce qui permet de les optimiser par descente de gradient. Cette différentiabilité permet d'entraîner l'ensemble du système avec des techniques standard de apprentissage automatique, telles que la rétropropagation, sans nécessiter d'opérations discrètes ou non différentiables.
Architecture et fonctionnement
Le contrôleur d'une MTN est typiquement un réseau neuronal récurrent, comme un réseau à mémoire à long terme et à court terme (LSTM), qui reçoit des entrées et produit des sorties tout en émettant des commandes pour lire et écrire dans la mémoire externe. La mémoire est une matrice de valeurs réelles, et le contrôleur utilise des poids d'attention pour déterminer quels emplacements mémoire accéder. Ces poids sont calculés à l'aide d'un adressage basé sur le contenu, qui compare l'état actuel du contrôleur avec le contenu de la mémoire, et d'un adressage basé sur la localisation, qui permet des décalages d'attention pour soutenir des opérations comme l'itération.
Les opérations de lecture et d'écriture sont conçues pour être différentiables. Une opération de lecture produit une somme pondérée des lignes de mémoire, tandis qu'une opération d'écriture combine un vecteur d'effacement et un vecteur d'ajout, mis à l'échelle par les poids d'attention, pour mettre à jour les entrées de mémoire. Cette conception permet au réseau d'apprendre à stocker et à récupérer des informations d'une manière propice à l'optimisation par gradient.
Capacités d'apprentissage
Une MTN avec un contrôleur de réseau LSTM peut déduire des algorithmes simples tels que la copie, le tri et le rappel associatif à partir de seuls exemples. Dans les expériences, les MTN ont démontré leur capacité à apprendre ces tâches avec moins d'exemples d'entraînement que les réseaux récurrents traditionnels, et elles peuvent généraliser à des séquences d'entrée plus longues que celles vues pendant l'entraînement. Cette capacité provient de la mémoire externe explicite, qui fournit un support de stockage stable que le contrôleur peut apprendre à manipuler.
L'article original de Graves et ses collègues a montré que les MTN pouvaient apprendre à copier une séquence de longueur arbitraire, trier une liste de nombres et effectuer un rappel associatif, où le réseau récupère un élément stocké sur la base d'un indice partiel. Ces tâches mettent en évidence la capacité du modèle à combiner la reconnaissance de formes avec le raisonnement algorithmique.
Implémentations et défis
Les auteurs de l'article original sur les MTN n'ont pas publié leur code source. La première implémentation open-source stable a été publiée en 2018 lors de la 27e Conférence internationale sur les réseaux de neurones artificiels, recevant un prix du meilleur article. D'autres implémentations open-source existent, mais en 2018, elles ne sont pas suffisamment stables pour une utilisation en production. Les développeurs de ces implémentations ont signalé divers problèmes, notamment des gradients qui deviennent parfois NaN pendant l'entraînement pour des raisons inconnues, provoquant l'échec de l'entraînement ; une convergence lente ; ou un manque de rapports sur la vitesse d'apprentissage.
Ces défis découlent de la complexité de l'entraînement de réseaux récurrents avec une mémoire externe, car les mécanismes d'attention et les mises à jour de mémoire peuvent entraîner des gradients instables. L'implémentation primée de 2018 a résolu certains de ces problèmes en introduisant des raffinements architecturaux et des stratégies d'entraînement, mais l'adoption plus large reste limitée.
Influence et extensions
Les ordinateurs neuronaux différentiables sont une extension des machines de Turing neuronales, avec des mécanismes d'attention qui contrôlent où la mémoire est active, et améliorent les performances. Introduits par des chercheurs de Google DeepMind en 2016, les ordinateurs neuronaux différentiables étendent les MTN avec des schémas d'accès mémoire plus sophistiqués, tels que le chaînage temporel et l'allocation mémoire, leur permettant de résoudre des tâches comme le parcours de graphes et la réponse à des questions.
Le concept de MTN a également influencé la recherche en apprentissage profond et en intelligence artificielle plus largement, en particulier dans les domaines où les modèles doivent stocker et manipuler des informations structurées sur de longs horizons temporels. Bien que les modèles à grande échelle comme les transformeurs aient largement supplanté les MTN dans de nombreuses applications, l'idée de mémoire externe différentiable reste un concept fondamental dans l'étude des architectures neuronales qui combinent apprentissage et calcul symbolique.
Limites
Malgré leur attrait théorique, les MTN présentent des limites pratiques. L'entraînement peut être coûteux en calcul et instable, comme mentionné dans les défis d'implémentation. Les modèles ont également du mal avec de très grandes tailles de mémoire, car les mécanismes d'attention évoluent avec les dimensions de la mémoire. De plus, les MTN n'ont pas été largement adoptées dans les systèmes de production, la plupart des applications pratiques privilégiant des architectures plus faciles à entraîner et à mettre à l'échelle, comme les transformeurs utilisés dans les grands modèles de langage.
La recherche se poursuit sur l'amélioration des réseaux neuronaux à mémoire augmentée, avec des travaux récents explorant des approches hybrides qui combinent les forces des MTN avec des architectures modernes. Cependant, à la fin des années 2010, les MTN restent principalement un outil de recherche plutôt qu'une technologie déployée.
Références
Graves, A., Wayne, G., & Danihelka, I. (2014). Neural Turing Machines. arXiv preprint arXiv:1410.5401.
Collier, M., & Beel, J. (2018). Implementing Neural Turing Machines. In Proceedings of the 27th International Conference on Artificial Neural Networks.