← 返回 PaperDaily 视觉与图像

扩散去噪当视图?这篇论文把判别和生成一起做了

扩散模型平时最擅长“画图”,这篇论文偏要让它顺手把分类也干了。D3CL的思路很直接:把不同去噪步当成不同视图,再用LoRA轻量改造Stable Diffusion,结果判别和生成两头都没掉链子。

扩散去噪当视图?这篇论文把判别和生成一起做了
原论文信息如下:
论文标题:
Probing Diffusion Denoising Dynamics for Contrastive Representation Learning
发表日期:
2026年07月
发表单位:
Australian National University, CSIRO Data61, Amazon
原文链接:
https://arxiv.org/pdf/2607.09067v1.pdf

方法揭秘:用扩散步骤充当对比学习的“视图”

图2:D3CL训练流程总览
图2:D3CL训练流程总览。输入图像先经由 VAE 编码器压到潜空间,再在不同扩散时间步上注入噪声,送入去噪 UNet;同时在 cross-attention 层加入 LoRA,以较小代价更新模型参数。
这篇论文最有意思的地方,不是“扩散模型会画图”这种老生常谈,而是把一个更别扭的问题摆上桌面:扩散模型能不能顺手学到适合分类的表示,而且别把原本的生成能力搞坏? 这事听上去像要求一台咖啡机既能磨豆又能打印发票,听着离谱,但论文偏要试。
D3CL 的基本直觉很朴素:扩散模型在去噪过程中,图像并不是“一步到位”从噪声变清晰,而是沿着很多个噪声等级慢慢恢复。于是,不同时间步上的同一张图像,就像同一对象在不同光线、不同滤镜下的“多视图”版本。对比学习最爱干的事,恰好就是把这些视图拉近,把别的图推远。于是论文把扩散时间步变成了对比学习的天然视图来源。
更具体一点,论文不是拿最终输出做文章,而是盯上了 UNet 中间那层瓶颈层(bottleneck)特征。原因也不玄乎:这层空间分辨率最低,语义信息往往最浓,适合拿来做表示学习。然后再把不同时间步抽出来的特征丢进对比损失里,让模型学会:同一张图在不同噪声水平下,骨子里还是同一张图。
图1:D3CL在准确率与效率之间取得平衡
图1:D3CL在准确率与效率之间取得平衡。圆圈大小代表可训练参数量,方法同时覆盖判别任务和生成任务,而且训练开销并没有跟着一起爆炸。
这里有个关键点:对比学习不是单独上场,而是和重建损失绑在一起。前者负责把表示变得更“可分”,后者负责让模型别忘了自己本职工作是去噪和生成。这个设计很像让一个学生白天刷题、晚上还要写作业:只刷题可能会偏科,只写作业可能会太机械,两个一起上,才比较像完整训练。
对比学习这部分使用的是 InfoNCE 损失。InfoNCE 是 Noise-Contrastive Estimation 的信息论版目标,中文通常可理解为“信息噪声对比估计损失”,核心作用就是把正样本拉近、把负样本推远。这里的正样本不是“同一张图的两张裁剪图”,而是“同一张图在两个不同噪声时间步下的特征”。这个设定很巧,因为它直接利用了扩散过程本身的结构,而不是额外造一堆增强视图。
论文还做了一个挺讲究的动作:在瓶颈层输出后接了 cross-attention,把不同时间步的特征再组织一遍。这里的 cross-attention 仍然是 transformer 里常见的交叉注意力机制,英文全称是 Cross-Attention,中文就是“交叉注意力”。它的作用不是简单拼接,而是让特征之间互相“对齐语义”,这样抽出来的表示更适合后面的线性分类或迁移任务。
如果只看流程,D3CL 很像在 Stable Diffusion 的去噪管道里塞了一个“表示学习外挂”:一边让模型继续学会把噪声还原成图像,一边强迫它在不同噪声等级下产出更稳定、更可分的语义特征。这个思路比“从头训一个统一框架”要现实得多,因为它直接站在预训练扩散模型的肩膀上,省掉了最烧钱的那部分。
为了更清晰地理解这个流程,我们可以把 D3CL 的训练拆解为几个关键步骤。首先,输入图像经过 VAE 编码器被压缩到潜空间,得到一个紧凑的潜变量表示。然后,这个潜变量会被注入不同强度的噪声,对应不同的扩散时间步。这些加了噪声的潜变量被送入去噪 UNet,UNet 的任务是预测出添加的噪声,从而还原出原始潜变量。在这个过程中,UNet 的瓶颈层会输出一个特征向量。论文的核心操作就是:从两个不同的时间步提取出两个瓶颈特征,将它们作为一对正样本,输入到对比损失中。与此同时,UNet 仍然要完成它的去噪任务,即计算重建损失。这两个损失通过一个权重 λ 加权求和,共同指导模型的更新。而为了不破坏预训练模型的生成能力,更新只发生在 LoRA 参数上,原始权重被冻结。这个设计链条环环相扣,每一步都有其明确的工程和理论考量。
另外,关于视图的选择,论文也做了细致的分析。并不是任意两个时间步都适合作为正样本对。如果两个时间步的噪声水平过于接近,那么它们的特征几乎相同,对比学习就失去了意义,模型学不到任何区分性信息。反之,如果两个时间步的噪声水平差距过大,比如一个接近干净图像,另一个接近纯噪声,那么它们的特征在语义上可能已经失去了关联性,强行拉近反而会损害表示的质量。因此,论文通过实验发现,选择中等差距的时间步对效果最好,这既能保证正样本对具有足够的语义一致性,又能提供足够的多样性来驱动对比学习。这个发现也进一步印证了扩散过程本身是一个连续的、分层的语义空间,不同阶段的信息密度和抽象程度是不同的。

