논문리뷰

[논문리뷰] RUBi: Reducing Unimodal Biases for Visual Qestion Answering

minyoung lee 2024. 1. 20. 12:16

본 논문은 NeurIPS 2019에 accept된 논문이다.

 

1. Motivation

 

본 논문은 Visual Question Answering (VQA) task를 다룬 논문이다. VQA task의 목표는 image에 대한 question을 답해야하는 task이다. 따라서 visual scene과 question에 대한 high-level understanding을 요한다.

이러한 VQA 모델에는 unimodal bias가 존재한다. 이는 모델이 두 modalities (image, question)을 모두 다루기 위해서 설계되었으나, image modality를 종종 고려하지 않고, question만 보고 답을 내놓는 문제점을 말한다.

 

예를들어, 대부분의 바나나의 색깔은 노란색이기 때문에, 모델은 question으로 "What color is the banana?"이 들어오면 이미지를 보지 않고 "Yellow"라고 답을 내어버리는 것이다. 따라서 노란색 바나나가 이미지의 입력으로 들어왔을 때는 잘 작동하고 있는 것 처럼 보일지 몰라도, 초록색 바나나가 입력 이미지로 들어오면 노란색이라고 틀린 답을 내놓게 된다.

따라서 본 논문의 저자들은 biases를 줄이기 위한 training strategy를 제시하였다. question-only branch를 추가하여 VQA model이 bias들을 줄일 수 있도록 설계하였다. 

 

2. Method - Reducing Unimodal Biases Approach

 

모델의 구조는 figure 2와 같다. 왼쪽은 기존의 classic strategy이고, 오른쪽은 본 논문에서 제시한 RUBi strategy를 적용한 모델의 구조이다.

 

우선은 Visual Question Anwering (VQA) task에 대한 common formulation들이다.

 

 

dataset은 visual, question, answer로 총 세가지로 이루어져 있으며,

모델은 image envoder, question encoder, multimodel fucion, classifier로 이루어져 있다. 

최종 VQA output은 아래와 같이 각각의 encoder들과 multimodel fusion, classifier를 거쳐서 나오게 된다.

 

Classical Learning stragegy and pitfall

 

기존의 VQA모델의 loss를 살펴보면, standard cross-entropy loss를 minimizing 하는 방식을 이용하게 된다. 

 

2.1. RUBi learning strategy

Capturing biases with a qeustion-only branch

저자들은 VQA 모델에 question-only model을 branch로 추가하였다. 

question-only branch는 question bises를 capture하고, VQA model은 question modality만을 사용하여서는 정확한 답을 낼 수 없도록 하게 된다.

question branch의 output은 위의 수식과 같다. \(e_q\)는 question encoder이고, \(nn_q\)는 neural network, \(c_q\)는 classifier이다.

 

이 question branch는 training동안에만 사용하고, inference에는 사용하지 않는다.

 

Preventing biases by masking predictions

이 논문에서는 masking을 도입하였다. mask는 quesiton-only branch에서 neural network를 통과한 output을 sigmoid function에 통과시킨 결과이다.

 

Joint learning procedure

최종 loss는 QM과 QO loss를 합쳐서 계산되게 된다.

그림을 통해서 모델을 쉽게 히애할 수 있다.

윗 줄의 yellow banana의 경우를 보면, 기존의 classical한 방법에서는 yellow prediction0.8이었던 반면 RUBi를 사용했을 때 masking까지 한 결과의 prediction은 0.94였던 것을 알 수 있다. 이 결과로 기존 classical 방법에서의 loss는 0.22였으나 RUBi를 사용했을 때는 loss가 0.06으로 줄어들었다. 

 

아랫줄의 green banana를 보면, 기존의 classical한 방법에서는 0.5, 0.5로 낮은 confidence를 보여주며 loss도 0.69로 비교적 컸다. 그러나 오른쪽의 RUBi를 살펴보면 mask한 결과 yellow가 0.7로 더 높은 prediction confience를 보이게 된다. 따라서 loss가 1.20으로 커진다. 즉 RUBi는 더 큰 loss를 통해서 모델이 이미지까지 같이 볼 수 있도록 하였다. 

 

3. Experiments

VQA-CP v2 dataset을 사용하였다. 

 

3.1. Results

State-of-the-art comparison

Table 1을 보면 VQA-CP v2 데이터셋으로 SOTA를 달성한 것을 볼 수 있다. 기존의 SOTA였던 UpDn + Q-Adv + DoE보다 높은 성능을 보였고, Baeline architecture보다는 월등히 높은 성능을 보여주었다.

Table 2를 살펴보면 다른 architecture인 SAN과 UpDn에 적용했을 때도 RUBi가 가장 좋은 성능을 보여주었다.

Table 3에서는 standard VQA v2 dataset에서의 성능 비교를 해보았따. VQA v2는 train, val, test set이 모두 같은 distribution을 가지게 된다. 이 경우에서는 RUBi가 Baseline보다 조금 낮은 성능을 보인다. 

세가지 다른 architecture에 대해 RUBi를 적용하여 QO loss 유뮤에 대한 성능을 비교해보았다. 해당 loss를 적용할 때 전반적인 성능이 향상된 것을 알 수 있다. 

 

3.2. Qualitative analysis

baseline과 비교해보았을 때, RUBi가 좀 더 이미지를 보고 판단한 것을 알 수 있다.

 

4. Conclusion

RUBi는 unimodal biases를 줄이는 메소드로 제시되었으며, question-only branch를 통해서 question으로부터 biase된 것을 막았따. 이를 통해서 state-of-the-art 결과를 얻을 수 있었다.