오늘은 조금 흥미로운 논문이 있어 읽어보았습니다.
많은 논문들이 택하는 CLIP에 DINOv2를 보조적으로 붙이는 방식에서 벗어나, DINOv2 자체를 Language space와 직접, 그리고 매우 효율적으로 정렬하는 방법을 다룬 흥미로운 논문을 리뷰해 보겠습니다.

- Venue: CVPR 2025
- Authors: Le Zhang, Qian Yang, Aishwarya Agrawal
- Affiliation: Quebec AI Institute, Universit ́e de Montr ́eal, Canada CIFAR AI Chair
- Title: Assessing and Learning Alignment of Unimodal Vision and Language Models
- Code: Project Page
1. Vision과 Language 따로 학습하기?
CLIP을 비롯한 VLM은 대규모 image-text pair를 학습하여, 두 모달리티를 하나의 representation space에 정렬해왔습니다. 하지만 최근에는 DINOv2와 같은 강력한 Vision Model과, 자연어 데이터로 충분히 학습된 Language Model이 각각 독립적으로 발전하고 있습니다.
그렇다면 Vision과 Language를 처음부터 함께 학습하지 않아도, 잘 학습된 unimodal representation끼리는 서로 쉽게 연결될 수 있을까요?
물론 기존 연구들이 representation의 구조적 유사성 등을 통해 이러한 가능성을 간접적으로 분석하긴 했지만, 실제 VLM에서 사용하는 image-text similarity와는 차이가 있었다고 합니다. 따라서 이 문제에서 착안하여, 저자들은 두 pretrained encoder를 고정하고 작은 linear layer만 학습하는 Alignment Probing을 제안하여, 서로 다른 Vision/Language representation이 얼마나 쉽게 align될 수 있는지를 직접 평가해보았습니다.

그리고 이 분석에서 얻은 결과를 바탕으로, 강력한 pretrained Vision과 Language Model을 그대로 활용하면서 적은 multimodal data와 compute만으로 두 representation을 연결하는 SAIL (Swift Alignment of Image and Language)을 제안하였습니다.
정리하면, 이 논문은 어떤 unimodal representation이 서로 잘 align되는지를 먼저 분석하고, 그 관찰을 실제 VLM 설계로 연결하는 연구라고 볼 수 있겠네요!
2. What Makes Unimodal Representations Alignable?
앞선 질문에 답하기 위해, 저자들은 먼저 어떤 unimodal representation이 다른 modality와 쉽게 align되는지 분석해보았습니다. 이를 위해 Vision/Language encoder는 모두 고정한 채, 작은 projection layer만 학습하는 Alignment Probing을 사용하였죠
2.1 Alignment Probing
Alignment Probing은 SSL에서 representation을 평가할 때 사용하는 linear probing과 유사한 방식입니다.

다만 위에 그림처럼, class label을 예측하는 대신, frozen Vision/Language representation 위에 각각 linear projection을 추가하고 image-text contrastive learning을 수행한다는 차이가 있습니다. 이후 MSCOCO retrieval 성능을 이용해 두 representation이 얼마나 쉽게 정렬이 맞는지를 평가합니다.
여기서 주의할 점은 이 실험이 두 representation이 이미 동일한 공간에 존재하는지를 측정하는 것은 아니라는 점입니다. 정확히는 작은 linear mapping만으로 얼마나 쉽게 서로 연결될 수 있는지, 즉 representation의 alignability를 평가한다고 보면 좋을 것 같습니다
2.2 Visual Representation: Linear Separability보다 Clustering
저자들은 먼저 Language Encoder를 고정하고 DINO, DINOv2, MAE, iBOT 등 다양한 Vision Encoder를 비교해보았습니다.

그 결과, 상단 그림을 보니 DINOv2와 같이 semantic structure를 잘 형성하는 모델이 높은 alignment 성능을 보였으며, 특히 k-NN classification 성능과 alignment score 사이에 매우 높은 상관관계가 나타났습니다.
– k-NN accuracy와 alignment: Pearson (r=0.991)
– Linear probing과 alignment: Pearson (r=0.847)
즉, cross-modal alignment에서는 단순히 class를 선형적으로 잘 분리하는 것보다, 같은 semantic concept이 representation space에서 잘 모여 있는 구조가 더 중요할 수 있음을 보여주는 결과라고 합니다.
2.3 Language Representation: Strong Language Understanding Matters
이번에는 Vision Encoder를 DINOv2로 고정하고 Language Encoder를 바꿔보는 실험도 진행해보았습니다.