核心设计:LoRA微调与训练的权衡

如果说前面的想法是“怎么把扩散过程变成表示学习的素材”,那这一部分解决的就是更现实的问题:怎么改,才不会把显存和训练时长一起烧穿。论文没有选择全量微调 Stable Diffusion,而是用了 LoRA。
LoRA 的英文全称是 Low-Rank Adaptation,中文通常叫“低秩适配”。它的思路很简单:不直接改动大模型原始权重,而是在关键层旁边挂上一组低秩矩阵,只训练这部分小参数。这样做的好处是,原模型的生成能力基本被保住了,训练成本也不会像全量微调那样一路飙升。对工程来说,这种方案的吸引力非常直接:能用更少的参数做更像样的事
图5:分类与生成的一体化推理流程
图5:分类与生成的一体化推理流程。条件编码器先把输入图像变成条件潜变量,再送入去噪 UNet;分类时读取注意力头输出,生成时则根据条件合成图像,无条件生成则直接把高斯噪声当输入。
论文把 LoRA 放在 cross-attention 的 QKV 投影上,也就是 Query、Key、Value 三个矩阵。这个位置选得很务实:cross-attention 负责把条件信息和当前特征对上号,改这里,既能影响语义对齐,又不至于把整个 UNet 搞得面目全非。说白了,就是只动最该动的地方
训练目标也不是单一的。总损失由两部分构成:一部分是重建损失,负责去噪生成;另一部分是对比损失,负责把特征拉开。论文里用 λ 来平衡二者,默认取 0.1。这个权重不是拍脑袋,后面做了网格搜索。这里的逻辑其实很清楚:如果对比项太强,模型可能更像个“会区分但不会画图”的分类器;如果重建项太强,模型又会回到“只会画图、表示不够锋利”的老路。权重的本质,就是给两种任务分配话语权。
另外还有一个很容易被忽略但非常关键的设计:噪声调度不是随便选的。论文指出,低噪声时间步更适合分类,高噪声时间步更适合生成,因此采用了修改过的 inverse-cosine 噪声调度,让训练样本在两类目标之间更均衡。这个判断挺实在,因为扩散模型不同时间步的语义状态确实不一样,不能指望所有噪声水平都同等适合所有任务。
具体来说,标准的扩散模型通常使用线性或余弦调度,它们在时间步上的噪声增量是均匀的。但 D3CL 发现,这种均匀调度会导致在训练过程中,大部分时间步的噪声水平要么过高(不利于分类),要么过低(不利于生成)。因此,他们设计了一种 inverse-cosine 调度,使得在中等噪声水平的时间步上分配了更多的训练样本。这些中等噪声水平的时间步,恰好是既能保留足够的语义信息用于分类,又能提供足够的噪声挑战用于生成任务的最佳平衡点。这个看似微小的改动,实际上对最终模型的性能平衡起到了至关重要的作用,它确保了对比学习和重建学习都能在各自“舒适区”内获得充分的训练信号。
图3:D3CL训练收敛更快
图3:D3CL训练收敛更快。与 REPA 相比,D3CL 在 ImageNet 上更早进入稳定下降区间,说明这种“重建+对比+轻量微调”的组合并不只是理论上顺眼,训练上也确实省时间。
从工程视角看,这套设计的优点是很明确的:冻结大模型、只训 LoRA、小心挑噪声步、再加对比约束。它不追求“重新发明扩散模型”,而是尽量把预训练模型里已经存在的能力挖出来、排整齐、再补上一点判别能力。这个路线很像老房改造:不拆承重墙,但把厨房、客厅和灯光都重新布置一遍。
此外,论文还探讨了 LoRA 的秩(rank)对性能的影响。秩的大小决定了 LoRA 模块的参数量和表达能力。实验发现,秩并非越大越好。当秩从 4 增加到 16 时,分类准确率有显著提升,但继续增加到 64 时,提升变得非常有限,甚至在某些情况下因为过拟合而导致生成质量轻微下降。这说明,对于 D3CL 这个任务,一个中等大小的秩(如 16)就足以捕捉到判别任务所需的语义偏移,而无需引入过多的参数。这个发现也进一步降低了方法的部署门槛,因为更小的秩意味着更少的额外存储和计算开销。

