Une nouvelle technique améliore les capacités de raisonnement des grands modèles de langage

Une nouvelle technique améliore les capacités de raisonnement des grands modèles de langage

Les grands modèles linguistiques comme ceux qui alimentent ChatGPT ont montré des performances impressionnantes dans des tâches telles que la rédaction de notes juridiques, l'analyse du sentiment des avis clients ou la traduction de documents dans différentes langues.

Ces modèles d’apprentissage automatique utilisent généralement uniquement le langage naturel pour traiter les informations et répondre aux requêtes, ce qui peut rendre difficile l’exécution de tâches nécessitant un raisonnement numérique ou symbolique.

Par exemple, un grand modèle linguistique pourrait être capable de mémoriser et de réciter une liste des récents présidents américains et de leurs anniversaires, mais ce même modèle pourrait échouer si on lui posait la question : « Quels présidents américains élus après 1950 sont nés un mercredi ? » (La réponse est Jimmy Carter.)

Des chercheurs du MIT et d'ailleurs ont proposé une nouvelle technique qui permet à de grands modèles de langage de résoudre des tâches de langage naturel, de mathématiques et d'analyse de données, ainsi que de raisonnement symbolique en générant des programmes. La recherche est publiée sur le arXiv serveur de préimpression.

Leur approche, appelée programmes intégrés en langage naturel (NLEP), consiste à inciter un modèle de langage à créer et à exécuter un programme Python pour résoudre la requête d'un utilisateur, puis à générer la solution en langage naturel.

Ils ont découvert que les NLEP permettaient à de grands modèles de langage d’atteindre une plus grande précision sur un large éventail de tâches de raisonnement. L'approche est également généralisable, ce qui signifie qu'une invite NLEP peut être réutilisée pour plusieurs tâches.

Les NLEP améliorent également la transparence, puisqu'un utilisateur peut vérifier le programme pour voir exactement comment le modèle a raisonné sur la requête et corriger le programme si le modèle a donné une mauvaise réponse.

« Nous voulons que l'IA effectue un raisonnement complexe d'une manière transparente et fiable. Il reste encore beaucoup de chemin à parcourir, mais nous avons montré que combiner les capacités de programmation et de langage naturel dans de grands modèles de langage est une première étape potentielle très intéressante. vers un avenir où les gens peuvent pleinement comprendre et faire confiance à ce qui se passe dans leur modèle d'IA », déclare Hongyin Luo Ph.D. postdoctorant au MIT et co-auteur principal d'un article sur les NLEP.

La recherche sera présentée lors de la conférence annuelle de la section nord-américaine de l'Association for Computational Linguistics.

Résolution de problèmes avec des programmes

De nombreux grands modèles de langage populaires fonctionnent en prédisant le prochain mot, ou jeton, à partir d'une entrée en langage naturel. Bien que des modèles tels que GPT-4 puissent être utilisés pour écrire des programmes, ils intègrent ces programmes dans un langage naturel, ce qui peut entraîner des erreurs dans le raisonnement ou les résultats du programme.

Avec les NLEP, les chercheurs du MIT ont adopté l’approche inverse. Ils invitent le modèle à générer un programme étape par étape entièrement en code Python, puis à intégrer le langage naturel nécessaire dans le programme.

Un NLEP est un modèle de résolution de problèmes en quatre étapes. Tout d'abord, le modèle appelle les packages ou fonctions nécessaires dont il aura besoin pour résoudre la tâche. La deuxième étape consiste à importer des représentations en langage naturel des connaissances requises par la tâche (comme une liste des anniversaires des présidents américains). Pour la troisième étape, le modèle implémente une fonction qui calcule la réponse. Et pour la dernière étape, le modèle génère le résultat sous forme de ligne de langage naturel avec une visualisation automatique des données, si nécessaire.

« C'est comme une calculatrice numérique qui vous donne toujours le résultat de calcul correct tant que le programme est correct », explique Luo.

L'utilisateur peut facilement étudier le programme et corriger directement les erreurs dans le code plutôt que de devoir réexécuter l'intégralité du modèle pour résoudre les problèmes.

Cette approche offre également une plus grande efficacité que certaines autres méthodes. Si un utilisateur a de nombreuses questions similaires, il peut générer un programme principal, puis remplacer certaines variables sans avoir besoin d'exécuter le modèle à plusieurs reprises.

Pour inciter le modèle à générer un NLEP, les chercheurs lui donnent une instruction générale pour écrire un programme Python, fournissent deux exemples NLEP (un avec les mathématiques et l'autre avec le langage naturel) et une question de test.

« Habituellement, lorsque les gens effectuent ce type d'invites en quelques étapes, ils doivent toujours concevoir des invites pour chaque tâche. Nous avons constaté que nous pouvons avoir une seule invite pour de nombreuses tâches, car ce n'est pas une invite qui apprend aux LLM à résoudre un problème, mais une invite qui apprend aux LLM à résoudre de nombreux problèmes en écrivant un programme », explique Luo.

« Le fait que les modèles de langage raisonnent avec le code ouvre de nombreuses opportunités d'utilisation d'outils, de validation des résultats, de compréhension plus structurée des capacités et de la façon de penser du modèle, et bien plus encore », déclare Leonid Karlinsky, scientifique principal au MIT-IBM Watson AI Lab.

« Pas de magie ici »

Les NLEP ont atteint une précision supérieure à 90 % en invitant GPT-4 à résoudre une gamme de tâches de raisonnement symbolique, comme le suivi d'objets mélangés ou le jeu de 24, ainsi que des tâches de suivi d'instructions et de classification de texte. Les chercheurs ont découvert que les NLEP présentaient même une précision 30 % supérieure à celle des méthodes d’incitation spécifiques à une tâche. La méthode a également montré des améliorations par rapport aux LLM open source.

En plus d'améliorer la précision des grands modèles de langage, les NLEP pourraient également améliorer la confidentialité des données. Étant donné que les programmes NLEP sont exécutés localement, les données sensibles des utilisateurs n'ont pas besoin d'être envoyées à une entreprise comme OpenAI ou Google pour être traitées par un modèle.

De plus, les NLEP peuvent permettre aux petits modèles de langage de mieux fonctionner sans qu'il soit nécessaire de recycler un modèle pour une certaine tâche, ce qui peut être un processus coûteux.

« Il n'y a pas de magie ici. Nous n'avons pas de modèle de langage plus coûteux ou sophistiqué. Tout ce que nous faisons, c'est utiliser la génération de programmes au lieu de la génération de langage naturel, et nous pouvons l'améliorer considérablement », explique Luo.

Cependant, un NLEP repose sur la capacité de génération de programme du modèle, de sorte que la technique ne fonctionne pas aussi bien pour les modèles plus petits qui ont été formés sur des ensembles de données limités.

À l’avenir, les chercheurs prévoient d’étudier des méthodes qui pourraient permettre à des modèles de langage plus petits de générer des NLEP plus efficaces. De plus, ils souhaitent étudier l'impact des variations rapides sur les NLEP afin d'améliorer la robustesse des processus de raisonnement du modèle.

Cette histoire est republiée avec l'aimable autorisation de MIT News (web.mit.edu/newsoffice/), un site populaire qui couvre l'actualité de la recherche, de l'innovation et de l'enseignement du MIT.