Post

Chain-of-Visual-Thought: Teaching VLMs to See and Think Better with Continuous Visual Tokens

Chain-of-Visual-Thought: Teaching VLMs to See and Think Better with Continuous Visual Tokens

bookmark

Abstract

  • VLM의 한계를 극복하기 위한 Chain-of-visual-thought (COVT)라는 새로운 프레임워크를 제안함
  • 문제점: 기존 VLM은 언어적 추론에는 뛰어나지만, 공간적 추론이나 기하학적 인식과 같이 밀도 높은 시각적 지각이 필요한 작업에서는 어려움을 겪음
    • 시각적 정보를 제한적인 텍스트 토큰으로만 처리하려 하기 때문임
  • 해결책: VLM이 단순히 단어로만 추론하는 것이 아니라, 연속적인 시각 토큰을 통해 시각적으로 사고할 수 있게 하는 COVT 프레임워크를 도입함
    • 이 시각 토큰들은 2D 외형, 3D 기하학, 공간 배치, 가장자리 구조 등 풍부한 시각적 신호를 압축하여담고 있음
    • 약 20개의 적은 토큰 예산으로 가벼운 비전 전문가 모델의 지식을 distill해서 학습함
    • 추론 시에는 이 연속적인 시각 토큰 공간에서 직접 사고하며, 필요에 따라 이를 시각화하여 모델이 무엇을 보고 있는지 해석할 수 있음
  • 성과: qwen2.5-vl, llava와 같은 강력한 vlm에 covt를 적용했을 때, 10개 이상의 다양한 perception 벤치마크에서 성능이 향상됨

image.png

Introduction

  • VLM의 성공 - 시각적 입력을 언어 중심의 토큰 공간으로 projection함
    • llm이 가진 강력한 구성력과 논리적 추론 능력을 그대로 상속받아 자연어를 통한 멀티모달 상호작용이 가능해졌음
  • 텍스트 기반 추론의 한계
    • 기존의 텍스트 기반 cot는 논리/수학 문제에서는 효과적이지만, 시각적 추론에서는 근본적인 한계가 있음
    • 연속적인 시각 정보를 discrete한 텍스트 토큰으로 변환하는 과정에서 세밀한 지각 정보가 손실되기 때문임 - boundaries, layout, depth, geometry …
      • 현재 VLM은 perception이 많은 counting 등의 task는 어려워함
    • 텍스트로만 시각적 관계를 설명하게 하면, 오히려 모델의 시각적 추론 성능이 저하되는 현상이 발생하기도 함
      • qwen3-vl-thinking < qwen3-vl-instruct

      시각적 정보는 내재적으로 연속적이고 고차원인데, 현재 모델들은 language token을 통해서 추론을 하기 때문에 복잡한 인지 추론 능력이 떨어짐

  • 기존 해결책
    • 외부 비전 도구를 사용하는 방식 - 계산 비용이 높고 도구의 성능에 결과가 제한된다는 단점이 잇음
    • 또는 사고 과정에서 이미지를 생성하거나 cropping할 수 있음
      • 이것도 역시 이미지를 text space에 project하는 방법임
    • 본 연구는 이러한 한계를 극복하기 위해, ‘_vlm이 모든 것을 단어로 번역하지 않고 인간처럼 시각적으로 사고할 수는 없을까?’_라는 질문을 던짐

    → 외부 도구 없이 모델 내부에서 시각적 신호를 직접 처리하는 COVT를 제안함

  • 동작 원리
    • 연속적 시각 토큰을 도입하여 VLM이 시각적 단서 - 2D 외형, 3D 기하학, 공간 배치 등 -를 직접 추론에 활용하도록 함
    • 학습 과정에서 모델은 가벼운 시각 전문가 모델들의 지식을 distill해서, 추론 과정 중 이 시각 토큰들을 예측하고 생성하도록 훈련됨
    • 전문가 모델 통합
      • task-oriented experts
        • SAM(객체 분할), DepthAnything(깊이), PIDINet(윤곽선)
        • prompt level에서 정렬
      • representation-based expert
        • DINO(의미적 특징)
        • feature space에서 정렬됨
      • 이해, 생성, 추론, 효율적 추론의 4단계 점진적 학습을 통해 모델이 시각적 사고를 익히도록 함
    • 추론 과정
      • 추론 시 모델은 텍스트 / 시각 토큰이 섞인 covt를 형성함
        • 의미론적으로 일관되고 perceptually 근거가 있는 답변을 생성하게 됨
      • 모델 내부에서 이 과정이 처리되지만, 필요하다면 생성된 시각토큰을 디코더에 넣어서 이미지로 (마스크, 깊이 맵 등) 변환할 수 있음
      • 이를 통해 사용자는 모델이 무엇을 보고 어떻게 생각했는지 눈으로 직접 확인할 수 있음
  • 다양한 벤치마크에서 뛰어난 성능을 보였음
    • cv-bench, depth 관련 task 등
    • 압축된 시각적 사고가 더 정밀하고 근거 있는 멀티모달 지능을 가능하게 함을 증명함
  • contribution 요약
    1. 연속적 시각 토큰을 통한 추론 프레임워크 covt 제안
    2. 효과적인 시각 토큰 정렬 전략 및 4단계 학습 파이프라인 제안
    3. 다양한 벤치마크에서의 성능 향상모델의 해석 가능성 입증

