Meta发布的自监督ViT DINO的发展史:从DINO、DINOv2到通用视觉特征提取器DINOv3

前言

之所以关注到DINOV2

一方面,在于我解读多个具身机器人模型时——发现他们的视觉基座都用的DINOV2,比如

  • rekep
  • Open-TeleVision
  • OpenVLA
  • CogACT
  • OKAMI

二方面,在于相比于需要

  • 标注数据的「全监督-图像分割SAM」
  • 依赖图像 - 文本对进行训练的「弱监督-语义理解CLIP」

基于自监督学习的『视觉特征提取器DINO』具备直接从图像本身生成学习信号的优势,数据准备门槛更低,更容易实现更大规模的数据学习以达到更精细的图像特征,泛化性更强

不过,实话讲,Meta发布的自监督ViT DINOv1及其v2论文的可读性是真的不高,使得本次解读不易

PS,本文一开始的标题是《自监督ViT与目标检测:从基于ViT的DINO、DINOv2,到最新目标检测器Grounding Dino、DINO-X

  • 前两部分「DINOv1及其v2」的含义是自监督ViT
  • 后两部分「Grounding Dino和DINO-X」的含义是目标检测器

后按读者Whynot886的建议,把这两部分分开了

    再后来的25年8月中旬,DINOv3出来了,故又对其解读了下,作为本文的第五部分

    第一部分 DINO:自监督ViT

    1.1 提出背景与相关工作

    1.1.1 DINO的提出背景

    近年来,Transformer [70] 已经成为视觉识别领域中卷积神经网络convnets的替代方案[19,69,83]。它们的采用伴随着一种受NLP启发的训练策略,即在大量数据上进行预训练,然后在目标数据集上进行微调[18,55]

    由此产生的ViT 与卷积网络具有竞争力,但尚未显现出明显的优势:它们在计算上更为苛刻,要求更多的训练数据,并且其特征没有表现出独特的属性

    1. 对此,作者质疑视觉领域中Transformer成功受限是否可以通过其预训练中的监督方式来解释。作者的动机是,Transformer在自然语言处理领域成功的一个主要因素是使用自监督预训练,例如BERT中的close procedure[18]或GPT中的语言建模[55]
    2. 这些自监督预训练目标使用句子中的词语来创建伪任务,比预测每个句子单一标签的监督目标提供了更丰富的学习信号。同样,在图像中,图像级别的监督通常将图像中包含的丰富视觉信息简化为从预定义的几千个类别中选择的单一概念[60]

    受以上种种的启发,21年4月,Meta发布了DINO,其基于 ViT 构建,在无需标注的情况下可以学习到语义分割、对象检测等任务中高可用的特征

    1.1.2 相关工作:自训练和知识蒸馏

    自训练旨在通过将一小部分初始标注传播到大量未标注的实例来提高特征的质量。这种传播可以通过标签的硬分配[41,78,79]或软分配[76]来完成

    • 当使用软标签时,该方法通常被称为知识蒸馏[7,35],其主要设计目的是训练一个小网络以模拟大网络的输出来压缩模型
    • Xie等人[76]表明,蒸馏可以用于在自训练流程中将软伪标签传播到未标注的数据,从而在自训练和知识蒸馏之间建立了一个重要的联系
    • 作者的工作基于这一关系,并将知识蒸馏扩展到无标签的情况。之前的工作也结合了自监督学习和知识蒸馏[25,63,13,47],实现了自监督模型压缩和性能提升。然而,这些工作依赖于预训练的固定教师,而作者的教师是在训练过程中动态构建的。这样,知识蒸馏不是作为自监督预训练的后处理步骤,而是直接作为自监督目标
    • 最后,作者的工作也与协同蒸馏[1]相关,其中学生和教师具有相同的架构,并在训练过程中使用蒸馏。然而,在协同蒸馏中,教师也从学生中蒸馏,而在我们的工作中,教师通过学生的平均值进行更新

    1.2 方法

    1.2.1 知识蒸馏的自监督学习

    本研究中使用的框架DINO,与最近的自监督方法[10-Unsupervised learning of visual features by contrasting cluster assignments,16,12,30,33]共享相同的整体结构

    然而,作者的方法也与知识蒸馏[35- Distilling the knowledge in a neural network]有相似之处

    下图图2中展示了DINO「模型将输入图像的两种不同随机变换传递给学生和教师网络。两个网络具有相同的架构但参数不同。教师网络的输出以批次计算的均值为中心。每个网络输出一个K维特征,该特征通过特征维度上的温度softmax进行归一化。然后用交叉熵损失测量它们的相似性。作者在教师上应用一个停止梯度(sg)操作符 只通过学生传播梯度——We apply astop-gradient (sg) operator on the teacher to propagate gradientsonly through the student。教师参数通过学生参数的指数移动平均(ema)进行更新

    总之,知识蒸馏是一种学习范式,作者训练一个学生网络g_{\theta_{s}}来匹配给定教师网络g_{\theta_{t}}的输出,分别由\theta_{s}\theta_{t}参数化

    给定输入图像x,两个网络输出在K维上的概率分布,分别表示为P_{s}P_{t}。概率P 是通过使用softmax函数对网络g 的输出进行归一化得到的。更准确地说

    P_{s}(x)^{(i)}=\frac{\exp \left(g_{\theta_{s}}(x)^{(i)} / \tau_{s}\right)}{\sum_{k=1}^{K} \exp \left(g_{\theta_{s}}(x)^{(k)} / \tau_{s}\right)}

    其中\tau_{s}>0是控制的温度参数——输出分布的尖锐度,以及一个类似的公式适用于P_{t},其中温度为\tau_{t}。给定一个固定的教师网络g_{\theta_{t}},作者通过最小化相对于学生网络参数\theta_{s}的交叉熵损失来学习匹配这些分布(定义为方程2)

    \min _{\theta_{s}} H\left(P_{t}(x), P_{s}(x)\right)

    其中H(a, b)=-a \log b

    接下来,作者详细说明如何将方程(2)中的问题适应于自监督学习

    1. 首先,使用多裁剪策略[10] 构建图像的不同失真视图或裁剪。更具体地说,从给定的图像中,生成一组V 的不同视图。该集合包含两个全局视图,xg1 和xg2,以及几个较小分辨率的局部视图。所有裁剪都会通过学生模型,而只有全局视图会通过教师模型,因此鼓励” 局部到全局” 的对应关系
    2. 最小化损失(定义为方程3)
      \min _{\theta_{s}} \sum_{x \in\left\{x_{1}^{g}, x_{2}^{g}\right\}} \sum_{\substack{x^{\prime} \in V \\ x^{\prime} \neq x}} H\left(P_{t}(x), P_{s}\left(x^{\prime}\right)\right)
      这种损失是通用的,可以用于任意数量的视图,甚至只有两个视图。然而,遵循多裁剪的标准设置,使用两个分辨率为224×224的全局视图。覆盖原始图像的大部分(例如大于50%)区域,以及几个分辨率为96×96的局部视图。仅覆盖原始图像的小区域(例如小于50%)。除非另有说明,否则将此设置称为DINO的基本参数化

      两个网络共享相同的架构g,但具有不同的参数集\theta_{s}\theta_{t}。作者通过使用随机梯度下降法最小化方程(3)来学习参数θs

    额外说一句,作者还在算法1中提出了一个伪代码实现

    对于教师网络

    与知识蒸馏不同,作者没有先验给定的教师g_{\theta_{t}},因此作者从学生网络的过去迭代中构建它。作者在原论文的第5.2 节研究了教师的不同更新规则,并展示了在作者的框架中冻结教师网络在一个epoch 内出乎意料地有效,而将学生权重复制给教师则无法收敛

    1. 特别感兴趣的是,在学生权重上使用指数移动平均(EMA),即动量编码器[33],特别适合他们的框架。更新规则为\theta_{t} \leftarrow \lambda \theta_{t}+(1-\lambda) \theta_{s},其中λ 在训练过程中按照余弦调度从0.996 到1 [30]
    2. 最初,动量编码器被引入作为对比学习中队列的替代品[33]。然而,在他们的框架中,其角色有所不同,因为他们没有队列也没有对比损失,可能更接近于自我训练中使用的均值教师的角色[65]
    3. 事实上,作者观察到这个教师执行了一种类似于Polyak-Ruppert 平均的模型集成形式,具有指数衰减[51, 59]。使用Polyak-Ruppert 平均进行模型集成是提高模型性能的标准做法[38]。作者观察到这个教师在整个训练过程中表现优于学生,因此,通过提供更高质量的目标特征来指导学生的训练。这种动态在先前的工作中未被观察到[30, 58]

    对于网络架构

    神经网络g 由一个主干f(ViT [19] 或ResNet [34])和一个投影头h: g=h \circ f组成

    再简要回顾下视觉Transformer(ViT) [19, 70] 的机制


    作者遵循DeiT [69-Training data-efficient image transformers & distillation through attention] 中使用的实现。且在下表1 中总结了本文中使用的不同网络的配置

    其中,ViT 架构以分辨率为N ×N 的非重叠连续图像块网格作为输入

    1. 在本文中,作者通常使用N = 16(”/16”) 或N = 8 (”/8”)
      然后将这些图像块通过一个线性层以形成一组嵌入
    2. 在序列中添加一个额外的可学习token [18, 19],这个token的作用是聚合整个序列的信息——为了与之前的研究保持一致,将此token称为分类token[CLS],且在其输出处附加投影头h「projection head h
    3. patch token集和[CLS] token被输入到一个带有” 预归一化” 层归一化的标准Transformer 网络[11, 39]「The set of patch tokens and [CLS] token are fed to a standard Transformer network with a “pre-norm” layer normalization [11, 39],说白了,所谓的预归一化——就是先Norm再attention 或先Norm再MLP

      而其中的Transformer 是由自注意力和前馈层组成的序列,并与跳跃连接并行。自注意力层通过注意力机制[4] 查看其他token表示来更新token表示「如果对transformer的自注意力机制有所遗忘的话,详见此文《Transformer通俗笔记:从Word2Vec、Seq2Seq逐步理解到GPT、BERT》」
      TheTransformer is a sequence of self-attention and feed-forwardlayers, paralleled with skip connections. The self-attentionlayers update the token representations by looking at the other token representations with an attention mechanism [4].

    下游任务中使用的特征是主干f 的输出。投影头由一个3 层多层感知器(MLP)组成,隐藏维度为2048,后接\ell_{2}归一化和一个权重归一化的全连接层[61],具有K 维度,这与SwAV [10- Unsupervised learning of visual features by contrasting cluster assignments] 的设计相似

    1. 作者测试了其他投影头,这种特定设计似乎对DINO 效果最佳(附录C)。作者没有使用预测器[30,16],导致学生和教师网络中的架构完全相同
    2. 特别值得注意的是,与标准卷积神经网络不同,ViT架构默认不使用批量归一化(BN)。因此,当将DINO应用于ViT时,作者在投影头中也不使用任何BN,使系统完全不含BN

    // 待更

    第二部分 DINOV2:无监督预训练的图像编码器

    引言


    通过对训练算法的精细调优、采用更大规模的模型架构以及更丰富的训练数据,DINOv2(Oquab 等,2024)取得了令人瞩目的成果;首次有自监督学习模型在多项任务上达到或超越了开源 CLIP 变体

    2.1 相关工作与数据处理

    2.1.1 相关工作

    23年4月,Meta AI提出DINOv2——是一系列在大型精心挑选的数据上进行无监督预训练的图像编码器,其对应的论文为《DINOv2: Learning Robust Visual Features without Supervision》,其一作为Maxime Oquab

    • 在数据方面,作者提出了一种自动化流程来构建一个专用的、多样化的、精心策划的图像数据集,而不是像自监督文献中通常所做的那样使用未策划的数据

      比如下图所示,来自精选和非精选数据源的图像首先被映射到嵌入。非精选图像在与精选图像匹配之前会进行去重。最终的组合通过自监督检索系统增强了初始数据集

    • 在模型方面,作者训练了一个具有10亿参数的ViT模型(Dosovitskiy等,2021),并将其蒸馏成一系列较小的模型,这些模型在图像和像素级别的大多数基准测试中超越了最佳可用的通用特征OpenCLIP(Ilharco等,2021)

    而在此之前,其实有不少与之相似或相关的工作,比如

    第一类自监督方法侧重于伪任务从图像中构建,即从图像中提取信号以预测图像的其余部分

    1. 图像内自监督训练这个想法在Doersch等人(2015)的工作中变得普遍,他们通过预测给定patch的上下文进行训练。许多其他的前置任务也被引入,例如重新上色图像(Zhang等人,2016)、预测变换(Gidaris等人,2018)、图像修复(Pathak等人,2016)或补丁重排序(Noroozi & Favaro,2016;Misra & Maaten,2020)
    2. 最近,基于patch的架构如ViTs的出现,导致对前置训练的图像修复进行重新审视(He等人,2022;Bao等人,2021;El-Nouby等人,2021),可能在特征空间中(Assran等人,2023;Baevski等人,2022)
      特别有趣的是,He等人(2022)表明,掩码自动编码器(MAE)学习到的特征在下游任务微调时提供了显著的改进。MAE的这一特性在视频(Tong等人,2022)、音频(Xu等人,2022)和其他模态(Girdhar等人,2023)上得到了进一步验证

      然而,它们的特征需要有监督的微调,而DINOV2的特征在未经微调的情况下表现良好。判别式自监督学习

    第二类与DINOV2更接近的工作是使用判别式信号在图像或图像组之间学习特征

    1. 这类方法的根源可以追溯到早期的深度学习工作(Hadsell等,2006),但随着实例分类方法的出现而流行起来(Dosovitskiy等,2016;Bojanowski & Joulin,2017;Wu等,2018)。几项改进基于实例级目标(Hénaff等,2019;He等,2020;Chen & He,2021;Chen等,2020;Grill等,2020;Caron等,2021)或聚类(Caron等,2018;Asano等,2020;Caron等,2020)进行
    2. 这些方法在ImageNet(Russakovsky等,2015)等标准基准上提供了高性能的冻结特征,但难以扩展到更大的模型规模(Chen等,2021)

      在DINOV2工作中,作者重新审视了这些方法在大规模预训练数据集和模型背景下的训练。特别是,作者基于Zhou等(2022a)的研究进行构建,发现其特别适合于扩展

    第三类,扩展自监督预训练

    1. 越来越多的研究集中于自监督学习在数据和模型规模方面的扩展能力(Caron等,2019;Goyal等,2019;Tian等,2021;Goyal等,2022a)。这些研究大多数使用大量未经筛选的数据来训练无监督的模型。他们提供的证据表明,判别方法可以随着数据的增加而扩展,但由于预训练数据质量较差,大多数结果是通过微调特征获得的
    2. 特别值得注意的是,Goyal等(2021)还表明,在有足够预训练数据的情况下,这些方法在模型规模扩展方面也受益。这一研究方向质疑了自监督方法在任何数据上工作的能力,而我们则专注于生成最佳的预训练编码器

    第四类相关的工作是自动化数据整理

    1. DINOV2的数据集构建借鉴了图像检索领域(Wein-zaepfel等人,2021;Radenović等人,2018b;Berman等人,2019;Douze等人,2009;Tolias等人,2016;Revaud等人,2019)。特别是在半监督学习的背景下,使用检索来扩充训练集已经被研究过(Yalniz等人,2019)
    2. 类似地,其他人使用标签或其他元数据(Mahajan等人,2018;Radford等人,2021)或预训练视觉编码器(Schuhmann等人,2021;2022)来过滤未整理的数据集

    与这些工作不同的是,DINOV2不使用预训练编码器、元数据或监督来过滤图像,而是利用图像之间的视觉相似性

    DINOV2的方法受到文本整理流程的启发(Wenzek等人,2020),其中语言模型在维基百科上训练,以对从未整理的来源提取的文本进行评分

    2.1.2 数据处理

    作者通过从大量未经过筛选的数据中检索出与几个经过筛选的数据集中的图像相似的图像,从而构建了的精选 LVD-142M 数据集

    接下来,介绍下该数据处理流程中的主要组件,包括整理/未整理的数据来源、图像去重步骤和检索系统。且该流程不需要任何元数据或文本,直接处理图像,如上图图3所示

    1. 数据来源
      作者选择的精心整理的数据集详见附录(表15),包括ImageNet-22k、ImageNet-1k的训练集、Google地标以及几个细粒度数据集
      对于未经整理的数据源,作者从一个公开可用的网络爬取数据存储库中收集未经过滤的原始图像数据集
      比如从存储库中的每个网页提取标签中的图像URL链接。然后丢弃不安全或被域名限制的URL,并对下载的图像进行后处理(PCA哈希去重、NSFW过滤和模糊处理可识别的面孔)。最终得到12亿张独特的图像
    2. 去重
      作者应用了Pizzi等人(2022年)的复制检测流程到未经整理的数据中,并移除了近似重复的图像。这减少了冗余并增加了图像的多样性
      且还移除了在本文使用的任何基准的测试或验证集中包含的图像的近似重复项
    3. 自监督图像检索
      作者通过从未经筛选的数据源中检索接近于他们筛选过的数据源的图像来构建我们精心策划的预训练数据集

      为此,首先使用在ImageNet-22k 上预训练的自监督ViT-H/16 网络计算图像嵌入,并使用余弦相似度作为图像之间的距离度量
      然后,对未经筛选的数据进行k-means 聚类
      给定一个用于检索的查询数据集
      如果它足够大,为每个查询图像检索N(通常为4)个最近邻
      如果它较小,从与每个查询图像对应的聚类中采样M 个图像

      尽管视觉检查似乎表明对于N 远大于4 的检索质量较好,但这会导致更多的冲突(即多个查询的最近邻检索结果相同的图像)。故作者选择N = 4,因为它在这方面提供了良好的权衡
    4. 实现细节
      作者的管道的去重和检索阶段依赖于Faiss库(Johnson等,2019)来高效地索引和批量搜索最近的嵌入
      特别是,作者大量利用其对GPU加速索引的支持,使用带有产品量化码的倒排文件索引(Jegou等,2010)
      整个处理分布在一个由20个节点组成的计算集群上,每个节点配备8个V100-32GB GPU,生成LVD-142M数据集用时不到两天

    2.2 判别式自监督预训练与高效实现

    // 待更

    2.3 分别基于DINO、DINOv2提出的SimDINO、SimDINOv2

    // 待更

    第三部分 DINOv3(7B):单一冻结视觉骨干网络亦能做好检测和分割

    3.1 引言与DINOv3的提出

    3.1.1 引言

    说起计算机视觉,就绕不开李飞飞及其团队推动的ImageNet和大规模标注数据

    • 可随着数据量的激增以及应用场景不断扩展,标注成本和可获取性成为了制约视觉模型通用性的主要因素
    • 如此,便出来了上面Meta发布的自监督DINO、DINOv2

    然而在实际应用中,自监督学习SSL 的承诺——即通过利用大量无限制的数据来生成任意大且强大的模型——在大规模下依然具有挑战性。尽管 Oquab 等人(2024)提出的启发式方法缓解了模型不稳定性和崩溃的问题,但随着规模的进一步扩大,更多问题随之出现

    1. 首先,如何从无标签数据集中收集有用数据尚不明确
    2. 其次,在常规训练实践中,采用余弦调度意味着需要预先知道优化的周期,这在对大规模图像数据集进行训练时非常困难
    3. 第三,经过初期训练后,特征性能会逐渐下降,这一点通过对 patch 相似性映射的可视化检查得到了证实
      这一现象在更长时间训练、且模型规模大于 ViT-Large(300M 参数)时尤为明显,从而降低了扩展 DINOv2 的实用性

    3.1.2 DINOv3的提出

    针对上述问题,Meta提出了本研究成果 DINOv3,它在大规模自监督学习(SSL)训练方面取得了突破。且展示了一个单一冻结的自监督学习主干网络可以作为通用视觉编码器,在具有挑战性的下游任务中实现了最先进的性能,超越了有监督和依赖元数据的预训练策略

    他们的研究由以下目标驱动:

    1. 训练一个能够跨任务和跨领域通用的基础模型
    2. 改进现有自监督学习模型在密集特征上的不足
    3. 发布一系列可直接使用的模型

    此外,作者通过定义ViT架构的自定义变体,将主模型的规模提升至7B参数

    1. 作者引入了现代位置嵌入(轴向RoPE):RoPE-box jittering,并开发了一种正则化技术,以避免位置伪影
      不同于DINOv2中采用的多重余弦调度策略,作者在训练中对所有超参数采用常数调度,训练迭代次数为100万次
    2. 通过上述技术,能够大规模地按照 DINOv2 算法训练模型。然而,规模化会导致稠密特征的退化
      为了解决这一问题,作者提出在流程中引入Gram anchoring训练阶段作为核心改进
      该阶段能够清除特征图中的噪声,从而生成表现优异的相似性图,并显著提升参数化与非参数化稠密任务的性能

    3.2 Gram锚定(Gram anchoring)目标:“修复”非常退化的局部特征

    为了充分发挥大规模训练的优势,作者计划对7B模型进行更长时间的训练,甚至设想其可以无限期训练。正如预期,延长训练时间能够提升全球基准测试的表现

    然而,随着训练的持续,模型在密集任务上的性能却出现下降,这一现象源于特征表示中出现了patch级别的一致性丧失,进而削弱了长期训练的价值

    下面,首先分析patch级一致性的丧失,然后提出一种新的目标函数以缓解该问题,称为Gram锚定

    3.2.1 训练过程中补丁级一致性的丧失

    在长时间训练过程中,作者观察到全局指标持续提升,但在密集预测任务上的性能却显著下降。这一现象在 DINOv2 的训练中曾在较小程度上出现,Fan 等人(2025)的扩展研究中也有讨论

    然而,目前这一问题尚未得到解决。作者在图 5b 和 5c 中展示了该现象,分别给出了模型在图像分类和分割任务中不同迭代次数下的表现

    如上图所示,(a)余弦相似度的变化,(b)ViT-g 在 ImageNet1k 线性(IN1k)和 VOC 分割任务上的准确率,(c)ViT-7B 的表现。当 patch tokenclass token 之间的余弦相似度较低时,分割任务的性能达到最大。随着训练的进行,这些相似度逐渐增加,而在密集任务上的性能则下降

    • 在分类任务中,使用 CLS token 在 ImageNet-1k 上训练线性分类器,并报告 top-1 准确率
    • 在分割任务中,在 Pascal VOC 提取的patch特征上训练线性层,并报告平均交并比(mIoU)

    作者观察到,无论是 ViT-g 还是 ViT-7B,分类准确率在整个训练过程中都持续提升。然而,在大约 20万次迭代后,分割性能在两种情况下均出现下降,ViT-7B 的分割性能甚至低于早期水平

    为了更好地理解这种退化现象,作者通过可视化patch间余弦相似度来分析patch特征的质量。图6展示了主干网络输出的patch特征与一个patch补丁(以红色高亮显示)之间的余弦相似度图

    在迭代20万次时,相似度图表现得平滑且定位准确,说明patch级表征具有一致性。然而,当迭代达到60万次及以上时,相似度图出现明显退化,越来越多与参考patch无关的patch却表现出较高的相似度。这种patch-level一致性的丧失与密集任务(比如图像分割)性能的下降密切相关

    为了缓解这一问题——针对密集任务性能下降的问题,作者提出了一种专门用于正则化patch特征并确保良好patch级一致性的新目标,同时保持较高的全局性能

    3.2.2 Gram锚定目标

    在作者的实验过程中,作者发现学习强判别特征与保持局部一致性之间相对独立,这在全局与密集性能之间缺乏相关性中得以体现。虽然将全局DINO损失与局部iBOT损失结合在一起已开始解决这一问题,但作者观察到这种平衡并不稳定,随着训练的推进,全局表征逐渐占据主导地位

    基于这一发现,作者提出了一种新颖的解决方案,明确利用这种独立性

    1. 即作者提出了一种新的目标函数,通过强化局部区域一致性的质量来缓解局部区域一致性退化的问题,同时不影响特征本身
      该新的损失函数作用于Gram矩阵:即图像中所有局部区域特征两两点积所形成的矩阵
    2. 作者的目标是使学生网络的Gram矩阵逐步接近早期模型(称为Gram教师)的Gram矩阵
      作者通过选取教师网络的早期迭代版本作为Gram教师,因为其密集特性表现更优
      通过作用于Gram矩阵而非特征本身,局部特征可以自由变化,只要相似性结构保持不变
      _____
      对此,我再解释下,说白了,就是教师上面的密集特征更丰富,所以学生在自由探索的同时,保持patch间的相对相似性
      ___________________
      假设有一幅由P个局部区域组成的图像,以及一个在d维空间中工作的网络
      \mathbf{x}_{S}(对应学生网络)\mathbf{X}_{G}(对应Gram教师)分别表示P \times d\mathbf{L}_{2} \text {-normalized }局部特征矩阵

      作者将损失函数LGram定义如下
      \mathcal{L}_{\text {Gram }}=\left\|\mathbf{X}_{S} \cdot \mathbf{X}_{S}^{\top}-\mathbf{X}_{G} \cdot \mathbf{X}_{G}^{\top}\right\|_{\mathrm{F}}^{2}

      作者仅在全局裁剪(global crops)上计算该损失
      尽管在训练早期即可应用,但为了提高效率,作者选择在经过100万次迭代后才开始应用
      有趣的是,作者观察到,即使\mathcal{L}_{\text {Gram }}在后期才被应用,仍然能够“修复”非常退化的局部特征
    3. 为了进一步提升性能,作者每隔1万次迭代就更新一次Gram教师,此时Gram教师与主EMA教师完全一致
      作者将训练的第二阶段称为细化阶段(refinement step),该阶段优化目标\mathcal{L}_{\mathrm{Ref}}

    \mathcal{L}_{\text {Ref }}=w_{\mathrm{D}} \mathcal{L}_{\text {DINO }}+\mathcal{L}_{\text {iBOT }}+w_{\text {DK }} \mathcal{L}_{\text {DKoleo }}+w_{\text {Gram }} \mathcal{L}_{\text {Gram }}

    作者在图7中可视化了不同损失的演化过程『展示在训练迭代过程中,patch级别的iBOT损失、全局损失DINO(应用于全局裁剪)以及新引入的Gram损失的演化过程。作者特别标出了使用Gram目标进行细化步骤LRef的迭代』,观察到应用Gram目标会显著影响iBOT损失,使其下降得更快

    这表明

    • 从图a可知,由稳定Gram教师引入的稳定性对iBOT目标产生了积极影响
    • 从图b可知
      相比之下,Gram目标对DINO损失影响不大。这一观察结果意味着,Gram和iBOT目标对特征的影响方式相似
    • 从图c可知,DINO损失则以不同的方式影响特征

    关于性能方面,作者观察到新损失函数的影响几乎是立竿见影的。如图8所示

    • 引入Gram锚定后,在前一万次迭代内对密集任务(图像分割)的性能提升显著
    • 在Gram教师更新后,ADE20k基准测试也取得了显著进步
    • 此外,更长时间的训练进一步提升了ObjectNet基准测试的性能,而其他全球性基准测试则显示新损失函数带来轻微影响

    如此,表明:保持patch-level一致性与学习判别性全局特征之间可以有效协调,而在有针对性的正则化下,长时间训练也不再牺牲密集任务表现

    3.2.3 利用高分辨率特征

    // 待更

    评论 8
    添加红包

    请填写红包祝福语或标题

    红包个数最小为10个

    红包金额最低5元

    当前余额3.43前往充值 >
    需支付:10.00
    成就一亿技术人!
    领取后你会自动成为博主和红包主的粉丝 规则
    hope_wisdom
    发出的红包

    打赏作者

    v_JULY_v

    你的鼓励将是我创作的最大动力

    ¥1 ¥2 ¥4 ¥6 ¥10 ¥20
    扫码支付:¥1
    获取中
    扫码支付

    您的余额不足,请更换扫码支付或充值

    打赏作者

    实付
    使用余额支付
    点击重新获取
    扫码支付
    钱包余额 0

    抵扣说明:

    1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
    2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

    余额充值