Chameleon: 조기 융합 기반 통합 멀티모달 모델

개요

Chameleon은 2024년 5월 Meta가 발표한 조기 융합(early-fusion) 방식의 멀티모달 모델이다. 기존 멀티모달 모델들이 별도의 비전 인코더(CLIP, SigLIP 등)를 사전학습한 뒤 LLM에 연결하는 후기 융합(late-fusion) 방식을 채택한 것과 달리, Chameleon은 이미지와 텍스트를 모두 이산 토큰으로 변환하여 동일한 자기회귀 트랜스포머로 처리하는 근본적으로 다른 접근을 취한다.

이미지를 VQ-VAE 토크나이저로 1024개의 이산 토큰으로 변환하고, BPE 텍스트 토큰과 합쳐 총 65,536개의 통합 어휘(vocabulary)로 모든 모달리티를 처리한다. 이 all-token 방식은 이미지 이해와 생성을 동일한 다음 토큰 예측(next-token prediction) 프레임워크로 통합하며, 인터리브된 이미지-텍스트 시퀀스를 자유롭게 생성할 수 있다. 7B와 34B 두 가지 크기로 제공되며, 텍스트 전용 벤치마크와 멀티모달 벤치마크 양쪽에서 경쟁력 있는 성능을 달성하였다.

논문: Chameleon: Mixed-Modal Early-Fusion Foundation Models

아키텍처 상세

전체 구조

Chameleon의 아키텍처는 개념적으로 단순하다:

  1. 이미지 토크나이저: Make-A-Scene VQ-VAE 기반, 이미지를 512×512 → 1024개의 이산 토큰으로 변환 (8192개 코드북)
  2. 텍스트 토크나이저: BPE 기반, 57,344개 어휘
  3. 통합 트랜스포머: 텍스트 토큰 + 이미지 토큰을 동일한 자기회귀 모델로 처리

통합 어휘 구성:

모든 토큰이 동일한 임베딩 공간에 매핑되므로, 이미지와 텍스트 사이에 별도의 프로젝션 레이어가 필요 없다.

이미지 토크나이제이션

이미지는 VQ-VAE(Vector Quantized Variational Autoencoder)를 통해 이산화된다:

1024개의 이산 코드는 각각 8192개 코드북 중 하나의 인덱스를 가리키며, 이는 텍스트 토큰과 완전히 동등하게 취급된다. 이미지 재구성 시에는 VQ-VAE 디코더가 이산 코드에서 원본 이미지를 복원한다.

학습 안정성 기법

대규모 혼합 모달리티 학습에서 발생하는 학습 불안정성을 해결하기 위해 세 가지 핵심 기법을 도입하였다:

  1. QK-Norm: 쿼리와 키 벡터를 정규화하여 어텐션 로짓의 발산을 방지

  2. 재정렬된 레이어 정규화: RMSNorm의 위치를 조정하여 그래디언트 흐름을 안정화

  3. Z-loss 정규화: 로짓 크기가 지나치게 커지는 것을 방지하는 보조 손실

이 기법들이 없으면 이미지-텍스트 혼합 학습 시 학습 손실이 발산하는 현상이 빈번하게 발생한다.

모델 사양

항목Chameleon-7BChameleon-34B
파라미터7B34B
히든 차원40968192
레이어3248
어텐션 헤드3264
컨텍스트 길이40964096
위치 인코딩RoPERoPE
정규화RMSNorm + QK-NormRMSNorm + QK-Norm
통합 어휘65,53665,536

핵심 혁신

1. 조기 융합(Early Fusion)

Chameleon은 처음부터 이미지와 텍스트를 동일한 토큰 공간에서 학습하므로, 후기 융합 모델처럼 비전 인코더와 LLM 사이의 표현 갭(representation gap)이 없다. 모델이 학습 초기부터 두 모달리티의 관계를 자연스럽게 학습하여, 인터리브된 이미지-텍스트 생성에서 더 자연스러운 결과를 산출한다.

2. 통합 생성 프레임워크

