지난 2025년 7월부터 2026년 2월까지 8개월간 인공지능 연구실에서 관련 논문을 읽고 연구를 진행해보았다. 그 과정에서 인상 깊게 읽었던 논문들을 정리하고 공유하고자 한다.
나는 주로 멀티모달에 관심을 가졌었고, 이미지-텍스트, 비디오-텍스트 모델의 할루시네이션 관련 논문을 읽었다.
먼저 첫번째로 리뷰할 논문은 Hallucination Augmented Contrastive Learning for Multimodal Large Language Model 이다. 해당 논문으로 세미나 발표도 했기 때문에 깊이있게 공부했던거 같다.

먼저 인용수만 보더라도 굉장히 많은 것을 볼 수 있다. 이 논문은 CVPR 2024에 채택된 논문으로, MLLM의 Hallucination 문제를 Representation Learning의 관점에서 분석하고 해결 방법을 제안한다.
1. Introduction
최근 Multimodal Large Language Model(MLLM)은 이미지와 텍스트를 함께 이해하고 처리할 수 있게 되면서 다양한 Vision-Language Task에서 뛰어난 성능을 보여주고 있다. 하지만 MLLM은 여전히 Hallucination이라는 중요한 문제를 가지고 있다. 실제 이미지에는 존재하지 않는 객체를 있다고 설명하거나, 이미지와 일치하지 않는 잘못된 정보를 생성하는 현상이 대표적인 예다.
특히 기존 Contrastive Learning에 hallucination이 포함된 caption을 추가적인 negative example로 활용하는 HACL(Hallucination Augmented Contrastive Learning)을 제안한다.
2. MLLM의 Hallucination 문제
현재 MLLM은 시각적인 정보와 자연어 정보를 통합하여 다양한 멀티모달 task를 수행하고 있다. 하지만 모델이 이미지에 존재하지 않는 정보를 생성하거나 이미지와 다른 내용을 설명하는 Hallucination 문제가 여전히 존재한다. 이 논문에서는 이러한 문제를 단순히 모델의 생성 과정에서 발생하는 오류로 바라보지 않고, Representation Learning의 관점에서 분석한다. 논문에서는 기존 MLLM의 representation을 분석하면서 크게 두 가지 문제를 발견한다.

