← 返回 2026-03-13

混合饮食让DINO成为全能视觉编码器 A Mixed Diet Makes DINO An Omnivorous Vision Encoder

Rishabh Kabra, Maks Ovsjanikov, Drew A. Hudson, Ye Xia, Skanda Koppula, Andre Araujo, Joao Carreira, Niloy J. Mitra 📅 2026-02-27 👍 2 2026-07-13 08:36
对比学习 知识蒸馏 自监督学习 视觉编码器 跨模态学习

通过跨模态对齐将DINOv2转变为能统一处理RGB、深度、分割等多模态输入的视觉编码器

前置知识

对比学习 (Contrastive Learning)

对比学习是一种自监督学习范式,通过拉近相似样本(正样本对)的特征表示,同时推远不相似样本(负样本对)的特征表示,来学习有意义的表征。核心思想是让模型理解数据的相对关系而非绝对标签。典型的对比损失函数是InfoNCE损失,它通过最大化正样本对的相似度同时最小化与负样本对的相似度来实现这一目标。温度参数tau控制了分布的尖锐程度,较小的值会让模型更加关注高相似度的样本。

本文使用InfoNCE损失来实现跨模态对齐,理解对比学习的机制对于掌握论文的核心方法至关重要

视觉Transformer (Vision Transformer)

Vision Transformer (ViT)将Transformer架构从NLP领域迁移到计算机视觉。ViT将图像划分为固定大小的patch(如16乘16像素),每个patch被展平并线性投影为一个token,类似于单词token。这些token经过位置编码后输入到标准的Transformer编码器中进行处理。ViT-B/14表示基础规模的模型,patch大小为14乘14,总共包含约173M参数。Transformer的self-attention机制使模型能够捕捉图像中长距离的依赖关系,这是CNN难以实现的。

本文基于DINOv2(ViT架构)进行后训练,理解ViT的工作原理有助于理解模型架构设计和层冻结策略

知识蒸馏 (Knowledge Distillation)

知识蒸馏是一种模型压缩和迁移技术,它将大型教师模型的知识转移到轻量级学生模型中。典型流程包括教师模型对输入产生输出,学生模型学习模仿教师输出,通常通过最小化它们预测分布之间的KL散度或其他距离度量。在本文的场景中,知识蒸馏被用作正则化手段,通过锚定损失将学生模型的输出约束在教师模型的特征空间附近,防止在追求跨模态对齐时丢失原有的语义判别能力。

本文采用教师-学生框架,锚定损失是防止特征崩塌和保持语义能力的关键机制

余弦相似度 (Cosine Similarity)

余弦相似度衡量两个向量之间夹角的余弦值,计算公式为cos(theta)等于向量点积除以两个向量L2范数的乘积。余弦相似度的取值范围是-1到1,值越接近1表示两个向量方向越一致,接近-1表示方向相反,0表示正交。在深度学习中,特征向量通常先进行L2归一化,此时余弦相似度等价于点积。相比于欧氏距离,余弦相似度对向量的长度不敏感,更关注方向上的相似性。

本文使用余弦相似度作为对齐和检索的主要度量指标,所有的对比损失和评估都基于此

研究动机

现有预训练视觉编码器如DINOv2在单模态任务上表现卓越,但其特征在不同视觉模态间对齐性很差。实验发现,同一场景的RGB图像与对应深度图的特征嵌入余弦相似度出奇地低,通常与两个无关场景图像之间的相似度相当,即RGB和深度图的相似度约等于随机RGB对的相似度,其中f是预训练编码器。具体而言,在ScanNet数据集上,DINOv2的GAP特征在RGB-Depth对上的相似度仅为0.285,在RGB-Segmentation对上仅为0.216,而随机RGB对的相似度为0.198,表明不同模态的同一场景特征几乎完全不对齐。这种跨模态不一致性限制了模型在需要处理多模态输入的实际应用中的灵活性。

本文的目标是本文提出全能视觉编码器框架,学习模态无关的特征空间。通过微调编码器实现双重目标,首先是最大化同一场景不同模态之间的特征对齐,其次是蒸馏目标,将学习到的表示锚定到完全冻结的教师模型上。最终得到的学生编码器成为全能的,能够为给定场景生成更一致的嵌入,无论输入模态是RGB、深度、分割还是其他。

与已有工作不同的是,本文的独特切入角度是将NLP领域的多语言对齐思想迁移到视觉领域。早期NLP系统是语言特定的,后来证明跨语言对齐表示或训练共享多语言编码器显著提高了泛化能力,特别是对低资源语言。类似地,本文认为视觉模型面临类似的拐点,通过将丰富的模态(RGB)与结构丰富但稀缺的信号(深度、分割)对齐,可以创建更稳健的共享视觉语言。与ImageBind等从头训练统一编码器或Omnivore等联合训练的方法不同,本文针对的是务实场景,通过在固定基础骨干上学习单个轻量级投影器来实现异构模态的后验对齐,保持了强大单模态编码器的部署优势。

