Show-o2: 이해와 생성을 통합하는 멀티모달 프레임워크
NUS/ByteDance · 2025-01-01 · Multimodal · Apache-2.0
개요
Show-o2는 NUS(싱가포르국립대학교)와 ByteDance가 공동으로 발표한 통합 멀티모달 프레임워크로, 이미지 이해(VQA, 캡셔닝)와 이미지 생성(text-to-image)을 단일 자기회귀 모델 안에서 동시에 수행한다. Chameleon 계열의 all-token 방식에서 영감을 받아, 이미지를 이산 토큰으로 변환하고 텍스트 토큰과 동일한 어휘 공간에서 처리하는 통합 토크나이제이션 접근을 채택하였다.
기존 멀티모달 모델들은 이해(understanding)와 생성(generation)을 별도의 모델로 처리하는 경우가 대부분이었다. 예를 들어 LLaVA는 이미지 이해에 특화되고, DALL-E는 이미지 생성에 특화된다. 이러한 분리된 접근은 이해한 이미지를 바탕으로 새로운 이미지를 생성하거나, 생성 과정에서 기존 이미지를 참조하는 등의 복합적인 태스크를 처리하기 어렵게 만든다. Show-o2는 이 두 가지 능력을 하나의 모델로 통합하여, 이미지를 이해하면서 동시에 생성할 수 있는 통합 시스템을 구축하였다.
7B 파라미터라는 비교적 소형 모델에서도 각 전문 모델과 경쟁하는 성능을 달성하며, 별도의 확산 디코더나 GAN 없이 순수 자기회귀 생성만으로 고품질 이미지를 생성한다. 이는 배포와 추론의 단순성 측면에서 큰 장점으로, 하나의 트랜스포머 모델만으로 이해와 생성을 모두 수행할 수 있어 시스템 복잡도를 크게 줄인다. Show-o의 후속 모델인 Show-o2는 개선된 VQ 토크나이저와 더 강력한 마스킹 전략을 도입하여 이해와 생성 성능을 동시에 향상시켰다. 이는 “하나의 모델로 모든 것을 할 수 있다”는 통합 모델의 비전을 실현한 것이다.
텍스트-이미지 이해, 텍스트-이미지 생성, 혼합 이미지-텍스트 생성(인터리브 생성)을 단일 파이프라인으로 통합하여, 대화 중에 이미지를 참조하면서 동시에 새로운 이미지를 생성하는 복합적인 인터랙션이 가능하다. 예를 들어 “이 사진의 배경을 가을로 바꿔줘”와 같은 이미지 편집도 이해와 생성을 결합하여 수행할 수 있다.
아키텍처 상세
VQ 이미지 토크나이저
Show-o2의 핵심 구성 요소 중 하나는 이미지를 이산 토큰으로 변환하는 VQ(Vector Quantization) 토크나이저이다. VQ-VAE 기반으로, 이미지를 고정 크기의 코드북 인덱스 시퀀스로 변환한다. 이 과정에서 이미지의 의미적 정보를 보존하면서 이산적 표현으로 압축한다. 코드북의 크기 는 일반적으로 8,192~16,384개의 코드로 구성되며, 각 코드는 256차원 벡터로 표현된다. 더 큰 코드북은 더 세밀한 이미지 표현을 가능하게 하지만, 토큰 공간의 크기가 증가하여 자기회귀 생성의 난이도가 높아진다. 코드북의 크기는 이미지의 세밀한 디테일까지 포착할 수 있도록 설계되었다.
VQ 인코딩 과정은 다음과 같다. 입력 이미지 를 인코더 로 연속 잠재 벡터 로 변환한 뒤, 코드북 에서 가장 가까운 코드를 찾아 양자화한다:
양자화된 벡터 는 디코더 를 통해 이미지로 복원되며, VQ 학습에는 복원 손실, codebook loss, commitment loss가 사용된다:
여기서 는 stop-gradient 연산자이고, 는 commitment 계수이다. 첫 번째 항은 복원 품질을 보장하고, 두 번째 항은 코드북 벡터가 인코더 출력을 따라가도록 하며, 세 번째 항은 인코더 출력이 코드북 벡터에 가까워지도록 유도한다.
통합 자기회귀 모델
VQ 토큰으로 변환된 이미지 토큰은 텍스트 토큰과 동일한 어휘 공간에 편입된다. 전체 어휘는 텍스트 토큰 어휘 와 이미지 코드북 의 합집합으로 구성되며, 모델은 표준 자기회귀 언어 모델과 동일한 방식으로 다음 토큰을 예측한다:
이해 태스크에서는 [이미지 토큰들] [텍스트 질문] 형태의 입력에 대해 텍스트 토큰을 생성하고, 생성 태스크에서는 [텍스트 설명] [<IMG>] 형태의 입력에 대해 이미지 토큰을 순차적으로 생성한다. 이때 이미지 토큰은 래스터 스캔 순서(왼쪽 위에서 오른쪽 아래로)로 배열되어, 공간적 정보가 시퀀스 순서에 자연스럽게 반영된다.
모델의 백본은 32개 레이어, 히든 차원 4096, 32개 어텐션 헤드의 트랜스포머로 구성되며, RMSNorm 정규화와 SiLU 활성화 함수를 사용한다. 위치 인코딩에는 RoPE를 적용하여 긴 시퀀스에서도 안정적인 처리가 가능하다.
마스킹 기반 보조 목표
Show-o2는 자기회귀 생성 외에 마스킹 언어 모델링(MLM)을 이미지 생성의 보조 목표로 활용한다. 이미지 토큰의 일부(예: 30~70%)를 랜덤하게 마스킹하고 이를 복원하도록 학습함으로써, 이미지 토큰 간의 양방향 의존 관계를 포착한다. 이는 순수 자기회귀 방식에서 발생할 수 있는 에러 축적(error accumulation) 문제를 완화하고, 생성 이미지의 전역적 일관성을 향상시킨다. 마스킹 비율은 학습 과정에서 점진적으로 조절되어, 초기에는 쉬운 복원 태스크(적은 마스킹)에서 시작하여 점차 어려운 태스크(많은 마스킹)로 이행한다.
추론 모드 전환
Show-o2의 독특한 특성 중 하나는 동일한 모델이 입력 시퀀스의 구조에 따라 이해 모드와 생성 모드를 자동으로 전환한다는 것이다. 입력에 이미지 토큰이 포함되고 텍스트 질문이 뒤따르면 이해 모드로 동작하여 텍스트 응답을 생성하고, 텍스트 설명 뒤에 이미지 생성 프롬프트가 오면 생성 모드로 전환하여 이미지 토큰을 순차적으로 예측한다. 이 모드 전환은 학습된 특수 토큰(<IMG_START>, <IMG_END>)에 의해 제어되며, 별도의 모드 전환 메커니즘이 필요하지 않다.
더 나아가, 하나의 대화 세션 내에서 이해와 생성이 교차하는 것도 가능하다. 예를 들어 “이 사진의 배경을 설명해줘” → (이해 응답) → “그 배경을 일몰 장면으로 바꿔줘” → (생성 응답) 같은 연속적인 인터랙션이 단일 모델 내에서 처리된다. 이러한 유연성은 이해와 생성이 동일한 토큰 공간에서 이루어지기에 가능한 것이다.
핵심 혁신
Show-o2는 멀티모달 AI의 핵심 과제인 이해와 생성의 통합에서 세 가지 중요한 기술적 기여를 제시한다.
Show-o2의 핵심 혁신은 이해와 생성의 진정한 통합이다. 기존 모델들이 이해와 생성을 별도의 헤드나 모듈로 처리한 것과 달리, Show-o2는 동일한 자기회귀 메커니즘으로 두 태스크를 모두 처리한다. 이는 모델의 단순성을 유지하면서도 양쪽 태스크에서 경쟁력 있는 성능을 달성할 수 있게 한다.
**혼합 마스킹 전략(mixed masking strategy)**도 주목할 만하다. 학습 시 이해 데이터와 생성 데이터의 비율을 동적으로 조절하면서, MLM 보조 목표를 통해 이미지 토큰의 양방향 표현을 학습한다. 이를 통해 이해와 생성 성능의 trade-off를 최소화하였다. 자기회귀 목표는 시퀀스의 순차적 의존성을, MLM 목표는 전역적 일관성을 각각 담당하여 상호 보완적으로 작용한다.
소형 모델에서의 효율성도 중요한 기여이다. 7B 파라미터로 전문 이해 모델(LLaVA-7B)과 전문 생성 모델(DALL-E 2)에 각각 근접하는 성능을 달성하여, 통합 모델의 실용적 가능성을 증명하였다. 별도의 확산 모델이나 GAN을 필요로 하지 않으므로 배포와 추론이 간단하다.
벤치마크/성능
| 벤치마크 | Show-o2 (7B) | LLaVA-1.5 (7B) | Chameleon (7B) | DALL-E 2 |
|---|---|---|---|---|
| VQAv2 (이해) | 77.8 | 78.5 | 72.1 | N/A |
| GQA (이해) | 62.3 | 62.0 | 58.4 | N/A |
| TextVQA (OCR 이해) | 65.1 | 58.2 | 51.3 | N/A |
| GenEval (생성) | 0.68 | N/A | 0.51 | 0.52 |
| FID (COCO, 생성) | 9.12 | N/A | 15.8 | 10.39 |
| 혼합 생성 (정성적) | 우수 | N/A | 보통 | N/A |
Show-o2는 이해 벤치마크에서 전문 이해 모델인 LLaVA-1.5에 근접하면서, 생성 벤치마크에서는 Chameleon과 DALL-E 2를 상회하는 균형 잡힌 성능을 보인다. 특히 GenEval에서 0.68로 Chameleon의 0.51을 크게 상회하며, FID에서도 9.12로 DALL-E 2의 10.39보다 우수하다. TextVQA에서는 LLaVA-1.5보다 높은 점수를 기록하여, 특정 이해 태스크에서 전문 모델을 초월하는 경우도 있다.
학습
학습은 3단계로 진행된다. 1단계에서 VQ 이미지 토크나이저를 대규모 이미지 데이터(수백만 장)로 사전학습하여, 고품질의 이산 이미지 표현을 확보한다. 코드북의 크기와 잠재 공간의 차원은 재구성 품질과 압축률의 균형을 고려하여 설정된다. 2단계에서 이미지-텍스트 이해 데이터(VQA, 캡셔닝 등)와 텍스트-이미지 생성 데이터(캡션-이미지 쌍)를 혼합하여 통합 자기회귀 모델을 학습한다. 이 단계에서 이해와 생성 데이터의 혼합 비율이 성능에 중요한 영향을 미치며, 최적의 비율을 탐색하기 위한 실험이 수행된다. 3단계에서 SFT(Supervised Fine-Tuning)와 DPO(Direct Preference Optimization)를 통해 생성 품질과 이해 정확도를 향상시킨다. 혼합 마스킹 전략으로 이해와 생성 성능을 동시에 최적화하며, 학습 과정 전반에 걸쳐 두 태스크의 성능 균형을 모니터링한다.
관련 모델
- Chameleon: all-token 통합 방식의 선구 모델로 Show-o2의 직접적 영감원이며, 이미지와 텍스트를 동일한 토큰 공간에서 처리하는 아이디어를 제공
- Emu3: 유사한 이해+생성 통합 접근의 경쟁 모델
- LLaVA: 이미지 이해 전문 모델로 이해 성능의 비교 대상
- Transfusion: 이산 토큰 대신 연속 벡터를 사용하는 대안적 통합 접근
한계와 전망
Show-o2의 주요 한계는 이미지 생성 해상도가 256x256 또는 512x512로 제한된다는 것이다. 이는 VQ 토크나이저의 코드북 크기와 시퀀스 길이의 제약에서 비롯되며, 1024x1024 이상의 고해상도 생성을 위해서는 계층적 토크나이저나 초해상도(super-resolution) 모듈의 추가가 필요하다. 또한 VQ 양자화 과정에서 미세한 텍스처와 디테일이 손실될 수 있어, 확산 모델 기반 생성기(DALL-E 3, SDXL)에 비해 생성 이미지의 세밀도에서 열세를 보인다.
그러나 이해와 생성의 통합이라는 방향은 미래 멀티모달 AI의 핵심 트렌드로, Emu3, Janus-Pro 등 유사한 접근의 후속 모델들이 계속 등장하고 있다. 특히 코드북 크기의 확대, 다단계 양자화, 연속 벡터와의 하이브리드 접근 등을 통해 생성 품질을 더욱 향상시키는 연구가 활발히 진행되고 있다.
관련 문서
- Chameleon — 영감