LLM은 언제 자기 수정본을 믿어야 하나: 자기 교정(Intrinsic Self-Correction)의 위험 분석
When Should LLMs Trust Their Own Revisions? A Risk-Aware Study of Intrinsic Self-Correction
TL;DR Highlight
29개 LLM에 재검토를 시켰더니 오답도 고치지만 정답도 뒤집었다
Who Should Read
LLM 답변에 '다시 확인해봐' 2차 패스를 자동으로 붙였다가 정확도가 오히려 떨어져 고민인 백엔드 개발자
Core Mechanics
- 재검토는 정답도 뒤집는다
- 외부 근거 없이 모델이 자기 답을 다시 고치게 하면 오답을 고치기도 하지만 맞은 답을 틀리게 바꾸기도 한다.
- 29개 오픈 가중치 모델을 BoolQ, GSM8K, Corr2Cause에서 비교했다.
- 평균 정확도만 보면 속는다
- Llama-3.1-8B는 GSM8K에서 25.5%p 올랐지만 원래 맞았던 답의 19.1%를 틀리게 바꿨다.
- 정확도 변화만 보지 말고 고친 수와 망친 수를 따로 봐야 한다.
- 무조건 재검토는 설정마다 손해일 수 있다
- 무조건 재검토하면 BoolQ 28개 설정 중 20개, GSM8K 28개 중 10개, Corr2Cause 26개 중 9개에서 정확도가 떨어졌다.
- 모델과 태스크마다 정책을 따로 골라야 한다.
- 재검토 프롬프트 문구가 결과를 바꾼다
- BoolQ에서 11개 모델에 프롬프트 5종을 적용했더니 평균 정확도 변화가 모두 음수였다.
- 중립적인 프롬프트가 손실이 가장 작았고, 답을 바꾸라고 세게 몰아붙이면 해로운 변경이 더 늘었다.
- 재검토 전에 켤지 말지 판단하는 게이트가 통하는 경우도 있다
- 첫 답의 확신도·파싱 상태 같은 신호로 재검토 여부를 정하는 게이트를 학습시켰다.
- 어떤 설정에서는 이득이었고, 어떤 설정에서는 무조건 재검토나 그냥 유지가 나았다.
Evidence
- Qwen2.5-7B BoolQ에서 게이트가 역전
- 무조건 재검토는 80.83%에서 72.32%로 떨어졌다.
- 게이트를 쓰면 86.02%로 초기 답 대비 5.2%p 높았다.
- Llama-3.1-8B GSM8K는 재검토 자체가 이득
- 초기 17.44%에서 무조건 재검토 42.99%, 게이트 43.59%였다.
- 게이트가 재검토 대비 더한 이득은 0.60%p뿐이다.
- 게이트가 이득을 놓친 사례도 있다
- Qwen3-Coder-30B-A3B Corr2Cause는 초기 56.06%에서 재검토 83.70%였지만 게이트는 56.06%에 머물렀다.
- DeepSeek-R1-Distill-Qwen-7B는 재검토 77.78%, 게이트 71.28%였다.
- Llama-3.1-70B BoolQ는 복구보다 피해가 많았다
- 오답 122개를 고쳤지만 정답 159개를 뒤집어 순변화 -1.1%p였다.
How to Apply
- 자기 교정 로그에 정답→오답 건수 남기기
- 오늘 소규모 평가셋에서 1차 답과 2차 답을 모두 저장하라.
- 정답→오답, 오답→정답 건수를 따로 세어 순변화만 보지 마라.
- 무조건 재검토를 기본값에서 빼기
- 모델·태스크별로 초기 유지, 항상 재검토, 게이트 세 정책을 평가셋에서 비교하라.
- 가장 정확도가 높은 정책만 배포하라.
- 재검토 지시문을 중립적으로 쓰기
- '틀렸을 수 있으니 바꿔라' 같은 강한 문구를 빼라.
- 바꿀 근거가 없으면 유지(KEEP)하라고 명시하라.
- 확신도로 재검토 게이트 만들기
- 로그확률·yes/no 확신도·파싱 성공 여부를 1차 답에서 뽑아라.
- 라벨 데이터로 재검토 필요 여부를 예측하는 간단한 분류기를 학습하라.
Try It
# Claude나 ChatGPT에 붙여넣기 (논문 방법의 간이 버전: 재검토 위험 점검)
아래 질문과 1차 답변을 보고 재검토하라. 새로운 외부 정보는 쓰지 마라.
질문: {{질문}}
1차 답변: {{1차 답변}}
규칙:
1. 1차 답변에 명확한 오류 근거가 있을 때만 CHANGE, 없으면 KEEP이라고 첫 줄에 써라.
2. CHANGE라면 오류 근거와 수정 답을 써라.
3. 마지막 줄에 확신도를 0~100으로 써라.
이어서 해 볼 것: 같은 질문 20개로 KEEP/CHANGE 결과를 정답과 비교해 정답→오답 건수를 세어 보라.Terminology
관련 논문
The Judge Can Debias Itself: LLM-as-a-Judge가 스스로 편향을 고치게 하는 법
심사 프롬프트에 편향 경고를 넣거나 스스로 비판시켰더니 21개 중 20개 조합에서 정확도가 올랐다
미국 노동시간의 90%는 AI 벤치마크가 제대로 다루지 못하는 일이다
벤치마크 29개를 직업 과제에 매핑했더니 노동시간 90%가 커버 밖
Postgres 19, AI 코드 리뷰가 버그를 너무 많이 찾아 출시 연기
LLM 코드 리뷰가 버그를 쏟아내 Postgres 19가 11월로 밀리고 기능 8~10개가 빠졌다
StarSkirmish Bench v0.2: LLM이 1시간 만에 짜는 StarCraft 봇 대결
LLM에게 1시간 동안 StarCraft 봇을 짜게 했더니 GPT-6 Astra가 1위
그럴듯한 설명 하나면 멀티모달 LLM 심사위원도 속는다 (JUPE 벤치마크)
정답은 그대로 두고 설명만 붙였더니 MLLM 심사위원의 오답 거절률이 12.7~13.8%p 떨어졌다
신경망은 이미 깔끔하다: polysemanticity의 원인 재해석
뉴런을 직접 들여다봤더니 대부분 한 가지 역할이 있었다는 주장
Linus Torvalds의 첫 LLM 보조 패치 시리즈
Linus가 LLM으로 folio 조회 패치 10개를 만들어 read() 벤치가 10배 빨라졌다
Original Abstract (Expand)
Intrinsic self-correction asks a language model to revise its own answer without receiving new external evidence. A second pass can recover mistakes, but it can also overturn answers that were already correct. We study this trade-off across 29 open-weight LLMs on BoolQ, GSM8K, and Corr2Cause by tracking correctness transitions between initial and revised answers. Aggregate accuracy can conceal substantially different revision behavior: for example, Llama-3.1-8B improves by 25.5 percentage points on GSM8K, while refinement changes 19.1% of initially correct answers into wrong ones. A controlled BoolQ study further shows that refinement prompts shift the balance between recovery and harm. We then compare three runtime choices: keeping the initial answer, always accepting the revision, and selectively invoking revision using signals available after the initial response. The comparison identifies settings where learned gating is useful and others where a simpler unconditional policy performs better. These results suggest treating intrinsic self-correction as a revision policy rather than as a uniformly beneficial second pass, and evaluating it through both the corrections it recovers and the errors it introduces.