NativeTok:基于原生视觉标记化的改进图像生成 NativeTok: Native Visual Tokenization for Improved Image Generation
通过在标记化阶段强制因果依赖,弥合标记化与生成之间的鸿沟
前置知识
VQ-Based 图像生成
基于向量量化的图像生成是一种两阶段范式:第一阶段使用图像标记器(Tokenizer)将高维像素图像压缩为离散的视觉标记序列,类似于语言模型中的词元;第二阶段训练生成模型(如自回归模型)来建模这些标记的分布,通过 next-token prediction 生成新图像。这种方法将连续的图像空间转化为离散的标记空间,使得大语言模型的技术可以直接迁移到视觉领域。
NativeTok 的核心贡献正是改进这一范式的第一阶段,理解两阶段的交互关系是读懂本文的关键
自回归生成(Autoregressive Generation)
自回归生成是一种逐个预测标记的生成方式,每个新标记的生成都依赖于所有已生成的前序标记。在图像生成中,模型按照某种顺序依次生成视觉标记,直到整个标记序列完成。这种生成方式天然要求标记之间存在因果依赖关系,即后面的标记应该依赖于前面的标记。
本文的核心动机正是自回归生成需要有序的标记序列,但现有标记化方法产生的标记是无序的
FID(Fréchet Inception Distance)
FID 是评估生成图像质量的标准指标,通过比较生成图像和真实图像在 Inception 网络特征空间中的分布差异来计算。FID 越低表示生成质量越高。在本文中,rFID 表示重建质量(reconstruction FID),gFID 表示生成质量(generation FID)。rFID 衡量标记器重建图像的能力,gFID 衡量生成模型生成新图像的能力。
论文的核心实验结果都通过 FID 指标呈现,理解 rFID 和 gFID 的区别对理解论文贡献至关重要
因果掩码(Causal Mask)
因果掩码是 Transformer 中的一种注意力掩码机制,确保每个位置只能关注它之前的位置,不能看到未来的信息。这是实现自回归生成的标准技术,广泛应用于语言模型中。在视觉标记化中,应用因果掩码可以使标记生成过程具有因果性,但论文指出简单地在编码器中添加因果掩码效果并不理想。
论文通过实验证明简单因果掩码不足以解决问题,从而引出了更复杂的 MoCET 架构
MaskGIT
MaskGIT 是一种非自回归的图像生成范式,通过迭代式掩码预测来生成图像。与自回归模型逐个生成标记不同,MaskGIT 在每一步同时预测多个被掩码的标记,然后根据置信度逐步揭开掩码。这种生成方式比自回归更快,但同样需要标记之间存在合理的依赖关系。
论文在 MaskGIT 框架下验证了 NativeTok 的有效性,证明其不仅适用于自回归生成
研究动机
当前基于 VQ 的图像生成采用两阶段范式,但这两个阶段之间存在根本性的不匹配。第一阶段的标记化过程仅依赖重建损失进行监督,不对标记之间的内在关系施加任何约束,导致产生的标记序列本质上是无序的。第二阶段的生成模型则需要建模这些标记之间的分布关系,但由于标记本身是无序的,生成模型只能从这些无序的视觉标记中学习到有偏且不完整的分布。论文通过实验数据清晰地展示了这一问题:使用相同的 LlamaGen-B 生成器,TiTok-L-32 的 gFID 为 7.45,而 VQGAN 的 gFID 为 5.46,尽管 TiTok 的 rFID(2.21)略优于 VQGAN(2.19),但其生成质量反而更差。这说明更好的标记化性能并不必然带来更好的生成性能,因为更复杂的标记间关系可能进一步违反自回归原则。
本文的目标是本文的具体目标是提出一种新的视觉标记化范式——原生视觉标记化(Native Visual Tokenization),通过在标记化阶段就强制引入因果依赖关系,使得标记化过程产生的标记序列天然符合自回归生成的要求。具体而言,NativeTok 希望实现:(1) 在标记化阶段就建立有序的、具有因果关系的标记序列,使得每个标记 $z_i$ 的生成仅依赖于前序标记 $z_0, z_1, ..., z_{i-1}$ 和图像信息 $X$;(2) 在保证重建质量的同时,显式约束标记序列的内在关系;(3) 使第二阶段的生成模型能够更容易地捕获和建模这些依赖关系,从而实现两个阶段的真正统一。
与已有工作不同的是,本文的独特切入角度在于将标记化和生成视为一个统一的过程,而不是两个独立优化的阶段。现有方法(如 TiTok、VAR、FlexTok 等)主要关注改进标记器本身的压缩比或重建质量,但完全忽视了标记之间需要在生成阶段被建模的依赖关系。论文类比人类视觉感知来阐述这一观点:当我们观察一张图像时,我们倾向于先识别其主要结构组件,然后才是更精细的细节如纹理,这个过程本质上是自回归的。基于这一观察,论文提出视觉信息也遵循全局因果顺序,标记化过程应该产生符合这种原生视觉顺序的标记序列,从而从根本上弥合标记化与生成之间的鸿沟。
核心方法
NativeTok 的整体思路可以概括为分而治之的设计哲学:将复杂的图像上下文建模与标记依赖建模解耦。直觉上,图像标记化需要同时完成两个任务:理解图像的整体内容(上下文建模)和建立标记之间的有序关系(依赖建模)。传统方法在一个模型中同时处理这两个任务,导致两者相互干扰。NativeTok 将这两个任务分配给不同的组件:Meta Image Transformer(MIT)专注于图像上下文建模,使用双向注意力捕获图像的全局表示;Mixture of Causal Expert Transformer(MoCET)专注于标记依赖建模,使用独立的专家块为每个标记位置建立因果依赖。技术路线上,输入图像首先经过 MIT 进行上下文建模并压缩到潜在空间,然后锁定潜在表示,由 MoCET 中的各个专家块依次生成有序的标记序列,最后通过解码器重建图像。
NativeTok 的核心创新在于提出原生视觉标记化的概念,即在标记化阶段就强制施加因果依赖约束,使得产生的标记序列天然符合生成阶段的需求。与已有方法的本质区别在于:(1) 传统方法(如 TiTok、VQGAN)的编码器使用双向注意力,产生的标记之间没有明确的顺序关系;(2) 一些方法尝试在编码器中添加因果掩码,但论文通过实验发现这种简单方法效果不佳(FID 从 12.99 仅降至 12.95);(3) NativeTok 采用完全不同的架构,将上下文建模和依赖建模解耦,每个标记位置都有专门的专家块负责生成,通过公式 $z_i = T_i(X_{latent}, z_0, z_1, ..., z_{i-1}, z_{padding})$ 实现严格的因果依赖。这种设计使得每个标记都能自适应地从全局图像上下文中选择信息,同时保证标记之间的有序关系,与人类从全局结构到细节的感知模式一致。
方法步骤详情
NativeTok 的方法包含以下具体步骤:(1) Meta Image Transformer (MIT) 建模:输入图像 $X$ 首先通过 Pixel Transformer 进行 patch 特征建模,然后经过一系列 Transformer 层进行双向注意力计算,捕获图像的全局上下文信息。随后通过全连接网络(FNN)作为维度切换器进行降维,得到潜在空间表示 $X_{latent} = FNN(MIT(X))$。这个潜在表示在后续生成过程中保持锁定不变。(2) MoCET 标记生成:定义与标记序列等长 $L$ 的轻量级专家 Transformer 序列 $T = \{T_0, T_1, ..., T_L\}$,第 $i$ 个专家块专门负责生成第 $i$ 个标记。在每个标记的生成步骤中,将锁定的潜在空间图像信息、所有已生成的前序标记和当前的 padding token 拼接后输入对应的专家 Transformer,从 padding token 位置提取单个向量作为当前生成的标记 $z_i$。(3) 量化与解码:有序的标记表示经过向量量化转化为离散标记,然后通过基于 Transformer 的解码器重建图像。(4) 分层原生训练:首先训练完整的 32-token NativeTok,然后复用 MIT 和前 32 个专家的权重,仅训练新增的 32 个专家来扩展到 64-token 版本,同样方法扩展到 128-token 版本。为进一步提升质量,在最后 10% 的步骤进行全参数微调。
技术新颖性
NativeTok 的技术新颖性体现在多个层面:(1) 概念创新:首次提出原生视觉标记化的概念,认识到标记化和生成不应是两个独立优化的阶段,而应是一个统一的过程。这一观点挑战了现有方法的基本假设。(2) 架构创新:MoCET 采用混合因果专家设计,每个标记位置都有专门的专家 Transformer 块,这与传统共享参数的编码器有本质区别。虽然这增加了模型参数(NativeTok32 约 616M),但通过在低维潜在空间进行注意力计算($O(n^2)$ 复杂度),有效控制了计算开销。(3) 训练策略创新:分层原生训练策略允许从短标记序列逐步扩展到长标记序列,仅需训练新增的专家块,将可训练参数减少到 56%,显著提高了训练效率。(4) 解耦设计:将上下文建模(MIT 使用双向注意力)与依赖建模(MoCET 使用因果生成)明确分离,避免了两者之间的冲突。
实验结果
论文在 ImageNet-1K 256×256 分辨率上进行了全面的实验验证。在自回归生成设置下,使用 LlamaGen-B 作为生成器,NativeTok32 实现了 gFID 5.23,相比 TiTok-L-32 的 7.45 提升了 2.22 个点,甚至优于使用 256 个标记的 VQGAN(5.46)。值得注意的是,NativeTok32 的 rFID 为 2.57,略差于 TiTok-L-32 的 2.21,但生成质量反而更好,这直接证明了原生标记化的有效性。在 MaskGIT 框架下,NativeTok128 配合 MaskGIT-UVit-L 生成器实现了 gFID 2.16,仅需 287M 参数和 8 个采样步骤,优于 TiTok-S-128 的 2.50(同样 8 步)和 1.97(64 步)。消融实验进一步验证了各组件的有效性:(1) 简单添加因果掩码到 TiTok 编码器仅将 FID 从 12.99 降至 12.95,而 NativeTok32 达到 11.19,证明了 MoCET 架构的优越性;(2) 分层训练策略将每批训练时间从 1.53 秒降至 1.15 秒,同时 rFID 从 6.50 改善到 6.22;(3) 编码速度方面,NativeTok32 达到 119.85 样本/秒,虽然低于 VQGAN 的 233.02,但与 TiTok-L-32 的 136.32 相当。
查看结构化数据
| 任务 | 指标 | 本文 | 基线 | 提升 |
|---|---|---|---|---|
| ImageNet-1K 类条件图像生成(自回归) | gFID↓ | NativeTok32 + LlamaGen-B: 5.23 | TiTok-L-32 + LlamaGen-B: 7.45; VQGAN + LlamaGen-B: 5.46 | 相比 TiTok-L-32 提升 2.22 个点(29.8%),相比 VQGAN 提升 0.23 个点 |
| ImageNet-1K 类条件图像生成(MaskGIT) | gFID↓ | NativeTok128 + MaskGIT-UVit-L (8步): 2.16 | TiTok-S-128 + MaskGIT-UVit-L (8步): 2.50; (64步): 1.97 | 相比 TiTok-S-128 (8步) 提升 0.34 个点,仅需 287M 参数 |
| 图像重建质量 | rFID↓ | NativeTok32: 2.57; NativeTok128: 1.19 | TiTok-L-32: 2.21; TiTok-S-128: 1.71 | NativeTok128 rFID 1.19 优于 TiTok-S-128 的 1.71 |
| 消融:注意力机制对比 | FID↓ | NativeTok32: 11.19 | TiTokL-32: 12.99; TiTokL(mask)-32: 12.95 | 相比简单因果掩码方法提升 1.76 个点 |
| 训练效率 | 训练速度 | 分层训练: 1.15s/batch, rFID 6.22 | 全参数训练: 1.53s/batch, rFID 6.50 | 训练速度提升 24.8%,同时 rFID 改善 0.28 |
局限与改进
尽管 NativeTok 展示了显著的改进,但仍存在一些局限性:(1) 编码速度下降:由于 MoCET 采用独立的专家块序列,NativeTok32 的编码速度为 119.85 样本/秒,相比 VQGAN 的 233.02 下降了约 48.6%,虽然论文认为影响有限,但在需要实时处理的场景中可能成为瓶颈。(2) 模型参数量较大:NativeTok32 约有 616M 参数,NativeTok128 约 287M(不含 MIT),相比一些轻量级标记器仍然偏大。(3) 缺乏大规模验证:实验仅在 ImageNet-1K 256×256 上进行,未在更高分辨率(如 512×512、1024×1024)或更大规模数据集上验证。(4) 生成器依赖性:论文主要在 LlamaGen-B 和 MaskGIT-UVit-L 上验证,未探索与更大规模生成器(如 LlamaGen-L 343M)的配合效果。(5) 代码和模型开源情况未明确说明:虽然论文提到项目页面为 GitHub 链接,但未详细说明是否提供预训练模型和完整代码。(6) 与连续 VAE 的对比不足:论文主要与离散标记器对比,与 Stable Diffusion 等使用连续 VAE 的扩散模型对比有限。
独立分析的弱点
从独立分析的角度,NativeTok 存在以下可改进的弱点:(1) 专家块参数冗余:MoCET 中每个标记位置都有独立的专家 Transformer 块,这导致相邻位置的专家可能学习到相似的特征,存在参数冗余。改进方向可以探索参数共享机制,例如让相邻位置的专家共享部分底层特征提取层。(2) 潜在空间信息锁定过于刚性:MIT 生成的潜在表示 $X_{latent}$ 在整个生成过程中保持不变,这意味着后面的标记无法利用前面标记生成过程中产生的新信息。可以考虑设计一种增量更新机制,允许潜在表示在生成过程中适度调整。(3) 分层训练的扩展性存疑:当前从 32→64→128 的扩展策略假设复用权重是有效的,但当标记数量进一步增加(如 256、512)时,新增专家块可能难以从复用的权重中获得足够的初始化信号。(4) 缺少对标记顺序的显式建模:虽然论文强调因果依赖,但未充分探讨不同顺序(如光栅扫描、Z 形扫描、基于显著性的顺序)对生成质量的影响。(5) 评估指标单一:仅使用 FID 作为评估指标,未考虑其他重要指标如 IS(Inception Score)、LPIPS(感知相似度)或人类评估。
未来方向
基于 NativeTok 的成果,未来研究可以在以下方向展开:(1) 多模态统一标记化:将原生视觉标记化扩展到视频、3D 场景等多模态数据,探索统一的标记化框架。(2) 动态标记数量:根据图像复杂度自适应调整标记数量,简单图像使用更少标记,复杂图像使用更多标记,类似 DQ-VAE 的思路但结合因果依赖。(3) 与大规模生成器结合:探索 NativeTok 与更大规模的自回归生成器(如 1B+ 参数)的配合,验证其在 scaling law 下的表现。(4) 高分辨率生成:将 NativeTok 扩展到 512×512 甚至 1024×1024 分辨率,探索分层标记化策略。(5) 文本到图像生成:将 NativeTok 应用于条件生成任务,如文本到图像生成,探索原生标记化对条件生成的影响。(6) 标记顺序优化:研究最优的标记生成顺序,可能通过强化学习或可微分排序来自动发现。(7) 与其他 VQ 改进结合:将 NativeTok 与 FSQ、RQ-VAE 等改进的量化方法结合,进一步提升重建和生成质量。
复现评估
从复现角度来看,NativeTok 的复现具有一定挑战性:(1) 数据集:使用标准的 ImageNet-1K 数据集,这是公开可用的,但需要申请访问权限。(2) 计算资源:论文在 A800 GPU 上进行训练,32-token 模型需要 616M 参数,64-token 扩展训练在 2 块 A800 上进行(batch size 64/GPU),这需要相当的计算资源。(3) 代码开源:论文提到项目页面为 https://github.com/wangbei1/Nativetok,但未明确说明是否包含完整的训练代码和预训练模型。(4) 实现复杂度:MoCET 的独立专家块设计和分层训练策略增加了实现复杂度,需要仔细处理权重复用和冻结逻辑。(5) 依赖项:需要 PyTorch、Transformer 实现等标准深度学习库,但论文未提供完整的环境配置。(6) 评估流程:FID 计算需要使用标准的 ADM 评估流程生成 50K 样本,这需要额外的计算时间。总体而言,如果作者开源完整代码和预训练模型,复现难度为中等;否则,复现难度较高。
论文图表
该图展示了 NativeTok 的核心动机。左侧(a)展示了现有无序标记化方法的问题:第一阶段标记化不考虑标记间依赖,导致生成阶段需要从无序分布中学习,产生偏差和弱连贯性。右侧(b)展示了 NativeTok 的解决方案:在标记化阶段就引入原生视觉顺序和关系约束,实现两个阶段的紧密耦合。
这是理解论文核心动机的关键图,直观展示了为什么现有方法存在标记化-生成鸿沟,以及 NativeTok 如何通过原生视觉标记化来弥合这一鸿沟。