image.png

  • 이렇게 여러 perception-intensive한 task에 대해서 visual token을 생성할 수 잇고, 이는 추후 decoder를 통해 interpretable하게 시각화할 수도 있음

image.png

  1. Tool-augmented reasoning
    • VLM이 외부의 전문 시각 도구를 호출하여 문제를 해결하는 방식
    • 모델이 스스로 해결하기 어려운 시각적 작업을 외부의 전문 모델에 위임하여 처리함
    • 한계점
      • 외부 모델 실행하는 계산 비용
      • 사용하는 외부 도구의 성능에 따라 최종 성능이 종속됨
  2. Text space reasoning
    • llm에서 큰 성공을 거둔 cot를 시각적 모달리티로 확장하려는 시도들
    • 이미지 → 캡션으로 변환하거나, 텍스트 논리를 통해 이미지를 해석하려고 함
    • 한계점
      • 연속적인 시각 정보를 discrete한 텍스트로 변환하는 과정에서 본질적으로 정보 손실
      • visual cot : 이미지에 대한 텍스트 해석에 의존하여 추론이 텍스트 공간에 한정됨
      • MCoT: 보조 이미지를 생성하거나 편집하여 추론하지만, 계산 비용이 많이 들고 유연성이 부족함
      • VChain: 이미지/텍스트를 번갈아서 사용하지만, 여전히 이미지를 텍스트 공간으로 projection하여 시각 정보가 손실됨
    • covt는 연속적인 “시각 토큰”을 사용하여 3d 인식 / 밀도 높은 시각 정보를 직접 추론에 활용함
  3. Latent space reasoning
    • 텍스트와 같은 명시적인 토큰 대신, 모델 내부의 잠재 표현을 사용하여 추론하는 방식
    • 복잡한 다단계 작업 시, 연속적인 latent 임베딩이 명시적인 텍스트 cot보다 효율적일 수 있다는 점에서 착안
    • coconut & ccot: llm에서 추론 과정을 연속적인 토큰으로 압축하여 효율성을 높임
    • aurora: depth, detection 신호의 잠재 표현 (vq-vae latents)를 사용해서 시각적 추론을 강화함
    • mirage: 시각적 추론을 위해 latent imagination을 활용함
    • covt는 이러한 연구들을 확장하여, tool-use의 개념을 잠재 공간에 직접 내재화했음
      • perceptual experts와 정렬된 시각적 사고 토큰을 모델 내부에서 생성하며 마치 도구를 쓴 것처럼 정밀하게 사고함

Method

3.1. Preamble

  • 기존 VLM의 한계점
    1. Text-only cot는 error를 누적함 → **초기 단계에서 오류가 발생하면 뒤로 갈수록 오류가 누적되는 문제**
      • 최종적으로 틀린 결과를 도출하게 됨
      • 오류가 퍼지기 전에 시각 정보를 정확하게 포착할 수 있는 짧고 효율적인 추론 방식이 필요함
    2. 텍스트 중심 학습 신호의 한계
      • **모델을 학습할 때 정답 supervision이 주로 텍스트로만 주어지는 것에 대한 문제**
      • 텍스트 형식의 정답만 맞추면 되기 때문에, 이미지 내의 edge, depth, region 같은 낮은 수준의 세밀한 시각적 단서를 깊게 파악할 동기가 부족함
      • vlm 자체가 이미지에서 정밀한 시각 정보를 추출하는 능력을 갖춰야 하며, 이 정보는 추후 vision decoder를 통해 시각화될 수 있어야 함

