Self-consistency prompting (FR)

From Systems analysis Wiki
Jump to navigation Jump to search

Le décodage par auto-cohérence (en anglais Self-Consistency Prompting, SC) est une méthode ou une stratégie de décodage en ingénierie des prompts, conçue pour améliorer la précision et la fiabilité des grands modèles de langage (LLM) lors de la résolution de problèmes nécessitant un raisonnement en plusieurs étapes, tels que les énigmes arithmétiques et logiques[1]. La méthode a été proposée par des chercheurs de Google Research en 2022 comme une amélioration de la technique de la « chaîne de pensée » (Chain-of-Thought, CoT).

L'idée principale est de ne pas se limiter à une seule inférence « gloutonne », mais plutôt de générer de multiples raisonnements différents pour la même question, puis de sélectionner la réponse finale qui apparaît le plus fréquemment parmi ces variantes. Cette approche repose sur un principe intuitif : si un modèle, en suivant différents chemins de raisonnement, arrive plusieurs fois au même résultat, alors ce résultat est très probablement correct[1].

Contexte et prérequis

La méthode de l'auto-cohérence (Self-Consistency) est une évolution directe de la technique de la chaîne de pensée (Chain-of-Thought, CoT). La technique CoT, proposée par Wei et al. (2022), a considérablement amélioré la capacité des LLM à résoudre des problèmes complexes en incitant le modèle à détailler explicitement les étapes de la solution[2]. Cependant, l'implémentation de base de la CoT utilise un « décodage glouton » (greedy decoding), où le jeton (token) le plus probable est sélectionné à chaque étape. Cela crée une limitation : si le modèle commet une erreur à un stade précoce, il ne peut pas s'écarter de cette trajectoire incorrecte pour la corriger. L'auto-cohérence a été proposée pour résoudre précisément ce problème[1].

Mécanisme de fonctionnement

L'algorithme d'auto-cohérence remplace l'approche gloutonne déterministe par une procédure d'« échantillonnage suivi d'une agrégation » et se compose des étapes suivantes[1] :

  1. Génération de plusieurs chemins de raisonnement : Au lieu d'une seule réponse, le modèle génère la solution à une même requête plusieurs fois (par exemple, jusqu'à 40 fois) en utilisant la méthode de la chaîne de pensée. Pour obtenir des chemins de raisonnement variés, des méthodes de décodage stochastiques sont utilisées, comme l'échantillonnage par température (avec un paramètre de température > 0).
  2. Agrégation et sélection de la réponse : Seules les réponses finales (par exemple, une valeur numérique) sont extraites de toutes les chaînes de raisonnement générées. Ensuite, la réponse la plus fréquente parmi celles-ci est sélectionnée. C'est cette réponse qui est fournie comme résultat final.

Cette approche imite le principe de l'« auto-ensembling », où de multiples sorties du même modèle sont utilisées pour augmenter la fiabilité et lisser les erreurs aléatoires[3].

Efficacité et résultats

