[DivPrune] Diversity-based Visual Token Pruning for Large Multimodal Models

Bridge CVPR 2025

Saeed Ranjbar Alvar, Gursimran Singh, Mohammad Akbari, Yong Zhang · Huawei Technologies Canada

arXiv GitHub

한 줄 요약. 보통 토큰 가지치기는 "중요도 높은 토큰"을 남기는데, 중요한 토큰끼리 서로 비슷해(중복) 정작 정보 다양성이 떨어진다. DivPrune은 가지치기를 Max-Min Diversity Problem(MMDP) 로 재정의 — 고른 토큰들 사이의 다양성(최소 거리)을 최대화하는 부분집합을 뽑고 나머지를 버린다. 다양성이 높아 적은 토큰으로도 원본을 잘 대표 → 높은 압축률에서도 fine-tuning 없이 성능 유지. training-free이고, LLM 첫 층 전(Layer 0)에서 1회 수행(거리 계산이 prefill 1회뿐이라 디코딩마다 계산하는 방식보다 E2E가 빠르다). 16개 image·video 데이터셋에서 SOTA, latency·메모리 절감.

배경

LMM은 시각 토큰이 수천 개로 늘어 LLM 입력이 길어지고 추론이 느려진다. 기존 가지치기엔 두 약점이 있었다.

  • 학습이 필요하거나 — calibration·fine-tuning을 요구해 비용·범용성이 떨어진다.
  • 중요도 지표가 차선 — “중요한 토큰”만 남기면 그 토큰들이 서로 유사해 중복이 커진다(retained tokens redundancy). 정작 다양한 정보를 못 담는다.

그럼 “중요한 것”이 아니라 “서로 다른(다양한) 토큰” 을 고르면, 적은 수로도 원본을 더 잘 대표하지 않을까?

Figure 2. DivPrune. 시각 토큰 중 서로의 다양성(최소 쌍거리)을 최대화하는 부분집합을 골라 LLM 첫 층 전에 남기고 나머지를 버린다. 중요도가 아니라 다양성 기준이라 중복이 줄어든다.

핵심 아이디어

① 다양성 = Max-Min Diversity Problem

남길 토큰 부분집합을 고른 토큰들 사이의 최소 거리를 최대화(서로 최대한 다르게)하도록 선택하는 MMDP로 정식화하고 풀어, 중복 없는 대표 토큰을 얻는다. 중요도 기반과 달리 유사한 토큰이 함께 남지 않는다.

② training-free · prefill 1회

학습·calibration 불필요. 가지치기를 LLM 첫 디코더 층 전(Layer 0)에서 한 번 수행 — 거리 계산이 prefill 때 1회뿐이라, 디코딩 스텝마다 계산하는 방식(FastV 등)보다 E2E가 빠르다.

  • 왜 잘 되나 — 다양성이 높은 부분집합은 원본 토큰 분포를 더 고르게 커버 → 높은 가지치기 비율에서도 성능 저하가 작다.

적용·평가

항목 내용
적용 모델 LLaVA-1.5 · LLaVA-NeXT · LLaVA-NeXT-Video(비디오) 등 다양한 LMM
데이터셋 16개 image·video 벤치마크 — GQA · MMBench · MME · MMMU · POPE · SEED · ScienceQA · TextVQA · ActivityNet · VideoChatGPT 등
Task Image·Video Understanding
대표 결과 16개 데이터셋 SOTA 정확도 · LLaVA-NeXT-Video에서 prefill ~55%↓·E2E ~22%↓, 메모리 ~400MB 절감

결과

Table 1. image-language understanding 비교. DivPrune(보정 불필요)이 plug-and-play·variable 토큰 설정 모두에서 baseline을 일관되게 능가.
  • SOTA·무보정 — 16개 image·video 벤치 SOTA. calibration 없이 FitPrune 대비 거의 모든 데이터셋에서 최대 25.1%↑.
  • 고압축에 강함 — POPE F1 +83 / +53.4 / +15.2%(vs VTW / FastV / PruMerge), MMB 정확도 +41.5 / +25.6 / +2.8%. TFLOP 84.4%↓에도 MMMU·SQA·POPE 약 2%만 하락.
  • 효율 — LLaVA-NeXT-Video-7B에서 prefill ~55%↓·E2E ~22%↓, 메모리 ~400MB 절감.

한 줄 정리 & 의의

  • “중요도” 대신 “다양성”으로 자른다. 가지치기를 Max-Min Diversity로 풀어 중복 없는 대표 토큰을 남김 → training-free·고압축에 강함.
  • 차별점. importance 기반(FastV 등)은 비슷한 고중요 토큰을 함께 남겨 중복이 생기지만, DivPrune은 다양성 최대화로 이를 피한다. LLM 입력 전 1회 선택이라 디코딩마다 계산하지 않아 E2E 효율도 좋다.
  • 위치. Bridge — 인코더–LLM 사이(LLM 첫 층 전)에서 선택. → Efficient VLM 개요