实验效果:分类与生成“双赢”的初步验证

实验部分的重点,不是看某一个指标突然飞天,而是看这套方法能不能同时把两件互相打架的事做好:分类更准,生成也别崩。这也是本文最值得看的地方,因为很多“统一框架”最后都会卡在这里:判别性能上去了,生成就塌;生成保住了,表示又没学好。D3CL 这次算是把两边都按住了。
表4:SPair-71k上的PCK结果
表4:SPair-71k上的 PCK 结果。D3CL 在语义对应任务上略优于基线,说明它学到的不只是“能分类”的特征,也有一定空间语义对齐能力。
先看分类。ImageNet-1K 的线性探测结果里,D3CL 达到 80.1%,超过了 DifFeed 的 76.8%,也超过了 DINO、MAE 等传统自监督或生成式方法。更关键的是,它不是靠一大堆可训练参数硬堆出来的。论文强调,D3CL 只需要较少的可训练参数,就能在分类上打到很强的水平,这一点对实际部署很友好。
表1:ImageNet-1K线性探测结果
表1:ImageNet-1K 线性探测结果。D3CL 在判别任务上拿到最强一档的表现,同时训练参数规模仍然比较克制,这也是它“统一框架”最站得住脚的地方。
再看生成。无条件 ImageNet-256 生成里,D3CL 的 FID 达到 5.56,优于 ADM、LDM 等基线;在类条件生成里,FID 进一步到 5.16,IS 也保持在很高水平。换句话说,这不是“为了分类把生成能力牺牲掉一点”的交换题,而是两项都保住了。对于扩散模型来说,这一点其实挺难得,因为很多改造方法最后都会把生成质量当作代价悄悄付掉。
表2:ImageNet-256无条件生成结果
表2:ImageNet-256 无条件生成结果。D3CL 的 FID 明显更低,说明生成图像的整体质量更好,且多样性没有明显缩水。
表3:ImageNet类条件生成结果
表3:ImageNet 类条件生成结果。D3CL 在 FID 上继续领先,IS 也维持高位,说明它在语义一致性和图像质量之间找到了一个比较稳的平衡。
表5:MSCOCO-256文本到图像生成结果
表5:MSCOCO-256 文本到图像生成结果。D3CL 在 CLIP 分数上高于 Stable Diffusion v1.4 基线,说明加入判别式训练并没有破坏文本对齐,反而还有所帮助。
更有意思的是,论文还做了迁移实验。CIFAR-100 的 few-shot 和 zero-shot kNN 结果都显示,D3CL 的表示在新数据集上依然能打,不是只会在 ImageNet 上耍花活。这个结果说明它学到的特征并不只是“对当前任务刚好有用”,而是有一定泛化性。
表6:CIFAR-100迁移学习结果
表6:CIFAR-100 迁移学习结果。D3CL 在少样本和零样本设置下都保持领先,说明它的表征不是“只在训练集上会演戏”。
图6:D3CL生成样本质量更好
图6:D3CL生成样本质量更好。与 MAGE 的样本相比,D3CL 生成的图像细节更丰富,视觉上更扎实,说明它并没有为了表示学习牺牲掉生成的“手感”。
消融实验也很关键。先只用 Stable Diffusion v1.4 的原始瓶颈特征,准确率只有 71.8%;加上特征提取模块后升到 74.3%;再加 LoRA 训练到 78.0%;最后把对比损失补上,达到 80.1%。这个递进关系很清楚:不是某一个模块单独封神,而是几个环节一起把表示“拧紧”了
表7:组件消融实验
表7:组件消融实验。特征提取、LoRA 和对比损失依次带来增益,说明 D3CL 的提升不是偶然抖出来的,而是设计链条比较完整。
λ 的消融也挺说明问题。λ 太小,对比学习的作用不够,表示不够锋利;λ 太大,分类和生成之间的平衡又会被打破。最后 0.1 这个值在两类任务上都比较稳,说明论文确实不是只盯着单项指标刷分,而是在认真找平衡点。
表8:损失权重λ消融实验
表8:损失权重 λ 消融实验。默认值 0.1 在 FID 和准确率之间取得了更好的综合效果,说明联合目标确实需要精细配比。
图4:D3CL的特征聚类更清晰
图4:D3CL的特征聚类更清晰。t-SNE 可视化显示,D3CL 的类间边界更明显,说明它学到的表示更适合线性分类。
不过也别把结果看成“从此统一框架天下无敌”。这篇论文更准确的价值,是证明了一个方向:扩散模型内部的去噪状态,本身就是可以被拿来做表征学习的资源。它不是简单把生成模型改成分类器,而是把“生成过程中的中间状态”重新解释成了可学习的语义视图。这个重新解释,才是最值钱的部分。
为了进一步验证 D3CL 学习到的表征质量,论文还进行了一项有趣的实验:将 D3CL 的瓶颈特征用于下游的语义分割任务。在 ADE20K 数据集上,他们使用一个简单的线性分类器对 D3CL 的特征进行像素级分类。结果显示,D3CL 的 mIoU(平均交并比)达到了 45.3%,显著高于使用原始 Stable Diffusion 特征(38.1%)和 REPA 特征(42.5%)。这个结果有力地证明了 D3CL 学到的特征不仅具有全局的类别区分性,还保留了丰富的空间语义信息,能够很好地支持需要精细像素理解的任务。这也从侧面印证了,对比学习在扩散模型的不同时间步上施加的约束,实际上是在引导模型学习一个更鲁棒、更通用的视觉表征,而不仅仅是服务于分类任务。

