home
🤗

프롬프팅을 통한 LLM의 추론 능력 향상

Author
박우명 / CDO & Head of Research
Category
Paper Review
Tags
Prompting
Tuning
LLM
Reasoning
Published
2023/11/03
AI 요약
5 more properties

도입

Prompting은 사람이 초거대 언어 모델(LLM)을 제어하고 소통하는 수단이라 볼 수 있음.
별도의 파라미터 업데이트 없이 이러한 prompting만 입력하는 in-context learning(ICL) 방식을 통해 LLM이 다양한 문제에서 뛰어난 성능을 보여주고 있음
이 아티클에서는 복잡한 추론(reasoning) 문제에서 최신 방법론인 diversity of thought와 관련한 주요 reference들에 대하여 소개함
리뷰 논문
Scratchpads : https://arxiv.org/abs/2112.00114 (by Google)
Chain-of-Thought(CoT) : https://arxiv.org/abs/2201.11903 (by Google)
Self-consistency(SC) : https://arxiv.org/abs/2203.11171 (by Google)
Diversity of Thoughts(DoT) : https://arxiv.org/abs/2310.07088 (by MS, UIUC, Stanford)

개요

일반적인 Prompting은 지시문과 예제(zero-shot인 경우는 지시문만)로 구성되며 최종 결과를 바로 생성하게 하는 방식
여기서 소개하는 논문들이 제안하는 방법은 크게 2가지로 나눌 수 있음
풀이 과정을 LLM이 스스로 생성 : Scratchpads, CoT
LLM이 문제를 여러 번 풀게 한 후 Ensemble : SC, DoT
이는 예를 들어 사람이 수학 문제를 풀 때 풀이 과정을 적고, 여러 번 검산하는 것과 비슷한 느낌으로 해석할 수 있음

방법론

Method 1 : 풀이 과정을 LLM이 스스로 생성
Scratchpads와 CoT 모두 풀이 과정을 모델이 스스로 생성하는 점은 동일하나 CoT가 좀 더 자연어 형식으로 생성한다는 점에서 차이가 존재함.
Scratchpads
Chain-of-Thought
비록 Scratchpads가 먼저 나왔으나 CoT 방식이 자연어 형태로 생성하여 LLM 능력을 leverage하는데 더 효과적이며 더 다양한 task에 적용 가능할 수 있는 일반적인 방법론이라 CoT가 이후 더 주목받은 것으로 생각됨
Method 2 : LLM이 문제를 여러 번 풀게 한 후 생성 결과를 emsemble
SC
CoT Prompting을 LLM에 입력하여 여러 종류의 결과를 생성
생성한 결과에 대하여 majority vote를 적용하여 가장 많은 수의 답변을 최종 답변으로 결정
다양한 종류의 decoder sampling 방법(e.g., temperature, top-k, top-p, nucleus sampling 등) 적용 가능
지난 글(효과적인 프롬프팅(Prompting) 방법론 소개)에서 다룬 방법론인 COSP에서 최종 답변을 선택할 때도 SC를 적용하고 있음
DoT
하나의 질문에 대해서 서로 다른 “approach”로 풀이 과정을 생성하고 결과를 도출한 후 ensemble 하는 방법
주어진 질문에 대하여 어떤 approach로 답을 구하라는 지시문을 입력. 위 예제에서는 “Using direct calculation”, “Using algebra”, “Using visualization” 3가지 approach로 생성하고 있음
2가지 방법론을 제안.
DIV-SE(DIVerse reasoning path Self-Ensemble) : 하나의 프롬프트는 하나의 방법만 생성하게 한 후 총 n 번 호출을 하여 생성하는 방법
IDIV-SE(In-call DIV-SE) : 위 그림의 예제처럼 하나의 프롬프트에 n 가지 방법에 대한 답을 동시에 생성하는 방법

결과

Standard Prompting vs CoT
LLM의 크기가 작은 경우 오히려 성능 하락이 존재하나 모델이 큰 경우 (60B 이상) 비교적 큰 폭의 성능 향상 존재 (emergent ability)
작은 LLM의 경우 잘못된 풀이 과정을 생성하고 그것이 noise로 작용하는 경우가 많아서 성능이 오히려 하락한 것으로 보임
위 현상은 LLM의 절대 크기보다는 LLM이 가진 능력에 더 큰 영향을 받음. 즉, sLLM이라도 최근 등장하는 훨씬 뛰어난 모델들의 경우는 효과가 있음 (e.g., 20B 크기인 ChatGPT)
다양한 종류의 task에서 효과가 있음
CoT vs SC
점수 상승 폭에는 차이가 존재하나 single inference 대비 거의 모든 LLM, 모든 task에서 효과가 있음
단, sampling 하는 횟수만큼 LLM을 호출해야 하므로 비례해서 추론 비용이 발생
SC vs DoT
더 좋은 cost-performance tradeoff를 제공

논의사항

LLM의 능력이 좋아지면서 zero-shot, few-shot으로 해결할 수 있는 문제의 종류 및 수준이 점차 높아지고 있음.
따라서 최적의 결과를 얻기 위한 prompt 설계 방법론이 앞으로도 점점 중요성이 높아질 것 같음
프롬프트를 통해 성능을 향상하기 위한 비교적 간단하고 유용한 방법론으로 참고할 만한 결과라 판단