CoT-SC (2022) 논문 리뷰
CoT-SC의 논문 이름은 Self-Consistency Improves Chain of Thought Reasoning in Language Models 다. (링크)
저자는 Xuezhi Wang, Jason Wei, Dale Schuurmans, Quoc Le, Ed Chi, Sharan Narang, Aakanksha Chowdhery, Denny Zhou다.
Abstract
Chain-of-Thought과 사전학습 LLM의 조합은 복합한 추론에서 놀라운 성과를 거두었다.
본 논문에서는 self-consistency라는 new decoding strategy 새 디코딩 전략을 소개함으로써 기존의 naive greedy decoding을 대체한다.
2. Self-Consistency Over Diverse Reasoning Paths
인류의 특징은 다르게 생각한다는 점인데 문제의 해결에 있어서 신중한 사고를 통한 다양한 문제 접근 방식은 당연해 보인다.
LLM은 Figure 1에 나와있듯이 여러가지 사고 방식을 가질 수 있지만 틀린 사고를 할 수도 있다.
본 연구에서는 올바른 추론 과정은 다양한 과정을 거치더라도 최종 답에서 일치하는 경향이 있다고 가정한다.
언어 모델의 디코더에서 candidate outputs 후보 출력 집합을 샘플링하여 다양한 candidate reasoning paths 후보 추론 경로 집합을 만든다. Self-consistency 자기 일관성은 temperatue sampling 온도 샘플링, Top-k 샘플링, nucleus 샘플링을 포함한 대부분의 기존 샘플링 알고리즘과 호환된다. 마지막으로 샘플링된 추론 경로를 marginalization하고 생성된 답변 중 가장 일관성 있는 답변을 선택한다.
생성된 답변 $a_i$가 고정된 정답 집합 $A$에 속한다고 하자. 그리고 $i = 1, ..., m$이고 $m$은 후보 출력들의 개수다.
프롬프트와 질문이 주어진 상황에서 latent variable인 $r_i$를 추가하는데 이는 $i$ 번째 출력의 reasoning path다.
$(r_i, a_i)$이고 $r_i \rightarrow a_i$다.
예를 들어서 “She eats 3 for breakfast ... So she has 9 eggs * \$2 = \$18.”에서
"The answer is \$ 18"은 $a_i$다.
여러개의 $(r_i, a_i)$을 뽑은 다음에 self-consistency는 $r_i$에 대해서 marginalization을 수행하는데 이는 $a_i$에 대한 majority vote로 이루어진다. 식으로 표현하면 다음과 같다.
$ \underset{a}{\text{argmax}} \sum_i^m \mathbb{I} (a_i = a) $.
본래 $\mathbb{I}$는 mathds{1}로 나타내야 하는데 표기가 안되어서 변경했다.
Table 1에서와 같이 확률을 weight 가중치로 쓰는 방법도 실험했다.
이때 $(r_i, a_i)$에 대한 가중치는 P$(r_i, a_i | prompt, question)$으로 설정한다.
P$(r_i, a_i | prompt, question)$ = exp($ \frac{1}{K} \sim_{k=1}^K log P(t_k | prompt, question, t_1, ..., t_{k-1}) $)다.
3. Experiments
Arithmetic reasoning, Commonsense reasoning, Symbolic reasoning을 평가한다.
기본 모델은 UL2, GPT-3, LaMDA-137B, PaLM-540B를 사용했다.
CoT에 비해서 Self-consistency가 더 좋은 성능을 보인다.
Table 4와 5에서는 Self-consistency가 기존의 CoT의 오류를 보완할 수 있음을 보여준다.
References:
https://kimjy99.github.io/%EB%85%BC%EB%AC%B8%EB%A6%AC%EB%B7%B0/self-consistency/