Self-consistency prompting (CS)

From Systems analysis Wiki
Jump to navigation Jump to search

Samosouladné dekódování (angl. Self-Consistency Prompting, SC) — je metoda nebo strategie dekódování v prompt inženýrství, určená ke zvýšení přesnosti a spolehlivosti velkých jazykových modelů (LLM) při řešení úloh vyžadujících vícekrokové uvažování, jako jsou aritmetické a logické hádanky[1]. Metoda byla navržena výzkumníky z Google Research v roce 2022 jako vylepšení techniky „řetězce myšlenek" (Chain-of-Thought, CoT).

Základní myšlenka spočívá v tom, že se neomezujeme na jediný „chamtivý" výstup, ale místo toho generujeme mnoho různých variant uvažování pro tutéž otázku a poté vybereme výslednou odpověď, která se mezi těmito variantami vyskytuje nejčastěji. Přístup vychází z intuitivního principu: pokud model různými cestami uvažování opakovaně dospívá ke stejnému výsledku, pak je tento výsledek s vysokou pravděpodobností správný[1].

Kontext a předpoklady

Metoda Self-Consistency je přímým rozvinutím techniky Chain-of-Thought (CoT). Technika CoT, navržená Wei a kol. (2022), výrazně zlepšila schopnost LLM řešit složité úlohy tím, že pobízela model k explicitnímu rozpisování kroků řešení[2]. Avšak v základní implementaci CoT se používá „chamtivé dekódování" (greedy decoding), při němž je v každém kroku vybrán nejpravděpodobnější následující token. To vytváří omezení: pokud model v rané fázi udělá chybu, nemůže se od této nesprávné trajektorie odchýlit a opravit ji. Self-Consistency byl navržen právě pro řešení tohoto problému[1].

Mechanismus fungování

Algoritmus Self-Consistency nahrazuje deterministický chamtivý přístup procedurou „vzorkování s následnou agregací" a skládá se z těchto kroků[1]:

  1. Generování více cest uvažování: Místo jediné odpovědi model několikrát (například až 40krát) generuje řešení pro tentýž dotaz pomocí metody řetězce myšlenek. Pro získání různorodých cest uvažování se používají stochastické metody dekódování, jako je teplotní vzorkování (s parametrem teploty > 0).
  2. Agregace a výběr odpovědi: Ze všech vygenerovaných řetězců uvažování jsou extrahovány pouze konečné odpovědi (například číselná hodnota). Poté je z těchto odpovědí vybrána nejčastěji se vyskytující. Tato odpověď je pak vydána jako finální.

Tento přístup napodobuje princip „samoensemblování", kde se mnoho výstupů téhož modelu využívá ke zvýšení spolehlivosti a vyhlazení náhodných chyb[3].

Účinnost a výsledky

V původním výzkumu Self-Consistency prokázal podstatný nárůst přesnosti na řadě populárních benchmarků, zejména v úlohách vyžadujících aritmetické a logické uvažování.

  • Na benchmarku matematických úloh GSM8K vzrostla přesnost modelu PaLM-540B z 56,6 % (s CoT) na 74,4 % (se Self-Consistency), což představuje nárůst o 17,8 %.
  • Na dalších aritmetických úlohách, jako jsou SVAMP a AQuA, činil nárůst +11,0 % a +12,2 % v uvedeném pořadí.
  • Na úlohách vyžadujících logiku a zdravý rozum, jako je StrategyQA, bylo zlepšení +6,4 %[1].

Použití Self-Consistency umožnilo stanovit nové výkonnostní rekordy (state-of-the-art) na mnoha benchmarcích při použití velkých modelů, jako jsou GPT-3 175B a PaLM 540B[1].

Výhody a omezení

Výhody

  • Zvýšení přesnosti: Výrazně zlepšuje výsledky v úlohách vyžadujících složité vícekrokové uvažování.
  • Spolehlivost: Metoda je odolnější vůči chybám, které mohou vzniknout v jediném řetězci uvažování.
  • Jednoduchost implementace: Nevyžaduje dodatečné trénování ani změnu architektury modelu. Metodu lze implementovat jako jednoduchou „obálku" kolem již existujícího modelu.

Omezení

  • Vysoké výpočetní náklady: Hlavní nevýhodou je nutnost opakované generace odpovědi (například 10, 20 nebo 40krát) pro jeden dotaz, což proporcionálně zvyšuje náklady a čas inference.
  • Omezená použitelnost: Standardní metoda je nejúčinnější pro úlohy s jasně definovaným formátem odpovědi (například číslo, „ano/ne", varianta ze seznamu), kde je snadné provést hlasování majoritou. Je špatně použitelná pro úlohy s otevřenou generací (psaní esejí, sumarizace), kde jsou odpovědi svou formou jedinečné.
  • Riziko systematické chyby: Pokud model systematicky generuje nesprávné úvahy, které náhodou konvergují ke stejné chybné odpovědi, Self-Consistency chybu nejen neopraví, ale ještě posílí jistotu v ní.

Rozvoj metody: Universal Self-Consistency

Omezenost základní metody při úlohách s volnou formou odpovědi byla adresována v navazujících výzkumech. Koncem roku 2023 skupina výzkumníků z Google DeepMind navrhla přístup Universal Self-Consistency (USC)[4].

V USC se místo prostého hlasování o finálních odpovědích používá pro agregaci samotný LLM jako „soudce". Model generuje několik úplných variant řešení a poté dostane nový prompt s žádostí, aby z nich vybral „nejsouladnější" nebo „nejkvalitnější". Tento přístup umožňuje uplatňovat principy samosouladnosti na úlohy s otevřeným a kreativním formátem odpovědi[5].

Odkazy

  • Self-Consistency Improves Chain of Thought Reasoning in Language Models — původní vědecký článek od Google Research.
  • Self-Consistency — průvodce na Prompt Engineering Guide.

Literatura

  • 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.

Poznámky

  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]