이미지 이해(텍스트 출력)와 이미지 생성(이미지 토큰 출력)이 동일한 다음 토큰 예측 메커니즘으로 작동한다. 이는 별도의 확산 모델이나 GAN 없이도 이미지를 생성할 수 있음을 의미하며, 아키텍처의 단순성을 극대화한다.

3. 자유로운 인터리브 생성

이미지와 텍스트 사이의 순서나 비율에 제약이 없어, “텍스트 → 이미지 → 텍스트 → 이미지”와 같은 자유로운 혼합 시퀀스 생성이 가능하다. 이는 블로그 포스트 자동 생성, 시각적 스토리텔링 등 실용적 응용에서 중요한 능력이다.

벤치마크/성능

벤치마크Chameleon-34BFlamingo-80BLLaVA-1.5-13BGPT-4V
VQAv274.4%67.6%80.0%
MMMU38.4%36.4%56.8%
텍스트 (MMLU)62.1%86.4%
이미지 생성 (FID)경쟁적불가불가

텍스트 전용 벤치마크에서도 LLaMA-2-34B와 유사한 성능을 유지하며, 멀티모달 학습이 텍스트 능력을 심각하게 저하시키지 않음을 보여준다.

관련 모델 비교

특성ChameleonEmu3Janus-ProLLaVA
융합 방식조기 융합조기 융합디커플링후기 융합
이미지 표현VQ 이산 토큰VQ 이산 토큰VQ + SigLIP연속 특징
이미지 생성가능가능가능불가
학습 안정성QK-Norm + Z-loss안정적
아키텍처 변경최소최소듀얼 인코더프로젝터 추가

학습 상세

학습은 두 단계로 진행된다:

  1. VQ-VAE 토크나이저 학습: Make-A-Scene 기반의 이미지 토크나이저를 먼저 학습 (8192 코드북, 1024 토큰/이미지)
  2. 통합 자기회귀 모델 학습: 이미지 토큰과 텍스트 토큰을 혼합한 데이터로 사전학습

학습 데이터: 2조 토큰 이상의 텍스트와 수십억 장의 이미지를 이산 토큰으로 변환한 혼합 데이터 옵티마이저: AdamW 안정성: QK-Norm + Z-loss 정규화 필수 (미적용 시 학습 붕괴)

실무 활용

# Chameleon 추론 예시 (개념적 코드)
from chameleon.inference import ChameleonModel
 
model = ChameleonModel.from_pretrained("facebook/chameleon-7b")
 
# 이미지 이해
response = model.generate(
    prompt="<image>이 이미지를 설명해주세요.",
    image="photo.jpg"
)
 
# 이미지 생성 (텍스트 → 이미지 토큰)
image_tokens = model.generate(
    prompt="A beautiful sunset over the ocean<image>",
    max_image_tokens=1024
)
image = model.decode_image(image_tokens)

한계 및 전망

한계

  1. 이미지 생성 품질: VQ 토크나이제이션의 정보 손실로 확산 모델(DALL-E 3, SD3) 대비 이미지 품질이 열등하다
  2. 학습 불안정성: 대규모 혼합 모달리티 학습에서 특별한 안정화 기법이 필수적이며, 하이퍼파라미터 민감성이 높다
  3. 컴퓨팅 비용: 이미지 1장당 1024개 토큰을 차지하여, 컨텍스트 윈도우 효율이 낮다
  4. 비디오/오디오 미지원: 이미지-텍스트 이외 모달리티 확장이 되지 않았다

전망

Chameleon이 제시한 조기 융합 방식은 이후 Emu3, Show-o2 등 통합 멀티모달 모델의 주요 설계 방향이 되었다. 특히 “모든 모달리티를 이산 토큰으로 통합”하는 철학은 GPT-4o와 같은 네이티브 멀티모달 모델의 이론적 기반이 되며, VQ-VAE의 품질 한계를 극복하기 위한 더 정교한 이미지 토크나이저 연구(Cosmos Tokenizer 등)와 함께 발전하고 있다.

관련 문서