Efficient VLM — Overview

Survey

한 줄 요약. VLM은 시각 토큰이 텍스트보다 훨씬 많아(예: LLaVA 한 장에 576개) LLM 입력이 길어지고 연산이 토큰 수의 제곱으로 폭증한다. Efficient VLM은 이 시각 토큰을 줄여(선택·압축·복구) latency·메모리·FLOPs를 낮추는 방법들이다. 이 글은 분야를 두 축으로 지도화한다 — ① 어디서 줄이나(인코더 · 브리지 · LLM), ② 무엇으로 고르나(중요도 · 다양성 · 중복 · 민감도 · 공간 …). 그 위에 발전 흐름20개 방법 한눈에 보기 표를 얹는다.

왜 Efficient VLM인가

VLM은 이미지를 수백 개의 시각 토큰으로 바꿔 LLM에 넣는다. 그런데 LLM의 self-attention은 입력 길이에 제곱으로 비싸지므로, 긴 시각 토큰 시퀀스가 곧 비용이다.

  • LLM 단계 비용이 지배적ViT 토큰 축소가 비전 인코더 안의 비용을 줄였다면, VLM에선 LLM에 들어가는 시각 토큰 수가 전체 latency·메모리를 좌우한다.
  • 순수 시각만 보면 위험 — 시각 정보에만 의존해 토큰을 자르면 질문에 필요한 정보를 잃는다(oversimplification). 그래서 많은 방법이 질문 텍스트를 “어떤 시각 토큰이 답에 필요한지”의 단서로 쓴다.

즉 Efficient VLM = “질문을 고려해, 답에 필요 없는 시각 토큰을 — 어느 단계에서·어떤 기준으로 — 얼마나 줄일까” 의 문제다. 아래 두 축이 그 “어느 단계”와 “어떤 기준”이다.

축 ①: 어디서 줄이나 (위치)

VLM 파이프라인(Input → Visual Encoder → Bridge/Projector → LLM → Output)에서 시각 토큰을 줄일 수 있는 지점. encoder-side · bridge-side · LLM-side로 나뉜다. 효과는 latency·memory·FLOPs·throughput.
① Encoder Encoder

시각 인코더 안에서 토큰을 미리 줄인다. 인코더 연산까지 함께 절감(ToMe·VisionZip). 인코더를 재설계해 애초에 토큰을 적게 내는 길도(FastVLM).

② Bridge / Pre-LLM Bridge

인코더와 LLM 사이(projector 부근)에서 추려 LLM에 넣는다. LLM 비용을 직접 줄인다(DivPrune·CDPruner·PruMerge·G-Prune).

③ LLM LLM

LLM 내부(주로 얕은 디코더 층)에서 시각 토큰을 솎아낸다. attention 관찰에서 출발(FastV·SparseVLM·PyramidDrop·DART).

한 방법이 여러 단계에 걸치기도 한다 — IVTP는 인코더와 LLM 양쪽에서 2-stage로 자르고(Encoder+LLM), Recoverable Compression은 브리지에서 자르되 질문 텍스트로 되살린다.

축 ②: 무엇으로 고르나 (선택 기준)

위치가 “어디서”라면, 선택 기준은 “어떤 신호로 남길 토큰을 정하나” 다. 초기엔 사실상 attention 하나였지만, 그 한계(층·헤드마다 불안정, 중복 잔존)가 드러나며 기준이 분화했다.

① 중요도 (attention)

시각 토큰이 받는 attention으로 중요도를 매겨 낮은 걸 버린다 — 가장 기본(FastV·PyramidDrop·ATP-LLaVA). 단, attention은 불안정하고 비슷한 토큰을 함께 남겨 중복이 생긴다.

② 다양성 · 중복 제거

중복을 직접 겨냥한다 — 비슷한 토큰을 병합하거나(ToMe·CrossGET·VisionZip·PruMerge), 서로 다른 토큰을 고르거나(DivPrune·CDPruner), 아예 중복만 지운다(DART).

③ attention 너머의 새 신호

