Paper : SCOTT: Self-Consistent Chain-of-Thought Distillation
💡 로 표시된 부분은 제가 이해한 내용을 적은 부분입니다. 오류가 있다면 댓글로 남겨주세요 🙏🏻
대규모 언어 모델(Large Language Models)은 일정 규모 이상으로 확장될 때, 프롬프트를 통해 예측에 대한 자유로운 텍스트 근거를 생성하는 능력을 나타낸다.
CoT는 뚜렷한 향상된 성능을 제공할 수 있지만, 이러한 이점은 충분히 큰 언어 모델에서만 관찰된다.
생성된 근거가 언어 모델의 예측과 일관성이 있는지 또는 결정을 충실하게 정당화하는지에 대한 보장이 거의 없다.
몇 배나 큰 규모의 교사 모델로부터 작은, 자체 일관성을 가진 CoT 모델을 학습하기 위한 지식 증류 방법이다.
더 나은 감독을 형성하기 위해 큰 언어 모델(교사)에서 골드 답변을 지원하는 근거를 강조하기 위해 대조적 디코딩을 통해 근거를 추출한다.
이렇게 하면 학생 모델이 근거를 무시하고 일관되지 않은 예측을 만드는 것을 방지할 수 있다.
실험 결과, 기존의 기준 모델들보다 더 충실한 CoT 근거를 생성할 수 있음을 보여준다. 더 나아가 이러한 모델은 결정을 내릴 때 근거를 더 존중하는 경향이 있으므로 근거를 개선함으로써 성능을 더 향상시킬 수 있다.
: 주로 컴퓨팅 효율성 또는 작업 성능을 위해 대규모 언어 모델(LMs)에서 추론 학습을 제안한다.
대규모 언어 모델(교사)에게 하류 데이터셋을 위한 근거를 생성하도록 유도하며, 이 근거를 사용하여 작은 언어 모델(학생)을 훈련시킨다.
문제점
두 가지 문제가 함께 작용하면 학생이 허구의 근거를 생성하고 근거와 일치하지 않는 예측을 할 수 있게 된다.
일반적인 지식 증류(Knowledge Distillation, KD) 과정을 강화한다.
골드답변(정답에 가까운, 미리 준비된 답변)과 모델이 생성한 답변을 대조한다.
충실한 학생을 훈련시키기 위해, 근거가 다른 답변으로 이끄는 경우에 따라 예측하도록 요청한다.
훈련 데이터는 교사 모델에게 잘못된 답변에 대한 근거를 생성하도록 요청하여 얻는다.
대조적 디코딩
일관된 근거-답변 쌍으로 훈련된 학생
부가적인 훈련 목표로 반대사실적 추론 사용
충실성이 높아진 모델
큰 규모의 언어 모델로부터 골드 답변을 제대로 정당화하는 일관된 근거를 유도하는 것을 감독으로 삼고,
스스로 일관된 학생 모델을 훈련시켜 그 근거에 따라 충실하게 추론하게 한다.
작업 입력에 필요한 지식이 제공되지 않는 개방형 도메인에서 질문 응답(QA) 작업을 수행했다.
given a question : q
the gold answer (a QA system is asked to predict): a∗
free-text rationale (justifies its prediction) : r
💡 "작업 입력에 필요한 지식이 제공되지 않는"
: 교사 모델이 문제 해결 작업을 위해 필요한 정보나 지식이 질문(입력) 자체에 명시적으로 포함되어 있지 않다는 의미다.
작업 입력에 필요한 정보나 지식이 명시적으로 주어지지 않을 때, 교사 모델은 질문과 정답을 기반으로 근거를 생성하고, 이 근거를 사용하여 정답을 정당화하고 추론을 수행하는 방법을 학습할 수 있다.
💡 "개방형 도메인"
: 다양한 주제, 분야, 주제 영역을 다룰 수 있는 범용성을 의미한다. 이는 모델이나 시스템이 특정 분야나 작업에 제한되지 않고 다양한 작업을 수행할 수 있는 능력이다.
각 질문-답변 쌍 {q, a∗}에 대해 인간들에게 근거를 주석으로 달라고 요청하는 대신, 문맥 내 학습을 사용하여 교사 모델에서 근거를 자동으로 얻는다.
새로운 인스턴스가 제공되기 전에 몇 가지 주석 예제로 교사로 동결된 언어 모델에 프롬프트를 보내는 것이다.
Train dataset 예제
새로운 질문 q에 대한 근거를 얻기 위한 하나의 기본 전략은 탐욕 디코딩(greedy decoding) 으로, 이는 각 단계에서 가장 그럴듯한 토큰을 선택한다:
💡 현재 위치 i 이전의 모든 토큰(t<i)과 주어진 문맥(p, q, a∗)에 대해 가장 그럴듯한 근거 토큰 ti를 선택하는 것을 의미한다.
- 문맥 내 학습
- 탐욕 디코딩
이제 주석이 달린 훈련 데이터 {q, r, a∗}로, 더 작은 모델을 훈련시킬 수 있다.
예측을 수행하고 근거를 생성할 수 있는 QA 모델을 구현하는 다양한 방법이 있다. 본 연구에서는 "self-rationalization" 패러다임에 중점을 둔다.
아래 두 패러다임에서 근거 생성은 처음부터 의사결정에 영향을 미치지 않으며, 따라서 근거의 충실성이 먼저 보장되지 않는다.
주어진 질문 q에 대해, 학생 모델은 근거 토큰의 시퀀스를 생성하도록 훈련되며, 이는 답변 토큰과 concatenated되어 위 그림에 나타난 대로 표시된다.
💡 직관적인 구현 방법은 교사 모델이 일반적인 언어 모델링 손실을 사용하여 생성한 실버 훈련 데이터를 활용하여 텍스트-텍스트 언어 모델을 미세 조정하는 것이다.
factual reasoning loss :
1. 환영증상(hallucination) 문제
신경망 언어 모델이 입력과 관련이 없는 텍스트를 생성한다는 것을 의미한다. 이로 인해 생성된 근거가 주어진 답변을 뒷받침하지 않게 된다. 근거와 답변 사이의 불일치는 학생 모델에게 전해질 것이며, 학생 모델은 답변 예측이 근거 생성과 독립적이라고 오해하게 된다.
2. Reasoning Shortcut
학생 모델은 근거 생성을 고려하지 않고 추론 단축키를 학습하게 된다. 이것은 질문과 답변 사이의 의도하지 않은 상관 관계로 인해 발생하며, 이러한 상관 관계는 다양한 내재 추론 작업 데이터셋에서 발견된다.
위 두 가지 문제는 생성된 근거가 답변을 일관되게 정당화하지 못하는 신뢰할 수 없는 학생 모델을 결과로 낼 수 있다. 이를 완화하기 위해 아래에서 두 가지 기술을 제안한다.
대조적 디코딩은 답변을 뒷받침하는 이론적 근거를 생성하도록 교사 모델을 격려하기 위해 제안된 방법이다. 핵심 아이디어는 디코딩 중에 답변이 고려될 때 더 타당한 근거 토큰을 찾는 것이다.
이 아이디어를 구현하기 위해, 먼저 답변 a'를 동일한 교사 모델에게 제공해 나타나는 hallucination을 모델링한다. 그런 다음 답 a∗가 주어지면 토큰 ti의 타당성 증가율 G를 다음과 같이 구할 수 있다.
💡 골드 답변 a∗을 고려할 때와 hallucinated 답변을 고려할 때의 토큰 ti의 가능성 비율 측정을 통해 해당 토큰의 타당성 증가율을 구할 수 있다.
P(ti | p, q, A, a∗, t<i)
: 답변 a∗를 고려할 때 토큰 ti의 가능성
P(ti | p, q, A, a', t<i)
: hallucinated 답변 a'를 고려할 때 토큰 ti의 가능성
답변을 혼란스럽게 만드는 두 가지 방법:
a'를 빈 문자열로 설정하는 방법
a∗ 이외의 잘못된 답변으로 설정하는 방법
위 그림은 탐욕 디코딩과 대조 디코딩을 사용하여 예제 질문에 대한 생성 결과를 보여준다.
Greedy Decoding :
Contrastive Decoding :
<perturved_answer> = 빈 문자열
<perturved_answer> = 그렇다
언어 유창성과 근거의 타당성 간의 균형을 맞추기 위해 최종 대조 디코딩 전략에서 타당성 증가를 추가한다:
💡 ti∗는 주어진 문맥 (p, q, A, a∗) 및 현재 위치 이전의 토큰에서 가장 가능성이 높은 근거 토큰이다.
P(ti | p, q, A, a∗, t<i)
: 답변 a∗를 고려할 때 토큰 ti의 가능성
G(ti | a∗)
: 답 a∗가 주어졌을 때, 토큰 ti의 타당성 증가율
대조적 추론을 실시함으로써 학생 모델에게 동일한 질문에 대해 다르게 답하도록 요청하므로 논리적 단축키가 제거된다.
이 아이디어를 구현하기 위해 먼저 방정식 (4)에서 교사 모델에게 주어진 골드 답변을 잘못된 답변 a'로 대체한다. 따라서 오답 a'로 이어지는 반사실적 근거 r'을 얻게 된다.
그런 다음 반사실적 근거 r'가 입력일 때, a'를 생성하도록 하는 디코더 모델을 훈련한다. (언어 모델링 손실은 응답 토큰 ti ∈ a'에만 적용된다)
💡 반대 사실적 추론을 수행하는 학생 모델의 훈련하는 데 사용되는 손실함수다.
학생 모델이 근거에 따라 진술하는 것과 상반된 답을 생각하고 이에 대응하는 추론을 수행하도록 유도한다.
- 근거와 질문 사이의 추론 단축키를 제거
- 동일한 질문에 대해 다르게 답하도록 도움
학생 모델이 과업에 대해 혼동하는 것을 방지하기 위해 학습 목표를 학생에게 알리기 위해 인코더에 입력 시퀀스와 디코더의 출력 시퀸스의 시작 부분에 [Factual] 또는 [Counterfactual]라는 키워드를 추가하여 학습 목표를 학생 모델에게 표시한다.
전체 학습 손실은 Eq.2 (factual loss)와 Eq.5 (counterfactual loss)의 합이다.
(a) 사실적 추론
입력 : 토끼는 삵을 무서워하는가?
출력 :
이 경우 Q (입력) 과 A (아니오) 사이에 추론 단축키가 생성된다.
(b) 반사실적 추론
입력 : 토끼는 삵을 무서워하는가?
출력 :
반대사실적 추론을 부가적인 훈련 목표로 사용하여 학생 모델이 추론 단축키를 사용하지 않고 근거를 더 존중할 수 있도록 한다.
실험에서 다음과 같은 연구 질문에 대답하기를 목표로 한다 :
이 연구는 큰 교사 모델에서 작고, 스스로 일관된 CoT 모델을 학습하기 위한 지식 증류(KD) 프레임워크를 제시한다.
학생 모델이 충실하게 추론하도록 하기 위해 다음을 제안한다.
실험 결과, 이 두 기술이 기준선에 비해 더 충실한 학생을 이끌어내는 것을 보여주며, 성능 정확도를 크게 유지한다.
추가적인 분석으로, 근거를 변경하면 학생 모델의 행동에 더 큰 영향을 미친다. 따라서 근거를 개선함으로써 모델을 디버깅하는 데 더 큰 성공을 거둘 수 있다는 것을 보여준다.
일반적인 지식 증류 과정과 비교하여 학습 데이터를 준비하고 학생을 훈련하는 데 추가 계산이 필요하다.
대조적 디코딩은 각 생성된 토큰에 대한 변조된 타당성을 얻기 위해, 그리디 디코딩보다 교사 모델에서 한 번 더 전방 향 전파를 수행해야 한다. (Eq. 4)
지식 증류 과정은 반대사실적 추론 목표로 학생을 훈련하기 위한 추가적인 훈련 데이터를 도입한다. (Eq. 5)
계산 비용 이외에도 이 연구는 성능 향상이 아닌 근거의 충실성을 개선하는 데 중점을 두고 있으며, 이는 이전 연구와 보완적인 방법으로 근거를 사용하여 성능을 개선하는 것을 고려할 수 있다.