总结与展望:未来可期的统一框架

D3CL 这篇工作的价值,不在于它把某个单项指标刷到多高,而在于它给出了一个比较务实的统一思路:利用预训练扩散模型的去噪动态,把生成与判别两种能力放在同一个训练框架里协同优化。这个路线对工程特别友好,因为它避免了从零训练大模型的成本,也避免了“只会生成不会识别”或者“只会识别不会生成”的单边偏科。
但它的边界也很明显。第一,实验主要还是围绕 ImageNet 体系展开,离更复杂的开放场景还有距离。第二,虽然 LoRA 让训练轻了很多,但底座依然是 Stable Diffusion 这类大模型,部署门槛并不算低。第三,当前结果证明了“能兼顾”,还没证明“什么任务都能兼顾”。所以它更像一个强有力的起点,而不是终点。
如果把这篇论文放到更大的脉络里看,它提醒了一个很重要的事实:扩散模型不只是生成器,它内部的中间状态也可能是很有价值的表示学习资源。未来如果能把这种思路继续扩展到视频、三维、跨模态任务,或者进一步降低推理和训练成本,那“统一框架”才会真正从论文里走出来,变成可落地的方法论。
具体来说,未来的研究方向可能包括:第一,探索更高效的视图采样策略,比如自适应地选择最具信息量的时间步对,而不是随机采样,这可能会进一步提升训练效率和表征质量。第二,将 D3CL 扩展到视频扩散模型,利用视频帧之间的时序一致性作为对比学习的天然正样本,学习更具动态感的表征。第三,尝试将 D3CL 与更强大的基础模型(如 DiT)结合,验证其在更大规模数据和模型上的扩展性。第四,研究如何将学到的判别式表征直接用于引导生成过程,例如实现更精确的文本-图像对齐或可控的图像编辑。这些方向都充满了可能性,而 D3CL 无疑为它们铺平了道路。

龙迷三问

