[24’ ICML] Prismatic VLMs: Investigating the Design Space of Visually-Conditioned Language Models
카테고리: Multimodal
🔍 Abstract
저자들은 VLM(Vision-Language Model) 또는 LMM(Large Multimodal Model)에 대한 거대한 분석을 진행하고, 이에 따른 Prism 모델을 제시한다. 논문의 Contribution은 크게 (1) Large-scale Analysis, (2) Codebase 제시로 나눌 수 있는데, Codebase의 경우에는 학술적인 가치는 낮다고 생각되어 생략하고, Large-scale Analysis에 대해 리뷰하고자 한다. 아래와 같은 질문들에 답하기 위해 분석을 진행했다고 한다.
참고로, 분석 시에는 VQA Benchmark인 VQAv2, TextVQA, GQA, VizWiz와 Localization Benchmark인 RefCOCO/+/g, OCID-Ref, 그리고 Challenge Benchmark로 VSR, TallyQA, POPE, AI2D를 사용하였다.
1. Experiments
1.1. Optimization Procedure
Multi-Stage Training
보통 LLaVA와 같은 모델은 (1) Projector Training (2) Fine-tuning Stage로 두 단계를 거쳐 학습을 진행한다. 저자들은 이것이 정말 중요한지 확인하기 위해 Multi-Stage Training과 Single-Stage Training을 비교하였다. 결과적으로 Single-Stage Training이 더 좋은 성능을 보였고, Projector Training에 사용되는 데이터가 필요하지 않아 경제적이었다.
Multi-Stage Training Lesson. Projector Training은 불필요하며, Fine-tuning Stage만으로도 충분하다.
Full Finetuning through Visual Backbones
대부분의 모델은 Visual Backbone, 즉 Visual Encoder를 학습시키지 않는다. 그러나 저자들은 이것이 suboptimal할 수도 있다고 생각하고 학습을 진행하였고, 그 결과 성능이 오히려 감소하였다. 저자들은 이에 반대되는 결과도 있다고 말하며, 이는 아마도 catastrophic forgetting과 language-centric learning objective 때문일 것이라고 추측한다. 나 또한 동의하며, 이를 Control할 수 있는 방법들이 있다면 Vision Encoder Training이 도움이 될 것이라 생각한다.
Vision Encoder Training Lesson. Vision Encoder Training은 오히려 성능을 저하시킨다. 다만, 이는 Catastrophic Forgetting과 Language-Centric Learning Objective 때문일 것이며, 이를 해결할 수 있다면 성능이 개선될 수 있다.
1.2. Image Processing & Visual Representations
Visual Encoder Selection
Visual Encoder Selection Lesson. CLIP, SigLIP 등의 Vision-Language Contrastive Learning의 결과가 가장 좋다. Self-supervised Learning에 비해 방법적으로 좋은 Representation을 학습했다고도 볼 수 있지만, 학습 데이터가 다르기 때문이라고도 설명할 수 있다. 즉 CLIP은 Internet-sourced Image를 방대하게 사용하여 더 Robust하며, DINOv2는 그렇지 않다는 것이다.
Ensembling Different Visual Representations
저자들은 여러 Visual Representation을 합치는 것이 성능을 개선시킬 수 있는지 실험하였다. 이때 Feature를 합치기 위하여 Last Layer Concatenation을 진행하였다.
Visual Feature Ensemble Lesson. DINOv2가 Low-level spatial property를 잘 제공하고, CLIP이 High-level semantic property를 잘 제공하기 때문에 두 모델을 Ensemble하면 성능이 개선된다.
1.3. Integrating Language Models
Instruction Tuning
Instruction Tuning Lesson. Instruction Tuning은 정량적인 성능 개선에는 큰 도움이 되지 않지만, 정성적으로는 더 자세하고 Hallucination이 덜 한 답변을 생성하는 경향이 있다.
Do Better LMs Lead to Better VLMs?
저자들은 또한 LM의 성능이 좋아지면 VLM의 성능도 좋아지는지 실험하였는데, 결과적으로 큰 차이가 없었다. 따라서 VLM의 성능은 LM에 의존하지 않는다고 생각할 수 있다.
LM Performance Lesson. VLM의 성능은 LM에 의존하지 않는다.
1.4. Scaling Properties: Training Time & Data
기존의 LLaVA와 같은 모델은 데이터셋으로 1 Epoch만 훈련하는 경우가 많았다. 그러나 저자들은 더 많은 Epoch동안 학습시켜 현재 VLM은 Underfitting되어 있다는 것을 발견하였다. 또한, 더 많은 Vision-Language Data가 성능을 개선시키는 것을 확인하였다.
Training Time & Data Lesson. VLM은 Underfitting되어 있으며, 더 많은 Vision-Language Data가 성능을 개선시킨다.
2. PRISM – Distilling Key Insights
저자들은 다음과 같이 지금까지의 핵심 결과들을 정리했다.
- Optimization Procedure: Single-Stage Training이 더 효율적이고 성능이 좋다.
- Image Processing & Visual Representations: Fused DINOv2 + SigLIP이 가장 좋은 성능을 보인다. 또한, High-resolution, Image Resizing이 성능을 개선시킨다.
- Language Models: Instruction Tuning은 정성적으로는 더 좋은 답변을 생성하기에 필요하다.
- Scaling Properties: 더 오래 학습하고, 더 많이 학습하는 것이 성능을 개선시킨다.
이를 바탕으로 저자들은 Prism이라는 모델을 개발하였고, 이는 LLaVA-1.5와 비교하여 SOTA 성능을 달성하였다.
💡 Summary
지금까지의 Lesson을 모두 정리하면 다음과 같다.
- Multi-Stage Training: Single-Stage Training이 더 효율적이다.
- Vision Encoder Training: Vision Encoder Training은 오히려 성능을 저하시킨다. 다만, 이는 Catastrophic Forgetting과 Language-Centric Learning Objective 때문일 것이며, 이를 해결할 수 있다면 성능이 개선될 수 있다.
- Visual Encoder Selection: CLIP, SigLIP과 같은 Vision-Language Contrastive Learning의 결과가 가장 좋다. Ensemble 시에는 DINOv2가 Low-level spatial property를 잘 제공하고, CLIP, SigLIP이 High-level semantic property를 잘 제공하기 때문에 두 모델을 Ensemble하면 성능이 개선된다. 최종적으로 Fused DINOv2 + SigLIP이 가장 좋은 성능을 보인다.
- Instruction Tuning: Instruction Tuning은 성능 개선에 큰 도움이 되지 않지만, 정성적으로는 더 자세하고 Hallucination이 덜 한 답변을 생성하는 경향이 있다.
- LM Performance: VLM의 성능은 LM에 의존하지 않는다.
- Training Time & Data: VLM은 Underfitting되어 있으며, 더 오래 학습시키거나, 더 많은 Vision-Language Data를 사용하는 것이 성능을 개선시킨다.
댓글 남기기