2.1 Text와 Visual Representation 사이의 Gap
첫 번째 문제는 text representation과 visual representation 사이에 gap이 존재한다는 것이다. 논문의 피규어 (a)를 보면 확인 가능하다.
MLLM에서는 이미지와 텍스트라는 서로 다른 modality를 하나의 모델에서 처리해야 하기 때문에 두 modality의 representation을 효과적으로 alignment하는 것이 중요하다. 하지만 기존 MLLM에서는 visual representation과 text representation 사이에 차이가 존재하기 때문에 모델이 시각 정보를 충분히 활용하지 못할 가능성이 있다.
2.2 Hallucination과 Ground Truth Representation의 혼재
두 번째 문제는 hallucination을 포함한 text representation과 실제 정답인 ground-truth text representation이 서로 얽혀 있다는 것이다. 즉, 모델의 representation space에서 이미지와 일치하는 문장과 이미지와 일치하지 않는 hallucination 문장이 명확하게 분리되지 않는다. 따라서 모델 입장에서는 이미지에 근거한 올바른 문장과 hallucination 문장을 구분하기 어려울 수 있다. 논문에서는 이러한 문제를 해결하기 위해 MLLM의 pretraining 과정에 Contrastive Learning을 적용한다.
특히 기존 Contrastive Learning과 달리 hallucination이 포함된 caption을 추가적인 negative example로 활용한다는 것이 핵심적인 아이디어다.
3. MLLM의 구조
MLLM은 이미지와 텍스트처럼 서로 다른 modality를 하나의 언어 모델에서 처리할 수 있도록 구성된다.
일반적인 MLLM의 구조를 살펴보면 크게 다음과 같은 구성 요소를 가지고 있다.
- Pretrained Vision Encoder
- Learnable Interface Module
- Large Language Model
Vision Encoder는 이미지에서 visual information을 추출하고, 이를 LLM이 이해할 수 있는 형태의 representation으로 변환한다. 이때 Vision Encoder와 LLM 사이에서 서로 다른 modality를 연결하는 역할을 하는 것이 Learnable Interface Module이다. 이 논문에서 집중하는 부분도 바로 이 interface를 어떻게 효과적으로 학습할 것인가이다. MLLM이 서로 다른 modality를 연결하는 과정에서 visual representation과 textual representation 사이에 충분한 alignment가 이루어지지 않는다면 LLM이 시각 정보를 오해하거나 무시할 수 있다. 그리고 이러한 현상이 Hallucination으로 이어질 수 있다.
4. 기존 MLLM의 Representation 분석
논문에서는 기존 MLLM의 representation을 시각화하여 앞서 설명한 문제를 보여준다.
논문에서는 LLaVA의 representation을 Vicuna LLM space로 projection한 결과를 제시한다.
각 representation은 다음과 같이 구분된다. (피규어 (a), (b))
- 파란색 별: 이미지에서 추출한 visual information인 visual token
- 초록색 원: Ground-truth caption
- 빨간색 삼각형: Hallucination이 포함된 caption
먼저 가장 눈에 띄는 특징은 visual representation과 text representation이 서로 명확하게 분리되어 있다는 점이다.
이미지에서 추출된 representation과 텍스트 representation 사이에 상당한 gap이 존재한다. 두 번째 문제는 hallucination caption과 ground-truth caption이 서로 얽혀 있다는 것이다. Hallucination을 포함하고 있는 텍스트와 실제 이미지에 대한 정답 텍스트가 representation space에서 명확하게 구분되지 않는다. 이를 통해 기존 MLLM의 interface가 visual representation을 LLM의 textual representation space로 효과적으로 매핑하지 못하고 있다는 점을 확인할 수 있다. 그리고 이러한 representation의 문제는 모델이 이미지와 일치하지 않는 hallucination text를 생성할 가능성을 높이는 원인이 될 수 있다.
5. HACL이란?
이러한 문제를 해결하기 위해 논문에서는 HACL(Hallucination Augmented Contrastive Learning)을 제안한다.
HACL의 핵심 아이디어는 간단하다. Hallucination이 포함된 텍스트를 Contrastive Learning의 negative example로 사용하는 것이다. 일반적인 Contrastive Learning에서는 서로 대응되는 image-text pair를 positive로 설정하고 대응되지 않는 pair를 negative로 설정한다. HACL에서는 여기에 한 가지를 추가한다. 바로 같은 이미지에서 생성되었지만 실제 이미지와 일치하지 않는 hallucination caption을 negative example로 활용하는 것이다. 이를 통해 모델이 단순히 image와 text representation을 가깝게 만드는 것뿐만 아니라,
- 이미지와 일치하는 text representation은 가까이 배치
- 이미지와 일치하지 않는 hallucination representation은 멀리 배치
학습할 수 있다.
6. HACL의 전체 과정
HACL의 전체적인 학습 과정은 다음과 같다.
먼저 COCO 데이터셋에서 이미지와 ground-truth caption을 가져온다. 이 image-caption pair가 Contrastive Learning의 기본적인 positive pair가 된다. 이미지는 Vision Encoder를 통해 처리하여 visual token을 생성하고, caption은 LLM tokenizer를 통해 text token으로 변환한다. 그리고 GPT-4를 활용하여 해당 이미지에 대한 hallucination caption을 생성한다. 결과적으로 하나의 학습 데이터는 다음과 같은 구조를 가진다.
Image
│
├── Vision Encoder ──> Visual Representation
│
├── Ground Truth Caption ──> Positive Text
│
└── Hallucination Caption ──> Negative Text
이렇게 생성된 hallucination caption을 Contrastive Learning의 negative example로 사용하여 모델이 이미지와 일치하지 않는 representation을 구분하도록 학습한다.
7. HACL의 목표
MLLM에서는 다양한 modality를 연결하는 Learnable Interface가 중요한 역할을 한다. 따라서 이 논문에서의 핵심 목표는 이 interface를 더욱 효과적으로 학습시키는 것이다. 구체적으로는 두 가지 목표를 동시에 달성하고자 한다.

