논문 리뷰/LVLM

[논문리뷰] Steering Hallucination in LVLMs via Representation Engineering

리미61 2026. 7. 5. 23:33

https://aclanthology.org/2025.emnlp-main.725/

 

SHARP: Steering Hallucination in LVLMs via Representation Engineering

Junfei Wu, Yue Ding, Guofan Liu, Tianze Xia, Ziyue Huang, Dianbo Sui, Qiang Liu, Shu Wu, Liang Wang, Tieniu Tan. Proceedings of the 2025 Conference on Empirical Methods in Natural Language Processing. 2025.

aclanthology.org

 


Introduction

기존 연구들은 환각의 원인을 크게 두 가지 관점에서 설명한다. 외부 요인은 학습 데이터의 편향에 의해 발생하며, 내부 요인은 모델 구조 자체의 한계에서 비롯된다고 본다.

하지만 기존 연구들은 환각을 하나의 현상으로 취급하여, 발생 원인별로 구분해서 대응하지 못했다. 본 논문은 환각의 원인을 다음 두 가지로 구분한다.

  1. Textual Prior Dependence
    • 모델이 이미지보다 학습된 언어적 통계와 사전지식에 의존하여 답변하는 경우
  2. Vision-Context Conflict
    • 질문에 잘못된 전제가 포함되어 있을 때, 이미지보다 텍스트를 신뢰하여 답변하는 경우

또한, 다음 두 가지 관점에서 내부 표현을 분석한다.

  1. Intra-cause
    • 동일한 원인 내에서 truthful 응답과 hallucinated 응답이 내부 표현상 구분되는가?
  2. Inter-cause
    • 서로 다른 원인에서 발생한 hallucination이 내부 표현상 구분되는가?

실험 결과, 두 경우 모두 높은 분리 가능성을 보였으며, 모델 내부에는 환각의 원인을 구분하는 표현이 이미 존재함을 확인하였다. SHARP는 이러한 신호를 활용하여 추론 시점에서 내부 표현을 조정한다.

SHARP의 전체 과정은 다음과 같다.

  1. 자극 기반 데이터 수집
    • 서로 다른 환각 유발 조건 하에서 원인별 truthful/hallucinated 데이터를 수집한다.
  2. 원인별 Steering Vector 추출
    • 각 원인에 대해 truthful 응답과 hallucinated 응답의 hidden activation을 비교하여 steering vector를 도출한다.
  3. Hallucination Intervention
    • 추론 과정에서 steering vector를 activation에 주입하여 hallucination 방향에서 멀어지도록 조정한다.

Representation Engineering

LVLM이 텍스트를 생성할 때, 각 layer를 거치면서 hidden state(residual stream)가 지속적으로 업데이트된다. 이 벡터에는 모델이 현재 상황을 어떻게 이해하고 있는지에 대한 정보가 압축되어 있다.

Representation Engineering(RE)은 특정 행동이나 특성이 hidden representation 공간의 특정 방향으로 표현된다고 가정한다. 해당 방향을 찾아낸 뒤, 모델의 가중치는 수정하지 않고 inference 단계에서 activation에 벡터를 더하거나 빼서 모델의 행동을 제어한다.

truthful 응답과 hallucinated 응답의 hidden state는 표현 공간 내에서 서로 다른 영역에 분포한다. 두 영역의 평균 위치 차이를 계산하면 steering vector를 얻을 수 있으며, inference 시 activation에 이를 더함으로써 모델의 내부 상태를 truthful 영역 방향으로 이동시킬 수 있다.

즉, 모델 내부에 흐르는 표현 벡터를 조정하여 원하는 행동을 유도하는 방식이다.

대표적인 연구는 다음과 같다.

  • ActAdd
    • 특정 개념에 대응하는 방향 벡터를 찾아 activation에 주입하는 방법
  • RepE
    • 표현 공간의 벡터 조작을 통해 생성 내용의 사실성을 제어할 수 있음을 보인 방법

기존 연구들은 주로 LLM에 적용되었으며, 이를 LVLM 환경으로 확장한 것이 본 논문의 핵심 아이디어이다.


Analysis: Diagnosing Hallucination via Representation Separability

본 논문은 LVLM 내부 표현에 hallucination 신호가 실제로 인코딩되어 있는지를 분석한다.

1. Textual Prior (T)

Textual Prior는 모델이 이미지보다 학습된 언어적 통계에 의존하여 환각을 생성하는 경우를 의미한다.

예를 들어, 이미지에는 포크만 존재하지만, "이 식탁에 있는 물건을 설명해 주세요"라는 질문에 대해 모델이 "포크, 나이프, 접시가 있습니다"라고 답할 수 있다.

이는 학습 과정에서 포크와 나이프가 함께 등장하는 빈도가 높기 때문에, 모델이 이미지를 충분히 참고하지 않고 언어적 사전지식에 의존했기 때문이다.

즉, 환각의 원인이 모델 내부의 언어적 편향에 존재한다.


2. Vision-Context Conflict (C)

Vision-Context Conflict는 질문 자체가 잘못된 전제를 포함하고 있는 경우를 의미한다.

