- 원문 주소
- 게재 학회
- NIPS 2023
- 개요
- 접근 방식
- Prompting 기법으로써 반복적 피드백과 개선을 통해 LLM 초기 output 개선
- 파이프라인
- Initial Generation: 단일 언어 모델은 입력 x를 받아 초기 답변 y_0를 생성
- Feedback: 입력-답변 쌍 (x, y_t)에 대해 태스크별 few-shot feedback prompt를 통해 피드백 fb_t 생성
- Refine: 생성 피드백을 포함한 (x, y_t, fb_t)에 대해 태스크별 few-shot refine prompt를 통해 수정된 답변 y_{t+1} 생성
- Iteration: 태스크별 stopping condition 만족할 때까지 반복 수행
- 기여점
- 추가 학습 데이터, 학습, 파라미터 업데이트 및 외부 보상 모델 불필요 → test-time compute 개선
- 3가지 prompt를 활용한 간결한 구현과 성능 향상
- 한계점
- Base model의 충분한 few-shot 모델링 또는 instruction following 능력을 요구함 → 작은 모델에 대해 적용 불가
- 반복 생성에 의한 추론 비용 증가
- 편향성 및 유해성에 대한 안전장치 필요
- 접근 방식
- 목차
- 방법론
- 1. Initial Generation
- 2. Feedback
- 3. Refine
- 4. Iteration
- 실험
- Setting
- Results
- 방법론
방법론

1. Initial Generation
- 입력 x 및 task-specific few-shot prompt p_{gen}을 model M에 입력으로 주어 초기 출력값 y_0 생성

2. Feedback
- Model-actionable & specific feedback 생성을 위해 태스크별 최적화된 <x_i, y_i, fb_i> 예시들을 포함하여 p_{fb}에 입력 x와 현재 time step t의 출력 y_t를 concat하여 모델에 전달하여 fb_t 생성

3. Refine
- 태스크별 최적화된 <x_i, y_i, fb_i, y_{i+1}> few-shot refine prompt p_{rt}과 입력 x, 현재 time step t의 출력 y_t와 피드백 fb_t를 모델에 전달하여 y_{t+1} 생성

4. Iteration
- 현재 time step t+1에 대해 이전 반복까지의 정보 제공을 위해 출력 y0, …, y_t과 피드백 tb_0, …, tb_t을 추가하여 Feedback-Refine step을 반복
- Stopping condition을 만족한다면, 최종 결과 y_{t+1}을 도출
실험
Setting
- 목표
- 해당 방법론을 통한 성능 개선 가능 여부를 평가
- 검증
- 반복 없이 LLM이 생성한 답변과 동일 모델에 대해 Self-Refine을 거친 답변을 비교하여 방법론의 효과 검증
- Base LLMs
- GPT-3.5
- ChatGPT
- GPT-4
Results
Performance


- Math reasoning 태스크에서는 성능 개선 정도가 미미함
- Base LLMs 대비 Self-Refine의 성능 향상에 대한 통계적 유의성 검증 수행 → 모델의 크기가 클수록 해당 방법론이 유의하게 작용함
- 검증 방법으로 Wilson confidence interval 사용
Feedback quality

- generic feedback은 상대적으로 정확성과 방향성이 부족한 피드백이며, 부분적으로 지도를 제공하지만 해당 방법론의 구체적이고 행동 가능한 피드백이 향상된 결과를 산출함
The number of iterations

- 반복 횟수의 증가에 따라, 출력의 질이 개선되지만 개선 정도는 줄어듦
반응형