Self-Consistency prompting

Материал из Systems analysis Wiki
Перейти к навигации Перейти к поиску

Самосогласованное декодирование (англ. Self-Consistency Prompting, SC) — это метод или стратегия декодирования в промпт-инжиниринге, предназначенная для повышения точности и надёжности больших языковых моделей (LLM) при решении задач, требующих многошаговых рассуждений, таких как арифметические и логические головоломки[1]. Метод был предложен исследователями из Google Research в 2022 году как усовершенствование техники «цепочки мыслей» (Chain-of-Thought, CoT).

Основная идея заключается в том, чтобы не ограничиваться одним-единственным «жадным» выводом, а вместо этого сгенерировать множество различных вариантов рассуждений по одному и тому же вопросу, а затем выбрать итоговый ответ, который наиболее часто встречается среди этих вариантов. Подход основан на интуитивном принципе: если модель, рассуждая разными путями, многократно приходит к одному и тому же результату, то этот результат с высокой вероятностью является правильным[1].

Контекст и предпосылки

Метод Self-Consistency является прямым развитием техники Chain-of-Thought (CoT). Техника CoT, предложенная Wei и соавт. (2022), значительно улучшила способность LLM решать сложные задачи, побуждая модель явно расписывать шаги решения[2]. Однако в базовой реализации CoT используется «жадное декодирование» (greedy decoding), при котором на каждом шаге выбирается наиболее вероятный следующий токен. Это создаёт ограничение: если модель на раннем этапе делает ошибку, она не может отклониться от этой неверной траектории и исправить её. Self-Consistency был предложен для решения именно этой проблемы[1].

Механизм работы

Алгоритм Self-Consistency заменяет детерминированный жадный подход на процедуру «сэмплирования с последующим агрегированием» и состоит из следующих шагов[1]:

  1. Генерация нескольких путей рассуждений: Вместо одного ответа, модель несколько раз (например, до 40 раз) генерирует решение для одного и того же запроса, используя метод цепочки мыслей. Для получения разнообразных путей рассуждения применяются стохастические методы декодирования, такие как температурное сэмплирование (с параметром температуры > 0).
  2. Агрегирование и выбор ответа: Из всех сгенерированных цепочек рассуждений извлекаются только конечные ответы (например, числовое значение). Затем среди этих ответов выбирается наиболее часто встречающийся. Этот ответ и выдаётся в качестве финального.

Этот подход имитирует принцип «самоансамблирования», где множество выводов одной и той же модели используется для повышения надёжности и сглаживания случайных ошибок[3].

Эффективность и результаты

В оригинальном исследовании Self-Consistency продемонстрировал существенный прирост точности на ряде популярных бенчмарков, особенно в задачах, требующих арифметических и логических рассуждений.

  • На бенчмарке математических задач GSM8K точность модели PaLM-540B выросла с 56,6% (с CoT) до 74,4% (с Self-Consistency), что составило прирост в 17,8%.
  • На других арифметических задачах, таких как SVAMP и AQuA, прирост составил +11,0% и +12,2% соответственно.
  • На задачах, требующих логики и здравого смысла, таких как StrategyQA, улучшение составило +6,4%[1].

Применение Self-Consistency позволило установить новые рекорды производительности (state-of-the-art) на многих бенчмарках при использовании крупных моделей, таких как GPT-3 175B и PaLM 540B[1].

Преимущества и ограничения

Преимущества

  • Повышение точности: Значительно улучшает результаты на задачах, требующих сложных многошаговых рассуждений.
  • Надёжность: Метод более устойчив к ошибкам, которые могут возникнуть в одной-единственной цепочке рассуждений.
  • Простота реализации: Не требует дополнительного обучения или изменения архитектуры модели. Метод можно реализовать как простую «обёртку» вокруг уже существующей модели.

Ограничения

  • Высокие вычислительные затраты: Главный недостаток — необходимость многократной генерации ответа (например, 10, 20 или 40 раз) для одного запроса, что пропорционально увеличивает стоимость и время вывода.
  • Ограниченная применимость: Стандартный метод наиболее эффективен для задач с чётко определённым форматом ответа (например, число, «да/нет», вариант из списка), где легко провести голосование по большинству. Он плохо применим для задач с открытой генерацией (написание эссе, резюмирование), где ответы уникальны по своей форме.
  • Риск систематической ошибки: Если модель систематически генерирует неверные рассуждения, которые по случайности сходятся к одному и тому же неправильному ответу, Self-Consistency не только не исправит ошибку, но и усилит уверенность в ней.

Развитие метода: Universal Self-Consistency

Ограниченность базового метода на задачах со свободной формой ответа была адресована в последующих исследованиях. В конце 2023 года группа исследователей из Google DeepMind предложила подход Universal Self-Consistency (USC)[4].

В USC вместо простого голосования по финальным ответам для агрегации используется сама LLM в качестве «судьи». Модель генерирует несколько полных вариантов решения, а затем получает новый промпт с просьбой выбрать из них «наиболее согласованный» или «наиболее качественный». Этот подход позволяет применять принципы самосогласованности к задачам с открытым и творческим форматом ответа[5].

См. также

Ссылки

Литература

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

Примечания

  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]