7.1 Visual Representation과 Ground-truth Text의 Alignment
Visual representation과 Ground-truth text representation 사이의 거리를 줄인다.
즉, Image ↔ Ground Truth Caption 의 alignment를 강화한다.
7.2 Visual Representation과 Hallucination Text의 Separation
Visual representation과 Hallucination text representation 사이의 거리를 증가시킨다.
즉, Image ↔ Hallucination Caption 은 서로 구분되도록 학습한다. 결과적으로 모델의 representation space에서 올바른 caption과 hallucination caption을 더욱 명확하게 분리할 수 있도록 만드는 것이다.
8. HACL의 Input과 Representation
HACL의 input은 크게 세 가지다.
- Image
- Ground-truth Caption
- Hallucination Caption
이미지는 여러 개의 image patch로 나뉘어 Vision Encoder를 통과한다. 이를 통해 visual token sequence가 생성되고, 이후 interface를 통해 LLM의 입력 공간으로 projection된다. 한편 Ground-truth caption과 hallucination caption 역시 LLM에 입력된다. 각 sequence를 LLM에 통과시키면 최종적으로 각 sequence를 나타내는 hidden representation을 얻을 수 있다.
논문에서는 이때 sequence의 마지막 토큰인 <EOS> token의 hidden representation을 사용한다. 그 이유는 일반적인 LLM이 decoder-only 구조를 가지고 있기 때문이다. Decoder-only LLM은 입력 sequence를 순차적으로 받아들이며 자기 자신보다 이전에 등장한 토큰만 볼 수 있다. 따라서 각 토큰의 hidden state에는 이전까지 등장한 모든 토큰의 정보가 누적된다.
결과적으로 마지막 토큰인 <EOS>의 hidden representation에는 전체 sequence의 정보가 포괄적으로 반영될 수 있다.
따라서 이를 visual/text sequence를 대표하는 global representation으로 활용한다.
9. Visual Token과 Text Token
각 visual token sequence와 text token sequence는 각각 길이 (m), (n)을 가지며, 추가적으로 global vector 역할을 하는 <EOS> token을 가지고 있다. 이미지와 텍스트를 각각 LLM layer에 통과시키면 최종적으로 hidden representation을 얻을 수 있다. 그리고 이 representation을 Contrastive Learning에 사용한다. 즉, HACL에서는 이미지와 텍스트를 단순히 generation task에 사용하는 것이 아니라, 각각의 representation을 추출하여 서로의 관계를 학습하는 데 활용한다.


10. Contrastive Learning
HACL을 이해하기 위해 먼저 기본적인 Contrastive Learning의 방식을 살펴볼 필요가 있다.
Contrastive Learning에서는 positive pair와 negative pair를 설정하여 representation 사이의 관계를 학습한다.
Text-to-Image Contrastive Learning
Text representation을 anchor로 설정한다.
해당 text와 쌍을 이루는 image를 positive로 사용하고, 다른 image들을 negative로 사용한다.
Text
├── Matching Image → Positive
└── Other Images → Negative
Image-to-Text Contrastive Learning
반대로 Image representation을 anchor로 설정한다.
해당 image와 쌍을 이루는 text를 positive로 사용하고, 다른 text를 negative로 사용한다.
Image
├── Matching Text → Positive
└── Other Texts → Negative
그리고 HACL에서는 여기에 추가로 hallucination caption을 negative example로 사용한다.
11. Contrastive Loss
기본적인 Contrastive Learning의 목적은 positive pair의 similarity를 높이고 negative pair의 similarity를 낮추는 것이다.
배치 사이즈를 (B)라고 하면 Text-to-Image Contrastive Loss에서는 text embedding을 anchor로 두고 같은 쌍의 image embedding을 positive로 사용한다. 그리고 다른 image embedding들을 negative로 사용하여 loss를 계산한다. 반대로 Image-to-Text Contrastive Loss에서는 image embedding을 anchor로 두고 같은 쌍의 text embedding을 positive로 사용한다. 다른 text embedding들은 negative로 사용한다. HACL에서는 이러한 기존 방식에 hallucination caption을 추가적인 negative example로 사용한다. 중요한 점은 hallucination caption을 활용한 contrastive loss가 Image-to-Text 방향에서만 적용된다는 것이다. Text-to-Image Contrastive Loss는 기존의 식을 그대로 사용한다. 결과적으로 모델은 하나의 이미지에 대해 다음과 같은 representation 관계를 학습한다.
12. Pretraining 과정

논문에서는 pretraining enhancement를 위해 pretraining을 두 개의 stage로 나누어 진행한다.
그리고 HACL은 첫 번째 stage의 pretraining에서만 적용된다.
첫 번째 stage에서는 일반적인 generation loss인 (L_G)와 함께 image-to-text, text-to-image contrastive loss를 사용한다.
즉, 전체적인 optimization objective는 다음과 같은 형태로 구성된다.
L = LG + Contrastive Loss
여기서 (LG)는 텍스트를 생성하는 task에서의 일반적인 generation loss를 의미한다. 두 번째 stage에서는 기존 MLLM과 동일한 방식으로 fine-tuning을 진행한다. 따라서 두 번째 stage에서는 contrastive learning을 사용하지 않고 일반적인 generation loss인 (LG)만 사용한다.
13. Hallucination Caption 생성

