https://arxiv.org/pdf/2406.06525
LlamaGen은 대형 언어 모델의 '다음 토큰 예측' 방식을 시각적 생성 도메인에 적용한 새로운 이미지 생성 모델이다. 쉽게 말해 GPT처럼 다음 데이터를 예측하고 생성하는 방식을 도입해 이미지를 생성하는 연구 논문이다.
FID(Frechet Inception Distance)는 이미지 생성 모델의 성능을 평가하는 지표이다. FID는 생성된 이미지와 실제 이미지의 품질을 비교하여 두 분포 간의 유사성을 측정한다. 낮은 FID 값은 생성된 이미지가 실제 이미지와 더 유사하다는 것을 의미한다. 이는 생성된 이미지의 품질과 다양성을 평가하는 데 사용된다. FID는 이미지의 특징을 추출한 후 프레셰 분포를 계산하여 두 데이터셋 간의 차이를 수치화한다.
Image Tokenizer
양자화 오토인코더(Quantized-Autoencoder) 아키텍처를 사용한다.(VQGAN(Esser et al., 2021)과 동일한 인코더-양자화기-디코더 구조). 인코더와 디코더는 다운샘플 비율 p를 가진 ConvNet이다. 양자화기는 K개의 학습 가능한 벡터를 가진 코드북 Z ∈ R^K×C로 구성된다. 인코더는 이미지 픽셀 x를 특징 맵 f로 변환하고, 양자화 과정에서 특징 맵의 각 벡터 f(i,j)를 코드북의 가장 가까운 벡터 z(i,j)의 코드 인덱스 q(i,j)로 매핑한다. 디코딩 과정에서는 코드 인덱스 q(i,j)를 특징 벡터 z(i,j)로 재매핑한 후 디코더가 이를 다시 이미지 픽셀 xˆ로 변환한다.
Image Generation by Autoregressive Models
Llama 아키텍처: Llama 아키텍처는 RMSNorm, SwiGLU 활성화 함수, 회전 위치 임베딩을 사용합니다. 각 레이어에 2D RoPE를 적용하며, AdaLN 기술은 사용하지 않아 구조를 LLM과 동일하게 유지합니다.
Class-conditional image generation : 학습 가능한 임베딩 세트에서 클래스 임베딩을 인덱싱하여 초기 토큰 임베딩으로 사용한다. 이 토큰 임베딩을 시작으로, 모델은 다음 토큰 예측 방식으로 이미지 토큰 시퀀스를 생성하며, 사전 정의된 최대 길이에서 멈춘다.
Class embedding : 이미지 생성 모델에서 각 클래스(예: 개, 고양이, 자동차 등)를 나타내는 학습 가능한 벡터를 말한다. 이 벡터는 모델의 초기 입력으로 사용되어 모델이 특정 클래스를 생성하도록 유도한다. 클래스 임베딩은 모델이 학습 중에 각 클래스의 특징을 효과적으로 학습하도록 도와주며, 다음 토큰 예측 방식으로 이미지 토큰 시퀀스를 생성하는 데 중요한 역할을 한다. 이를 통해 모델은 주어진 클래스에 해당하는 이미지를 생성할 수 있다.
평가지표로는
- 주요 지표: Fréchet Inception Distance (FID)
- 부가 지표: Inception Score (IS), sFID, Precision/Recall
- 평가: ADM의 TensorFlow 스크립트 사용
Effect of top-k sampling
Figure 3b에 따르면, 작은 top-k 값은 FID와 IS에 유리하지 않다. top-k 값을 증가시키면 FID는 개선되지만 IS는 감소하여 다양성과 충실도 간의 트레이드오프가 발생한다. top-p와 온도 매개변수를 변경할 때도 유사한 경향이 난다. FID가 주요 지표이므로 기본 top-k 값으로 코드북 전체 크기를 사용한다.
Text-conditional image generation : 텍스트 조건을 통합하기 위해 FLAN-T5 XL을 텍스트 인코더로 사용하며, 인코딩된 텍스트 특징은 추가적인 MLP를 통해 자기회귀 모델의 초기 토큰 임베딩으로 사용.
훈련 설정:
- 1단계: 256×256 해상도의 50M LAION-COCO 데이터로 모델 훈련.
- 2단계: 512×512 해상도의 10M 고품질 내부 이미지로 모델 미세 조정.
- 텍스트 토큰 임베딩의 최대 길이는 120으로 설정, 배치 처리를 위해 좌측 패딩 사용.
- 분류기 없는 가이던스를 위한 텍스트 조건 임베딩 드롭아웃은 0.1.
- 모델 파라미터: 775M, 학습률: 10^-4, 옵티마이저: AdamW, β1 = 0.9, β2 = 0.95, 감쇠 = 0.05, 그래디언트 클리핑: 1.0.
이미지 코드 및 텍스트 임베딩 사전 계산:
- FLAN-T5 XL을 사용하여 이미지 캡션의 텍스트 임베딩 사전 계산.
- 텍스트 조건 모델 훈련 시, 원본 이미지 중심 크롭의 이미지 코드만 추출.
Classifier-free guidance : 시각적 품질과 텍스트-이미지 정렬을 개선하는 용으로 사용되며, 훈련 중 조건은 무작위로 드롭되고, 무조건 임베딩으로 대체된다. 추론 시, 각 토큰의 로짓은 ℓg = ℓu + s(ℓc − ℓu) , AR 기반 시각 생성 모델에 적용
Related Work
Visual generation
- 생성적 적대 신경망(GAN): 최초의 대표적인 시각 생성 방법.
- 확산 모델: 이미지 생성을 노이즈에서 이미지로의 역확산 과정으로 봄.
- 마스크 예측 모델: BERT 스타일을 적용하여 마스크된 토큰을 예측.
- 자기회귀 모델: GPT 스타일을 적용하여 시퀀스에서 다음 토큰을 예측.
이 방법들은 픽셀 공간을 의미 공간으로 변환하기 위해 이미지 토크나이제이션 과정을 도입
HF 데모 : https://huggingface.co/spaces/FoundationVision/LlamaGen
Github : https://github.com/FoundationVision/LlamaGen?tab=readme-ov-file
'ML&AI' 카테고리의 다른 글
토크나이져 Tokenization (2) | 2024.10.20 |
---|---|
사용자 행동데이터 RAG - 1 (0) | 2024.06.30 |
G-Eval: NLG Evaluation using GPT-4 with Better Human Alignment (1) | 2024.06.09 |
AI 사용 환경에서 데이터를 보호하는 법을 주제로, Copilot for Microsoft 365를 위한 Microsoft Purview제품 소개 (0) | 2024.03.27 |
The Claude 3 Model Family: Opus, Sonnet, Haiku (0) | 2024.03.25 |