추론(reasoning)은 오답을 한곳으로 몰고, Self-Consistency는 그걸 못 잡는다
Reasoning Concentrates Errors, and Self-Consistency Never Notices
TL;DR Highlight
같은 가중치로 reasoning만 켰더니 오답이 한 값으로 쏠려 다수결이 못 걸렀다
Who Should Read
LLM에 여러 번 샘플링해 다수결(self-consistency)이나 confidence 가중 투표로 답을 고르는 백엔드 개발자
Core Mechanics
- reasoning을 켜면 오답이 같은 값으로 모인다
- 같은 Qwen3 가중치에서 thinking 플래그만 바꿨다.
- 오답 두 개를 뽑았을 때 서로 같을 확률이 10개 비교 모두에서 올랐다.
- 서술형 문제에서는 서로 다른 오답 종류가 non-reasoning의 0.43~0.65배로 줄었다.
- 정답률은 올랐지만 다수결 이득은 상쇄됐다
- reasoning은 오답을 몰아 다수결을 해친다.
- 동시에 다수결이 승부를 가르는 어려운 문제 자체가 2.7배 줄었다.
- 두 효과가 거의 상쇄돼 정확도 숫자에는 둘 다 안 보인다.
- confidence 가중 투표는 다수결을 못 이긴다
- 7가지 가중 방식, 8개 모델, 5개 벤치마크의 280개 조합을 봤다.
- 보정 후 단순 다수결보다 유의하게 나은 조합은 하나도 없었다.
- 가중 투표는 98.5%에서 다수결과 같은 답을 냈다.
- 신호의 방향은 모델 설정에 따라 뒤집힌다
- 같은 8B 가중치에서 정답 토큰 log-probability가 reasoning을 끄면 정답 신호였다.
- reasoning을 켜면 오답 신호가 됐다.
- 신호가 신뢰도 신호인지는 모델별로 따로 확인해야 한다.
Evidence
- 오답 충돌 확률이 10개 비교 모두 상승
- 같은 가중치에서 reasoning on/off 비교 10개 모두에서 on이 높았고, sign test p=0.00098이다.
- MATH-500 8B는 0.379에서 0.509, 32B는 0.297에서 0.487로 올랐다.
- 정답률 차이를 맞춘 9개 비교에서도 모두 올랐다(p=0.00195).
- 서로 다른 오답 수가 절반 수준으로 감소
- MATH-500 8B에서 reasoning off는 522가지, on은 339가지 오답을 냈다.
- 객관식은 선택지가 같아도 충돌이 +0.121~+0.181 올랐다.
- 다수결이 갈리는 '위험 구간'이 2.72배 축소
- 정답 샘플이 8개 중 3개 이하인 문제 비율이 평균 0.369에서 0.136으로 줄었다.
- 10개 셀 모두에서 줄었다(p=0.00098).
- 가용 여유분 기준 개선율은 reasoning 0.250, non-reasoning 0.249로 같았다.
- 280개 조합에서 가중 투표 승자 없음
- 보정 전 p<0.05는 5개로, 우연 기대치 14.0보다 적었다.
- 가중 투표와 다수결이 다른 경우 가중 쪽이 맞은 비율은 56.3%였다.
- 6신호 학습 조합은 학습 안 한 벤치마크에서 평균 -0.0003, 5/8 모델에서 손해였다.
How to Apply
- 다수결에 confidence 가중을 넣기 전 A/B부터 하기
- 오늘 자체 평가셋으로 k=8 단순 다수결과 가중 투표를 같은 샘플로 비교하라.
- 두 방식 답이 다른 문제 수와 그 중 가중 쪽이 맞은 비율을 세어라.
- 차이가 거의 없으면 가중 로직을 빼고 단순 다수결로 가라.
- reasoning 모델 평가에 오답 충돌 지표 추가하기
- 문제별로 틀린 샘플끼리 답이 같은 쌍의 비율을 계산하라.
- 이 값이 높으면 샘플을 늘려도 다수결이 오답을 못 거른다고 보라.
- 정확도 옆에 응답률과 잘림률 같이 기록하기
- 답 파싱 실패와 토큰 한도 도달 비율을 데이터셋별로 로그에 남겨라.
- 모델 간 비교 때 응답률 차이를 먼저 확인하라.
- log-probability 신호는 모델·모드별로 검증 후 쓰기
- 배포할 모델·설정 조합에서 신호와 정답의 관계 방향을 먼저 확인하라.
- 방향이 다른 설정으로 학습한 임계값을 그대로 옮기지 마라.
Try It
# 파이썬에 붙여넣어 실행: 문제별 샘플 답 리스트로 오답 충돌 확률 계산 (논문 지표의 간이 버전)
from collections import Counter
def collision(answers, truth):
wrong = [a for a in answers if a != truth]
n = len(wrong)
if n < 2:
return None
c = Counter(wrong)
return sum(k * (k - 1) for k in c.values()) / (n * (n - 1))
# {{문제별 샘플 8개 답, 정답}}으로 바꿔 넣기
print(collision(["3", "3", "5", "3", "7", "5", "2", "2"], "2"))
# 이어서 해 볼 것: 같은 문제셋에서 reasoning on/off 값을 각각 구해 비교하고, 문제당 오답이 2개 이상인 문제만 평균 내라.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)
Self-consistency assumes that independent samples disagree when a model is unsure, so agreement is evidence of correctness. Holding weights fixed and toggling only a reasoning mode, over five benchmarks and 74,944 samples, we show that reasoning concentrates a model's errors: the probability that two independently drawn wrong answers coincide rises in all ten dataset-scale comparisons (p = 0.00098), and in nine of nine after restricting both arms to the problems each gets wrong. Where the answer space is unbounded, reasoning cuts the distinct answers produced to 0.43-0.65 of the non-reasoning count; where it is bounded, both arms hold an identical option set and reasoning concentrates mass on it instead, which no positional prior can explain at fixed weights. The aggregate cost is smaller than the mechanism predicts, because reasoning also shrinks the set of problems where answer diversity can decide anything, in ten of ten cells and by 2.7x; normalized for available headroom, both arms convert a quarter of it in domain. Confidence weighting does not recover what is left. Across 280 method-dataset-model combinations on eight models and five benchmarks, not one beats plain majority voting after correction; weighted voting agrees with it on 98.5% of problem-method pairs and is right 56.3% of the time on the rest; and a signal's direction can invert within fixed weights, with answer log-probability predicting correctness when reasoning is off and error when it is on. A learned six-signal combination gains nothing out of domain. Confidence signals should be evaluated on decisions, not on discrimination.