人工智能咨询培训老师叶梓 转载标明出处
近年来,视觉变换器(Vision Transformers,简称ViTs)在多种视觉任务中取得了卓越的性能,成为现代视觉基础模型的主流架构之一。然而,这些模型在特征图中存在一种网格状的噪声伪影,这种伪影不仅影响特征的可解释性,还会干扰语义连贯性,进而影响下游任务的性能。例如,直接在原始ViT输出上应用聚类算法会导致噪声聚类,从而降低模型在下游任务中的表现。
为了解决这一问题,来自南加州大学、康奈尔大学、上海交通大学和谷歌研究院的研究人员提出了一种新颖的去噪方法,称为Denoising Vision Transformers(DVT)。
图1展示了DVT在不同ViT模型上的去噪效果,包括DINOv2、DeiT-III、CLIP等模型。每组图像三联体展示了一个输入图像、其对应的原始特征可视化图和DVT去噪后的清洁特征图。
想要掌握如何将大模型的力量发挥到极致吗?叶老师带您深入了解 Llama Factory —— 一款革命性的大模型微调工具(限时免费)。
1小时实战课程,您将学习到如何轻松上手并有效利用 Llama Factory 来微调您的模型,以发挥其最大潜力。
CSDN教学平台录播地址:https://edu.csdn.net/course/detail/39987
DVT方法
DVT 的核心思想是将 ViT 的输出特征图分解为三个主要部分:无噪声的语义项f(x)、与位置相关的伪影项 ,以及一个表示语义和位置相互依赖的残差项 。这种分解的动机源于理想视觉特征应具备的平移和反射不变性,即物体的特征在不同视角、大小和方向下应保持一致。然而,ViT 在处理输入时将 patch 嵌入与位置嵌入混合,破坏了这种不变性,导致输出中出现不希望的伪影。这些伪影在特征图中表现为网格状的噪声模式,影响特征的可解释性和语义连贯性,进而影响下游任务的性能。
具体来说,ViT 的输出可以被形式化地表示为:
其中,f(x) 是与输入相关的无噪声语义项,捕捉图像的主要内容和语义信息;是与输入无关的伪影项,主要反映了位置嵌入引入的噪声模式;是残差项,表示语义和位置相互依赖的部分,捕捉两者之间的复杂交互关系。这种分解方法适用于所有 ViT 模型,能够有效地分离出噪声伪影,为后续的去噪处理提供了基础。
由于 ViT 输出特征的交织性质,直接在单次前向传播中解决上述分解问题是不切实际的。为此,DVT 利用跨视图特征和伪影的一致性来克服这一难题。具体来说,DVT 通过以下两个方面来实现去噪:
-
特征一致性:理想中的视觉特征应当在不同的空间变换下保持不变,即尽管输入图像经历了缩放、裁剪、翻转等变换,但其语义内容仍然保持一致。这种一致性要求特征映射能够在不同视图之间保持语义的连贯性。
-
伪影一致性:输入无关的伪影在所有变换中都是可观察且恒定的。这意味着伪影项 在不同视图中具有相似的模式和分布,不受输入内容的影响。
为了实现这种一致性,DVT 采用了神经场技术来近似语义特征和伪影特征。神经场是一种基于坐标网络的方法,能够将输入图像的像素坐标映射到对应的特征向量。具体而言,DVT 为每个图像构建一个整体的图像语义表示 F,以及一个由所有变换视图共享的空间伪影特征表示G。整体图像特征表示 F 旨在捕获空间独立、无伪影的语义信息,而G 则编码位置依赖但输入无关的噪声模式。通过这种方式,DVT 能够在不同视图之间实现特征和伪影的一致性,从而有效地分离出噪声伪影。
在优化过程中,DVT 通过最小化正则化重建损失来学习语义场 F、伪影场 G 和残差项 Δ。损失函数包括距离损失、残差损失和稀疏性损失,分别用于衡量特征重建的准确性、残差项的大小以及伪影项的稀疏性。通过这种优化策略,DVT 能够在保持语义信息的同时,最大程度地去除伪影噪声,生成高质量的去噪特征图。
图 4展示了 DVT 的方法概述,其中第一阶段将图像裁剪的原始特征分解为无噪声的语义项 F、与输入无关的位置相关伪影项 G 和额外的残差项 Δ。这一过程通过神经场技术实现,能够有效地从原始 ViT 输出中提取出干净的特征,为后续的去噪处理提供了基础。
虽然单图像去噪方法已经能有效去除 ViT 输出中的伪影,生成视觉上令人惊叹的去噪特征图,但仍存在运行时效率和分布偏移的问题。具体来说,单图像去噪过程需要对每个图像进行单独的优化,这在实时应用中是不现实的。此外,单独去噪的特征图可能导致特征分布偏移,影响图像间的特征一致性,从而影响模型在大规模数据集上的泛化能力。
为解决这些问题,DVT 引入了通用去噪器。在应用单图像去噪后,DVT 累积包含噪声 ViT 输出及其去噪对应物的数据集,记为。然后,DVT 训练一个去噪器网络,从原始 ViT 输出预测无噪声特征,即。去噪器网络的训练目标是最小化预测特征与真实去噪特征之间的距离损失,从而提高去噪器的泛化能力。
通用去噪器实现为一个轻量级的 Transformer 块,补充了额外可学习位置嵌入,以减轻输入无关的伪影。这种设计不仅能够有效地去除伪影噪声,还能保持特征的语义信息和空间一致性。在预测去噪特征时,将预训练 ViT 的输出加上这些位置嵌入,然后通过 Transformer 块进行处理,生成高质量的去噪特征图。
值得注意的是,这种学习到的去噪器是轻量级的,因此给原始 ViT 增加的延迟可以忽略不计,便于实时应用。它还能学习泛化样本,减轻单图像去噪过程中的分布偏移问题,提高模型在大规模数据集上的泛化能力和鲁棒性。通过这种方式,DVT 实现了从单图像去噪到通用去噪的跨越,为 ViT 在各种视觉任务中的应用提供了更为高效和可靠的去噪解决方案。
实验
不同 ViT 中的位置伪影:研究人员首先可视化了不同预训练 ViT 的特征图,如 图 1 所示。其中,DINOv2 作为一种在下游任务中表现出色的视觉基础模型,其输出特征图中清晰地显示出与位置相关的伪影。此外,使用图像类别标签训练的 DeiT-III 和通过文本-图像对齐训练的 CLIP 也显示出明显的伪影。EVA02 通过从预训练的 CLIP 模型中提取局部 patch 特征,同样存在明显的特征伪影。在测试的 ViT 中,DVT 成功地减轻了这些伪影,如 图 1 中“Original features”与“Denoised features”所示。
不同层中的伪影:在 图 5 中,研究人员对不同大小的 DINOv2 ViT 的各层进行了伪影分解的可视化分析。值得注意的是,DVT 分解出的伪影与仅使用零张量输入时生成的特征图具有很强的视觉相似性。此外,观察到伪影在不同层中表现出不同的模式:浅层主要表现为低频模式,而深层则以高频模式为特征。这些模式在不同大小的 ViT 中(例如,从 ViT-small 到 ViT-large)是一致的,这与之前的研究假设只有大型 ViT 会显示出这种模式不同。
伪影与位置的相关性:除了视觉上的定性检查,研究人员还定量分析了伪影与其位置之间的相关性。类似于之前的研究,他们使用最大信息系数(MIC)来衡量网格特征与其标准化 patch 坐标之间的依赖关系。这一指标表明 patch 特征在多大程度上依赖于其空间位置和语义内容。如 表 1 所示,无论是原始 ViT 输出还是分解出的伪影,都比去噪后的语义特征显示出更高的空间相关性,无论采用何种训练方法。这些结果支持了位置嵌入在伪影出现中起着重要作用的假设。
研究人员在密集识别任务中评估了 DVT 的方法,包括语义分割、单目深度估计、目标检测和目标发现。值得注意的是,本研究中没有直接的竞争者。相反,研究的重点是比较在应用 DVT 前后预训练 ViT 的性能。对于所有模型,研究人员使用从 VOC2012 和 VOC2007 数据集中随机选择的 10k 去噪样本(不包括验证样本)来训练通用去噪器。
语义分割:研究人员遵循之前的研究,在 VOC2012 和 ADE20k 两个语义分割数据集上评估了他们的方法,采用线性探测协议,即训练一个线性层来从 patch tokens 预测像素的类别。表 2 展示了主要结果。研究人员观察到,在所有数据集上,所有预训练 ViT 的性能都有显著且一致的提升。值得注意的是,DINOv2-giant 在 VOC2012 上的 mIoU 为 83.0,而 DVT 去噪后的 DINOv2-base 模型达到了 84.84 mIoU。在 ADE20k 数据集上,DINOv2-giant 和 DINOv2-large 模型的 mIoU 分别为 49.0 和 47.7,而去噪后的基础模型达到了 48.66 mIoU。值得注意的是,比基础模型大 13 倍的巨型模型被或与去噪后的基础模型相媲美。这表明性能提升主要来自于有效的伪影去除,而不是去噪器网络参数的微小增加。
DVT 还提高了最近引入的 DINOv2-reg 模型 的性能,该模型使用虚拟可学习注册 token 训练 ViT。如 表 2 所示,DVT 显著提高了 DINOv2 和 DINOv2-reg 的性能。仅应用 DVT 时,DINOv2 比使用注册 token 时显示出更多的改进;例如,DVT 去噪后的 DINOv2 在 VOC2012 上达到了 84.84 mIoU,在 ADE20k 上达到了 48.66 mIoU,超过了 DINOv2-reg 的性能,后者在相应基准测试中分别达到了 83.64 mIoU 和 48.22 mIoU。此外,DVT 还可以在两个数据集上进一步提高 DINOv2-reg 的性能(在 VOC2012 上提高了 0.86,在 ADE20k 上提高了 1.12)。此外,DINOv2-reg 需要使用 142M 图像从头开始训练 ViT,而我们的方法只需要使用 10k 去噪样本训练一个单独的 Transformer 块。
深度估计:遵循之前的研究,研究人员在 NYUv2-Depth 数据集 上使用线性评估协议评估了他们的方法(更多细节见附录)。如 表 2 所示,他们的方法明显提高了大多数预训练 ViT 的性能。作为参考,DINOv2-large 模型在参数比 DINOv2-base 模型多 3.5 倍的情况下,RMSE 改善了 0.01。去噪器在参数仅为基础模型的 0.08 倍的情况下实现了类似的性能提升。这些结果突出了该方法的效率,在参数增加很少的情况下实现了显著的性能提升。
目标检测:在这次实验中,研究人员在 Faster RCNN 框架下训练 ViTDet 检测器(更多细节见附录)。他们在 VOC trainval07+12 子集上训练所有模型,并在 test2007 子集上报告其 mAP 指标。结果如 表 3 所示。他们的方法在所研究的 ViT 上显示出一致的改进。值得注意的是,与原始 DINOv2 相比,DINOv2-reg 在目标检测性能上略有下降,而他们的方法则提高了它。
目标发现:无监督目标发现一直是人们感兴趣的一个长期问题。一个有趣的发现是,去噪后的 ViT 显示出目标发现能力的增强。图 6 通过 PCA 可视化和特征图的 L2 范数展示了这一点。去噪后,不仅伪影被移除,而且感兴趣的目标在特征范数值上也变得更加明显。这种目标清晰度的提高不是 DVT 的目标,而是该方法的结果。
为了定量评估这些改进,研究人员遵循之前的研究,使用 LOST 评估应用 DVT 前后的目标发现效果。他们使用特征范数作为目标显著性的指标。他们在 PASCAL VOC 2007、2012 和 COCO20k 数据集 上进行了目标发现实验。表 4 展示了结果。DVT 在所有评估的数据集上显著提高了 DINOv2 和 DINOv2-reg 的性能。特别是,虽然公开可用的 DINOv2-reg 在某些方面显示出一些改进((c) vs. (e)),但他们发现它未能达到之前研究中报告的性能水平((c) vs. (b))。尽管如此,DVT 在目标发现能力上实现了更显著的提升,甚至超过了之前研究中报告的数字((f) vs. (b))。
论文链接:https://arxiv.org/abs/2401.02957
项目链接:DVT: Denoising Vision Transformers