核心方法

方法整体思路是采用参数高效的教师-学生框架。学生编码器从预训练基础模型初始化,为平衡稳定性和可塑性,学生与教师共享绝大部分层(冻结骨干),仅更新最后的高层处理块(头部)。教师的头部保持冻结作为稳定锚点。通过从教师向学生蒸馏知识,同时最大化跨模态对齐,防止灾难性遗忘。架构上,对于每个输入模态(如RGB、Depth、Seg),计算两个表示,教师输出和学生输出,两者都经过L2归一化。由于使用DINOv2蒸馏,网络是包含12块的Vision Transformer,默认冻结前8块,微调后续4块。

核心创新点在于结合了对称跨模态对齐与锚定蒸馏的双重目标,通过数据增强策略创建硬正样本和连续模态谱。与CMC等依赖大量负样本防止特征崩塌的方法不同,本文不需要跨数据集收集负样本,而是通过锚定损失将学生输出约束到教师输出附近,保留了原始特征空间的判别能力。另一个关键区别是使用自然着色将深度和分割图转换为与对应RGB图像共享颜色直方图的表示,迫使网络基于结构内容而非表面信号(如颜色直方图)进行对齐,然后通过模态混合在纯几何和纯纹理之间插值,创建连续的模态谱。

方法步骤详情

方法步骤的完整描述如下。首先是数据准备,包括三个处理步骤。第一步是光度增强(仅训练时),对RGB图像应用标准的亮度、对比度、色调和饱和度增强。第二步是自然着色(训练和评估),对于给定的RGB图像,将其像素值量化为64个bin,然后使用这些bin来着色对应的分割或深度图,使着色后的图和看起来像RGB图像。第三步是模态混合(训练时),通过凸组合生成增强的分割图像和深度图像,混合参数对每个数据点独立随机采样。第二步是损失计算,包括对称跨模态对齐损失和锚定损失。对齐损失使用InfoNCE损失,给定N个场景的batch,正对是同一场景的不同模态学生嵌入,负对是不同场景的嵌入,其中i不等于j。具体损失公式中包含余弦相似度和温度参数tau,总对齐损失是三个模态对的InfoNCE损失平均值。锚定损失鼓励学生输出与同模态的教师输出保持接近。最终目标是加权求和,默认权重为10。第三步是训练,使用TPU v4训练20000步,全局batch size为512,总运行时间1小时14分钟。

技术新颖性

技术新颖性体现在多个方面。首先,提出了后训练框架而非从头训练统一编码器,这在实际部署中更具吸引力,因为可以利用现有强大的单模态编码器。其次,引入了自然着色算法通过场景特定的颜色调色板将结构模态转换为与RGB共享光谱统计的表示,创建了真正的硬正样本。第三,模态混合策略创建了连续的模态谱,通过在0到0.5范围内随机采样混合参数,鼓励模型学习对纹理-结构比率的连续不变性。第四,对称对齐损失避免了将自适应特征对齐到潜在错位的冻结特征时固有的冲突优化目标。第五,锚定损失明确控制了跨模态对齐与保持原始判别能力之间的权衡,通过lambda_anchor参数可以调节Pareto前沿上的位置。

全能视觉编码器架构
Figure 2: 全能视觉编码器架构
训练数据处理流程
Figure 3: 训练数据处理流程

实验结果

核心发现包括多个方面的显著改进。在跨模态检索任务上,全能编码器显著优于DINOv2基线。在ScanNet的GAP特征上,R@1从4.6%提升到46.1%,Median Rank从401.8降至2.0。在MOVi上,R@1从15.5%提升到86.2%。在TartanAir上,R@1从46.6%提升到90.6%。在下游任务上,单目深度预测使用Linear readout时,RMSE从0.405降至0.377,delta_1准确率从0.875提升到0.896。使用DPT解码器时,性能与强基线持平,RMSE为0.297。语义分割方面,在ADE20k的Linear设置上mIoU从0.463提升到0.475,Cityscapes的Linear设置从0.622提升到0.632。分类任务上,ImageNet-1k线性探针top-1准确率从80.4%提升到83.8%。零样本跨模态传递展示了强大泛化能力。在RGB上训练深度预测头后在分割图上测试,Omnivorous的RMSE为0.532,而DINOv2为1.536。在完全未见过的NOCS模态上,Omnivorous RMSE为1.075,DINOv2为1.996。诊断指标显示跨模态对齐显著改善(ScanNet RGB-Depth相似度从0.285提升到0.600),同时跨场景判别能力轻微下降(从0.198降至0.259)。

