Pour s'autocorriger, les LLM ont-ils besoin d'un compagnon ?
Publié par Clément Bohic le | Mis à jour le
Des chercheurs proposent d'améliorer les capacités d'autocorrection des LLM par une méthode de backtracking fondée sur un modèle auxiliaire.
Pour améliorer les capacités d'autocorrection des LLM, le retour sur trace (backtracking) peut-il être une alternative à l'apprentissage par renforcement ? Des chercheurs de l'université de Cambridge et de Google Research se sont penchés sur le sujet.
À la racine de leur démarche, une étude démontrant que les mécanismes d'autocorrection des erreurs de logique ou de raisonnement a tendance à dégrader la qualité des réponses des LLM.
La solution proposée repose sur un modèle auxiliaire « léger » de type classifieur. Celui-ci détecte les erreurs dans les traces et alimente le LLM en conséquence, sans modification des poids (il indique en l'occurrence l'emplacement des erreurs).
La démonstration exploite des prompts de type chain-of-thought. C'est-à-dire contenant une série d'étapes de raisonnement. Les chercheurs ont constitué un jeu de données BIG-Bench Mistake à partir de traces de ce type, générées avec PaLM 2-L-Unicorn et annotées avec une information : l'emplacement de la première erreur s'il en existe.
Repérer les erreurs, pas évident pour les LLM
Les traces couvrent cinq tâches, du tri de mots au langage de Dyck. Pour quatre de ces tâches, l'annotation a été confiée à des humains, sur un échantillon de 300 traces - dont certaines correctes mais qui contiennent tout de même des erreurs de logique.
Pour la tâche relative au langage de Dyck, l'annotation a été essentiellement automatisée, de par le peu de variations dans le phrasé des réponses.
Ce dataset a d'abord servi à illustrer les difficultés des LLM à repérer les erreurs. Les modèles testés l'ont été avec les mêmes prompts (en 3-shot ; voir ici). Et selon trois méthodes :
- Niveau trace (le modèle doit détecter, à partir de l'intégralité de la trace, si celle-ci est incorrecte)
- Niveau étape (le modèle doit détecter la présence d'erreurs étape par étape, sans connaître le résultats des étapes précédentes)
- Au niveau étape en mode chain-of-thought (le modèle ne doit pas seulement déterminer s'il existe une erreur ; il doit vérifier chaque étape par une série de raisonnements)
Le plus performant des modèles testés (GPT-4) plafonne sous les 53 % de précision, au niveau étape. C'est dans la lignée des résultats de l'étude prise pour référence.
Sur les traces sans erreurs, la précision diminue avec la complexité du prompt. Cela tient possiblement au nombre d'outputs que génère le modèle.
Un modèle auxiliaire « portable »...
Pour mettre en oeuvre leur approche de backtracking, les chercheurs ont défini le processus suivant :
1) Le modèle principal génère une trace (à température 0 = comportement déterministe).
2) Le modèle auxiliaire détecte, le cas échéant, l'emplacement de la première erreur.
3) S'il n'y a pas d'erreur, on passe à la trace suivante. Sinon, on soumet à nouveau la tâche au modèle principal, mais à température 1 (comportement aléatoire) et en coupant la trace à l'étape précédant celle qui contient l'erreur.
4) On laisse le modèle générer 8 réponses, puis on écarte celles correspondant à ce qu'on a déjà identifié comme une erreur. Des options restantes, on garde celle à la plus haute probabilité logarithmique.
5) L'étape problématique ainsi régénérée, on poursuit la création de la trace à température 0.
Une telle méthode a l'avantage de ne pas dépendre d'oracles ou de tout feed-back externe. Elle n'exige par ailleurs pas de format spécifique de prompt. Le budget calcul est en outre réduit, puisqu'on réutilise les étapes dont la logique a été précédemment validée. Les chercheurs mettent aussi en avant une amélioration de la qualité des étapes intermédiaires. Le tout sans avoir à réentraîner le modèle principal... et donc en créant un modèle auxiliaire actualisable indépendamment, voire portable entre LLM.
... et capable de généraliser
Les chercheurs ont d'abord testé leur méthode en communiquant aux LLM des annotations d'emplacement d'erreurs issues du dataset. Ils en démontrent l'efficacité en comparant avec un « faux oracle » transmettant un emplacement aléatoire. Bilan : les gains sont plus importants que les pertes, au sens où le nombre de réponses devenues correctes après backtracking est supérieur au nombre de réponses devenues incorrectes.
La coche indique les traces qui étaient correctes à l'origine. La croix indique celles qui étaient incorrectes. Le benchmark réunit toutes celles, correctes ou incorrectes, où se trouve au moins une erreur.
Une deuxième évaluation a intégré le modèle auxiliaire. Elle a permis de déterminer qu'un niveau de précision dudit modèle entre 60 et 70 % peut suffire à obtenir davantage de gains que de pertes.
Le test repose sur une simulation du modèle auxiliaire. Pour un niveau de précision de x %, on utilise l'annotation issue du dataset x % du temps. Le reste du temps, on randomise.
Sur la plupart des tâches, le modèle auxiliaire se révèle capable de traiter des choses pour lesquelles on ne l'a pas entraîné. Il existe donc une forme de transfert des connaissances.
Illustration principale ©Siqarus - Adobe Stock