자세한 내용은 논문을 참고하세요.
Why Language Models Hallucinate : https://arxiv.org/pdf/2509.04664
Background
1. Hallucination
- Hallucination은 language model이 사실이 아닌 내용을 그럴듯하게 생성하는 현상이다.
- 단순히 틀린 답을 하는 것이 아니라, 확신 있는 말투로 plausible한 false statement를 생성한다는 점이 문제이다.
- 예를 들어 모델이 잘 모르는 사람의 생일이나 논문 제목을 물었을 때, “모른다”고 답하지 않고 실제처럼 보이는 날짜나 제목을 만들어낼 수 있다.
2. Uncertainty
- 이 논문에서 중요한 관점은 모델이 모르는 것을 모른다고 말하지 않는 이유이다.
- 저자들은 hallucination이 단순히 모델 구조의 문제가 아니라, 학습과 평가 방식이 추측을 보상하기 때문에 발생한다고 본다.
- 즉, 모델은 불확실할 때 IDK를 선택하기보다, 시험을 보는 학생처럼 가장 그럴듯한 답을 고르는 방향으로 최적화된다.
Introduction
Language Model은 왜 모르는 질문에 대해 “I don’t know”라고 말하지 않고, 그럴듯하지만 틀린 답을 생성하는가?
- 저자들은 hallucination이 “신비로운 현상”이 아니라, 통계적으로 자연스럽게 발생하는 error라고 설명한다.
- 특히 hallucination은 크게 두 단계에서 발생하고 유지된다.
Pretraining 단계에서는 통계적 한계로 인해 error가 발생하고,
Post-training 단계에서는 평가 방식 때문에 guessing이 계속 보상된다.
Method
1. Pretraining에서 Hallucination이 생기는 이유

- Pretraining 단계에서 language model은 대규모 corpus의 text distribution을 학습한다.
- 이 때 모델의 목표는 문장이 사실인지 아닌지를 직접 판단하는 것이 아니라, 그럴듯한 text distribution을 잘 따라가는 것이다.
- 저자들은 이를 binary classification 문제로 연결한다.
Is-It-Valid
“이 response가 valid한가, error인가?”
- 즉, 어떤 문장이 valid한지 판단하는 binary classification도 어렵다면, 그보다 더 어려운 text generation에서는 자연스럽게 error가 발생할 수밖에 없다는 것이다.
generative error rate ≳ 2 × IIV misclassification rate
- 이 식은 valid/error를 구분하는 문제에서 실수가 많으면, generation에서도 hallucination이 발생할 가능성이 커진다는 의미이다.
2. Arbitrary Facts
- 생일, 논문 제목, 특정 인물의 세부 정보처럼 패턴이 없는 사실은 모델이 학습하기 어렵다.
- 자주 등장하는 사실은 모델이 비교적 잘 기억할 수 있다.
- 하지만 학습 데이터에 한 번만 등장하거나 거의 등장하지 않는 사실은 불확실성이 크다.
학습 데이터에 거의 없는 사실은 모델이 “기억”했다기보다 “추측”하게 된다.
- 저자들은 Good-Turing estimator의 관점으로, 한 번만 등장한 singleton fact가 많을수록 unseen fact에 대한 hallucination 가능성도 커진다고 설명한다.
3. Poor Model
- Hallucination은 지식 부족뿐만 아니라, model 자체가 해당 문제를 잘 표현하지 못할 때도 발생한다.
- 예를 들어 “DEEPSEEK에 D가 몇 개 있는가?” 같은 단순한 letter counting 문제에서도 모델이 틀릴 수 있다.
- 이는 language model이 단어를 character 단위가 아니라 token 단위로 처리하기 때문에 발생할 수 있다.
D-E-E-P-S-E-E-K로 보면 D는 1개이지만, token 단위 표현에서는 이런 counting이 자연스럽지 않을 수 있다.
- 즉, 어떤 문제는 모델이 알고 모르고의 문제가 아니라, 현재 모델 구조나 reasoning 능력이 그 문제를 잘 다루지 못하는 문제일 수 있다.
4. Additional Factors
Hallucination의 원인은 하나가 아니다.
Distribution shift
- 학습 데이터와 다른 유형의 질문이 들어오면 모델이 틀릴 수 있다.
GIGO(Garbage In, Garbage Out)
- 학습 데이터 자체에 잘못된 정보가 있으면 모델도 이를 따라 생성할 수 있다.
Computational hardness
- 계산적으로 어려운 문제는 아무리 강한 모델이라도 안정적으로 맞히기 어렵다.
Post-training
1. 왜 Post-training 이후에도 Hallucination이 남는가?
- Post-training은 모델을 더 안전하고 유용하게 만드는 과정이다.
- 하지만 저자들은 현재의 benchmark와 leaderboard가 여전히 hallucination을 강화한다고 본다.
대부분의 평가는 정답이면 1점, 틀리거나 모른다고 하면 0점이다.
- 이 경우 모델 입장에서는 “모르겠습니다”라고 말하는 것보다, 찍어서라도 답하는 것이 더 유리하다.
- 즉, binary grading에서는 uncertainty를 표현하는 행동이 손해가 된다
2. Evaluation이 Guessing을 보상한다
- MMLU, GPQA, MATH, SWE-bench 등 많은 benchmark는 accuracy 중심으로 평가된다.
- 이런 구조에서는 모델이 불확실성을 표현해도 점수를 얻지 못한다.
- 그래서 모델은 사용자에게 더 정직한 답변을 하기보다, benchmark에서 점수를 얻는 방향으로 학습된다.
모델은 실제 대화 상황이 아니라, 항상 시험을 보는 상태로 최적화된다.
Solution
1. IDK를 평가에 반영
- 저자들은 새로운 hallucination benchmark를 추가하는 것만으로는 부족하다고 주장한다.
- 중요한 것은 기존의 주요 benchmark 자체를 수정하는 것이다.
- 즉, 모델이 모를 때 “I don’t know”라고 답하는 것을 무조건 0점 처리하면 안 된다.
2. Explicit Confidence Target
confidence가 t 이상일 때만 답하라.
정답은 +1점, 오답은 penalty, IDK는 0점.
- 예를 들어 confidence threshold가 0.9라면, 모델은 정말 확신할 수 있을 때만 답하고, 그렇지 않으면 IDK를 선택하는 것이 합리적이다.
Answer only if you are confident enough.
- 이렇게 평가 방식을 바꾸면 모델은 무조건 답을 생성하는 것이 아니라, 정확히 아는 것과 모르는 것을 구분하는 방향으로 학습될 수 있다.
Discussion
- RAG나 Search는 외부 문서를 참고하기 때문에 hallucination을 줄일 수 있다.
- 하지만 retrieval이 실패하거나, 검색된 문서가 불충분하거나, 평가가 여전히 guessing을 보상한다면 hallucination은 남을 수 있다.
- 따라서 RAG는 해결책 중 하나이지만, hallucination의 근본 원인은 모델 학습과 평가 체계 전체에서 함께 봐야 한다.