[EMNLP 2024] Investigating and Mitigating Object Hallucinations in Pretrained Vision-Language (CLIP) Models

오늘 리뷰할 논문은 Vision-Language Models(VLM)에서 발생하는 object hallucination 문제를 찾고, 이를 완화하는 방법에 대해 다룹니다.

VLM은 이미지 캡셔닝, 시각적 질문 응답 등 다양한 작업에서 뛰어난 성능을 보여주지만, 존재하지 않는 객체를 생성하는 Object Hallucination 문제를 발생합니다. 저자는 대표적인 VLM인 CLIP에서도 이런 문제가 발생하는지 확인할 수 있는 dataset를 구축하여 이를 확인하였고, object hallunication을 완화하는 방법을 제안하였습니다.


1. Introduction

최근 VLM(Vision-Language Models)은 Image Captioning, VQA, Visual Grounding 등 image-text를 통합적으로 이해해야 하는 task에서 뛰어난 성능을 보이고 있습니다. 그러나 흔히 LLM에서 Hallucination이 쉽게 발생한다고 알고계실텐데, VLM 모델에서도 Hallucination이 존재한다고 합니다. 예를 들어, 존재하지 않는 객체를 생성하는 Object Hallucination, 공간적 관계를 잘못 이해하는 Spatial Hallucination, 객체의 속성을 잘못 생성하는 Attribute Hallucination이 있습니다. 당연히 이런 Hallucination은 모델의 성능 및 신뢰성을 떨어뜨리는 문제라 개선이 필요합니다.

본 논문에서는 여러 Hallucination 중에서도 Object Hallucination 문제에 초점을 맞추었습니다. Object Hallucination의 예시는 상단 이미지에서 확인할 수 있는데요, 우리가 봤을 땐 분명히 이미지에는 새가 없지만 환각 답변으로 “그 위를 나는 새”가 추가된 것을 알 수 있습니다.

실제로 CLIP에서도 Object Hallucination이 발생하는지 확인하기 위해 저자는 Object Hallucination Detection (OHD-Caps) 이라는 데이터셋을 제안하였습니다. 이를 통해, 환각이 단순히 비전과 언어 간의 상호작용에서 발생하는 것이 아니라 CLIP 모델 자체에서도 발생함을 밝혔죠. 또한 저자는 이를 해결하기 위해 negative samples을 활용한 counterfactual data augmentation 방법을 제안하였습니다. 자세한 내용은 다음 섹션에서 자세하게 다뤄보도록 하겠습니다.

2. The OHD-Caps Benchmark

VLM의 객체 환각 문제를 평가하기 위해 기존에 여러 데이터셋이 개발되었다곤 합니다. 그러나 이런 데이터셋을 CLIP 모델에 적용한 결과는 부재하여, 저자는 CLIP 모델의 환각 문제를 평가하고자 새로운 OHD-Caps(Object Hallucination Detection benchmark) 벤치마크를 제안하였습니다. 해당 데이터셋을 어떻게 생성하였는지 알아보겠습니다.

2.1 Dataset Construction

CLIP은 이미지를 이해하고 텍스트를 예측하는 데 강점을 가진 모델입니다. 이를 활용해 객체 환각 문제를 평가하기 위해서는, 올바른 caption이 포함된 이미지와 환각 내용을 추가한 잘못된 설명을 함께 제공하여 모델이 올바른 텍스트를 정확히 선택할 수 있는지 확인해야 합니다.

Inserting Hallucinatory Objects

이전 연구에 따르면, VLM은 데이터셋에서 자주 등장하는 객체에 대해 환각 반응을 더 자주 생성하는 경향이 있습니다. 이를 바탕으로, 저자는 올바른 caption에 환각 객체를 삽입하여 negative 샘플을 생성하였습니다. 기존 캡션에 환각 객체를 삽입하려면, 먼저 이미지에서 실제로 존재하는 객체를 찾고, 환각 객체인지 아닌지 확인하는 과정이 필요합니다. 이를 위해 저자는 SEEM을 사용하여 이미지 내 segmentation을 수행하고, 이를 기반으로 환각 객체를 선택하였다고 합니다.
(여기서 SEEM은 [NeurIPS 2023]Segment Everything Everywhere All at Once라는 Segmentation 방법론입니다.)

저자가 정의한 환각 객체는 세 가지 유형으로 나눌 수 있습니다: random(랜덤 객체), popular (데이터셋에서 가장 빈도가 높은 객체), 그리고 adversarial (segmentation으로 검출한 객체와 빈도가 높은 객체)입니다. 각 카테고리에는 세 개의 객체를 포함하고, 다양한 환각 샘플을 생성하기 위해, 각 카테고리에서 1~3개의 객체를 삽입해 총 7개의 negative sample을 생성하였습니다.