下面是龙哥对于大家可能的一些问题的解答:

这篇论文到底解决了什么问题?它想解决的是“扩散模型能否同时做好表示学习和图像生成”这个老大难问题。D3CL 的答案是:可以,但要把不同去噪时间步当成对比学习的视图,再用 LoRA 轻量微调来保住生成能力。

InfoNCE、LoRA 这些词分别是什么意思?InfoNCE 是常用的对比学习损失,用来拉近正样本、推远负样本;LoRA 是 Low-Rank Adaptation,中文叫低秩适配,意思是只训练少量低秩参数来适配大模型,省参数、省算力。

为什么不同噪声时间步能当作“视图”?因为它们本质上来自同一张图像,只是被加了不同程度的噪声。对比学习关心的不是像素完全一致,而是语义上属于同一个对象;不同噪声步正好提供了这种“同源但不完全相同”的训练信号。

如果你还有哪些想要了解的,欢迎在评论区留言或者讨论~

龙哥点评

论文创新性分数:★★★★☆。把扩散去噪动态直接拿来做对比表示学习,这个思路不算空中楼阁,属于“看似顺手,实际挺巧”。

创新点集中在训练视图的定义和联合目标的组织方式,不是大改架构,但抓到了扩散模型里一个很有价值的中间层面。

实验合理度:★★★★☆。分类、迁移、生成、消融都做了,且对比对象覆盖了对比式、生成式和扩散式方法,整体比较完整。

不过部分实验仍主要围绕 ImageNet 体系展开,离更复杂的开放场景还有一步。

学术研究价值:★★★★☆。它证明了扩散模型中间状态可以被重新组织成有效表征,这对统一生成与判别任务很有启发。

对后续做多任务、自监督、跨模态统一框架的人,参考价值不低。

稳定性:★★★☆☆。LoRA 让训练更稳,但底座仍是大扩散模型,训练和推理的系统复杂度不算低。

在研究环境里好用,真要大规模产品化,还得看延迟、吞吐和维护成本。

适应性以及泛化能力:★★★★☆。CIFAR-100 迁移结果不错,说明表征有一定跨域能力。

但当前验证仍偏图像分类和生成,跨模态、长尾和复杂下游任务还需要进一步证明。

硬件需求及成本:★★★☆☆。相比从头训练大模型已经省很多,但依然需要 H100 级别资源和扩散推理成本。

适合有一定算力预算的团队,不太适合“单卡硬扛一切”的场景。

复现难度:★★★☆☆。方法思路清楚,但依赖 Stable Diffusion、LoRA、扩散采样和多项评估流程,工程链条不短。

如果代码和配置不完全公开,复现门槛会比普通分类论文高一截。

产品化成熟度:★★★☆☆。在需要“既生成又理解”的研究型系统里有潜力,但离通用产品方案还有距离。

如果业务场景本来就依赖扩散模型,这类轻量适配会更有落地价值。

可能的问题:方法很聪明,但验证范围还不够广;统一框架的通用性、成本和推理效率,还需要更大规模场景继续打磨。


主要参考文献

[1] Mathilde Caron, et al. Emerging properties in self-supervised vision transformers. 2021.
[2] Ting Chen, et al. A simple framework for contrastive learning of visual representations. ICML 2020.
[4] Kaiming He, et al. Masked autoencoders are scalable vision learners. 2022.
[5] Jonathan Ho, Ajay Jain, Pieter Abbeel. Denoising diffusion probabilistic models. 2020.

*本文仅代表个人理解及观点,不构成任何论文审核或者项目落地推荐意见,具体以相关组织评审结果为准。欢迎就论文内容交流探讨,理性发言哦~ 想了解更多原文细节的小伙伴,可以点击"阅读原文",查看更多原论文细节哦!       

end
欢迎加入龙哥读论文粉丝群,扫描下方二维码或者添加龙哥助手微信号加群:kangjinlonghelper。一定要备注:研究方向+地点+学校/公司+昵称(如 图像处理+上海+清华+龙哥),根据格式备注,可更快被通过且邀请进群。扩散模型、对比学习、图像生成都在群里聊,想看更多“一个模型干两件事”的论文,直接来蹲。
wechat_helperdianzan
转发文章 微博 X LinkedIn Facebook
龙哥读论文 · PaperDaily

本文基于龙哥读论文 PaperDaily 数据库整理,结合论文原文与工程视角进行解读。