image.png

3.2. CoVT overall pipeline

  • 💡vlm이 단순히 텍스트만 예측하는 것이 아니라, 연속적 시각 토큰을 생성하도록 훈련시켜서, **모델 내부에서 시각적 추론과 언어적 추론**이 자연스럽게 이어지도록 만드는 것
  • next token prediction 확장
    • 기존 vlm - 입력 : 이미지 V, 텍스트 T출력: 다음에 올 텍스트 토큰 y

      image.png

    • 예측해야 할 토큰 y_i의 범위가 텍스트 뿐만 아니라 시각 토큰까지 포함하도록 확장
    • 답변을 생성하기 전에 태그를 열고, 그 안에서 시각적 사고를 수행함
      • 여기서 ‘이미지의 깊이 정보는…’이라고 생각하며 텍스트 대신 압축된 시각 토큰을 생성함
  • vision experts를 통한 knowledge distillation
    • vlm이 생성한 시각 토큰이 실제로 유의미한 시각 정보를 담으려면 supervision이 필요함
    • 이를 위해 4가지 가벼운 vision expert의 지식을 distill하여 학습함
      1. **segmentation tokens - 객체 분할**
        • SAM (segment anything model)
        • VLM이 생성한 8개의 토큰을 SAM 디코더에 넣으면 마스크 이미지가 복원되도록 학습함
      2. **depth tokens - 깊이 인식**
        • 픽셀 수준의 깊이 정보 (3d 공간 관계) 파악
        • DepthAnything v2
        • vlm이 생성한 4개의 토큰을 사용하여 depth map을 재구성하도록 학습함
      3. **edge tokens - 구조 인식**
        • 객체의 경계선 및 기하학적 구조 파악
        • PIDINet
        • 4개의 토큰을 사용해서 edge map을 그려내도록 학습
      4. **DINO tokens - 의미 인식 (semantic)**
        • 이미지의 의미론적 특징 파악
        • DINO v2
        • 생성된 4개의 토큰이 DINOv2가 추출한 패치 특징과 일치하도록 학습
  • 추론과 시각화
    • latent space 추론
      • 실제 사용 시에는 매번 이미지를 생성 x
      • 연속적인 시각 토큰 상태에서 바로 사고를 진행함
      • 이를 통해 계산 비용을 줄임
    • 해석 가능성
      • 필요하다면, 생성된 시각 토큰을 디코더에 통과시켜 사람이 볼 수 있는 이미지로 변환하여 보여줄 수 있음