HACL에서 중요한 역할을 하는 것이 바로 Hallucination Caption이다. Contrastive Learning에서 hallucination을 효과적인 negative example로 사용하기 위해서는 다양한 hallucination caption이 필요하다. 논문에서는 이를 위해 GPT-4를 활용하여 hallucination caption을 생성한다. Ground-truth caption과 비교해보면 실제 이미지에 존재하지 않는 객체나 잘못된 속성 등의 hallucination이 포함된 것을 확인할 수 있다. 이렇게 생성된 hallucination caption이 HACL에서는 negative example로 사용된다. 결국 모델은 단순히 다른 image의 caption을 negative로 학습하는 것이 아니라, 같은 image를 설명하지만 실제로는 잘못된 caption을 negative로 학습하게 된다. 이 점이 기존 Contrastive Learning과 HACL의 가장 중요한 차이점이다.
14. 실험 환경
논문에서는 대표적으로 다음과 같은 MLLM을 활용하여 HACL의 효과를 검증했다.
- MiniGPT-4
- LLaVA
- LLaVA-1.5
모델별로 pretraining에 사용되는 데이터셋의 규모가 다르기 때문에 hallucination caption을 생성하는 비용 역시 달라진다.
MiniGPT-4의 경우 pretraining 단계에서 사용한 데이터셋이 방대한 규모이기 때문에 전체 데이터에 대해 hallucination caption을 생성하는 것은 비용적인 부담이 크다. 따라서 MiniGPT-4에서는 전체 데이터 중 10%에 해당하는 샘플만 추출하여 HACL을 적용했다. 반면 LLaVA와 LLaVA-1.5는 MiniGPT-4에 비해 상대적으로 pretraining 데이터셋이 가볍기 때문에 모든 데이터에 대해 hallucination caption을 생성하여 HACL을 적용했다. 흥미로운 점은 MiniGPT-4에서 전체 데이터의 10%만 활용했음에도 불구하고 성능 향상이 뚜렷하게 나타났다는 것이다.


15. Multimodal Hallucination Benchmark
먼저 HACL의 hallucination 완화 효과를 확인하기 위한 실험이 진행됐다. MiniGPT-4에 HACL을 적용한 모델은 HACL을 적용하지 않은 모델에 비해 전체 score가 눈에 띄게 증가했다. 또한 hallucination 비율 역시 크게 감소했다. 이를 통해 HACL이 실제 MLLM의 hallucination 발생을 줄이는 데 효과적이라는 것을 확인할 수 있다.
16. POPE Benchmark
다음으로는 POPE benchmark를 이용하여 객체 hallucination을 평가했다. POPE에서는 질문 유형에 따라 크게 세 가지 설정을 사용한다.
- Random : 무작위 샘플에서 객체에 대한 질문을 하는 설정이다.
- Popular : 데이터셋에서 자주 등장하는 객체에 대해 질문하는 설정이다.
- Adversarial : 모델이 헷갈리기 쉬운 질문을 사용하는 설정이다.
19. Ablation Study