생성된 텍스트에 환각 객체를 적절한 위치에 삽입하기 위해 저자는 GPT-4를 활용했고, 프롬프트는 상단 이미지 중 Add_Prompt라고 합니다. 정리하면, SEEM을 통해 이미지에 존재하는 객체를 찾고, 환각 객체를 캡션에 넣음으로써, 모델이 환각된 텍스트를 얼마나 정확히 구분할 수 있는지 평가하고자 한 것이죠.

Removing existing Objects

저자는 환각 객체를 삽입하는 것 외에도 캡션에서 실제 객체를 제거한 텍스트도 생성하였습니다. 이미지에서 1~2개의 객체를 무작위로 선택해 캡션에서 제거하고, 이를 상단에 있는 Remove_Object_Prompt를 활용해 GPT-4로 처리하였다고 합니다. 또한, 이미지에 없는 객체가 캡션에 포함된 경우를 고려해 객체, 색상, 속성 등을 변경하는 Alter_Object_Prompt도 사용하였ㅅ브니다.

저자는 COCO, Flickr30K, Nocaps 데이터셋에서 각 500개의 이미지를 기반으로 negative 샘플을 생성하였고, 이미지당 27개의 negative samples을 만들 수 있었다고 합니다. 여기서, Nocaps 데이터셋은 COCO 데이터셋에 포함되지 않은 객체를 포함하기 때문에, 모델의 새로운 클래스 (unseen) 에 대한 일반화 성능을 평가할 수 있다고 합니다.

지금까지 설명드린 negative sample 생성 방식은 상단 그림과 같습니다. 원래의 이미지와 캡션에 대해서 insert 혹은 remove하여 오른쪽 하늘색 박스와 같은 hallucination을 평가할 수 있는 negative 박스를 생성할 수 있었습니다.

2.2 Evaluation and Analysis

이제 저자가 생성한 OHD-Caps을 가지고 CLIP을 포함한 여러 모델을 평가해보겠습니다. 평가는 아주 간단합니다. 각 이미지는 올바른 캡션과 27개의 nagetive samples가 있을 때, 모델은 이미지와 캡션 후보 간의 유사도를 계산하고 올바른 캡션에 가장 높은 유사도를 발생시켜야 정답이라고 평가하였습니다. 이에 대한 Accuracy를 비교한 결과는 아래 테이블과 같습니다.

  • 기본 CLIP 모델은 세 가지 데이터셋 모두에서 성능이 낮아 이미지에서 환각 객체를 인식하는 데 한계
  • unseen 클래스로 구성된 NoCaps 데이터셋에서는 SigLIP이 30.8%로 가장 뛰어난 일반화 성능
  • 생성형 비전-언어 모델은 이미지와 텍스트의 보다 복잡한 alignment로 인해 기본 CLIP 모델보다 성능이 우수. (특히, BLIP2는 가장 많은 매개변수를 가진 모델로 모든 데이터셋에서 가장 높은 성능)
  • 전반적으로 모든 모델은 NoCaps 데이터셋에서 가장 낮은 성능.

저자는 모델이 환각 객체를 인식하지 못하는 주요 원인은 학습에 사용된 데이터와 방식에 있다고 합니다. 기본 CLIP 모델은 인터넷에서 수집된 이미지-캡션 쌍을 기반으로 학습되며, 이 데이터는 종종 짧고 노이즈가 많습니다. Contrastive Loss를 통해 올바른 쌍과 잘못된 쌍을 구분하도록 학습되었으나, 잘못된 쌍이 올바른 쌍과 명확히 다르기 때문에 모델이 세부적인 이미지 정보를 학습하지 않아도 구분할 수 있었습니다. 이러한 단순 구분 방식은 환각 객체와 실제 객체를 정밀하게 구분하는 데 한계를 가지게 만들었고, 이를 해결하기 위해 데이터 활용과 학습 방법론의 개선이 필요하다고 합니다.

3. Method

따라서 저자는 이를 극복하기 위한 새로운 Loss를 제안하였습니다. 우선 기존 CLIP에서 사용하는 Loss는 아래 수식과 같습니다.

다들 아실거라 생각하고 설명은 생략하겠습니다. (참고로 CLIP Loss 계산에 대한 설명은 CLIP 논문 리뷰에 적어두었습니다)

이제 저자가 제안하는 Loss를 설명하겠습니다. 우선 앞서 생성한 negative samples를 Loss에 반영해야겠죠, 이를 반영하여 \mathcal{L}_{i2t}를 변형한 것이 아래 수식 (2) 와 같습니다.