예를 들어, 이미지에는 빨간 자동차가 존재하지만, 질문이 "이 파란 자동차는 어디에 주차되어 있나요?"라고 주어졌을 때, 모델이 "파란 자동차는 도로 옆에 주차되어 있습니다"라고 답하는 상황이다.

이 경우 모델은 시각 정보를 무시하고, 질문에 포함된 잘못된 전제를 그대로 수용하여 답변한다.

즉, 환각의 원인이 질문의 misleading premise에 존재한다.

본 논문은 이 두 가지를 서로 다른 실패 경로로 간주하고 독립적으로 분석한다.


Data Construction

각 원인 $(m \in {T, C})$에 대해 truthful 응답과 hallucinated 응답으로 구성된 데이터셋 (D(m))을 구축한다.

또한, 두 원인의 데이터를 통합한

$$D_{inter}=D(T)\cup D(C)$$

를 추가로 구성하여 inter-cause 분석에 활용한다.

  • Textual Prior(T)
    • HaloQuest의 insufficient context 서브셋 사용
  • Vision-Context Conflict(C)
    • HaloQuest의 false premises 서브셋 사용

Probing Method

각 layer의 residual stream에서 마지막 입력 토큰의 activation을 추출한다.

이 activation을 기반으로 layer별 logistic regression classifier를 학습하여 다음 두 가지를 분석한다.

  1. Intra-cause Probing
    • 동일한 원인 내에서 truthful 응답과 hallucinated 응답을 구분할 수 있는가?
  2. Inter-cause Probing
    • Textual Prior와 Vision-Context Conflict로 인해 발생한 hallucination을 서로 구분할 수 있는가?

Intra-cause Probing

Intra-cause probing은 동일한 원인 내에서 truthful 응답과 hallucinated 응답이 구분 가능한지를 분석한다.

실험 결과, layer가 깊어질수록 AUROC가 증가하며, 약 10~15층 부근에서 안정화되는 경향을 보인다.

이는 모델이 정보를 처리하는 과정에서 자신의 응답이 hallucination인지 여부를 점차 명확하게 내부 표현으로 인코딩하고 있음을 의미한다. 따라서 early~mid layer가 이러한 구분 능력을 형성하는 데 중요한 역할을 수행한다고 볼 수 있다.


Inter-cause Probing

Inter-cause probing은 서로 다른 원인에서 발생한 hallucination이 내부 표현상 구분 가능한지를 분석한다.

실험 결과, 높은 AUROC를 기록하였으며, 이는 hallucination이 하나의 단일 현상이 아니라 원인별로 서로 다른 activation pattern을 가진다는 것을 의미한다.

즉, 모델은 "왜 이러한 환각이 발생했는가"에 대한 정보를 암묵적으로 내부 표현에 인코딩하고 있다.

따라서 환각 원인별 internal representation이 분리 가능하며, SHARP는 이러한 특성을 기반으로 cause-specific steering vector를 추출한다. 원인이 다르면 표현도 다르므로, 원인별로 서로 다른 방식의 개입이 가능하다는 점이 본 논문의 핵심 동기이다.


Method

SHARP는 다음과 같은 세 단계로 구성된다.

  1. 원인별 데이터 구축
  2. Contrastive Analysis를 통한 Steering Vector 추출
  3. Activation Steering을 통한 Inference 개입

(1) 원인별 데이터 구축

데이터셋은 HaloQuest 벤치마크를 사용한다.

  • $(D_T)$ (Textual Prior)
    • HaloQuest의 insufficient context 서브셋 사용
  • $(D_C)$ (Vision-Context Conflict)
    • HaloQuest의 false premises 서브셋 사용

Faithful/Hallucinated 라벨링

  1. 이미지-질문 쌍을 base LVLM에 입력하여 응답을 생성한다.
  2. LLM-as-a-Judge를 이용하여 응답의 정답 여부를 판단한다.
  3. 판정 결과를 기반으로 truthful/hallucinated 데이터로 분리한다.
  • $(D_T \rightarrow D_{T}^{truth}, D_{T}^{hallucination})$
  • $(D_C \rightarrow D_{C}^{truth}, D_{C}^{hallucination})$

(2) Contrastive Analysis를 통한 Steering Vector 추출

각 원인 $(m \in {T, C})$에 대해 truthful 그룹과 hallucinated 그룹의 hidden representation 평균을 계산하고, 그 차이를 cause-specific steering vector로 정의한다.

  1. 입력 $((v, x))$에 대해 layer $(\ell)$의 마지막 토큰 hidden state $(h_{\ell}(v, x))$를 추출한다.
  2. $(D(m)_{truth})$의 hidden state 평균을 계산한다.
  3. $(D(m)_{hallucination})$의 hidden state 평균을 계산한다.
  4. 두 평균의 차이를 steering vector로 사용한다.

(3) Activation Steering During Inference

Inference 과정에서는 미리 선택한 특정 layer $(\ell^*)$에서 activation steering을 수행한다.

모델이 응답을 생성하는 매 토큰마다 원래 hidden state에 Textual Prior 벡터와 Vision-Context Conflict 벡터를 조합하여 더해줌으로써, 내부 표현을 hallucination 방향에서 truthful 방향으로 이동시킨다.