본문 바로가기
A·I

[NLE] NLX-GPT: A Model for Natural Language Explanations in Vision and Vision-Language Tasks 리뷰 1편

by 방구석 몽상가 2022. 5. 9.
NLX-GPT

이 글은 CVPR 2022에 게재된 NLX-GPT: A Model for Natural Language Explanations in Vision and Vision-Language Tasks 리뷰다.

Natural Language Explanation (NLE) 모델은 black box system의 decision making process를 자연어 문장으로 설명하는 것을 목적으로 한다. 이전 explainable 모델이라고 하면 CAM과 같이 특정 예측으로 이끄는 regions이나 tokens을 highlight하는 것에 그쳤지만 NLE는 사람이 더 이해하기 쉽도록 human-friendly, high-level and fine-grained 자연어 문장을 생성해 설명해낸다.

이전 NLE의 패러다임은 다음과 같다 (위 이미지의 좌측). 이 논문은 vision tasks와 vision-language (VL) tasks에 집중한다.

Training Time) NLE 데이터셋으로 GT answers에 대한 설명을 생산하도록 LM을 학습

Test Time) VL-model의 출력은 answer를 예측하기 위해 활용되고 LM에 입력되어 설명을 얻는다

위와 같은 패러다임은 두 가지 단점이 있다. 첫 번째는 추가적인 task model의 필요 때문에 필요 resources가 높아진다는 점이다. 두 번째로는 VL-model과 언어 모델은 서로 완벽하게 독립적이라는 점이다. 이게 제일 크리티컬해보이는데 대답을 예측하기 위해 만들어진 추론 프로세스를 전혀 설명하지 않고 있다는 말이기 때문이다. 또, 생성된 설명을 평가하는 NLE measures은 설명의 correctness, reasoning, semantic meaning을 항상 반영하지는 않는다는 문제점이 있다. 설명을 잘 했더라도 다른 형식으로 설명할 수 있고 데이터셋 내 correlations과 bias롤 학습해서 문장을 생성할 수도 있는 노릇이다.

따라서 이 논문에서는 새로운 NLE 패러다임 (위 이미지 우측)과 2가지의 새로운 evaluation frameworks를 제시한다.

NLX-GPT

특정 vision 혹은 vision-language task를 수행하는 task model을 라 하고, task model의 output에 대한 설명을 제공하는 explainer model을 라 하자. 이전엔 를 쌓아 독립적으로 대답과 설명을 예측했었다. 이 논문에서는 위에 이야기한 두 가지의 단점을 보완하기 위해 를 제거하고 로부터 대답과 설명을 모두 생성하도록 한다. 이를 위해 encoder-decoder architecture를 채택한다. 여기서 encoder는 이미지를 인코딩하는 visual backbone이고 decoder는 distilled GPT-2를 사용했다.

저자는 두 단점을 보완하는 것 외에 VL-model을 제거하는 것이 유리한 이유로 학습의 용이성을 든다. 한 모델에서 task와 explanation을 공동으로 훈련하면 faithful explanations을 얻을 수 있으며, 훨씬 단순하고 모델 고유의 방식으로 외부 연산 없이 가능하다. 또한, 별도의 모델일 경우 하이퍼파라미터와 fine-tuning 절차를 고려해야 하는데 그럴 필요가 없다.

NLX-GPT 는 모든 sub-inputs (question/hypothesis, answer and explanation)을 단일 시퀀스로 고려한다. Answer와 explanation을 포함하는 하나의 시퀀스 를 생성하기 위해 cross-entropy objective를 가지고 훈련한다.

동시에 이미지 분류와 같은 특정 task 쪽으로 편향된 visual encoders와 time-expensive bottom-up features에서 벗어나는 것을 목적으로 한다. 이를 위해 저자는 Visual encoder로써 CLIP vision encoder를 채택한다. CLIP의 contrastive objective 덕분에, CLIP vision encoder로부터 추출된 visual features는 non-biased하고 general하며 GPT-2의 language embedding space에 가깝기 때문이다.

위 표를 보면 VL model과 region proposals 없애 time과 memory의 효율성을 높인 것을 확인할 수 있다.

위 표는 pretraining과 backbone을 다르게 했을 때의 성능이다. 확실히 CLIP visual encoder를 활용하는 것이 성능이 좋은 것을 확인할 수 있으며, 그렇지 않더라도 fine-tuned의 경우 비등하거나 outperform한다.

NLX-GPT는 pretraining과 fine-tuning 과정을 거치는데 여기서 visual encoder는 fix되고 pretraining과 fine-tuning 동안에 fine-tune되지 않는다.

 

다음 글에서 학습 방법과 여러 실험들에 대해 리뷰해보겠다.

댓글