저자는 모델이 올바른 샘플과 잘못된 샘플을 더 효과적으로 구분할 수 있도록 하기 위해 margin loss을 추가로 제안했습니다. 이는 이미지와 올바른 텍스트 간의 거리가 잘못된 텍스트와의 거리보다 특정 임계값 이상으로 작도록 보장할 수 있죠. 이는 아래 수식 (3)으로 나타내며, \tau_1이 바로 마진을 나타냅니다. 마진값은 2로 설정하였습니다.

또한, 앞서 저자는 헷갈리기 쉬운 negative sample을 생성하였죠. 이러한 샘플은 일반적인 negative 샘플보다 구분하기 어려운 특성을 가지고 있습니다. 모델이 이런 헷갈리는 negative sample에 포함된 부분적으로 올바른 정보를 인식하도록 유도하기 위해, 배치 내의 일반적인 negative 샘플(T^-)과 헷갈리는 negative 샘플(T^{neg}) 사이의 margin loss도 추가로 제안하였습니다. 이를 통해 헷갈리는 negative 샘플이 올바른 샘플과 더 높은 유사도를 갖도록 학습을 유도하였다고 합니다.

저자가 제안하는 margin loss를 합친 최종 Loss는 아래 수식 (6)과 같습니다. Loss scale을 맞추기 위해 가중치 \gamma_1, \gamma_2는 모두 0.1로 설정하였습니다.

4. Experiment

Training Dataset

학습 데이터셋으로 COCO와 Flickr30k의 학습 세트에서 각각 8천 개의 이미지를 샘플링하고, 각 이미지에 대해 negative 샘플을 생성하였다고 합니다. 데이터셋에 대한 자세한 정보는 하단 테이블에 정리해두었습니다.

Evaluation

평가에는 CIFAR-10/100, ImageNet-1K, DTD, Eurosat, GTSRB, STL10 데이터셋에서 zero-shot 성능을 평가하였습니다. 이러한 실험은 모델이 사전 학습된 데이터와 다른 새로운 데이터에서 얼마나 잘 작동하는지를 평가하기 위함이죠

4.1 Main Results

아래 테이블 2에는 저자가 제안하는 OHD-Caps 데이터셋 결과를, 테이블 3에는 다양한 제로 샷 데이터셋 결과를 보입니다. 두 개의 테이블을 동시에 보면서 결과를 설명하겠습니다.

저자가 제안하는 모델은 기본 CLIP 모델과 유사한 제로샷 성능(65.6 vs 66.0, Table 3 avg. top-1 acc)을 유지하면서도, 객체 환각 인식에서 큰 향상(14.3 vs 82.5, Table 2 Avg.)을 보였습니다. negative 샘플을 생성하여 이에 대응하고자 한 NegCLIP과 CECLIP은 OHD-Caps 14.3%에서 39.0%로 성능을 개선했지만, 이 과정에서 제로샷 성능이 크게 감소했습니다. 이는 문장 의미를 방해할 수 있는 규칙 기반 negative 샘플 생성 방법(예: 구절 교체)에 의존했기 때문으로 보인다고 합니다.

또한, 저자가 제안하는 모델은 객체 환각 인식에서 높은 일반화 성능을 보였습니다. NegCLIP, CECLIP, Ours 모두 COCO 학습 데이터셋으로 fine-tuning 되었고, COCO 데이터셋에서 성능 향상(NegCLIP 32.8%, CECLIP 52.8%, Table 2 COCO)에도 불구하고, NoCaps 데이터(unseen class)에서는 성능이 하락(NegCLIP 25.0%, CECLIP 23.4%, Table 2 NoCaps)하며 일반화 능력이 다소 떨어지는 것을 확인할 수 있었습니다. 반면, 저자가 제안하는 모델은 세 가지 데이터셋에서 약 82%라는 일관된 성능을 나타내고, 다양한 데이터셋에서 환각 객체를 효과적으로 구분하고 일반화할 수 있는 능력을 보였음을 확인하였습니다.

4.2 Evaluation for LVLM

정말로 객체 환각 문제를 완화하는 지를 확인하고자, LLaVA-1.5 모델의 CLIP을 저자가 제안하는 방식으로 Finetuning된 CLIP으로 변경하여 실험을 진행하였습니다. 또한 LLaVA는 기존 논문에 명시된 하이퍼파라미터를 사용해 scratch로 학습을 수행했다고 합니다.