GTE 계열에서 더 큰 모델로 갈수록 alignment 성능도 비례하게 증가했고, Language Model의 전반적인 이해 능력을 나타내는 MTEB score와 alignment score 사이에서도 (r=0.994)라는 높은 상관관계를 가졌다고 합니다.

이러한 차이는 단순 retrieval뿐 아니라 compositional understanding에서도 나타났다고 합니다. 이를 확인하기 위해 Winoground 라는 데이터셋으로도 실험을 진행해보았습니다.
(*Winoground? 상단 이미지가 데이터셋 샘플인데, Winoground는 텍스트의 구성은 동일한 단어 집합이지만 뜻은 다른 2개의 텍스트와 이미지로 구성되어 있습니다.)

저자들은 Winoground에서 CLIP의 학습 데이터나 모델 크기를 키우는 것보다, 더 강한 pretrained Language Encoder를 사용하는 것이 훨씬 큰 성능 향상을 가져온다는 것을 확인하였습니다
이는 image-text paired training만으로 language understanding을 충분히 학습시키기 어려울 수 있으며, 이미 자연어에서 풍부한 semantics를 학습한 Language Model을 활용하는 것이 cross-modal reasoning에 중요하다는 점을 의미한다고 하네요
2장에서 살펴본 두 가지의 실험을 통해, 저자들이 얻은 결론은 아래와 같습니다.
Vision에서는 semantic clustering이 잘 형성된 representation이,
Language에서는 풍부한 language understanding을 가진 representation이 더 쉽게 align 된다.
즉, 단일 모달리티에서 좋은 표현력을 가진다는 모델 중, cross-modal 상황에 적합한 상황에 대해 알아본 거 였는데요. 그럼 이렇게 이미 잘 학습된 Vision Model과 Language Model의 능력을 그대로 유지하면서, 두 모델을 가볍게 연결할 수는 없을까요?
3. SAIL: Strong Unimodal Models 연결
앞선 분석에서 저자들은 semantic clustering이 잘 형성된 Vision Model과 강한 language understanding을 가진 Language Model이 서로 쉽게 align될 수 있음을 확인했습니다.
이를 바탕으로, 두 모델을 새롭게 joint training하는 대신 이미 잘 학습된 unimodal encoder는 그대로 유지하고, 그 사이의 alignment만 학습하는 SAIL (Swift Alignment of Image and Language)을 제안합니다.
3.1 SAIL의 구조
SAIL은 Vision Encoder로 DINOv2, Language Encoder로 NV-Embed-v2를 사용합니다. 그리고 두 backbone은 모두 freeze하고, 각 representation 위에 작은 alignment module만 추가하여 image-text contrastive learning을 수행합니다.

학습할 땐, 매 iteration마다 encoder를 다시 통과시키지 않고, image/text feature를 미리 계산해 저장한 뒤 alignment module만 학습하는 방식을 선택하였습니다. 이 덕분에 강력한 pretrained model을 사용하면서도 multimodal alignment에 필요한 연산량을 크게 줄일 수 있었죠
3.2 Alignment를 위한 세 가지 요소
저자들은 alignment 성능을 높이기 위해 크게 세 가지 요소를 사용하였습니다
먼저, 단순 Linear Projection 대신 GLU(Gated Linear Unit) 기반 projection을 사용합니다. 이를 통해 두 modality 사이의 보다 유연한 mapping을 학습할 수 있었다고 합니다.
두번째로, CLIP의 InfoNCE loss 대신 Sigmoid Contrastive Loss를 사용하였습니다. 각 image-text pair를 독립적으로 positive/negative로 판단하기 때문에 large batch에 더 유연하게 적용할 수 있엇다고 하네요. 이건 동일 GPU로 배치 사이즈를 키울 수 있던 SigLIP에서 착안한 방법이겠죠?
마지막으로, 기존의 짧은 web caption에 더해 MLLM으로 생성한 long caption을 함께 positive로 사용하였다고 합니다. Short caption은 주로 object-level information을, long caption은 relation이나 scene context와 같은 richer semantics를 제공하기 때문에.. 이런 기법을 사용했다고 합니다