Dans l'étude originale, l'auto-cohérence a démontré une augmentation significative de la précision sur plusieurs benchmarks populaires, en particulier pour les tâches nécessitant un raisonnement arithmétique et logique.

  • Sur le benchmark de problèmes mathématiques GSM8K, la précision du modèle PaLM-540B est passée de 56,6 % (avec CoT) à 74,4 % (avec l'auto-cohérence), soit une augmentation de 17,8 %.
  • Sur d'autres tâches arithmétiques comme SVAMP et AQuA, l'augmentation a été de +11,0 % et +12,2 % respectivement.
  • Pour les tâches nécessitant de la logique et du bon sens, comme StrategyQA, l'amélioration a été de +6,4 %[1].

L'application de l'auto-cohérence a permis d'établir de nouveaux records de performance (state-of-the-art) sur de nombreux benchmarks en utilisant de grands modèles tels que GPT-3 175B et PaLM 540B[1].

Avantages et limitations

Avantages

  • Amélioration de la précision : Améliore considérablement les résultats pour les tâches nécessitant un raisonnement complexe en plusieurs étapes.
  • Fiabilité : La méthode est plus robuste aux erreurs qui peuvent survenir dans une seule chaîne de raisonnement.
  • Simplicité de mise en œuvre : Ne nécessite pas d'entraînement supplémentaire ni de modification de l'architecture du modèle. La méthode peut être implémentée comme un simple « wrapper » autour d'un modèle existant.

Limitations

  • Coûts de calcul élevés : Le principal inconvénient est la nécessité de générer la réponse plusieurs fois (par exemple, 10, 20 ou 40 fois) pour une seule requête, ce qui augmente proportionnellement le coût et le temps d'inférence.
  • Applicabilité limitée : La méthode standard est plus efficace pour les tâches ayant un format de réponse clairement défini (par exemple, un nombre, « oui/non », une option dans une liste), où il est facile de procéder à un vote majoritaire. Elle est peu adaptée aux tâches de génération ouverte (rédaction d'essais, résumé), où les réponses sont uniques dans leur forme.
  • Risque d'erreur systématique : Si le modèle génère systématiquement des raisonnements incorrects qui convergent par hasard vers la même mauvaise réponse, l'auto-cohérence non seulement ne corrigera pas l'erreur, mais renforcera également la confiance en cette erreur.

Évolution de la méthode : Universal Self-Consistency

La limitation de la méthode de base pour les tâches à réponse libre a été abordée dans des recherches ultérieures. Fin 2023, un groupe de chercheurs de Google DeepMind a proposé l'approche Universal Self-Consistency (USC)[4].

Dans l'USC, au lieu d'un simple vote sur les réponses finales pour l'agrégation, le LLM lui-même est utilisé comme « juge ». Le modèle génère plusieurs solutions complètes, puis reçoit un nouveau prompt lui demandant de choisir parmi elles la « plus cohérente » ou la « meilleure en qualité ». Cette approche permet d'appliquer les principes d'auto-cohérence à des tâches dont le format de réponse est ouvert et créatif[5].

Liens externes

Bibliographie

  • Wang, X. et al. (2022). Self-Consistency Improves Chain of Thought Reasoning in Language Models. arXiv:2203.11171.
  • Wei, J. et al. (2022). Chain-of-Thought Prompting Elicits Reasoning in Large Language Models. arXiv:2201.11903.
  • Aggarwal, P. et al. (2023). Let’s Sample Step by Step: Adaptive-Consistency for Efficient Reasoning and Coding with LLMs. arXiv:2305.11860.
  • Chen, X. et al. (2023). Universal Self-Consistency with Large Language Models. arXiv:2311.17311.
  • Knappe, T. et al. (2024). Semantic Self-Consistency: Enhancing Language Model Reasoning via Semantic Weighting. arXiv:2410.07839.
  • Liang, X. et al. (2024). Internal Consistency and Self-Feedback in Large Language Models: A Survey. arXiv:2407.14507.
  • Li, T. et al. (2024). Improving Faithfulness of Large Language Models in Summarization via Sliding Generation and Self-Consistency. arXiv:2407.21443.
  • Byerly, A.; Khashabi, D. (2024). How Effective Is Self-Consistency for Long-Context Problems?. arXiv:2411.01101.
  • Novikova, J. et al. (2025). Consistency in Language Models: Current Landscape, Challenges, and Future Directions. arXiv:2505.00268.
  • Admoni, S. et al. (2025). Towards Large Language Models with Self-Consistent Natural Language Explanations. arXiv:2506.07523.

Références

  1. 1.0 1.1 1.2 1.3 1.4 1.5 Wang, X., Wei, J., Schuurmans, D., et al. (2022). «Self-Consistency Improves Chain of Thought Reasoning in Language Models». arXiv. [1]
  2. Wei, J., Wang, X., Schuurmans, D., et al. (2022). «Chain-of-Thought Prompting Elicits Reasoning in Large Language Models». NeurIPS 2022.
  3. «Self-Consistency Improves Chain of Thought Reasoning in Language Models - Summary». Portkey. [2]
  4. Chen, X., et al. (2023). «Universal Self-Consistency with Large Language Models». arXiv. [3]
  5. «Universal Self-Consistency with Large Language Models». Google DeepMind Publications. [4]