Language Is Not All You Need: Aligning Perception with Language Models
논문의 저자들은 앞서 언급한 LLM들의 문제점을 극복하고자 Multimodal Lage Language Model(MLLM)인 KOSMOS-1을 제안하였습니다.
Jun 22, 2023
Introduction
Motivation
Large language models(LLMs)은 다양한 natural language tasks에서 general-purpose interface로서 큰 성공을 거두었습니다.
하지만 LLMs은 image와 audio같은 multimodal data를 사용하는데 여전히 어려움을 겪고 있습니다. Multimodal perception은 현실 세계의 지식을 습득하는데 있어서 artificial general intelligence에서 필수적입니다. 또한, multimodal data를 인식하는 것은 language model들의 application의 폭을 다양하게 넓힐 수 있습니다.(ex. multimodal machine learning, document intelligence, and robotics.)
논문의 저자들은 앞서 언급한 LLM들의 문제점을 극복하고자 Multimodal Lage Language Model(MLLM)인 KOSMOS-1을 제안하였습니다.
Contributions
- From LLMs to MLLMs
- Language models as general-purpose interfaces
- Exploration about new capabilities of MLLMs
Proposed Method
Input Representation
KSOMOS-1은 Transformer-based causal language model으로 Transformer decoder만을 사용하는 모델입니다. 모든 Transformer 기반의 모델들이 special tokens을 포함하여 sequence를 표현하듯이 KOSMOS-1에서도 start token과 end token을 <s>와 </s>의 형태로 표현합니다. 또한, KOSMOS-1에서는 image의 시작과 끝을 표현하기 위해서 <image>와 </image>라는 special token을 사용하고 이 사이에 image embedding을 끼어넣는 방식으로 image를 표현합니다. 아래의 테이블은 이 설명에 대한 예시를 제공합니다.
KOSMOS-1에서는 METALM에서 사용한 vision encoder를 통해 input image를 embedding했다고 합니다. 또한, Flamingo에서 사용한 Resampler을 attentive pooling mechanism으로 사용함으로써 image embedding을 고정된 형태의 visual tokens으로 변환해주어 구조적 편의성과 vision-text간의 연산 복잡도를 줄였습니다.
Flamingo의 Perceiver Resampler
Multimodal Large Language Models (MLLMs)
KOSMOS-1에서는 기본적인 Transformer decoder 기반의 모델과 동일하게 causal model process를 수행합니다. 즉, auto-regressive 방식으로 다음 토큰을 생성해내는 방식을 취하는데, causal masking을 통해 future information을 masking하고 sofmax classifier를 통해 다음 토큰을 예측해내는 방식을 사용합니다.
KOSMOS-1에서는 다음과 같은 구현 및 구조적인 특징을 갖습니다.
- TorchScale : Microsoft에서 개발한 TorchScale은 large model을 학습시킬 때 안정성과 효율성을 얻기 위해 개발되었습니다. KOSMOS-1에서는 TorchScale 라이브러리를 통해 구현되었습니다.
- MAGNETO : MAGNETO는 large-scale model을 학습시킬 때 높은 안정성과 modality에 대한 우수한 성능을 갖는 Transformer의 변형 backbone architecture입니다. KOSMOS-1에서는 MEGNETO를 backbone arcitecture로 채택하였다고 합니다.
MAGNETO에 대한 추가 설명
딥러닝 네트워크에서는 layer depths가 뒤로 갈수록 앞 layer보다 gradient norm이 커지면서 성능 드랍이 올 수 있습니다. 이 문제는 DeepNet에서 처음으로 initialization을 잘하도록 함으로써 문제를 해결했습니다. DeepNet의 depth는 다른 LLM들에 비해 상당히 높게 쌓아질 수 있었다는 것을 아래의 그림을 통해 확인할 수 있습니다.
이러한 DeepNet에서의 contribution을 토대로 MAGNETO에서는 Sub-LayerNorm이라는 방법을 제안하였습니다. 기존의 LLM들은 LayerNorm을 Linear layer 및 Attention 이전에 사용하는 Pre-LayerNorm(ex. BERT)과 Attention과 Residual Connection의 output을 LayerNorm하는 Post-LayerNorm(ex. GPT)로 양분되어 있었습니다. MEGANETO에서는 Pre-LayerNorm과 추가적인 Sub-LayerNorm을 사용함으로써 모델의 scale up을 안정적으로 하는 방법을 제안하였습니다.
- xPos : xPos는 long-context modeling을 더 잘하기 위해 relative position encoding을 도입하였습니다. xPos는 short text로 학습을 하여도 long text에 대해 좋은 성능을 거둘 수 있는 extrapolation 방법을 제안하였습니다. KOSMOS-1에서는 xPos를 position encoding 방식으로 사용하였다고 합니다.
KOSMOS-1은 아래와 같은 구조와 hyperparameters를 가지며 최종적인 학습 parameter의 수는 1.6B정도라고 합니다.
- layers : 24
- hidden dimensions : 2048
- FFN intermediate size : 8192 (= 4 * hidden dimensions)
- number of attention heads : 32
- image representation model : CLIP ViT-L/14 (1024 feature dimensions)
- image resolution : 224 × 224
- max sequence length : 2048 tokens
Training Objective
KOSMOS-1에서는 기본적으로 이전 context를 통해 다음 token을 예측해내는 next-token prediction task를 통해 학습됩니다. 이 때, KOSMOS-1에서는 text token들만 loss 계산에 사용된다고 합니다. 이는 모델이 텍스트를 생성해낼 수는 있지만 image를 생성하는 것에 대해서는 학습이 안 되었다는 것을 의미합니다.
Multimodal Training Data
- Text Corpora
KOSMOS-1을 학습시키기 위해서는 아래와 같은 말뭉치를 기본적으로 사용했다고 합니다. 이 때, downstream task들에 대한 올바른 평가를 위해 downstream task와 관련이 있는 데이터들은 배제하고 사용했다고 합니다.
- Image-Caption Pairs
KOSMOS-1에서는 image-caption pair에 대해 학습시키기 위해 Common Crawl web data를 통해 수집된 데이터들(English LAION-2B, LAION-400M, and COYO-700M)과 기구축된 image-caption pair 데이터셋들(English LAION-2B, LAION-400M, COYO-700M, Conceptional Captions)을 사용하였습니다.
- Interleaved Image-Text Data
KOSMOS-1에서는 Common Crawl snapshot을 통해 interleaved multimodal data를 수집하였습니다. 이 데이터셋에서 일부 필터링 작업을 거친 이후, 노이즈와 중복을 제거하기 위해 다섯개 이하의 이미지를 갖는 데이터만 추출하여 사용했다고 합니다.
Language-Only Instruction Tuning
논문의 저자들은 KOSMOS-1이 human instruction에 대해 더 잘 작동하게 하기 위해 language-only instruction tuning을 수행하였습니다. 구체적으로, (instructions, inputs, and, outputs)의 형태를 갖는 추가 데이터를 통해 모델 학습을 더 수행하였다고 합니다. 이 때, 학습 시에 instructions와 inputs는 loss 계산에 사용되지 않게 함으로써 outputs에만 집중하도록 하였다고 합니다.
모델 학습에는 Unnatural Instructions 데이터셋과 FLANv2 데이터셋을 사용하여 reading comprehension, commonsense reasoning, closed-book question answering과 같은 다양한 natural language understanding tasks에 대해서 학습되도록 하였습니다. 참고로, Unnatural Instructions 데이터셋은 large language model의 inference 결과라고 합니다.
Experiment
논문의 저자들은 language tasks와 multikodal percetion tasks에 대해 광범위한 평가를 위해 아래와 같은 task들에 대한 실험을 수행하였습니다.
Perception-Language Tasks
- Image Captioning
- COCO : CIDEr 155.1(mPLUG), SPICE 26.6(OFA)
- Flickr30k : CIDEr 67.4 (Unified VLP), SPICE 17(Unified VLP)
아래의 표들은 Image Captioning task에 대한 실험 성능을 보여줍니다. 기존 Zero-shot, Few-shot 모델들에 비해 vision-text를 처리할 수 있는 KOSMOS-1의 성능이 우수함을 알 수 있습니다.
하지만 아래의 fine-tuning 성능에 비해 COCO dataset에서는 성능 차이가 아주 많이 나며 Flickr30k dataset에서는 유사하거나 조금 더 나은 성능을 달성한 것을 확인할 수 있습니다.
- Visual Question Answering
- VQAv2 : 84.3 (PaLI)
아래의 표들은 Visual Question Answering task에 대한 Zero/Few-shot 실험 성능을 보여줍니다. 다른 모델들에 비해 KOSMOS-1 모델의 실험 성능이 우수하거나 비슷함을 확인할 수 있습니다.
하지만 아래의 fine-tuning 성능에 비해 아직 Zero/Few-shot 성능이 거리가 있음을 확인할 수 있습니다.(VizWiz의 경우, 정확한 성능을 확인하기 어려워 기재하지 못하였습니다.)
- Web Page Question Answering
Web Page Question Answering은 web page에 대한 질문들에 답변을 하는 task입니다. 아래의 이미지는 해당 task의 예시를 보여줍니다. 이 task를 위해 논문의 저자들은 prompt를 “Given the context below from web page, extract the answer from the given text like this: Qusestion: Who is the publisher of this book? Answer: Penguin Books Ltd. Context: {WebText} Q: {question} A: {answer} ”와 같은 형태로 사용했다고 합니다.
아래의 표는 이 task에 대한 Zero-shot 성능을 보여줍니다. 실험에서는 동일한 말뭉치와 동일한 학습 setting을 갖춘 large language model(LLM)을 학습시켰는데, 이 모델이 구체적으로 어떤 모델인지는 논문에 나와있지 않았습니다. LLM과 KOSMOS-1을 비교한 결과, multimodal을 학습한 KOSMOS-1의 성능이 더 좋았다고 합니다.
IQ Test (Raven’s Progressive Matrices)
논문의 저자들은 nonberbal reasoning에 대한 모델의 능력을 확인하기 위해 IQ Test 실험을 수행했습니다. 아래의 그림과 같이 3x3 격자에서 다음에 올 도형이 어떤 것인지를 맞추는 문제로 prompt를 “Here are three/four/eight images:”, “The following image is:” and “Is it correct?”와 같은 형태로 구성하였다고 합니다.
실험 결과는 아래와 같습니다. Random Basline에 비해 성능이 좋으나, 아직 성인 수준의 IQ가 나오려면 거리가 있어 보입니다.
OCR-free language Understanding
OCR-free language understanding은 OCR이 없이 텍스트와 이미지를 이해하는 task입니다. 논문의 저자들은 이미지에서 sentiment를 classification해내는 것을 목표로 하는 Rendered SST-2 task와 hate speech 여부를 판단하는 HatefulMemes task에 대한 실험을 수행했습니다.
Rendered SST-2 task에 대해서는 “Question: what is the sentiment of the opinion? Answer: {answer}”를 prompt로 사용하고 HatefulMems task에 대해서는 “Question: does this picture contain real hate speech? Answer: {answer}”를 prompt로 사용하였습니다.
실험 성능은 아래와 같습니다. KOSMOS-1이 두 가지 task 모두 성능이 우수함을 확인할 수 있습니다.
Multimodal Chain-of-Thought Prompting
Chain-of-though prompting은 판단 근거를 모델의 prompt를 통해 생성해내도록 유도한 다음에 이를 prompt의 input에 추가하여 정답을 예측해도록 해내는 방법론입니다. 이 방법론은 상당히 복잡한 task에서 성능 향상을 이룰 수 있다고 합니다.
KOSMOS-1 논문의 저자들은 chain-of-thought prompting(CoT) 방식에서 motive를 얻어 multimodal chain-of-thought prompting에 대한 실험을 수행했습니다. 위의 그림에서 볼 수 있듯이 “Introduce this picture in detail:”와 같은 형태의 prompt를 통해 근거를 모델이 생성하도록 한 다음 이를 “{rationale} Question: what is the sentiment of the opinion? Answer: {answer}”와 같이 다음에 올 prompt에 추가하는 방식을 취했습니다. 실험 결과는 다음과 같습니다.
위의 표에서 볼 수 있듯이 Multimodal CoT 방식을 취함으로써 성능 향상이 많이 되는 것을 확인할 수 있습니다.
이외에도 논문의 저자들은 Language Tasks, Cross-modal Transfer에 대한 실험을 하였으나, 너무 실험이 많은 관계로 생략하겠습니다.
Conclusions
논문의 저자들은 Multimodal Large Language Model의 중요성을 언급하면서 이미지와 텍스트를 모두 처리할 수 있는 KOSMOS-1 모델을 제안하였습니다.
분명 KOSMOS-1은 IQ Test에서의 성능이 좋지 않은 점과 zero/few-shot 성능이 fine-tuning 성능에 비해 아직 떨어지는 점 등에서 부족한 점은 있어 보입니다. 하지만 large scale 모델을 학습시킬 때 발생하는 다양한 문제들을 미리 엿볼 수 있었습니다.(ex. MAGENETO)
마지막으로, 논문의 저자들은 model의 size를 더 키우고 speech modality도 학습할 수 있는 방향으로 다음 모델에 대한 연구를 진행한다고 합니다. speech modality까지 학습이 되었을 때에는 또 어떠한 일들이 벌어질지 너무나도 기대가 됩니다^^
Share article