HACL의 핵심 요소인 hallucination caption이 실제 성능 향상에 기여하는지 확인하기 위해 Ablation Study를 진행했다.
실험에서는 다음 세 가지 모델을 비교했다.
- Contrastive Learning을 사용하지 않은 모델
- 일반적인 Contrastive Learning을 적용한 모델
- Hallucination Caption을 추가한 HACL 모델
먼저 pretraining 과정에서 Contrastive Learning을 적용하지 않은 기존 모델과 비교했을 때, 일반적인 Contrastive Learning만 적용해도 성능이 어느 정도 향상되는 것을 확인할 수 있다. 하지만 성능 향상에는 한계가 있었다. 여기에 hallucination caption을 추가한 HACL을 적용하면 더욱 뚜렷한 성능 향상이 나타났다. 이를 통해 단순히 image-text representation의 alignment를 개선하는 것뿐만 아니라, hallucination caption을 명시적인 negative example로 사용하는 것이 성능 향상에 중요한 역할을 한다는 것을 확인할 수 있다.
20. Representation Visualization
마지막으로 논문에서는 HACL을 적용했을 때 representation space가 어떻게 변화하는지를 시각화했다. 세 가지 경우를 비교할 수 있다.
(a) HACL을 적용하지 않은 경우
Hallucination과 ground truth가 서로 섞여 있기 때문에 모델이 hallucination과 정답을 구별하기 어려운 상태다.
또한 visual representation과 text representation 사이에도 modality gap이 존재한다.
(b) 일반적인 Contrastive Learning만 적용한 경우
Contrastive Learning을 적용하면서 visual representation과 text representation 사이의 modality gap은 확실하게 줄어든다.
하지만 hallucination과 ground-truth representation 사이의 구분은 여전히 명확하지 않다.
(c) HACL을 적용한 경우
HACL을 적용하면 visual representation과 text representation 사이의 alignment가 향상된다.
동시에 hallucination representation과 ground-truth representation도 명확하게 분리된다.
즉, 논문에서 처음 문제로 제시했던 두 가지 문제가 동시에 개선되는 것을 확인할 수 있다.
21. Conclusion
이번 논문에서는 MLLM에서 발생하는 hallucination 문제를 Representation Learning의 관점에서 분석하고 HACL(Hallucination Augmented Contrastive Learning)을 제안했다. 기존 MLLM에서는 크게 두 가지 문제가 존재했다.
첫 번째는 visual representation과 text representation 사이에 modality gap이 존재한다는 것이다. 두 번째는 hallucination text와 ground-truth text가 representation space에서 명확하게 분리되지 않는다는 것이다. 논문에서는 이러한 문제를 해결하기 위해 hallucination caption을 생성하고 이를 Contrastive Learning의 negative example로 활용했다. 이를 통해 다음과 같은 representation 관계를 학습하도록 만들었다.
Visual Representation
↓
Ground Truth Text와 가까워짐
+
Hallucination Text와 멀어짐
실험 결과 HACL을 적용한 모델은 hallucination benchmark와 POPE에서 hallucination이 감소했을 뿐만 아니라 VQA, MME와 같은 일반적인 multimodal benchmark에서도 성능이 향상됐다. 또한 Ablation Study를 통해 단순한 Contrastive Learning보다 Hallucination Caption을 negative example로 활용하는 것이 성능 향상에 중요한 역할을 한다는 것도 확인했다. 결국 이 논문의 핵심 아이디어는 모델에게 정답만 보여주는 것이 아니라, 이미지와 맞지 않는 hallucination을 명시적인 negative example로 함께 제공하여 무엇이 잘못된 정보인지 구분하도록 학습시키는 것이다. 이를 통해 MLLM의 visual-text alignment를 향상시키면서 동시에 hallucination을 완화할 수 있다는 점에서 의미가 있는 연구라고 생각한다.
22. 논문을 읽고 느낀 점
이 논문에서 특히 흥미로웠던 부분은 hallucination을 단순히 generation 단계에서 발생하는 오류로 바라보지 않고 representation space의 문제로 분석했다는 점이다. 기존에는 hallucination을 줄이기 위해 생성 결과를 평가하거나 decoding 과정에서 모델의 출력을 제어하는 방법을 생각하기 쉽다. 하지만 이 논문에서는 그보다 앞선 단계인 representation alignment 자체를 개선하려고 했다. 특히 hallucination caption을 직접 negative example로 사용했다는 점이 인상적이었다. 일반적인 Contrastive Learning에서는 서로 다른 image-text pair를 negative로 사용하는 경우가 많다.
반면 HACL에서는 같은 이미지에 대해 생성된 hallucination caption을 negative로 사용한다. 따라서 모델 입장에서는 단순히 "다른 이미지에 대한 문장"을 구분하는 것이 아니라, 같은 이미지에 대해서도 어떤 문장은 올바른 설명이고 어떤 문장은 잘못된 설명인지를 학습할 수 있다. 또한 HACL을 적용한 결과 hallucination benchmark뿐만 아니라 VQA와 MME 같은 일반적인 multimodal task에서도 성능이 향상됐다는 점도 흥미로웠다. 결과적으로 이 논문은 MLLM의 hallucination 문제를 해결하기 위해서는 단순히 모델의 생성 결과를 수정하는 것뿐만 아니라, 모델 내부에서 visual information과 textual information이 어떻게 표현되고 정렬되는지를 함께 고려해야 한다는 점을 보여주는 연구라고 생각한다.