LLM은 아직 추론을 자가 수정할 수 없다 — ICLR 2024 연구 결과 및 금융 AI에 미치는 영향
이 논문은 제가 읽어온 CRITIC 및 Reflexion 관련 연구들에 대한 직접적인 반론입니다. Huang 등(ICLR 2024)은 단순하지만 불편한 주장을 합니다. LLM이 외부 신호 없이 자신의 추론을 스스로 수정하려고 하면 성능이 개선되지 않고 오히려 악화된다는 것입니다. 도구 기반 비판(tool-grounded critiquing)이 실제로 도움이 되었던 CRITIC에 대한 LOG-013 이후에 발표된 이 논문은, 어떤 종류의 '자가 수정'이 실제이며 어떤 것이 실험 설계상의 부산물인지를 명확히 규명합니다.
논문 내용
Google DeepMind와 UIUC의 Jie Huang, Xinyun Chen, Swaroop Mishra, Huaixiu Steven Zheng, Adams Wei Yu, Xinying Song, Denny Zhou가 집필한 "대규모 언어 모델은 아직 추론을 스스로 수정할 수 없다(Large Language Models Cannot Self-Correct Reasoning Yet)"는 ICLR 2024에서 발표되었습니다. 이 연구의 핵심 주장은 범위는 좁지만 특정 부류의 에이전트 설계에는 치명적입니다. 즉, 내재적(intrinsic) 자가 수정 — 외부 피드백 없이 오직 자신의 판단만을 사용하여 LLM이 스스로의 답변을 검토하고 수정하게 하는 것 — 은 추론 벤치마크에서 일관되게 성능을 저하시킨다는 것입니다. 저자들은 이전의 여러 자가 수정 논문에서 보고된 성능 향상이 미묘한 방법론적 결함에서 비롯되었다고 주장합니다. 해당 논문들은 수정을 멈출 시점을 결정하기 위해 정답지(oracle labels)를 사용했는데, 이는 모델이 이미 틀린 답변만 수정한다는 것을 의미합니다. 이것은 자가 수정이 아니라 정답지에 의한 필터링(oracle-guided filtering)입니다.
주요 개념
- GSM8K에서 GPT-4의 정확도는 95.5%로 시작합니다. 한 차례의 내재적 자가 수정 후에는 91.5%로, 두 번째 수정 후에는 89.0%로 떨어집니다. GPT-3.5는 두 차례에 걸쳐 75.9%에서 74.7%로 하락합니다.
- CommonSenseQA에서는 하락폭이 더 큽니다. GPT-3.5는 단 한 번의 자가 수정만으로 75.8%에서 38.1%로 폭락했고, 두 번째 라운드에서 41.8%로 약간 회복했지만 여전히 기준치보다 훨씬 낮습니다.
- GSM8K의 답변 변화를 분석한 결과, 모델이 정답을 오답으로 바꾸는 경우가 오답을 정답으로 바꾸는 경우보다 더 자주 발생했습니다. 변화의 전체적인 방향은 해롭습니다.
- 정답지 기반 자가 수정(Oracle-guided self-correction)은 성능을 향상시킵니다. GSM8K에서 정답지를 사용한 GPT-4는 95.5%에서 97.5%로, CommonSenseQA의 GPT-3.5는 75.8%에서 89.7%로 향상되었습니다. 하지만 실제 배포 환경에서는 어떤 답변이 틀렸는지 알 수 없습니다.
- 또 다른 인기 있는 아이디어인 다중 에이전트 토론(Multi-agent debate)은 추론 비용을 동일하게 맞췄을 때 단순한 자기 일관성(self-consistency) 방식보다 성능이 낮았습니다. 총 9개의 응답을 생성할 때, 자기 일관성은 GSM8K에서 88.2%에 도달한 반면 다중 에이전트 토론은 83.0%에 그쳤습니다.
- 제약 조건 생성(CommonGen-Hard)은 처음에는 자가 수정이 승리하는 것처럼 보였으나(44% → 67%), 초기 프롬프트를 개선하기만 해도 그 이점이 사라졌습니다(81.8%). 초기 프롬프트가 이미 훌륭한 경우, 자가 수정은 오히려 정확도를 75.1%로 떨어뜨리며 방해가 되었습니다.
유효한 결과와 그렇지 않은 것
핵심 연구 결과는 견고합니다. 수치는 거짓말을 하지 않습니다. GPT-4에게 어떤 것이 틀렸는지 알려주지 않고 수학 답안을 재검토하라고 프롬프트를 주면, 평균적으로 답변의 질이 떨어집니다. 논문이 제시한 직관 또한 옳습니다. LLM은 자신의 추론 결과의 정확성을 신뢰성 있게 판단할 수 없으므로, 답변을 바꾸기로 결정할 때 추측에 의존하게 되고, 그 추측은 맞을 때보다 틀릴 때가 더 많습니다.
일반화 주장에 대해서는 설득력이 조금 떨어집니다. 이 연구는 오로지 추론 및 지식 과제만 테스트했습니다. 글쓰기 스타일, 형식 제약 준수, 독성 완화와 같은 분야에서는 반복적인 수정이 실제로 도움이 된다는 주장이 있으며, 논문은 이러한 부분을 대체로 회피합니다. 저자들도 "평가가 더 간단한 작업에서는 자가 수정이 더 효과적일 수 있다"고 언급하며 이를 인정했지만, 정밀하게 테스트하지는 않았습니다. CommonGen 제약 조건 생성 실험은 시사하는 바가 있지만, 부적절한 초기 프롬프트를 기준으로 삼고 그에 따른 향상을 "자가 수정"이라고 부르는 것은 논문 자체가 다른 연구를 비판할 때 사용한 방법론적 결함과 동일합니다.
또한 이 논문은 훈련된 자가 수정(trained self-correction) 문제를 다루지 않습니다. 2025년의 후속 연구(SCoRe, ICLR 2025, arXiv:2409.12917)는 모델의 결과물에 대해 RL로 훈련된 자가 수정이 MATH에서 +15.6%, HumanEval에서 +9.1%의 향상을 달성했음을 보여주며, 진정한 내재적 개선을 이뤄냈습니다. 따라서 "아직(yet) 자가 수정을 할 수 없다"는 제목은 강한 부정보다는 "아직 학습되지 않았다"는 의미로 보는 것이 적절합니다. 즉, "프롬프트만으로는 자가 수정이 불가능하다"는 것이지 "자가 수정을 배울 수 없다"는 뜻은 아닙니다.
금융 AI에 중요한 이유
장부 기입(ledger write-back) 에이전트에게 주는 시사점은 구체적입니다. Beancount 분개장 입력을 생성한 후 스스로 "이게 맞아 보이나요?"라고 묻고 수정하는 에이전트는 제2의 의견을 얻는 것이 아니라 노이즈를 도입하는 것입니다. 데이터에 따르면 첫 번째 답변이 틀렸을 경우, 자가 검토는 틀린 것을 고치는 만큼이나 맞은 것을 망칠 가능성이 높습니다.
이 논문이 확인해 주는 것은 제가 CRITIC에서 도출한 설계 제약 조건입니다. 외부 오라클 없는 자가 검증은 신뢰할 수 없다는 것입니다. 특히 Beancount의 경우, 외부 오라클을 쉽고 저렴하게 사용할 수 있습니다. 잔액 확인(balance assertion)은 밀리초 단위로 실행되고, 계정 이름은 알려진 계정 차트와 대조하여 검증되며, 금액은 1센트 단위까지 일치해야 합니다. 임시 입력을 제출하고 bean-check를 실행한 후 오류를 구체적이고 구조화된 피드백으로 다시 보내는 에이전트 아키텍처는, 모델에게 "분개장 입력을 검토하라"고 요청하는 것과는 근본적으로 다릅니다. 전자는 장부 엔진을 오라클로 사용하지만, 후자는 오류를 생성한 바로 그 추론 메커니즘에 다시 의존합니다.
프롬프트 설계에 대해서도 미묘한 교훈이 있습니다. CommonGen 실험은 프롬프트가 이미 정밀하고 명시적일 때 자가 수정이 오히려 성능을 저하시킨다는 것을 보여줍니다. 이는 우리가 모든 Beancount 구문 규칙을 명시적으로 기술하는 매우 명확한 트랜잭션 파싱 프롬프트를 작성하는 데 노력을 투자한다면, 그 위에 자가 검토 루프를 추가하는 것이 오히려 정확도에 해가 될 수 있음을 의미합니다. 올바른 아키텍처는 모든 생성 과정이 아니라, 외부 검증에 실패했을 때만 자가 검토를 수행하도록 제어하는 것일 것입니다.
다음 읽을거리
- SCoRe: 강화 학습을 통한 언어 모델의 자가 수정 훈련 (arXiv:2409.12917, ICLR 2025) — 최초의 진정한 내재적 자가 수정 성과를 거둔 RL 기반 접근 방식입니다. 현재 논문이 배제하는 것과 포함하는 것을 이해하는 데 필수적인 맥락입니다.
- LLM은 언제 자신의 실수를 실제로 수정할 수 있는가? LLM 자가 수정에 대한 비판적 설문 (TACL 2024) — 내재적 수정, 훈련 기반 수정, 도구 지원 수정을 구분하여 자가 수정이 작동하는 시점에 대한 체계적인 분류를 제공합니다.
- Self-Refine: 자가 피드백을 통한 반복적 개선 (NeurIPS 2023) — Huang 등이 비판한 주요 논문입니다. 이 논문을 이어서 읽으면 정답지 라벨 가정이 어디에 포함되어 있는지 명확해집니다.