환각을 얼마나 감지하는 지를 평가하기 위해, 모델의 discriminative 및 generative 응답에서 환각 현상의 발생을 분석하는 여러 평가 지표를 사용하였습니다. discriminative 응답 평가는 POPE 데이터셋, generative 응답 평가는 CHAIR 평가를, 그리고 두 가지 유형의 평가를 모두 포함하는 AMBER 데이터셋을 활용하여였습니다.

  • POPE 데이터셋: “이미지에 X가 있습니까?”와 같은 질문 형식을 사용하며, 객체가 존재하거나 존재하지 않는 경우가 균등하게 구성되며, ‘yes’ 비율이 이상적으로 50%에 가까워야 함. POPE 데이터셋은 Flickr30k와 NoCaps을 추가하여 모델의 일반화 능력을 평가했습니다.
  • CHAIR 평가: 생성된 이미지 설명에서 참조된 객체가 실제 라벨 세트에 존재하지 않는 비율을 측정하여 환각 객체를 평가합니다. 이는 문장 수준에서 분석됩니다.

이러한 평가 방법을 통해 모델의 환각 문제를 체계적으로 분석하고 일반화 성능을 검증한 결과는 아래와 같습니다. 아래 테이블은 순서대로 다음 결과를 나타냅니다: Table 4는 POPE 데이터셋을, Table 5는 CHAIR 평가를, Table 6은 AMBER 데이터셋 결과입니다.

discriminative (table 4)에서는, 저자가 제안하는 모델이 다양한 데이터셋에서 성능이 크게 향상되었습니다. POPE 데이터셋에서는 정확도와 재현율 간의 균형을 더 잘 맞춰 F1 점수가 높아졌고, “yes” 응답 비율도 이상적인 균형에 가까워졌다고 합니다. 또한 이러한 성능 향상은 AMBER 데이터셋에서도 동일하게 나타났습니다.

generative (table 5)에서는 COCO validation set과 AMBER 데이터셋에서 환각된 내용의 비율이 감소했으며, 응답의 범위와 길이는 안정적으로 유지되었음을 확인할 수 있었다고 합니다.

General Performance

일반 성능 평가는 아래 여러 개의 데이터셋을 사용하여 진행되었습니다.

  • MME-Perception은 예/아니오 질문을 통해 모델의 시각적 인지 능력 평가
  • VQA-v2는 짧은 open-ended 답변으로 시각적 인지 능력 평가
  • VizWizScienceQA는 다지선다형 질문을 통해 모델의 제로샷 일반화 능력 평가
  • TextVQA는 텍스트 기반의 시각적 질문 응답을 포함

상단 Table 8이 결과를 나타내는데요, full fine-tuning을 통해 모델의 전체 평균 성능이 343.1에서 348.5로 개선되었습니다. 특히, MME 데이터셋에서 가장 큰 향상이 나타났습니다. 반면, LoRA 미세 조정을 사용했을 때 평균 성능은 거의 변화가 없었다고 합니다(340.0 vs 341.7).

4.3 Ablation study

Loss 에 대한 Ablation study

\mathcal{L}_0 Loss만으로도 기본 성능 대비 OHD-Caps 성능이 크게 개선된 결과를 확인할 수 있습니다. \mathcal{L}_1, \mathcal{L}_2 을 차례로 추가하며 성능이 점차 향상되었고, 세 가지 Loss를 모두 합햇을 때 평균 성능이 가장 높았습니다. 특히, \mathcal{L}_1 보다 \mathcal{L}_2 가 모델 성능 개선에 더 큰 영향을 미쳤는데, 이는 배치 내 negative 샘플 간의 거리를 늘림으로써, 모델이 더 정교한 이해를 달성할 수 있음을 나타낸다고 합니다.

Data Volume에 대한 Ablation study

상단 그림 2는 적은 양의 데이터로도 모델 성능이 크게 향상될 수 있음을 나타냅니다. 예를 들어, 전체 데이터의 1%인 160개의 이미지로 학습했을 때, CLIP-L/14 모델의 성능이 20%에서 60%로 증가한 것을 확인할 수 있습니다. 그러나 데이터 양이 증가할수록 성능 향상은 점차 둔화되고 안정화되는 경향을 보였다고 합니다.

Limitation

저자가 말하길 해당 연구에는 몇 가지 한계가 있다고 합니다. 첫째, VLM의 객체 환각 에만 초점을 맞췄으며, 다른 유형의 환각 문제까지는 확장하지 않았다. 둘째, 제안된 벤치마크는 20개 이상의 negative 샘플을 포함하지만, ARO 데이터셋과 같은 compositional understanding 평가에 사용되는 데이터셋보다 크기가 훨씬 작다는점. 셋째, 대부분의 VLM에서 사용되는 CLIP 모델을 평가했지만, Flamingo에서 사용되는 NFNet-F6과 같은 다른 모델의 인코더에 대한 연구를 수행하지 않았다는 점.

Author: 홍 주영

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 항목은 *(으)로 표시합니다