3.3. CoVT tokens

  • Token selection based on core perception ability
    • **token selection**: covt 프레임워크가 어떤 종류의 시각적 능력을 학습할 것인가?
    • vlm의 핵심적인 지각 능력을 4가지로 분류하고, 각 능력에 맞는 전문가 모델을 선정해서 시각 토큰을 학습시킴
      1. instance recognition
      • 객체의 위치와 모양 파악
      • **SAM** → segmentation tokens 2. 2d and 3d spatial relationship
      • 픽셀 수준의 깊이 정보 파악
      • **depthAnything v2** → depth tokens 3. structure detection
      • geometry-level details
      • 객체의 구조적 단서 및 경계선 감지
      • **PIDINet** → edge tokens 4. deep mining of semantic information
      • 이미지의 의미론적 패치 표현 학습
      • **DINO v2** → DINO tokens
  • Tokens alignment based on granularity of visual models
    • token alignment: vision experts와 어떻게 연결할 것인가?
    • 모든 vision 모델이 동일한 방식으로 작동하지 않기 때문에, 모델의 성격에 따라 2가지 다른 정렬 방식을 사용함
      • **fine-grained task-oriented**: SAM, DepthAnything, PIDINet
        • vlm이 생성한 시각 토큰을 프롬프트 공간으로 project해서 전문가 모델의 decoder와 정렬함
      • **representation-based**: DINO v2
        • 덜 세밀하지만 전반적인 특징을 담고 있음
        • feature space에서 전문가 모델의 encoder 출력값과 직접 정렬함

    ### (1) Segmentation tokens

    • 8개의 토큰 사용 → linear layer → cross attention → T_sam
      • T_sam은 SAM 디코더가 이해할 수 있는 프롬프트 형태
        • sam 디코더의 마스크 프롬프트 역할을 함
      • 입력: 8개의 T_sam, 이미지를 sam encoder에 넣은 이미지 임베딩
      • 출력: 8개의 예측 마스크 생성

        image.png

    • 예측한 마스크와 gt 마스크를 매칭 - dice loss, focal loss
      • gt 마스크: 풀로 sam을 돌려서 여러개의 마스크를 얻은 다음, 품질 높은 8개를 gt로 선정
      • 8개의 pair가 순서가 다를 수 있기 때문에 헝가리안 매칭 알고리즘을 사용
        • 8개의 예측값과 8개의 정답 사이의 모든 조합에 대해 비용을 계산
        • 전체 비용이 가장 적게 드는 최적의 1:1 짝꿍(Pair)을 찾아줌
        • ex. “예측 1번은 정답 3번이랑 짝, 예측 2번은 정답 5번이랑 짝…” 이런 식으로 매칭을 확정
    • loss function
      • dice loss: 마스크의 겹치는 영역 (iou)를 최소화
      • focal loss: 픽셀 단위의 분류 오차를 최소

    ### (2) Depth tokens

    • 4개의 토큰 → 4개의 프롬프트로 작동
    • depthanything 인코더에서 추출한 dense 피처와 batch matrix multiplication을 통해 depth map D를 재구성함

      image.png

    • 최종 예측 depth map은 4개의 예측값 평균

      image.png

    • L1 reconstruction loss를 통해서 최적화

    ### (3) Edge tokens

    • 생성된 4개의 토큰은 각각 PIDINet의 특징 맵에 적용되는 1x1 convolutional kernel로 활용됨
    • 토큰 자체가 필터 역할을 해서 edge map을 그려냄
    • 마찬가지로 4개의 edge map 평균을 예측 edge map으로 사용
    • 마찬가지로 L1 reconstruction loss를 통해서 최적화

    ### (4) DINO tokens

    • 4개의 토큰을 DINOv2가 추출한 patch level feature와 모양이 같아지도록 projection함
    • mse loss를 통해서 dino feature과 직접 같아지도록 학습함

3.4. CoVT Training

training loss

image.png

  • ce loss: vlm이 텍스트를 올바르게 생성했는지 측정하는 기본 손실
  • γ,λ : visual loss에 대한 하이퍼파라미터, 실험에서는 모두 1로 설정함

→ text도 잘 생성하고, visual token도 잘 생성하게 됨

training data

  • 시각 토큰을 점진적으로 익히도록 4단계 커리큘럼을 도입함
  • 갑자기 어려운 task을 시키면 기존 언어 능력을 까먹거나 학습이 불안정해지는 것을 방지하기 위함임
    1. 이해 - comprehension stage
    • 모델에게 시각 토큰의 기본적인 의미를 가르침
    • 태그 바로 뒤에 시각 토큰을 삽입하여, 모델이 이미지 입력과 시각 토큰을 연관짓도록 함
    • 입력에 정답 gt visual 토큰을 넣어서 visual token에 대해 이해하도록
      1. 생성 - generation stage
    • 모델이 시각 토큰을 “정확하게 생성”하도록 학습
    • 질문과 답변을 수정해서 모델이 명시적으로 시각 토큰을 출력하도록 유도함
    • 질문-“이미지의 깊이 맵은 무엇인가?”, 답변-<depth tokens>
      1. 추론 - reasoning stage
    • 시각 토큰을 사용해서 복잡한 문제를 풀도록 함
    • 안에서 시각 토큰을 생성하고, 이를 근거로 최종 를 출력하는 전체 사고과정을 학습함
      1. 효율적 추론 - efficient reasoning stage
    • 모델이 고정된 패턴에 얽매이지 않고 유연하게 사고하도록 함
    • 시각 토큰의 일부 유형을 무작위로 제거하여 학습함
    • ex. 어떨 때는 깊이 token 없이 seg token으로만 추론하도록..
    • 주어진 정보만으로 효율적으로 답을 찾는 법을 학습함
  • 데이터셋
    • vision-centric data: llava-onevision 데이터셋 중 시각 중심 서브셋
    • spatial perception data: 공간 지각 능력을 키우기 위한 tallyqa (숫자 세기), ade20k-depth (깊이 인식)

Experiments