attention의 불안정·중복을 피해 더 직접적인 신호로 — 그래프 정보 전파(G-Prune), 비용 최적화(TopV), 출력 민감도(ZOO-Prune), 공간 근접(VLM-Pruner).

④ 질문(텍스트) 가이드

위 기준에 질문을 더한다 — 질문과 관련된 시각 토큰을 우선 남겨 순수 시각의 과압축을 막는다(SparseVLM raters·Recoverable·IVTP·CoViPAL).

게다가 대부분 버린 토큰을 그냥 두지 않고 복구·재활용한다 — 클러스터링해 합치거나(SparseVLM·PruMerge·VLM-Pruner의 SWA) 질문 단서로 되살린다(Recoverable). 그리고 추가 학습이 필요 없는 training-free로 수렴하는 추세다.

관련 논문 한눈에 보기

아래 표는 두 축(위치 · 학습 유형)과 핵심을 연도순으로 정리한 지도다. 위치는 색 태그로 — Encoder / Bridge / LLM / 걸치면 Encoder+LLM.

Method Venue 위치 학습 핵심
ToMe ICLR 2023 Encoder training-free bipartite soft matching으로 유사 토큰 병합 — ViT 토큰 축소의 토대
MADTP CVPR 2024 Encoder fine-tuning 비전·언어 인코더에서 동적으로 토큰 가지치기(MAG 정렬 + DTP 동적비율)
CrossGET ICML 2024 Encoder fine-tuning cross-modal 가이드로 토큰을 매칭·병합(ensemble) + complete-graph soft matching
FastV ECCV 2024 LLM training-free 깊은 층의 시각 attention 희소성 → 초기 층(layer 2) 뒤 토큰 가지치기
IVTP ECCV 2024 Encoder+LLM training-free 2단계 — 인코더 GTP(attention rollout, frozen ViT 대응) + LLM 단계 instruction 필터(pseudo CLS) · LLaVA-1.5 토큰 88.9%↓
VLTP WACV 2025 Encoder training-based MLLM 가이드로 task 관련 토큰만 깊은 ViT 층에 통과(다단계·재활성) — task 지향 분할(TOS) 가속
SparseVLM ICML 2025 LLM training-free text raters로 self-attention 중요도 평가 → rank 기반 적응 압축 + token recycling (FastV 능가)
Recoverable Compression AAAI 2025 Bridge training-free CLS 1차 필터 → 질문 텍스트 유사 토큰을 복구(recover) → 나머지 병합 · 토큰 ~10%로
G-Prune AAAI 2025 Bridge training-free 시각 토큰을 그래프 노드로 — 의미 유사도 간선 + 정보 전파로 중요도 매겨 top-k 선택(전경·배경 모두) · LLM attention 불필요
VisionZip CVPR 2025 Encoder training-free 인코더 출력에서 dominant 토큰 선택 + contextual 병합 · text-agnostic(멀티턴 강점)
DivPrune CVPR 2025 Bridge training-free 가지치기를 Max-Min Diversity(MMDP) 로 — 중요도 아닌 다양성 최대 부분집합 선택(LLM 입력 전 1회)
ATP-LLaVA CVPR 2025 LLM training-based ATP 모듈로 인스턴스·층별 적응 압축률 + SAP(공간 보강) · 토큰 75%↓에 1.9%
TopV CVPR 2025 LLM training-free 가지치기를 비용 최적화(특징 유사도·공간·중심거리 + Sinkhorn)로 — attention 휴리스틱 대신, prefill 1회FlashAttention·KV cache 호환·메모리↓
PyramidDrop (PDrop) CVPR 2025 LLM training-free 깊을수록 중복↑ → stage별 피라미드처럼 점진 드롭(고해상도 학습도 가속)
FastVLM CVPR 2025 Encoder pretraining FastViTHD(conv+transformer) 인코더 재설계로 고해상도에서 토큰 4~16×↓·인코딩 지연↓ → 가지치기 불필요, TTFT 3.2×↑ (Apple)
LLaVA-PruMerge ICCV 2025 Bridge training-free CLS-패치 attention 희소성 → IQR로 적응적 선택(입력마다 다른 개수) + k-NN 가중 병합(PruMerge+) · 토큰 ~5.5%(~32개)
CDPruner NeurIPS 2025 Bridge training-free attention·유사도를 넘어 질문에 조건화한 다양성DPP로 최대화 → 다양+질문관련 토큰만 · LLaVA FLOPs 95%↓에 94%
CoViPAL EMNLP 2025 Bridge training-based 가볍고 model-agnostic한 PPM이 LVLM 전에 문맥 기반으로 잉여 토큰 예측·제거(얕은 층도) · training-free·based 양쪽 능가(이미지·비디오)
DART EMNLP 2025 LLM training-free “중요도는 random보다 못하다” → 중복(duplication) 기준 — pivot 토큰(≤2%)과 중복 낮은 토큰만 유지 · FlashAttention 호환·88.9%↓
ZOO-Prune CVPR 2026 Bridge training-free 민감도(sensitivity) 기준 — projection layer에서 zeroth-order 섭동으로 출력 영향 추정(backprop 없이) + 다양성 결합(Score=Div×Sens) · 토큰 94.4%↓
VLM-Pruner CVPR 2026 LLM training-free 중복+공간 희소성 균형 — pivot에서 근→원(centrifugal) 선택(BSS 기준)·버린 토큰 SWA 회복 → 흩어짐 없이 객체 디테일 보존 · 88.9%↓