跨模态检索平均结果
Table 1: 跨模态检索平均结果
下游任务评估结果
Table 2: 下游任务评估结果
深度预测任务的跨模态传递
Table 5: 深度预测任务的跨模态传递
锚定损失分析
Figure 4: 锚定损失分析
特征PCA可视化
Figure 5: 特征PCA可视化
查看结构化数据
任务指标本文基线提升
跨模态检索 R@1 Omnivorous: 46.1% (ScanNet GAP) DINOv2: 4.6% (ScanNet GAP) 提升902%
单目深度预测 RMSE Omnivorous: 0.377 (NYUv2 Linear) DINOv2: 0.405 (NYUv2 Linear) 降低6.9%
语义分割 mIoU Omnivorous: 0.475 (ADE20k Linear) DINOv2: 0.463 (ADE20k Linear) 提升2.6%
ImageNet分类 Top-1准确率 Omnivorous: 83.8% DINOv2: 80.4% 提升4.2%
零样本跨模态传递 RMSE (Seg转Depth) Omnivorous: 0.532 DINOv2: 1.536 降低65.4%

局限与改进

局限性分析包括多个方面。首先,DINOv2在最终训练步骤中经历了高分辨率微调,目前尚不清楚在训练全能DINO后是否需要这一步骤。其次,在某些细粒度分类任务如iNaturalist和Google Landmarks v2上观察到轻微性能下降,这可能是因为训练混合中包含了大量模拟多对象数据。第三,多视图3D对应方面的性能提升与网络层数之间缺乏清晰模式,这值得未来进一步研究。第四,方法依赖于配对的多模态数据(RGB-Depth-Segmentation),而结构模态的数据通常比RGB稀缺得多,这可能限制了某些场景的应用。第五,虽然lambda_anchor提供了权衡控制,但不同任务可能需要不同的最优值,实际部署中可能需要任务特定的调优。

独立分析的弱点

独立分析的弱点包括多个方面的改进空间。首先,方法仅微调最后4层,可能限制了跨模态对齐的能力,特别是当基础模型的早期层对模态特定模式高度敏感时。改进方向可以是探索更细粒度的层解冻策略或使用适配器模块在所有层进行轻量级调整。其次,自然着色算法虽然有效,但它依赖于量化到64个bin,这可能丢失了某些精细的结构信息,特别是在深度变化平缓的区域。改进方向可以是自适应bin分配或基于深度梯度的着色策略。第三,模态混合的范围限制在0到0.5,这可能在某些场景下限制了连续模态谱的表达能力。改进方向可以是任务相关的混合范围或学习混合策略。第四,方法主要关注RGB-Depth-Segmentation三种模态,扩展到其他模态(如热成像、LiDAR点云、事件相机数据)可能需要修改着色和混合策略。改进方向可以是设计模态特定的预处理管道。第五,评估主要在室内场景数据集上进行,室外场景的泛化能力尚未充分验证。改进方向可以是在室外场景数据集上进行更全面的评估。

未来方向

未来研究方向包括多个有前景的方向。作者提出的方向是在预训练编码器时对齐视觉模态而非后训练,这可能解锁比微调现有模型最后层更深层的好处。另一个方向是探索跨模态检索和深度预测的益处如何扩展到生成应用如单目图像到深度转换。基于成果可延伸的方向包括,探索更高效的知识蒸馏机制,可能使用层级蒸馏或多教师设置。研究模态混合在其他任务中的效果,如多模态分割或3D重建。将方法扩展到视频数据,对齐RGB帧、光流和深度。探索在少样本或零样本场景中的应用,其中目标模态的配对数据稀缺。研究如何将跨模态对齐与语言对齐结合,实现真正的多模态统一表示。开发自动化搜索最优lambda_anchor值的方法,可能基于验证集性能或任务特定的指标。

复现评估

复现评估方面,论文提供了较为完整的资源。模型权重已在GitHub开源,提供了完整的实现和预训练检查点。训练数据包括6个数据集(ScanNet、TartanAir、Hypersim、MOVi、PointOdyssey、DynamicReplica),都是公开可获取的。计算资源方面,使用TPU v4训练20000步,总运行时间约1小时14分钟,这是一个相对适中的计算需求。详细的训练配置在Table 7中提供,包括架构、优化器、batch size、预处理步骤等。评估协议在附录Section 6.2中有详细描述,包括跨模态检索、单目深度预测、语义分割、k-NN分类、零样本模态传递等。总体而言,论文提供了足够的实现细节和开源代码,复现难度适中,主要挑战在于获取和预处理多模态训练数据。