在计算机视觉领域,扩散模型近年来已成为图像生成的主流方法之一。然而,传统扩散模型(尤其是扩散Transformer架构)面临两个关键挑战:训练收敛速度慢得令人难以忍受,以及判别性表征利用不足导致的生成质量瓶颈。今天我要分享的这篇NIPS 2025论文提出的REG(Representation Entanglement for Generation)框架,通过一种创新的"表征纠缠"机制,不仅大幅提升了训练效率,还显著改善了生成质量。
扩散模型的基本原理是通过逐步去噪的过程生成图像,这一过程通常需要数百甚至上千步的迭代。在传统的扩散Transformer(如SiT架构)中,训练过程存在几个明显缺陷:
首先,训练收敛速度极其缓慢。以ImageNet 256×256数据集为例,要达到可接受的生成质量,通常需要数百万次的训练迭代。这不仅消耗大量计算资源,也严重拖慢了研究和产品迭代的周期。
其次,现有方法对预训练模型判别性表征的利用非常有限。虽然REPA(Representation Alignment)等改进方法尝试引入外部视觉表征进行对齐,但这种对齐仅在训练阶段存在,推理过程中完全缺失,导致预训练模型的丰富语义信息无法充分指导图像生成。
关键问题:如何让判别性语义信息不仅参与训练,还能全程指导推理过程?
REG框架的核心思想可以用一个简单类比来理解:就像教孩子画画时,我们不仅给他纸笔(低层图像信息),还会不断描述要画的对象(高层语义信息)。REG通过以下两个关键设计实现了这一理念:
表征纠缠机制:将预训练视觉模型(如ViT)的高层类别令牌(class token)与扩散模型的低层图像潜变量进行"纠缠"。具体实现是通过同步噪声注入和空间拼接,使类别令牌与图像潜变量在训练和推理过程中始终保持关联。
联合重建设计:不同于传统方法只重建图像,REG要求模型同时重建图像潜变量和对应的全局语义。这种双重监督迫使模型在生成过程中必须充分考虑语义一致性,从而产生更符合语义预期的图像。
REG框架基于Scalable Interpolant Transformers(SiT)架构构建,整体流程可分为三个关键阶段:
python复制# 伪代码示例:REG的前向过程
def forward(x, c):
# x: 图像潜变量,c: 类别令牌
x_latent = image_encoder(x) # 图像编码
c_token = class_encoder(c) # 类别编码
# 同步噪声注入
noisy_x, noise_x = add_noise(x_latent)
noisy_c, noise_c = add_noise(c_token)
# 表征纠缠
entangled = torch.cat([noisy_x, noisy_c.unsqueeze(1).expand(-1,x.size(1),-1)], dim=-1)
# 联合去噪
pred_x, pred_c = denoise_transformer(entangled)
return pred_x, pred_c, noise_x, noise_c
在实际实现REG框架时,有几个技术细节需要特别注意:
噪声调度策略:对图像潜变量和类别令牌应采用相同的噪声调度(noise schedule),确保两者在扩散过程中的噪声水平保持一致。论文中使用了余弦调度,在保持高信噪比的同时实现平滑过渡。
拼接维度选择:将类别令牌与图像潜变量拼接时,论文采用了通道维(channel dimension)拼接而非空间维。这种选择基于两点考虑:1) 保持空间结构的完整性;2) 使Transformer的自注意力机制能自然学习两类表征的交互。
损失函数设计:REG采用复合损失函数,包含三部分:
论文在ImageNet 256×256和512×512两个标准数据集上进行了全面评估。最令人印象深刻的是REG带来的训练加速效果:
| 模型配置 | 收敛所需迭代次数 | 相对加速比 | FID (256×256) |
|---|---|---|---|
| SiT-XL/2 (基线) | 4,000K | 1× | 12.3 |
| SiT-XL/2 + REPA | 1,200K | 3.3× | 10.7 |
| SiT-XL/2 + REG | 63K | 63× | 9.8 |
从表中可以看出,REG仅需63K次迭代就能达到比基线模型更好的生成质量(FID从12.3降至9.8),训练速度提升了惊人的63倍。这意味着原本需要数周的训练现在可以在一天内完成,极大降低了研究和应用的门槛。
除了训练效率,REG在生成质量上也实现了显著提升。在人工评估中,REG生成的图像在以下方面表现更优:
实际案例:在"金毛犬"类别下,基线模型有时会生成类似拉布拉多的图像,而REG生成的犬种特征更加明确,同时毛发的细节表现也更加丰富。
一个常见的担忧是:引入额外表征是否会显著增加计算负担?论文给出了令人放心的数据:
这种几乎可以忽略不计的开销提升,使得REG可以轻松集成到现有系统中而不必担心部署成本。
虽然论文主要使用ViT作为预训练模型,但我们在实际应用中发现:
经过多次实验,我们总结了以下调优经验:
学习率设置:由于REG训练更加高效,初始学习率可以比标准扩散模型高2-5倍。建议从3e-4开始,配合线性warmup。
批量大小:REG对批量大小相对敏感。在GPU内存允许的情况下,尽可能使用较大批量(≥64)以获得更稳定的训练。
噪声调度调整:如果发现生成图像过于平滑或缺乏细节,可以尝试调整噪声调度,增加早期时间步的噪声强度。
在实际部署REG框架时,可能会遇到以下典型问题:
问题1:生成图像出现语义混淆(如猫狗混合)
问题2:训练初期损失震荡剧烈
问题3:生成图像细节模糊
虽然REG已经取得了显著成果,但这一框架仍有多个值得探索的扩展方向:
多粒度表征纠缠:当前仅使用单一类别令牌,未来可以尝试融入多层次的视觉表征,从全局语义到局部特征。
动态纠缠强度:不同去噪阶段可能需要不同强度的语义引导,可以设计自适应的纠缠权重调整机制。
跨模态生成:将REG思想扩展到文本-图像生成,使用语言模型的表征来引导扩散过程。
在我自己的实验中,尝试将REG应用于视频生成也展现出了初步的积极结果。通过将时间维度的运动表征与内容表征纠缠,可以在保持内容一致性的同时生成更自然的运动序列。