「학습」 유형 — 각 방법(가지치기·병합·복구·인코더 설계)을 적용하는 데 어떤 학습이 필요한가를 나타낸다.
· training-free : 추가 학습 없이 사전학습된 모델에 그대로 끼운다(plug-and-play). 대부분의 추세.
· fine-tuning : 가지치기를 켠 채 모델(VLM) 가중치를 미세조정해 성능을 회복·적응시킨다.
· training-based : 모델 본체는 두고 가지치기용 모듈을 따로 학습한다(예: 중요도 예측기·분류기).
· pretraining : 가지치기가 아니라 인코더 자체를 새로 설계·사전학습해 토큰을 적게 내놓는다(FastVLM).

발전 흐름

분야가 2년 남짓으로 짧아 “세대”로 가르긴 이르지만, 무게중심이 옮겨온 흐름은 뚜렷하다 — 위치(축①)와 기준(축②)이 함께 움직였다.

① 인코더에서 시작 Encoder

ViT 토큰 축소(ToMe)를 멀티모달 인코더로 이식 — 비전·언어를 정렬해 자르거나 병합(MADTP·CrossGET). 단, fine-tuning이 필요했다.

② LLM-side의 발견 LLM

FastV"깊은 LLM 층에선 시각 토큰 attention이 거의 0"임을 관찰 → 무게중심이 LLM 내부로. 한 층 뒤 잘라내고(FastV) stage별 점진 드롭(PyramidDrop)까지, 게다가 training-free로.

③ 질문 가이드 · 브리지 선별 Bridge

순수 시각만 보면 위험 → 질문(텍스트)을 단서로 답에 필요한 토큰만 LLM 전(브리지)에서 선별·복구한다(SparseVLM·Recoverable·CoViPAL). plug-and-play 모듈이 폭발적으로 늘었다.

④ 선택 기준의 정교화 기준

최근엔 "무엇으로 고르나"(축②)가 분화한다 — 다양성·중복(DivPrune·DART)을 넘어 그래프(G-Prune)·비용 최적화(TopV)·민감도(ZOO-Prune)·공간(VLM-Pruner), 나아가 인코더 설계로 토큰을 적게 내는 길(FastVLM)까지.

벤치마크

평가는 대부분 image/video understanding 벤치마크로 한다 — MME · POPE · GQA · TextVQA · MMBench · SEED · ScienceQA · OCRBench 등. 각 벤치마크가 무엇을 보는지는 VLM Overview의 주요 벤치마크에 정리해 두었다. 핵심 비교 지표는 압축률(유지 토큰 수) 대비 정확도 유지 + latency이며, 특히 고압축(토큰 ~90%↓)·OCR/문서처럼 디테일이 중요한 task에서 방법 간 차이가 크게 갈린다.