简介:VTP(Visual Tokenizer Pre-training,视觉分词器预训练)是面向视觉生成两阶段框架的分词器预训练新范式。其核心发现反直觉:重建越好,生成未必越好,真正驱动生成质量的是理解能力。本文系统讲解VTP的定义、背景、核心组成、工作原理、与VAE范式的区别及典型应用场景,帮助读者完整理解视觉Tokenizer的Scaling Law。
在文生图、文生视频等视觉生成任务中,主流技术方案普遍采用“两阶段”架构:
VTP(Visual Tokenizer Pre-training,视觉分词器预训练),就是针对第一阶段tokenizer环节提出的一套预训练方法与训练范式。它要回答的核心问题是:tokenizer应当训练什么目标,才能让“扩大训练投入”真正转化为下游生成质量的提升。近期,国内某视频生成团队开源了VTP项目并发布配套论文,首次系统论证了这一路线,其结论可概括为三点:
所谓Scaling Law(扩展定律),指模型性能随参数规模、数据规模与训练算力的增长呈现稳定且可外推的提升规律。大语言模型的成功在很大程度上得益于这条规律的存在:资源投入与收益之间存在可预期的映射关系。而在此之前,视觉tokenizer始终缺少一条被验证的扩展路径——这正是VTP试图填补的空白。
过去一年,技术社区流传一种观点:“扩散模型就是比VAE更好。”这个判断有直观依据:在图像生成任务上,扩散模型确实能产出细节更丰富、表现更稳定的结果;在大模型、大数据成为常态后,这种优势被进一步放大。
但如果审视真实落地的主流产品,会发现事情并非非此即彼。主流文生图模型本质上并没有抛弃VAE,而是采用“VAE+扩散模型”的组合体系:VAE负责把图像压缩进潜空间,扩散模型再在这个空间里做生成。这种分工至今仍是学术界与工业界的主流选择。同样的思路也延续到世界模型的实践中——多个公开的世界模型项目在技术路径上都被认为依赖VAE类的潜空间结构。也正因如此,VAE类tokenizer在学界与工业界依然保持很高地位,大量资源持续投入其中。
在两阶段框架下,从业者长期默认一条逻辑链:第一阶段压缩得越好(重建图像与原图越像)→ 潜空间保留的信息越完整 → 第二阶段的生成效果越好。
这条假设决定了过去多年的工程实践:tokenizer只用重建损失(reconstruction loss)预训练,然后通过追加算力与数据持续优化重建指标,期望以此带动下游生成质量。
VTP的配套论文通过大量实验揭示了一个反直觉现象:上述正相关性不仅不存在,甚至可能呈现负相关。也就是说,持续给tokenizer投入更多算力和数据做重建训练,重建指标会持续变好(重建结果越来越像原图),但对下游扩散模型的生成指标几乎没有帮助,某些情况下还会带来损害。论文将这一症结命名为tokenizer的pre-training scaling problem(预训练扩展问题)。
这一发现的意义在于:它把一个行业级的隐性认知偏差摆上了台面——过去大家默认的“靠重建驱动生成”的视觉生成扩展路径,本身可能就有问题;而VTP给出了新的路线:以理解能力驱动生成,以理解导向的预训练打通tokenizer的Scaling Law。
(1)重建—生成解耦的实证刻画。 VTP系统性测量了重建指标与下游生成指标之间的关系,证明两者不存在稳定的正相关,为“不能只用重建损失训练tokenizer”提供了证据基础。
(2)理解导向的预训练目标。 VTP不再把tokenizer当作纯粹的压缩工具,而是在预训练阶段引入与语义理解相关的训练信号,让潜空间表征承载语义结构,从而对下游生成模型更“友好”。
(3)可验证的扩展行为。 在理解导向的预训练下,tokenizer随模型规模、数据量与算力的扩展呈现稳定提升,且这种提升能够传导到下游生成任务——这正是“打通Scaling Law”的含义。
以VAE类tokenizer为例,传统训练流程可概括为:
# 传统tokenizer预训练(概念示意)for batch in dataloader:z = encoder(batch.image) # 图像压缩到潜空间x_rec = decoder(z) # 从潜空间重建图像loss = recon_loss(x_rec, batch.image) # 仅使用重建损失optimizer.step(loss)
这种训练方式的全部压力都落在“像素级还原”上:潜空间只需保留足够还原原图的信息即可,至于这些信息是否便于生成模型学习数据分布,训练过程完全不加以约束。
VTP的关键改动在于训练目标的重构:在重建之外引入理解导向的目标。其思想可用如下概念性伪代码表达:
# VTP式预训练目标(概念示意,非具体实现)for batch in dataloader:z = encoder(batch.image)x_rec = decoder(z)loss_rec = recon_loss(x_rec, batch.image) # 重建项:保证可用性loss_und = understanding_objective(z, batch.text) # 理解项:语义对齐等loss = loss_rec + alpha * loss_undoptimizer.step(loss)
需要强调:上述代码仅为思想示意,具体实现中理解目标的形式与权重配置,应以开源项目与论文的正式描述为准。
可以从两个视角理解这一机制:
一个通俗类比:tokenizer像摄影师,生成模型像画家。传统范式训练出的是一台高保真复印机——复印得越清楚,并不代表画家越容易从复印件里学会作画;VTP训练出的更像一位既懂拍摄又懂构图的摄影师,他交付给画家的素材本身就被组织得易于学习与再创作。
(1)文生图与文生视频的规模化训练。 当团队计划扩大生成模型训练规模时,VTP提供了tokenizer层面的正确扩展方式,避免“重建指标涨、生成指标不涨”的资源浪费。
(2)世界模型构建。 世界模型需要对环境状态做长期预测与滚动生成,其潜空间表征质量直接决定生成的稳定性,理解导向的tokenizer训练与此类需求天然契合。
(3)理解与生成的统一建模。 多模态大模型趋向统一处理理解与生成两类任务,visual tokenizer作为两者共享的表征底座,其理解能力与生成友好性都不可或缺,VTP的思路可作为底座训练的参考。
(4)自回归视觉生成。 将图像编码为离散或连续token序列后由序列模型生成,是扩散之外的另一条路线,该路线对tokenizer质量极为敏感,“重建≠生成”的规律在此尤为关键。
(1)VTP与VAE。 VAE是一类网络结构与训练方法(变分自编码器),通常充当visual tokenizer的具体实现;VTP是tokenizer的预训练范式,关注“用什么目标、以什么方式训练tokenizer”。两者不在同一层面,一个VAE结构完全可以在VTP范式下训练。
(2)VTP与扩散模型训练。 扩散模型训练解决第二阶段“如何生成”的问题;VTP解决第一阶段“生成所用表征如何获得”的问题。两者互补而非替代。
(3)重建指标与生成指标。 重建常用像素级与感知级指标(如峰值信噪比、结构相似度、感知损失类度量)衡量“像不像原图”;生成常用分布级指标与主观评测衡量“样本质量与多样性”。VTP的核心提醒正是:两类指标不可互相替代,选型tokenizer时不能只看前者。
(4)语言模型Scaling Law与视觉Tokenizer Scaling Law。 前者描述语言模型性能随规模扩展的规律,已被反复验证;后者描述visual tokenizer的可扩展性,长期未被打通。VTP为后者补上了缺失的一环,使视觉生成链路的第一阶段也拥有了可预期的投入产出关系。
回到定义本身:VTP是一套面向visual tokenizer的预训练范式,其核心主张是tokenizer不该只被当作压缩工具来训练,而应通过理解导向的预训练获得语义能力,并以打通Scaling Law的方式让训练投入稳定转化为下游生成收益。
它的重要性来自三点:第一,用实验推翻了“重建好=生成好”的行业默认直觉;第二,指明了“理解能力驱动生成质量”这一新的优化方向;第三,为视觉生成链路的第一阶段建立了可预期的扩展规律,使整条链路的规模化训练有了更完整的基础。
它的适用边界同样清晰:VTP作用于两阶段生成框架的tokenizer环节,不替代第二阶段的生成模型训练;其结论在图像与视频生成、世界模型等场景具有直接参考价值。对从业者而言,最值得立刻吸收的一点是:评估与训练visual tokenizer时,把“生成效果”而非“重建保真”放在第一位——这正是VTP带给整个领域最重要的认知修正。