실제로, 위에 ablation study를 보면, 저자들이 제안하는 요소들(Linear → GLU, InfoNCE → Sigmoid Loss, Short Caption → Multi-positive Caption) 을 붙였을 때, 순차적으로 성능이 향상되는 것을 알 수 있었습니다.
정리하면, 저자가 제안하는 SAIL의 핵심은 새로운 multimodal capability를 처음부터 학습하는 것이 아니라, 이미 각 modality에 존재하는 강한 representation을 최대한 보존하면서 어떻게하면 연결할 수 있을 지를 고민한 것입니다.
3.3 Efficient Alignment
이러한 구조 덕분에 SAIL은 약 23M image-text pairs만 사용하고, 단 한개의 A100 환경에서 alignment training을 수행할 수 있었다고 합니다.
(다만 여기서 중요한 점은… 이것이 전체 Vision/Language Model을 처음부터 학습하는 비용을 의미하지는 않는다는 것입니다. DINOv2와 NV-Embed-v2는 이미 대규모 unimodal pretraining을 거친 모델이니, SAIL이 줄이는 것은 추가적인 multimodal alignment 비용을 의미합니다)
그렇다면 이렇게 가볍게 align한 representation이 실제로 CLIP과 같은 기존 VLM을 넘어설 수 있을까요? 다음 장에서는 classification과 retrieval뿐 아니라, fine-grained vision과 compositional understanding까지 살펴보겠습니다
4. Does SAIL Preserve the Best of Both Worlds?
SAIL의 목표는 단순히 image와 text를 잘 연결하는 것뿐만 아니라, DINOv2의 강한 visual representation과 NV2의 language understanding을 최대한 유지하면서 하나의 VLM으로 활용하는 것입니다.
따라서 이 목표를 정말 달성했는지를 알아보고자, 다양한 zero-shot 및 downstream task에서 성능 평가를 수행하였습니다.
4.1 적은 Paired Data만으로도 충분히 Align할 수 있을까?
먼저 ImageNet을 비롯한 zero-shot image classification에서 SAIL을 평가해보앗습니다

SAIL-L-NV2는 23M image-text pairs만으로 ImageNet 73.4%를 기록하며, 400M pairs로 학습한 CLIP-L의 72.7%를 넘어서는 결과를 보였습니다.
이러한 경향은 image-text retrieval에서도 이어졌는데요.

MSCOCO와 Flickr30k에서 SAIL은 CLIP뿐 아니라 LiT, ShareLock과 같은 efficient alignment 방법보다도 전반적으로 높은 성능을 보였습니다. 특히 stronger language encoder인 NV2를 사용했을 때 성능 향상이 눈에 띠네요
따라서 이를 통해, 강력한 unimodal representation을 활용한다면 대규모 paired data로 처음부터 VLM을 학습하지 않고도 경쟁력 있는 cross-modal representation을 만들 수 있음을 보여주는 결과라고 합니다
4.2 Fine-grained Vision과 Language Understanding도 유지될까?
단순 classification이나 retrieval을 넘어, 저자들은 Winoground와 MMVP에서도 SAIL을 평가해보았습니다.

Winoground에서 SAIL-L-NV2의 Group score는 15.0으로, CLIP-L의 8.75보다 크게 향상됩니다. 특히 Vision Model의 크기를 키우는 것보다 GTE에서 NV2로 Language Encoder를 강화했을 때 더 큰 성능 향상이 나타나, 앞선 분석에서 확인한 strong language understanding의 중요성을 다시 보여줍니다.

한편 MMVP는 orientation, quantity, color처럼 서로 매우 비슷한 이미지 사이의 미묘한 차이를 구분해야 합니다. (상단 그림이 그 예시입니다. 배경과 객체가 되게 비슷하죠?) 여기서도 SAIL은 CLIP보다 높은 성능을 보입니다.

Figure 5를 보면 CLIP은 서로 다른 image pair에도 매우 높은 similarity를 부여하는 반면, DINOv2는 미묘한 차이를 더 잘 구분하는 걸 볼 수 있습니다. 재밌는건 저자가 제안하는 SAIL의 distribution은 CLIP보다 DINOv2에 훨씬 가까운 형태를 유지합니다.
이 결과는 결국 저자가 제안하는 SAIL이, language와 alignment한 이후에도 DINOv2가 가지고 있던 fine-grained visual sensitivity가 상당 부분 보존된다는 것을 보여줍니다.
4.3 Retrieval을 넘어 다른 Vision-Language Task에서도 사용할 수 있을까?
SAIL은 DINOv2의 patch representation도 language와 연결할 수 있기 때문에 open-vocabulary semantic segmentation에도 적용할 수 있었다고 합니다.

상단 표를 보면.. ADE20K, COCO-Stuff, VOC20에서 SAIL은 CLIP이나 MaskCLIP보다 높은 성능을 보였는데요. 특히 VOC20에서는 SAIL-NV2가 66.1 mIoU 라는 높은 수치를 보였죠

