0. Abstract
์ต๊ทผ ๋ํ ์ธ์ด ๋ชจ๋ธ(LLM)์ ํญ๋ฐ์ ์ธ ๋ฐ์ ๊ณผ ํจ๊ป, ๊ทธ ๋ฅ๋ ฅ์ ์๊ฐ ์์ญ์ผ๋ก ํ์ฅํ๋ ค๋ ์๋๊ฐ ํ๋ฐํ ์ด๋ฃจ์ด์ง๊ณ ์๋ค.
VLM(Vision-Language Model)์ ๊ณ ์์ค์ ํ
์คํธ ์ค๋ช
๋ง์ผ๋ก ์ด๋ฏธ์ง๋ฅผ ์์ฑํ๊ฑฐ๋, ์๊ฐ์ ์ฅ๋ฉด์ ์ธ์ด๋ก ์ดํดํ๋ ๋ฑ
์ฐ๋ฆฌ์ ๊ธฐ์ ํ๊ฒฝ์ ํฐ ๋ณํ๋ฅผ ๊ฐ์ ธ์ฌ ์์ฉ ๊ฐ๋ฅ์ฑ์ ๋ณด์ฌ์ฃผ๊ณ ์๋ค.
ํ์ง๋ง ์๊ฐ ์ ๋ณด๋ ์ธ์ด์ ๋ฌ๋ฆฌ ๊ณ ์ฐจ์ ์ฐ์ ๊ณต๊ฐ์ ์กด์ฌํ๋ฉฐ, ๊ฐ๋ ์ ๋ช ํํ ๊ตฌ๋ถํ๊ฑฐ๋ ํํํ๊ธฐ ์ด๋ ต๋ค๋ ๊ทผ๋ณธ์ ์ธ ํน์ฑ์ด ์๋ค. ๋ฐ๋ผ์ ์๊ฐ ์ ๋ณด๋ฅผ ์ธ์ด๋ก ์ ํํ ์ฐ๊ฒฐ(mapping)ํ๋ ๋ฐ์๋ ์ฌ์ ํ ๋ง์ ๊ธฐ์ ์ ๊ณผ์ ๊ฐ ๋จ์ ์๋ค.
๋ณธ ๋
ผ๋ฌธ์ ์ด๋ฌํ ๋ฐฐ๊ฒฝ ์์์, VLM์ ๊ฐ๋
๊ณผ ํ์ต ๋ฐฉ๋ฒ, ํ๊ฐ ๋ฐฉ๋ฒ์ ์๊ฐํ๋ ์
๋ฌธ์๋ก ๊ธฐํ๋์๋ค.
ํนํ ์ด๋ฏธ์ง๋ฅผ ๋์ด์ ๋น๋์ค๊น์ง ํ์ฅ๋๋ ํ๋ฆ์ ์ผ๋์ ๋๊ณ , ๋น์ -์ธ์ด ์ฐ๊ตฌ๋ฅผ ์์ํ๋ ค๋ ์ฐ๊ตฌ์์๊ฒ ์ ์ฉํ ๊ธฐ๋ณธ๊ธฐ๋ฅผ ์ ๊ณตํ๊ณ ์ ํ๋ค.
1. Introduction
VLM์ ์ ์ค์ํ๊ฐ?
์ธ์ด ๋ชจ๋ธ์ ์ ์ ๋ ๋๋ํด์ง๊ณ ์์ง๋ง, ์ฌ์ ํ ํ์ค์ ๋ณด๋ ๋ฅ๋ ฅ์ ๋ถ์กฑํ๋ค.
์๊ฐ ์ ๋ณด๋ ํ
์คํธ์ ๋ฌ๋ฆฌ:
- ๋ถ์ฐ์(discrete)ํ ์ธ์ด์ ๋ฌ๋ฆฌ ๊ณ ์ฐจ์ ์ฐ์ ๊ณต๊ฐ
- ๊ตฌ์ฒด์ ๊ฐ์ฒด + ์ถ์์ ๊ด๊ณ + ์์น/ํํ/์๋ ๋ฑ ๋ณตํฉ ์ ๋ณด ํฌํจ
VLM์ ์ด์ฒ๋ผ ๋ณต์กํ ์๊ฐ ์ ๋ณด๋ฅผ ํ
์คํธ ํํ์ผ๋ก ๋งคํํจ์ผ๋ก์จ
AI์ ํ์ค ์ดํด๋ ฅ๊ณผ ์ํธ์์ฉ ๋ฅ๋ ฅ์ ๋น์ฝ์ ์ผ๋ก ๋์ด์ฌ๋ฆด ์ ์๋ค.
ํ์ง๋ง VLM์ ์์ง ๊ฐ ๊ธธ์ด ๋ฉ๋ค
- ๋๋ถ๋ถ์ VLM์ ์ ํํ ์๋ ์ถ๋ก ์ด๋ ๊ณต๊ฐ ๊ด๊ณ ์ดํด์ ์ทจ์ฝ
- ์์ฑ(attribute)์ด๋ ์์(ordering) ๊ฐ๋ ๋ ์ ๋ฐ์ํ์ง ๋ชปํจ
- ํ๋กฌํํธ๋ฅผ ์ผ๋ถ ๋ฌด์ํ๊ฑฐ๋, ์ ํ ์๊ด์๋ ๊ฒฐ๊ณผ(=hallucination)๋ฅผ ์์ฑํ๊ธฐ๋ ํจ
→ ์์ ์ ์ด๊ณ ์ ๋ขฐํ ์ ์๋ VLM ๊ฐ๋ฐ์ ์ฌ์ ํ ์ค์ํ ์ฐ๊ตฌ ๊ณผ์ ์ธ ์ํ
์ด ๋ ผ๋ฌธ์ ์ด๋ค ๋ด์ฉ์ ๋ค๋ฃจ๋๊ฐ?
์ด ๋ ผ๋ฌธ์ ๋ค์ ๋ด์ฉ์ ์ ๋ฌธ์ ์นํ์ ์ธ ํ๋ฆ์ผ๋ก ์ค๋ช ํฉ๋๋ค:
- VLM์ ๊ฐ๋
๋ฐ ๊ตฌ์กฐ
- contrastive ๋ฐฉ์, masked ๋ฐฉ์, generative ๋ฐฉ์ ๋ฑ VLM์ ๊ณ๋ณด ๊ตฌ๋ถ
- LLM ๊ธฐ๋ฐ ์ฌ์ ํ์ต(backbone ์ฌ์ฉ)์ ๋ํ ์ค๋ช
- VLM ํ์ต ์ ๋ต
- ์ด๋ค ๋ฐ์ดํฐ์ ์ ์จ์ผ ํ ๊น?
- ํ ์คํธ ์ธ์ฝ๋๋ ์๋ก ํ์ตํด์ผ ํ ๊น? LLM์ ๊ฐ์ ธ์ ์ธ ์ ์์๊น?
- contrastive loss๋ง์ผ๋ก ์ถฉ๋ถํ๊ฐ? generative ์์๋ ํ์ํ ๊น?
- VLM ํ๊ฐ ๋ฐฉ๋ฒ
- visio-linguistic benchmark์ ํํฉ๊ณผ ํ๊ณ
- bias๋ฅผ ์ด๋ป๊ฒ ์ธก์ ํ ๊ฒ์ธ๊ฐ?
- VLM์ ๋ฏธ๋: Video๋ก์ ํ์ฅ
- ์ด๋ฏธ์ง์ ๋ฌ๋ฆฌ ์์์ ์๊ฐ ์ถ(temporal) ์ดํด๊ฐ ํ์
- ์ฐ์ฐ๋, ์ด๋ ธํ ์ด์ ๋น์ฉ ๋ฑ ์๋ก์ด ๋์ ๊ณผ์ ์ ์
2. The Families of VLMs
ํธ๋์คํฌ๋จธ(Transformer) ๊ธฐ๋ฐ์ ์ํคํ
์ฒ๊ฐ ๋์
๋ ์ดํ, ์๊ฐ๊ณผ ์ธ์ด๋ฅผ ์ฐ๊ฒฐํ๋ ค๋ ๋ค์ํ ์ฐ๊ตฌ๋ค์ด ์๋๋์๋ค.
(1) contrastive learning (2) masking (3) pretrained backbones (4) generative modeling
์ด ์ฅ์์๋ ์ต๊ทผ์ VLM๋ค์ ํ์ต ๋ฐฉ์์ ๋ฐ๋ผ ๋ค ๊ฐ์ง ํจ๋ฌ๋ค์์ผ๋ก ๋๋์ด ์๊ฐํ๋ค.
์ด ๋ค ๊ฐ์ง ๋ฐฉ์์ ์ํธ ๋ฐฐํ์ ์ธ ๊ฒ์ด ์๋๋ฉฐ, ๋ง์ ๋ชจ๋ธ๋ค์ ์ฌ๋ฌ ๋ฐฉ์์ ํผํฉํ์ฌ ์ฌ์ฉํ๊ธฐ๋ ํ๋ค.
2.1 Early work on VLMs based on transformers
์ด๊ธฐ์ VLM ์ฐ๊ตฌ์์๋ BERT์ ๊ฐ์ ์ธ์ด ๋ชจ๋ธ์ ์๊ฐ ์ ๋ณด์ ํ์ฅํ์ฌ ์ฌ์ฉํ๋ค.
์๋ฅผ ๋ค์ด, VisualBERT์ ViLBERT๋ ์ด๋ฏธ์ง ํ ํฐ๊ณผ ํ
์คํธ๋ฅผ ๊ฒฐํฉํ์ฌ ์๊ฐ-์ธ์ด ๊ฐ์ ์ํธ์์ฉ์ ํ์ตํ๋ค.
์ด๋ฌํ ๋ชจ๋ธ๋ค์ ๋๊ฐ์ง objective๋ฅผ ์ฌ์ฉํ์ฌ ํ์ต๋๋ค.
(1) classical masked modeling: ์ ๋ ฅ์ ์ผ๋ถ(ํ ์คํธ๋ ์ด๋ฏธ์ง)๋ฅผ ๊ฐ๋ฆฌ๊ณ , ๋ชจ๋ธ์ด ์ด๋ฅผ ์ ํํ ์์ธกํ๋๋ก ํ์ต
(2) sentence-image prediction: ์ฃผ์ด์ง ์บก์ ์ด ์ด๋ฏธ์ง์ ์ค์ ๋ก ๊ด๋ จ ์๋์ง ์๋์ง๋ฅผ ๋ชจ๋ธ์ด ์ด์ง ๋ถ๋ฅ๋ก ํ๋จ
2.2 Contrastive-based VLMs
CLIP (Radford et al., 2021)์ ๋์กฐ ํ์ต ๊ธฐ๋ฐ Vision-Language Model ์ค ๊ฐ์ฅ ๋๋ฆฌ ์๋ ค์ง ๋ํ์ ์ธ ๋ชจ๋ธ์ด๋ค.
์ด ๋ชจ๋ธ์ InfoNCE ์์ค ํจ์๋ฅผ ํ์ฉํด ์ด๋ฏธ์ง์ ํ
์คํธ ๊ฐ์ ์์ ํ์ตํ์ฌ, ๊ณต๋ ์๋ฒ ๋ฉ ๊ณต๊ฐ(shared embedding space)์์ ์๋ฏธ์ ์ผ๋ก ์ ์ฌํ ์ด๋ฏธ์ง-ํ
์คํธ๊ฐ ๊ฐ๊น์ด ์์นํ๋๋ก ๋ง๋ ๋ค.
- Positive pair:
- ํ ์ด๋ฏธ์ง์ ํด๋น ์ด๋ฏธ์ง์ ๋ํ ์ ๋ต ์บก์
- Negative pair:
- ๋์ผํ ์ด๋ฏธ์ง์ ๋ค๋ฅธ ์ด๋ฏธ์ง๋ค์ ์บก์ ๋ค
- ์ฆ, ๋ฏธ๋๋ฐฐ์น ์์ ์๋ ๋๋จธ์ง ๋ชจ๋ ๋ฌธ์ฅ๋ค๊ณผ์ ์กฐํฉ์ ๋ถ์ ์ํ๋ก ๊ฐ์ฃผ
CLIP์ ์น์์ ์์งํ 4์ต ๊ฐ์ ์ด๋ฏธ์ง-์บก์ ์์ผ๋ก ์ฌ์ ํ์ต๋์๊ณ , ๋ค์๊ณผ ๊ฐ์ ๊ฐ๋ ฅํ ์ ๋ก์ท ์ฑ๋ฅ์ ๋ณด์ธ๋ค:
- ResNet-101 ๊ธฐ๋ฐ CLIP์ supervised ResNet-101๊ณผ ์ ์ฌํ ์ฑ๋ฅ ๋ฌ์ฑ (์: ImageNet์์ 76.2%)
- ๋ค์ํ robustness benchmark์์๋ ๊ธฐ์กด ์ง๋ ํ์ต ๋ชจ๋ธ์ ๋ฅ๊ฐ
ํ์์ฐ๊ตฌ
๐ธ SigLIP (Zhai et al., 2023)(ICCV'23 Oral)
- CLIP๊ณผ ์ ์ฌํ์ง๋ง, InfoNCE๊ฐ ์๋ binary cross-entropy ๊ธฐ๋ฐ NCE ์์ค์ ์ฌ์ฉํจ
- ์ด๋ฅผ ํตํด ์์ ๋ฐฐ์น ํฌ๊ธฐ์์๋ ์์ ์ ์ธ ์ ๋ก์ท ์ฑ๋ฅ์ ๋ณด์ฌ์ค
- ํนํ ๋๊ท๋ชจ ๋ฆฌ์์ค ์์ด๋ ํ์ต ๊ฐ๋ฅํ ๋์์ผ๋ก ์ฃผ๋ชฉ๋ฐ์
https://x.com/giffmana/status/1692641733459267713
๐ธ LLiP (Lavoie et al., 2024)
- ํ๋์ ์ด๋ฏธ์ง์ ์ฌ๋ฌ ๋ฐฉ์์ ์บก์ ์ด ๊ฐ๋ฅํ๋ค๋ ํ์ค์ ๋ฐ์
- ์ด๋ฏธ์ง ์ธ์ฝ๋ฉ์ ์บก์ ์ ์กฐ๊ฑด(condition) ํ๋๋ก cross-attention ๋ชจ๋์ ์ถ๊ฐํจ
- ํํ๋ ฅ ํฅ์ → ์ ๋ก์ท ๋ถ๋ฅ ๋ฐ ์ด๋ฏธ์ง-ํ ์คํธ ๊ฒ์ ์ฑ๋ฅ ํฅ์
2.3 VLMs with masking objectives
FLAVA
์ด๋ฏธ์ง์ ํ ์คํธ ๋ชจ๋์์ masking ๊ธฐ๋ฒ์ ํ์ฉํด ํ์ตํ ๋ํ์ ์ธ ๋ฉํฐ๋ชจ๋ฌ ๋ชจ๋ธ
FLAVA๋ ์ธ ๊ฐ์ Transformer ๊ธฐ๋ฐ ๋ชจ๋๋ก ๊ตฌ์ฑ๋์ด ์๋ค:
- Image Encoder
- ViT ๊ธฐ๋ฐ
- ์ด๋ฏธ์ง ํจ์น๋ฅผ ์ ๋ ฅ์ผ๋ก ๋ฐ์ [CLS_I] ํ ํฐ ํฌํจ ์ถ๋ ฅ
- Text Encoder
- ๋ฌธ์ฅ์ ํ ํฐํํ์ฌ [CLS_T] ํ ํฐ ํฌํจ ์ถ๋ ฅ
- Multimodal Encoder
- ์ด๋ฏธ์ง์ ํ ์คํธ์ ์ถ๋ ฅ(hidden states)์ ํตํฉ
- cross-attention๊ณผ ์ ํ ํฌ์์ ํ์ฉํด [CLS_M] ํ ํฐ ํฌํจ ์ถ๋ ฅ
FLAVA๋ ๋ค์ ์ธ ๊ฐ์ง ํ์ต ์์ค์ ๊ฒฐํฉํ์ฌ ์ฌ์ ํ์ต์ ์งํํ๋ค:
- Unimodal Masked Modeling Loss: ์ด๋ฏธ์ง ๋๋ ํ ์คํธ ๋จ๋ ์ผ๋ก ๋ง์คํน๋ ์ ๋ณด๋ฅผ ์์ธก
- Multimodal Masked Modeling Loss: ์ด๋ฏธ์ง์ ํ ์คํธ ์ ๋ณด๋ฅผ ํจ๊ป ์ฌ์ฉํด ๋ง์คํน๋ ๋ด์ฉ์ ์์ธก
- Contrastive Objective: ์ฌ๋ฐ๋ฅธ ์ด๋ฏธ์ง-ํ ์คํธ ์์ ๊ฐ๊น๊ฒ, ๊ทธ๋ ์ง ์์ ์์ ๋ฉ๊ฒ ์๋ฒ ๋ฉ๋๋๋ก ํ์ต
FLAVA๋ 7์ฒ๋ง ๊ฐ์ ๊ณต๊ฐ ์ด๋ฏธ์ง-ํ ์คํธ ์์ผ๋ก ์ฌ์ ํ์ต๋์์ผ๋ฉฐ, ์ด 35๊ฐ์ ๋ค์ํ ๋น์ /์ธ์ด/๋ฉํฐ๋ชจ๋ฌ ๋ฒค์น๋งํฌ์์ ๊ฐ๋ ฅํ ์ฑ๋ฅ์ ๋ณด์ฌ์ฃผ์๋ค.
MaskVLM
FLAVA์ ๋จ์ ์ dVAE๊ฐ์ pretrained vision encoder๋ฅผ ์ฌ์ฉํ๋ค๋ ๊ฒ์ด๋ค.
์ด์ฒ๋ผ ํ์ฌ ๊ตฌ์ฑ ์์์ ๋ํ ์์กด์ฑ์ ๊ฐ์ง๋ฉด ์๋ฒฝํ end-to-end ํ์ต์ด ์ด๋ ต๊ฒ ๋๋ ๋จ์ ์ด ์กด์ฌํ๋ค.
์ด๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ์๋์ ๋ชจ๋ธ์ ์ ์ํ๋ค.
- ํฝ์
๊ณต๊ฐ์์์ ์ง์ ์ ์ธ ๋ง์คํน
- ์ด๋ฏธ์ง๋ฅผ patch ๋จ์๋ก ๋๋์ง ์๊ณ , ์๋ณธ ์ด๋ฏธ์ง์ raw pixel์ ์ง์ ๋ง์คํน์ ์ ์ฉํ๋ค.
- ์ด๋ VAE ์์ด ์ด๋ฏธ์ง ์ ๋ณด๋ฅผ ์ง์ ์ฌ๊ตฌ์ฑํ๋๋ก ์ ๋ํ๋ค๋ ์ ์์ end-to-end ํ์ต์ด ๊ฐ๋ฅํด์ง๋ค.
- ํ
์คํธ ํ ํฐ์ ๋ํ ๋ง์คํน
- ์ด๋ฏธ์ง๋ฟ๋ง ์๋๋ผ, ํ ์คํธ ์ ๋ ฅ๋ ์ผ๋ถ ๋จ์ด๋ฅผ ๋ง์คํนํ ํ ๋ณต์ํ๋ Masked Language Modeling (MLM) ๋ฐฉ์ ์ ์ฉ.
- ํฌ๋ก์ค๋ชจ๋ฌ ์ ๋ณด ํ๋ฆ์ ํ์ฉ
- ํ ์คํธ๋ฅผ ๋ณต์ํ ๋ ์ด๋ฏธ์ง ์ธ์ฝ๋์์ ๋์จ ์๊ฐ ์ ๋ณด๋ฅผ ์ฌ์ฉํ๊ณ ,
- ์ด๋ฏธ์ง๋ฅผ ๋ณต์ํ ๋ ํ ์คํธ ์ธ์ฝ๋์์ ๋์จ ์ธ์ด ์ ๋ณด๋ฅผ ์ฌ์ฉํ๋ ์๋ฐฉํฅ ์ ๋ณด ํ๋ฆ ๊ตฌ์กฐ๋ฅผ ๋์ .
- ์ฆ, ํ modality์์ ๋๋ฝ๋ ์ ๋ณด๋ฅผ ๋ค๋ฅธ modality๋ก๋ถํฐ ๋ณด์ํ์ฌ ๋ณต์ํ๋ค.
2.4 Generative-based VLMs
์ง๊ธ๊น์ง ์๊ฐ๋ VLM๋ค์ ๋๋ถ๋ถ ์ ์ฌ ํํ(latent representation) ์์ค์์ ์ด๋ฏธ์ง์ ํ ์คํธ๋ฅผ ์ถ์ํํ ๋ค, ์ด๋ฅผ ๋งคํํ๋ ๋ฐฉ์์ผ๋ก ํ์ต๋์๋ค. ๋ฐ๋ฉด, Generative-based VLMs๋ ํ ์คํธ์ ์ด๋ฏธ์ง๋ฅผ ์ง์ ์์ฑํ ์ ์๋ ๋ชจ๋ธ์ ์๋ฏธํ๋ค. ์ด๋ค ๋ชจ๋ธ์ ์ด๋ฏธ์ง ์บก์ ๋, ํ ์คํธ ์์ฑ, ์ด๋ฏธ์ง ์์ฑ ๋ฑ ๋ค์ํ ๋ฐฉ์์ผ๋ก ๋น์ -์ธ์ด ์์ ์ ์ํํ๋ฉฐ, ํนํ multi-modal generation์ ๊ฐ์ ์ ๊ฐ์ง๋ค.
Coca: ํ ์คํธ ์์ฑ ๊ธฐ๋ฐ
CoCa (Contrastive Captioner)๋ CLIP์์ ์ฌ์ฉ๋ contrastive loss์ generative loss๋ฅผ ์ถ๊ฐํ์ฌ, ์ด๋ฏธ์ง ์บก์ ๋ ๋ฐ VQA(Visual Question Answering) ๊ฐ์ ์์ ๋ ์ฒ๋ฆฌํ ์ ์๋๋ก ์ค๊ณ๋ ๋ชจ๋ธ์ด๋ค.
- ์ ๋ ฅ: ์ด๋ฏธ์ง ์ธ์ฝ๋์ ์ถ๋ ฅ๊ณผ ํ ์คํธ ๋์ฝ๋์ ์ค๊ฐ ํํ
- ์ถ๋ ฅ: ๋ฉํฐ๋ชจ๋ฌ ํ ์คํธ ๋์ฝ๋๊ฐ ์์ฑํ ์บก์
- ํ์ต ์์ค: contrastive loss + caption generation loss
๊ตฌ๋ถ/์ ๋ ฅ/๋ชฉ์ /์ถ๋ ฅ
Image Encoder | ์ด๋ฏธ์ง | ์๊ฐ ์ ๋ณด ์ธ์ฝ๋ฉ | img_feature |
Unimodal Text Decoder | ํ ์คํธ + [CLS] | contrastive ์ฉ ํ ์คํธ ์๋ฒ ๋ฉ | cls_token_feature |
Multimodal Text Decoder | ํ ์คํธ + ์ด๋ฏธ์ง context (cap_feature) | ์ด๋ฏธ์ง ์ค๋ช ์์ฑ | ๋จ์ด ์ํ์ค |
CoCa๋ ์ด๋ฏธ์ง์ ๋ผ๋ฒจ์ ํ ์คํธ๋ก ์ฒ๋ฆฌํ๋ ๋ฐฉ์์ผ๋ก ํ์ต๋๋ฉฐ, ๋๊ท๋ชจ ์น ๊ธฐ๋ฐ ๋ฐ์ดํฐ์ ์ธ ALIGN (1.8B ์ด๋ฏธ์ง)์ ๋ด๋ถ ๋ผ๋ฒจ ๋ฐ์ดํฐ์ ์ธ JFT-3B (>29.5K ํด๋์ค)๋ก ํ์ต๋๋ค. ์ด๋ก ์ธํด ๋ณ๋์ ๋ฉํฐ๋ชจ๋ฌ ๋ชจ๋ ์์ด ๋ค์ํ ๋น์ -์ธ์ด ํ์คํฌ๋ฅผ ์ํํ ์ ์๋ค.
Chameleon and CM3leon: ๋ฉํฐ๋ชจ๋ฌ ์์ฑ ๋ชจ๋ธ
CM3Leon (Meta AI, 2023)
CM3Leon์ ํ ์คํธ-์ด๋ฏธ์ง ๊ฐ ์๋ฐฉํฅ ์์ฑ(image captioning + text-to-image generation)์ ๋ชจ๋ ์ํํ๋ multimodal autoregressive model์ด๋ค.
- ํ ํฌ๋์ด์ ๊ตฌ์ฑ:
- ์ด๋ฏธ์ง: 256×256 ์ด๋ฏธ์ง๋ฅผ 1024๊ฐ์ ์๊ฐ ํ ํฐ์ผ๋ก ๋ณํ
- ํ ์คํธ: ๊ธฐ์กด ํ ์คํธ ํ ํฌ๋์ด์ ์ฌ์ฉ (vocab size 56,320)
- ํน๋ณ ํ ํฐ <break>๋ก modality ์ ํ ์์ ์ ๋ช ์
- ๋ชจ๋ธ ๊ตฌ์กฐ: Decoder-only Transformer
- ํ์ต ๊ณผ์ :
- Retrieval-augmented pretraining: CLIP ๊ธฐ๋ฐ retriever๋ก ๊ด๋ จ ๋ฌธ์๋ค์ ๋ถ๋ฌ์ ์ํ์ค ์์ ๋ถ์ฌ ํ์ต
- Supervised fine-tuning (SFT): multi-task instruction tuning ๋ฐฉ์์ผ๋ก ๋ค์ํ ํ์คํฌ ํ์ต
CM3Leon์ ํ ์คํธ-์ด๋ฏธ์ง ๊ฐ ์ํธ์์ฉ์ ์์ฐ์ค๋ฝ๊ฒ ์ฒ๋ฆฌํ ์ ์๋ ๋ฅ๋ ฅ์ ๋ณด์ฌ์ฃผ๋ฉฐ, ๋ค์ํ ๋ฉํฐ๋ชจ๋ฌ ํ์คํฌ์์ SOTA ์ฑ๋ฅ์ ๋ฌ์ฑํ์๋ค.
Chameleon (OpenAI, 2024)
Chameleon์ ํ ์คํธ, ์ด๋ฏธ์ง, ์ฝ๋๊ฐ ํ๋์ ์ฐ์๋ ์ํ์ค๋ก ์ฒ๋ฆฌ๋๋ ์ง์ ํ Mixed-modal Foundation Model์ด๋ค.
- ์ ๋ ฅ ๋จ์ผํ: ์ด๋ฏธ์ง์ ํ ์คํธ ๋ชจ๋ discrete ํ ํฐ์ผ๋ก ๋ณํํด, ๋์ผํ Transformer๋ก ์ฒ๋ฆฌ
- ์ํคํ
์ฒ ํน์ฑ:
- Early-fusion ๊ตฌ์กฐ: ๋ชจ๋ modality๋ฅผ ์ฒ์๋ถํฐ ํ๋์ ๊ณต๊ฐ์ ๋งคํ
- Fully token-based: encoder ๋ถ๋ฆฌ ์์ด ํตํฉ ํํ
- ๊ธฐ์ ์ ๋์ ๊ณผ ํด๊ฒฐ:
- Query-key normalization, layer norm ์์น ์กฐ์ ๋ฑ์ผ๋ก ์์ ์ฑ ํ๋ณด
- ๊ธฐ์กด ํ ์คํธ ๊ธฐ๋ฐ SFT ๊ธฐ๋ฒ์ mixed-modal์๋ ์ ์ฉ
Chameleon์ ์ผ๋ฐ์ ์ธ ์ด๋ฏธ์ง ์์ฑ์ด๋ ์บก์ ๋์ ๋์ด, ๋ค์ค ๋ชจ๋ฌ ๋ฌธ์ ์ดํด ๋ฐ ์์ฑ๊น์ง ์ํํ ์ ์๋ ๊ฐ๋ ฅํ ๋ฒ์ฉ ๋ชจ๋ธ๋ก ์ฃผ๋ชฉ๋ฐ๊ณ ์๋ค.
+ Early Fusion ๋ฐฉ์์ Gemini์์๋ ์ฌ์ฉ๋์์ง๋ง, gemini๋ ์ด๋ฏธ์ง์ ํ
์คํธ์ ๋ํด ๋ณ๊ฐ์ ๋์ฝ๋๋ฅผ ์ฌ์ฉํ ๋ฐ๋ฉด์ Chameleon์ ๋์ฝ๋ ๋ถ๋ถ๊น์ง ํตํฉ๋ ๋ชจ๋๋ก ์๋ ํฌ ์๋๋ก ๋์ํ๋ค๋ ์ฐจ์ด์ ์ด ์๋ค.
(์ถ์ฒ: https://kk-eezz.tistory.com/109)
2.5 VLMs from Pretrained Backbones
Vision-Language Model(VLM)์ ์ฒ์๋ถํฐ ํ์ตํ๋ ๊ฒ์ ๋ง๋ํ ๋ฆฌ์์ค๋ฅผ ์๊ตฌํ๋ค.
์๋ฐฑ~์์ฒ ๊ฐ์ GPU์ ์์ต ๊ฐ์ ์ด๋ฏธ์ง-ํ
์คํธ ์์ด ํ์ํ๊ธฐ ๋๋ฌธ์, ์ต๊ทผ์๋ ์ด๋ฏธ ํ์ต๋ LLM์ด๋ ๋น์ ์ธ์ฝ๋๋ฅผ ์ฌํ์ฉํ๋ ๋ฐฉ์์ด ์ฃผ๋ชฉ๋ฐ๊ณ ์๋ค.
์ด ์ ์์๋ ๋ํ์ ์ธ pretrained backbone ๊ธฐ๋ฐ VLM๋ค์ ์๊ฐํ๋ค.
Frozen
- Frozen์ ์ฌ์ ํ์ต๋ LLM(7B ํ๋ผ๋ฏธํฐ)๊ณผ ๊ฐ๋ฒผ์ด vision encoder๋ฅผ ์ฐ๊ฒฐํ๋ ์ต์ด์ ์๋ ์ค ํ๋
- ๊ตฌ์กฐ:
- Vision encoder: NF-ResNet-50 (ํ์ต๋จ)
- Language model: 7B transformer (C4๋ก ํ์ต๋ ์ํ ๊ทธ๋๋ก freeze)
- ๋ ๋ชจ๋ฌ๋ฆฌํฐ ์ฌ์ด๋ฅผ ์ ํ ๋งคํ layer๋ก ์ฐ๊ฒฐ
- ํ์ต:
- Conceptual Captions ๋ฐ์ดํฐ์ ๊ธฐ๋ฐ ํ ์คํธ ์์ฑ ๋ชฉํ๋ก ํ์ต
- ํน์ง:
- ์ด๋ฏธ์ง์ ํ ์คํธ ์๋ฒ ๋ฉ์ ํจ๊ป ์ ๋ ฅ๋ฐ์ ํ ์คํธ๋ฅผ ์์ฑ
- ์ฑ๋ฅ์ ์ ํ์ ์ด์ง๋ง, ๋ฉํฐ๋ชจ๋ฌ LLM์ ๊ธฐ๋ฐ์ ๋ง๋ จํ ์๋ฏธ ์๋ ์ถ๋ฐ์
MiniGPT ๊ณ์ด
MiniGPT-4
- Flamingo ์ดํ ๋ฐ์ ํ ๊ตฌ์กฐ๋ก, ํ ์คํธ์ ์ด๋ฏธ์ง๋ฅผ ์ ๋ ฅ์ผ๋ก ๋ฐ์ ํ ์คํธ๋ฅผ ์ถ๋ ฅํจ
- ๊ตฌ์ฑ:
- Visual encoder: BLIP-2์ ViT + Q-Former
- Language model: Vicuna
- ์ค๊ฐ ์ฐ๊ฒฐ: ๋จ์ํ ์ ํ projection layer
- ํ์ต:
- 1๋จ๊ณ: Conceptual Captions, SBU, LAION (5M์)์ผ๋ก ์ ํ ๋ ์ด์ด ํ์ต (4GPU, 10์๊ฐ)
- 2๋จ๊ณ: instruction tuning ๋ฐฉ์์ ์๊ท๋ชจ ๊ณ ํ์ง ๋ฐ์ดํฐ (400 step)
- ์ฅ์ : ์ฌ์ ํ์ต๋ ๋ฐฑ๋ณธ์ ํ์ฉํ์ฌ ๋งค์ฐ ํจ์จ์ ์ผ๋ก ํ์ต ๊ฐ๋ฅ
MiniGPT-5
- MiniGPT-4์์ ์ด๋ฏธ์ง๋ ์ถ๋ ฅ ๊ฐ๋ฅํ ๋ชจ๋ธ๋ก ํ์ฅ
- ์ด๋ฏธ์ง ์์ฑ์ ์ํด generative visual token ์ฌ์ฉ → Stable Diffusion 2.1์ ์ ๋ ฅ๋จ
- ๋ฉํฐ๋ชจ๋ฌ ๋ํ, ์คํ ๋ฆฌ ์์ฑ ๋ฑ ๋ณตํฉ ํ์คํฌ์ ํ์ฉ
MiniGPT-v2
- ๋ค์ํ ๋น์ -์ธ์ด ํ์คํฌ๋ฅผ ํ๋์ ์ธํฐํ์ด์ค์์ ์ฒ๋ฆฌ
- ๊ฐ ํ์คํฌ์ ๋ํด ๊ณ ์ ํ์คํฌ ์๋ณ์(token)๋ฅผ ์ถ๊ฐํ์ฌ ๋ฉํฐํ์คํฌ ํ์ต ํจ๊ณผ์ ์ผ๋ก ๋ฌ์ฑ
- VQA, visual grounding ๋ฑ์์ ์ฐ์ํ ์ฑ๋ฅ
๊ทธ ์ธ ๋ํ์ ์ธ ๋ฐฑ๋ณธ ๊ธฐ๋ฐ ๋ชจ๋ธ
Qwen-VL / Qwen-VL-Chat
- ๊ตฌ์กฐ:
- LLM: Qwen-7B
- Visual encoder: ViT-bigG
- Cross-attention์ผ๋ก visual feature๋ฅผ ์์ถ ํ LLM์ ์ ๋ ฅ
BLIP-2
- ๊ตฌ์กฐ:
- Visual encoder (์: CLIP) → image embedding
- Q-Former: randomly initialized query vector๋ค์ด ์ด๋ฏธ์ง ์๋ฒ ๋ฉ๊ณผ cross-attention ์ํ
- ๊ฒฐ๊ณผ๋ฅผ ์ ํ ๋ณํํ์ฌ LLM์ ์ ๋ ฅ ๊ณต๊ฐ์ผ๋ก ํฌ์
- ํน์ง:
- LLM(์: OPT)์ freeze ์ํ
- Q-Former๋ง ํ์ต → ํจ์จ์ ์ด๋ฉฐ ์ฑ๋ฅ ์ข์ ๊ตฌ์กฐ
Q-former์ด๋?
"Query Transformer"์ ์ฝ์๋ก, ํ์ต ๊ฐ๋ฅํ ์ฟผ๋ฆฌ(query) ๋ฒกํฐ๋ค์ ์ฌ์ฉํด ์ด๋ฏธ์ง์ ์ํธ์์ฉํ๊ณ ,
์ด๋ฅผ ํตํด ์ป์ ์ ๋ณด๋ฅผ LLM์ ์ ๋ ฅ ํ ํฐ ๊ณต๊ฐ์ผ๋ก ๋งคํํ๋ ์ญํ ์ ์ํ
์ Q-Former๊ฐ ํ์ํ๊ฐ?
LLM์ ํ ์คํธ ํ ํฐ๋ง์ ์ ๋ ฅ์ผ๋ก ๋ฐ๋๋ก ์ค๊ณ๋์ด ์๋ค.
ํ์ง๋ง ์ด๋ฏธ์ง ์ธ์ฝ๋๊ฐ ์ถ๋ ฅํ๋ feature๋ LLM์ ๊ธฐ๋ํ๋ embedding space์ ๋ค๋ฆ ๋๋ค.
>>> Q-Former๋ ์ด ๊ฐ๊ทน์ bridge(๋ค๋ฆฌ) ํด์ฃผ๋ ์ญํ
Q-Former์ ๊ตฌ์กฐ์ ์๋ ๋ฐฉ์
โ ์ ๋ ฅ
- Image encoder (์: ViT)๋ก๋ถํฐ ์ถ์ถํ image feature tokens
- ํ์ต ๊ฐ๋ฅํ query vector (์: 32๊ฐ, ๋๋ค ์ด๊ธฐํ)
โก Transformer ๊ธฐ๋ฐ cross-attention
- Query vector๋ค์ด image tokens๊ณผ cross-attention์ ์ํํจ (์ฆ, "์ด ์ด๋ฏธ์ง์์ ์ค์ํ ์ ๋ณด๊ฐ ๋ญ์ผ?"๋ฅผ query๋ค์ด ๋ฌป๋ ๊ตฌ์กฐ)
- ์ด ๊ณผ์ ์ ํตํด query๋ค์ ์ด๋ฏธ์ง ์ ๋ณด๊ฐ ๋ น์๋ ๋ฒกํฐ๋ก ์ ๋ฐ์ดํธ๋จ
โข Projection to LLM input space
- ์์์ ์ป์ query ์ถ๋ ฅ์ ์ ํ projection layer๋ฅผ ํตํด LLM์ ์ ๋ ฅ ํฌ๋งท์ผ๋ก ๋ณํ
- ์ด๋ ๋์จ ๋ฒกํฐ๋ค์ ํ ์คํธ ํ ํฐ๊ณผ ๋์ผํ ํฌ๋งท์ด ๋์ด, LLM์ ์์ฐ์ค๋ฝ๊ฒ ์ฐ๊ฒฐ๋จ
ํญ๋ชฉ / Qwen-VL / BLIP-2 (Q-Former ๊ธฐ๋ฐ)
์๊ฐ ์ ๋ณด ์ฝ์ ๋ฐฉ์ | ํ ์คํธ ํ ํฐ ์์ cross-attention์ผ๋ก ์๊ฐ ์ ๋ณด ๋ฐ์ | ์ด๋ฏธ์ง ํผ์ฒ๋ฅผ pseudo text token์ผ๋ก ๋ณํํ์ฌ LLM์ ์ง์ ์ ๋ ฅ |
LLM ์ ๋ ฅ ๊ตฌ์กฐ | ํ ์คํธ๋ง ์ ๋ ฅ, ์ด๋ฏธ์ง ํผ์ฒ๋ ๋ด๋ถ์์ ์ฐธ์กฐ๋ง ํจ | ์ด๋ฏธ์ง ์๋ฒ ๋ฉ์ด ํ ์คํธ์ฒ๋ผ ์ง์ ์ ๋ ฅ๋จ (Q-Former ํตํด ๋ณํ๋จ) |
ํ์ต๋๋ ๋ถ๋ถ | Cross-attention layer, LLM ์ผ๋ถ fine-tune | Q-Former (query + cross-attn + projection)๋ง ํ์ต |
๋์์ธ ์ฒ ํ | "ํ ์คํธ ์ค์ฌ reasoning + ์ด๋ฏธ์ง ๋ณด์กฐ" | "์ด๋ฏธ์ง ์์ฝ์ ํ ์คํธํํด์ LLM์๊ฒ ๋งก๊น" |
์ ์ฐ์ฑ | ๊ธฐ์กด LLM ๊ตฌ์กฐ ๊ฑฐ์ ๊ทธ๋๋ก ์ ์ง ๊ฐ๋ฅ | ๊ตฌ์กฐ์ LLM๊ณผ tightly couple ํ์ |
ํ ์คํธ-์ด๋ฏธ์ง ๊ฒฐํฉ ์์ | LLM ๋ด๋ถ์ attention ๋ ์ด์ด์์ ๊ฒฐํฉ | LLM ์ ๋ ฅ๋จ์์ ๊ฒฐํฉ๋จ (์ ๋ ฅ ์์ฒด๊ฐ ๋ฉํฐ๋ชจ๋ฌ) |
๋ชจ๋ธ / ํน์ง / ์ฐ๊ฒฐ ๋ฐฉ์ / ํ์ต ํ๋ผ๋ฏธํฐ
Frozen | ์ต์ด์ LLM ์ฐ๊ฒฐ VLM | linear projection | LLM์ freeze |
MiniGPT-4 | ํจ์จ์ ํ ์คํธ ์์ฑ | linear + BLIP-2 encoder | Vicuna + ViT |
MiniGPT-5 | ํ ์คํธ + ์ด๋ฏธ์ง ์์ฑ | generative visual token + SD 2.1 | ๋ฉํฐ๋ชจ๋ฌ ์์ฑ |
MiniGPT-v2 | unified ์ธํฐํ์ด์ค + ํ์คํฌ ์๋ณ์ | instruction tuning | VQA ๋ฑ ๊ฐํจ |
Qwen-VL | cross-attention ๊ธฐ๋ฐ ์ฐ๊ฒฐ | ViT-bigG → LLM | Qwen-7B ์ฌ์ฉ |
BLIP-2 | Q-Former๋ก ์ ๋ ฌ | CLIP → Q-Former → LLM | ํจ์จ์ ๊ตฌ์กฐ |
3. A Guide to VLM Training
์ต๊ทผ VLM(Vision-Language Model)์ ์ฑ๋ฅ์ ๋์ด๊ธฐ ์ํด ์ค์ผ์ผ์
์ด ๊ฐ์กฐ๋์ด ์๋ค.
CLIP์ฒ๋ผ ์์ต ๊ฐ์ ์ด๋ฏธ์ง-ํ
์คํธ ์์ ํ์ฉํ ๋๊ท๋ชจ ํ์ต์ ๋์ ์ฑ๋ฅ์ ๋ณด์ฅํ์ง๋ง, ๋ง๋ํ ๋น์ฉ๊ณผ ์์์ด ์๋ชจ๋๋ค.
ํ์ง๋ง ์ต๊ทผ ์ฐ๊ตฌ๋ค์ ๋จ์ํ ๋ฐ์ดํฐ ์์ ํ์ฅ๋ณด๋ค๋ ‘์ข์ ๋ฐ์ดํฐ์ ์ ์ด๋ป๊ฒ ์ ๋ณํ๊ณ ๊ตฌ์ฑํ๋๋’๊ฐ ์ฑ๋ฅ ํฅ์์ ๋ ํจ๊ณผ์ ์์ ๋ณด์ฌ์ฃผ๊ณ ์๋ค.
์ข์ ๋ฐ์ดํฐ๊ฐ ๊ณง ์ข์ ์ ๋ก์ท ์ฑ๋ฅ์ ๋ง๋ ๋ค
- ์ ๋ก์ท ์ฑ๋ฅ์ "๋ชจ๋ธ์ด ๋๋ํด์"๊ฐ ์๋๋ผ,
ํ์ต ๋ฐ์ดํฐ ์์ ๊ทธ ๊ฐ๋ ์ด ์ถฉ๋ถํ ํฌํจ๋์ด ์์๊ธฐ ๋๋ฌธ์ ๊ฐ๋ฅํ ๊ฒ - “ํ์ต ๋ฐ์ดํฐ์ ๊ทธ ๊ฐ๋ ์ด ์ผ๋ง๋ ์กด์ฌํ๋๋”๊ฐ ์ ๋ก์ท ์ฑ๋ฅ์ ํต์ฌ
# ์ฐธ๊ณ ๋ธ๋ก๊ทธ
'๐ Study > Paper Review' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[24'NeurlPs] Visual Fourier Prompt Tuning (0) | 2025.05.09 |
---|---|
[Paper Review] Vision-Language Models for Vision Tasks: A Survey (0) | 2025.05.08 |
[Paper Review] QLoRA: Efficient Finetuning of Quantized LLMs (0) | 2025.04.11 |
[LLM] Base Model๊ณผ Instruct Model, ๊ทธ๋ฆฌ๊ณ Chat Template (0) | 2025.03.27 |
[Paper Review] Compact3D: Smaller and Faster Gaussian Splatting with Vector Quantization (2) | 2024.07.14 |