Experiment Details

  • 메인 베이스라인: qwen2.5-vl-7b
    • lora 사용 adaptation
    • rank 16, alpha 32
  • learning rate: lora 5e-5, projection modeul 1e-5
  • 학습 step
    • 1단계 (Comprehension): 4,000 steps
    • 2단계 (Generation): 3,000 steps
    • 3단계 (Reasoning): 3,000 steps
    • 4단계 (Efficient Reasoning): 5,000 steps
  • a100 1장 or a6000 4장
  • 배치 크기 4

image.png

Model Evaluation

  • 모든 평가는 VLMEvalKit를 통해서 평가되었음
    • VLMEvalKit: 오픈소스 평가 툴킷
  • vision-centric benchmark
    • main 평가를 CV-Bench로 하였음
    • 하위 항목 중 count, depth, distance task를 중점적으로 보았음
    • BLINK, RealWorldQA, MME-RealWorld: 현실 세계의 복잡한 이미지 이해 능력 평가
    • MMStar: 이 벤치마크에서는 ‘대략적 인식(Coarse)’, ‘세밀한 인식(Fine-grained)’, ‘인스턴스 추론’과 같은 서브셋만 골라서 평가함
  • non-vision-centric benchmark
    • 시각 능력만 키우다가 기존의 일반적인 언어 능력이나 지식을 까먹지 않았는지 확인
      • ocrbench, mme, wemath, hallusionBench 등

Quantitative Results

  • 베이스라인 모델과의 비교
    • covt를 적용하니까 일관되게 성능이 높아짐
    • cvbench의 경우 5.5% 성능 향상
    • subtask의 경우 depth task에서는 무려 14% 성능이 향상됨
  • 토큰 수가 많아질 수록 성능이 올라감
    • 1가지 token: seg
    • 3가지 token: seg + depth + dino
    • 4가지 token: seg + depth + dino + edge
      • 특히 depth, distnace 추론 능력이 극대화 됨
      • 각 토큰들이 서로 겹치는 정보를 주는게 아니라 상호 보완적인 정보를 제공하여 시너지를 냄
  • 다른 베이스라인에도 적용해서 결과 봄- llava-v1.5-13b

    image.png

    • relative depth에서 aurora (다른 베이스라인 method) 보다 12.9% 우수함
    • counting task
    • 범용적으로 적용할 수 있는 방법론임

Qualitative Results

  • visual 토큰들을 실제로 볼 수 있는 이미지로 복원해서 모델이 정답을 맞히기 위해서 시각 정보를 어떻게 활용했는지 분석함

image.png

  • 얼굴 위 점 거리 비교 - relative depth
  • 물체 간 거리 비교 - scene understanding
  • 테니스 코트 라인 세기 - fine-grained details
  • 실제로 모델이 판단한 시각적 근거를 시각화할 수 있음

Ablation studies

  1. **Text-only Chain-of-Thought vs Chain-of-Visual Thought**

    image.png

    • covt > text-only cot
  2. **Token numbers**
    • segmentation token 수 조절함

      image.png

    • 0, 1, 8, 32 토큰으로 실험함
    • empty 16개를 사용함 → 성능이 매우 낮음
    • 32개를 사용하면 오히려 학습이 어려워져서 성능이 낮아짐
    • 8개가 가장 성능이 좋았음
  3. **decoder align 방법**

    image.png

    • 기존 방식 : 시각 토큰을 expert 모델의 인코더 feature와 단순히 mse loss로 정렬
    • covt: 시각 토큰을 decoder의 프롬프트로 사용해서 마스크, 깊이 맵을 복원하는 방식
  4. 부작용은 없는가? non-vision-centric task에 대해서

    image.png

    • 평균 1.2%의 성능 개선을 보임

Conclusion

  • CoVT가 기존 VLM의 한계를 극복하고 향후 멀티모달 추론 시스템의 기초가 될 수 있음
    1. 연속적인 시각 토큰을 통해서 모델이 언어 공간의 제약을 넘어 밀도 높은 시각적 표현을 활용해 추론할 수 있음
    2. 서로 다른 종류의 시각 토큰이 합쳐질 때 더 강력한 성능을 발휘할 수 있음
    3. 한계: 아직 탐구하지 않은 더 효율적이거나강력한 시각 전문가 모델 조합이 있을 수 있음
      • 완전한 interleaved한 추론이 부재함
        • 현재는 시각적 생각 → 텍스트 답변
        • 추후에는 텍스트와 시각적 생각이 자유롭게 섞여서 물흐르듯 이어지는 진짜 멀티모달 사고과정을 구현하는 것이 목표
This post is licensed under CC BY 4.0 by the author.