【论文阅读】Language-Guided Image Tokenization for Generation
总结:感觉方法比较简单,就是把vlm生成的文本描述变成token作为条件喂进图像tokenizer和解码器,辅助图像压缩和解码,但是很有用
Figure 1.TexTok比没有文本引导的Baseline能更好地把图片的细节编码成图像token。在不同token数量下,TexTok对于文字、车轮、鸟喙这些细节,重建效果更好,尤其是在token数量很少的时候提升更明显。图片中用黄色框标注了显著提升的区域。
Abstract
- 图像token化:把原始像素转成低维的潜在表示,这对高效大规模图像生成非常重要。
- 现有主流方法压缩率有限,导致高分辨率图像生成很耗资源。
- TexTok方法:通过引入语言(文本描述)指导token化过程(称为“Text-Conditioned Image Tokenization”),提升了压缩率以及重建质量。方法原理是借助文本语义,简化语义学习流程,把更多的模型能力和token空间用于捕捉细节,结果就是在token数量相同的情况下,图片重建效果更好(FID显著降低)。换用TexTok后,Diffusion Transformer(DiT)模型推理速度大幅提升,只有32个token时也能达到比原始DiT更好的效果,在ImageNet-512上提升速度93.5倍。TexTok还能用于文本到图像生成任务,无需额外标注,直接用现成文本就能提升效果。
1. Introduction
图像生成技术的核心因素就是图像token化——通过训练autoencoder,把图片转成压缩的潜在表示。这样生成模型就可以直接在“压缩空间”而不是像素空间工作,非常节省计算资源,同时生成质量和真实度也提高了。
目前很多提升图像token化的方法主要关注于改进训练目标或者autoencoder结构(即怎么学得更好),但都还是面临压缩率和重建质量的权衡,尤其是高分辨率时更突出。压缩越多算力越省,但图片还原就会变差;反之要想还原好,算力花费就会变大。
作者认为,要突破这个限制,应从token化过程本身改变。从本质讲,token化就是找一个图片的高效表达。而最“简洁”和“有意义”的表达,往往就是人类用语言描述(比如caption)。人描述图片时,先说整体语义、再补充细节。受此启发,作者提出TexTok:用图片的文本描述(caption)来引导tokenizer理解图片语义,这样做可以简化语义学习,把更多能力用于细节表达,从而在不损失压缩率的情况下提升重建质量。
本文是首次在token化阶段引入详细的文本(caption)引导,这在以往通常是“生成”阶段才用的方法。
实验:只需把DiT里的tokenizer换成TexTok,用极少token也能又快又好。
3. Method
3.1. Preliminary
这一部分介绍了图像tokenizer的基本类型和概念:
图像tokenizer根据潜在表示的格式,主要有两类:
- 离散向量量化(Vector-Quantized, VQ)tokenizer:比如VQ-VAE和VQGAN,用一组离散token表示图片。
- 连续潜在tokenizer:比如用变分自编码器(VAE)将图片嵌入到连续潜在空间,一般以2D(空间分布)形式存在。
TexTok、本文方法主要聚焦在连续潜在tokenizer。标准的这类tokenizer包括一个encoder(将图片转成潜在向量空间Z)和一个decoder(把Z重建回图片)。
- 给定图片I,encoder E将其压缩到二维潜在空间Z,Z的大小和原图片有关(由下采样因子f决定)。
- 每个latent embedding看作一个连续token,总共有hw个token(h,w取决于图片大小和f)。
- decoder D负责重建图片,输出为I^(重建图片)。
- 最近,又有了1D tokenizer,它把图片直接压缩成N个连续token,N可以自由设定,压缩率更灵活。
训练tokenizer时,用重建损失、感知损失、GAN损失、最小I与I^的差距等多种方法。
本文采用1D tokenizer,并展示TexTok在各种token数量下的有效性和效率。
3.2. TexTok: Text-Conditioned Image Tokenization
这一段介绍了TexTok的核心设计和技术细节:
- TexTok是一个简单高效的文本条件引导的图像tokenizer。
- 与传统tokenizer把所有视觉信息都压缩进token不同,TexTok用图片标题(caption)来表达高层语义,并在token化流程中提供指导。
Tokenization阶段:
- 首先用一个冻结的T5文本编码器,把caption转成文本embedding。
- 这些embedding被注入到tokenizer和detokenizer里,全程提供语义引导。
- TexTok采用ViT(Vision Transformer)架构作为encoder和decoder,使token数量可灵活控制。
- Tokenizer输入由三部分拼接组成:
- 图片patch token:把图片分块(patchify),映射到向量,得到P。
- 可学习的图像token:N个向量,最终输出用的图像token。
- 投影后的文本token:由caption embedding线性投影得到,数目为Nt。
- Tokenizer最终只保留learnable image token,线性投影为Z(输出token)。
- Detokenizer输入也由三部分拼接组成:1)learnable的patch token;2)线性投影的图像token;3)一样的文本token。
- Detokenizer只保留learnable patch token,并用它还原出图片patch。
- 训练时,损失包括l2重建、GAN、感知损失和LeCAM正则化。
- 文本token的引入,使模型无需重点学习图片的语义,高层信息直接由文本提供。
Generation阶段:
- 用Diffusion Transformer(DiT)作为生成框架,在TexTok生成出的latent token上训练DiT。
- 生成阶段只需要生成latent image token,detokenizer时再注入文本token。
- DiT可条件于类别或文本embedding(分别用于类别条件生成或文本到图片生成)。
- 推理时:
- 文本到图片:生成和还原均用caption,文本embedding和生成token一同送入detokenizer得到图片。
- 类别条件生成:DiT根据类别生成token,然后再从一个预生成列表里采样一个caption,和token一起送入detokenizer还原图片。
Figure 2. TexTok architectu
- 第一步,用冻结的文本编码器(如T5)提取图片caption的文本embedding。
- 然后,把图片patch token、可学习image token和文本token一起送入ViT结构的tokenizer,产出image token。
- 在detokenize(图片重建)阶段,把image token与同样的文本token和learnable patch token拼接,重建图片。
- 在生成流程中,只有image token需要被DiT模型生成,文本token直接提供。
4. Experiments
4.1. Implementation Details
- 文本caption获取方式:
- 在text-to-image任务中,图片自带caption,直接用作tokenization输入。
- 对于没有caption的数据集(如ImageNet),用预训练的视觉语言模型(Gemini v1.5 Flash)离线自动生成详细的caption。
- 训练集每张图片都生成caption,评估时(类别生成)为每个类别预生成一组未见caption作参考。
- 默认每张图片caption长度最多75词,用T5文本编码器转换成128个token(ImageNet-256用T5-XL,ImageNet-512用T5-XXL)。
- 模型配置:
- TexTok采用ViT-Base作为tokenizer和detokenizer,都有12层,隐藏层768维,12头注意力(约1.76亿参数)。
- GAN损失使用StyleGAN鉴别器(约2400万参数)。
- 图像token默认维度为d=8。
- 生成器采用Diffusion Transformer(DiT)
- 类别条件生成用原生DiT,text-to-image生成在DiT加了一个多头交叉注意力层(DiT-T2I),接受文本embedding。
4.2. Experiment Setup
- 对照模型:
- TexTok:tokenizer和detokenizer都用文本token做条件输入(即图2结构)。
- Baseline(无文本):tokenizer和detokenizer都不加文本token条件。
- 每个图片tokenize成固定数量的latent token,生成器负责生成这些token。
- 评价指标:
- Tokenizer重建效果(50K ImageNet样本):rFID(重建Frechet Inception Distance)、rIS(重建Inception分数)、PSNR、SSIM、LPIPS。
- 类别条件生成效果:gFID、gIS、精度和召回率。
- text-to-image生成效果:FID和CLIP分数(50K验证集样本)。
4.3. Effectiveness of Text Conditioning
- 主要比较TexTok与Baseline(无文本)在ImageNet 256×256和512×512的表现,token数量不同。
- 结果(见表1、图3):
- 256×256下,TexTok在各token数量设定下均显著提高重建和生成性能。例如32、64、128、256 token下,rFID分别提升37.2%、25.0%、30.2%、24.2%;gFID分别提升28.6%、12.7%、13.8%、7.9%。
- token越少,文本条件提升越大,TexTok用一半token就可达到Baseline同样的rFID(2倍压缩率)。
- Baseline本身也很强,8倍更少token时重建和生成比主流SD-VAE更好。
- 512×512高分辨率下,TexTok提升更明显:rFID提升69.7%、68.4%、30.2%、24.2%;gFID提升60.8%、54.5%、13.2%、8.6%。
- 四分之一token就能达到Baseline同样rFID(4倍压缩率)。
- 视觉对比(图1)展示TexTok在token数量变化下对细节重建(如图片中的文字、轮子、鸟喙)比Baseline更好。
4.4. System-level Image Generation Comparison
- 主要比较用TexTok tokenizer + 原生DiT生成器的成体系性能。
- 在ImageNet 256×256和512×512类别条件生成,token数量不同(压缩率不同)。
- 实验结果突出:
- 256×256:TexTok-256 + DiT-XL的FID为1.46,超越所有已有主流方法。
- 更高压缩率(更少token)也能保持甚至超越原始DiT。
- 512×512:TexTok-256 + DiT-XL的gFID为1.62,仍是最优,仅用256 token;TexTok-32 + DiT-XL用32 token也能比原始DiT(用1024 token)还好。
- 效率也大提升:
- 图4a:用TexTok替换DiT tokenizer,在ImageNet 256×256上能有14.3倍推理加速且FID更优,或用相似推理时间提升FID 34.3%。
- 图4b:512×512上,TexTok变体有93.5倍加速并且FID更好,或256 token时用3.7倍更少推理时间提升FID 46.7%。
- 随分辨率增高,文本语义提供更大性能和效率提升。
- 视觉样例(图6)展示TexTok能生成语义丰富且细节丰富的类别条件图片。
4.5. Text-to-Image Generation
- 展示TexTok在text-to-image生成上的优越性。
- 用VLM生成的caption在ImageNet 256×256和修改后的DiT-T2I架构测试。
- 训练时tokenizer和生成器共享T5编码器产生的文本embedding。
- 推理时用验证集caption生成图片,评测生成图片与原图集的FID。
- 结果显示(见表3):TexTok比Baseline(无文本)在各种token数量下都显著提升text-to-image生成结果。
- text-to-image任务本就有caption,且embedding可同时用于tokenizer和生成器,TexTok性能提升几乎无额外cost。
- 视觉样例(图5)显示TexTok生成的图片更真实、与描述更吻合(更多样本见附录E)。
4.6. Tokenization/Generation Inference Efficiency
- TexTok显著提升重建、类别条件生成和text-to-image质量。
- text-to-image任务下文本embedding是必须的,因此不增加额外花销。
- 对其他任务只需略微增加计算量(生成embedding平均每张图片约0.01秒),见表5。
- 总体上,生成计算大大减少,且得益于速度提升(见表5与图4)。
4.7. Ablation Studies
- 消融实验分析TexTok各设计。
- 默认设置:TexTok128、Base模型、T5-XL文本编码器,caption 75词,tokenizer和detokenizer都做文本条件(in-context conditioning)。
- 具体考察点及结果:
- 文本条件类型(表4a):用分类embedding、短文本(带类别名)、25词caption和75词caption,结果显示描述越丰富提升越大。
- T5编码器大小(表4b):编码器越大,重建质量越好(效率权衡下ImageNet-256用T5-XL默认)。
- 条件注入结构(表4c):in-context conditioning(文本token与其他输入token拼接送入ViT自注意层)比加额外交叉注意力层效果更好。
- 注入位置(表4d):在tokenizer和detokenizer都加文本条件性能最好。
- TexTok模型大小(表4e):Base版明显优于Small版,继续增大模型收益变小,因此用Base为默认。