마지막으로 위에 그림처럼, SAIL의 Vision Encoder를 LLaVA-1.5의 Vision Encoder로 교체하여 MLLM에서도 활용할 수 있는지 확인해보았습니다.

그 결과… 기존 DINOv2를 그대로 사용할 경우 CLIP Vision Encoder보다 성능이 낮지만, SAIL alignment를 거친 뒤에는 7개 benchmark 중 5개에서 CLIP을 넘어서는 결과를 보였습니다.
즉, SAIL은 DINOv2의 visual feature를 단순히 text와 가까워지게 만드는 것을 넘어, LLM이 활용하기 쉬운 language-compatible visual representation으로 변화시킨다고 볼 수 있겠네요!
다만 TextVQA와 MMBench처럼 OCR 능력이 중요한 task에서는 여전히 CLIP보다 낮은 성능을 보이는데, 저자들은 이를 DINOv2 자체의 OCR capability 부족에서 비롯된 한계라고 합니다.
지금까지 4장에서 알아본 SAIL의 실험 결과들을 통해, Vision과 Language의 강한 unimodal capability를 작은 alignment 과정만으로 하나의 multimodal representation에 상당 부분 가져올 수 있다라고 정리하겠습니다
5. Conclusion & Discussion
논문에 있는 내용은 다 다룬 것 같습니다. 제가 생각햇을 때 이 논문의 가장 흥미로운 점은 새로운 alignment 방법인 SAIL 자체보다, 어떤 unimodal representation이 cross-modal alignment에 유리한지를 먼저 분석했다는 점인 것 같습니다. (핵심 주장을 전달하기 위해, 실험이나 의문들을 순차적으로 빌드업 했다는 점이 인상적)
논문의 분석 결과를 정리하면, Vision에서는 단순히 class를 잘 분리하는 것보다 semantic concept이 잘 clustering된 representation이 중요했고, Language에서는 풍부한 language understanding을 가진 representation이 더 쉽게 Vision과 align되었습니다.
이를 바탕으로 저자들은 다음과 같은 새로운 VLM 학습 방법인 SAIL 을 제안했죠? 다음과 같은 구조로 말이죠! Strong Vision Model (DINOv2) + Strong Language Model (NV-Embed-V2) + Lightweight Alignment
즉, Vision과 Language capability를 모두 multimodal training에서 처음부터 학습하기보다, 각 modality에서 이미 잘 학습된 능력을 가져와 적은 paired data로 연결하는 것만으로도 강력한 VLM을 만들 수 있다는 것입니다.
다만 몇 가지 의문이 있던 부분이 있어 정리를 해보겠습니다
먼저 Alignment Probing은 두 unimodal representation이 본질적으로 이미 align되어 있음을 직접 보여주는 실험은 아니라는 점인데요. 실제로는 2.2M image-text pairs를 이용해 linear projection을 학습하기 때문에, 정확히는 작은 mapping만으로 얼마나 쉽게 align될 수 있는지를 측정한다고 보는 것이 적절할 것 같긴 합니다.
그리고 SAIL이 CLIP보다 훨씬 적은 paired data와 compute를 사용한다는 결과 역시 multimodal alignment 단계에 제한된 얘기라는 점입니다. 왜? DINOv2와 NV2는 이미 대규모 unimodal pretraining을 거친 모델이기 때문에, 전체 pretraining cost 자체가 작다는 의미는 아니라는 점이죠
마지막으로 k-NN accuracy와 alignment 사이의 높은 correlation을 가진다는 것은 분명 좋은 발견같긴 합니다만… 이것만으로 semantic clustering이 alignment 성능을 직접적으로 만든다고 결론짓기는 다소 어렵지 않나 싶습니다. 왜? 서로 다른 모델들은 architecture, training objective, pretraining data 등 여러 요소가 동시에 달라지기 때문에, 변인 통제가 안되있다는 점에서 조금 더 깐깐한 실험 상황에서의 결론이 설득력이 있을 듯 합니다
그럼에도 이 논문을 리뷰했던 건, 좋은 multimodal representation을 만들기 위해 반드시 Vision과 Language를 처음부터 함께 학습해야 하는가? 라는 점에서 제가 은연중에 가졌던 의문을 어느정도 해소해줬고, 강력한 unimodal model을 효율적으로 활용할 수 있는 가능성을 보여주었다는 점에서 의미가 있지 않았나 싶습니다.
이상 리뷰 마치겠습니다