DINOv2:在没有监督的情况下学习强大的视觉特征
学习任务不可知的预训练表示已经成为自然语言处理(NLP)中的标准的。人们可以“按原样”使用这些特征,即,而无需微调,并且在下游任务上实现了明显优于由任务特定模型产生的性能的性能。通过使用诸如语言建模之类的借口目标对大量原始文本进行预训练,已经促进了这种成功(拉德福等人,2017)或字向量(Devlin等人,2019年),不需要监督。在NLP中的这种范式转变之后,我们预计类似的“基础”模型将出现在计算机视觉中(Bommasani等人,2021年)的报告。这些模型应生成在任何任务中开箱即用的视觉特征,无论是在图像级别,图像分类和像素级,例如,细分针对这些基础模型的最有希望的努力集中于文本引导的预训练,即,使用文本监督的形式来指导特征的训练(Joulin等人,2016年; Mahajan等人,2018年;拉德福等人,
其提炼成一系列更小的模型,这些模型超过了最好的通用功能OpenCLIP(Ilharco等人,2021)在图像和像素级别的大多数基准测试中。
chatGPT对本文的总结:
这篇文章介绍了一种名为 DINOv2 的计算机视觉模型训练方法,旨在通过自监督学习(无需人工标注)来构建强大的通用视觉特征模型。这种方法可以在各种视觉任务(如图像分类、目标检测、分割等)中直接使用,无需进一步微调。以下是文章的核心内容与亮点:
背景与问题
- NLP的成功启发了视觉领域:自然语言处理(NLP)通过大规模数据的预训练模型(如BERT、GPT)已经实现了显著进展,而计算机视觉领域也希望能开发类似的“基础视觉模型”。
- 现有方法的局限性:
- 依赖文本指导的预训练(如CLIP):需要图文对齐数据,但文本描述的信息有限,尤其是复杂的像素级信息。
- 自监督学习的挑战:当前的自监督方法大多依赖小规模的人工标注数据集(如ImageNet-1k),难以扩展到大规模数据,同时在无标注数据上性能下降。
核心工作
DINOv2 的目标是通过改进自监督学习方法,训练出一种能直接在多种任务中应用的通用视觉特征模型。
主要贡献
-
高质量数据集的构建:
- 开发了一种自动数据处理流水线,从未标注的图像中筛选并构建出一个高质量、多样化的图像数据集(LVD-142M,包含1.42亿张图像)。
- 通过视觉相似性(而非文本、元数据)进行数据去重和样本平衡,解决了低质量数据导致特征退化的问题。
-
改进的自监督学习方法:
- 结合了多种现有的自监督方法(如DINO和iBOT)并优化:
- 图像级目标:利用跨图像的对比学习(teacher-student模型)。
- 像素级目标:通过遮挡部分图像补全特征。
- 新的正则化方法:如Sinkhorn-Knopp归一化和KoLeo正则化,增强特征分布的均匀性。
- 引入高分辨率训练阶段,提升模型捕捉小目标的能力。
- 结合了多种现有的自监督方法(如DINO和iBOT)并优化:
-
大规模模型的高效训练:
- 开发了高效的训练方法,使得DINOv2在大数据和大模型上训练更快、更稳定:
- 基于FlashAttention的高效注意力机制:减少显存占用和计算开销。
- 序列打包(Sequence Packing):合并不同分辨率的图像序列,提升训练效率。
- 全分片数据并行(FSDP):优化分布式训练,显著降低显存需求。
- 开发了高效的训练方法,使得DINOv2在大数据和大模型上训练更快、更稳定:
-
模型蒸馏(Distillation):
- 从大型模型(如ViT-g/14,具有11亿参数)蒸馏出小型模型,保留大模型的特性,同时降低推理成本。
实验与结果
-
数据集对比:
- 使用LVD-142M数据集训练的模型在多个任务上明显优于传统的ImageNet-22k数据集,尤其是在多样化的下游任务(如细粒度分类、场景分类、视频分析等)中表现更好。
-
模型性能:
- DINOv2 在多个基准任务上(如ImageNet分类、ADE20K分割、细粒度分类、目标检索等)超越了现有的自监督方法(如iBOT)和弱监督方法(如OpenCLIP),接近或超过监督学习性能。
-
扩展性:
- 实验证明,随着模型规模和数据规模的增加,性能持续提升,验证了自监督学习在大规模预训练中的潜力。
结论
文章表明,通过构建高质量的图像数据集和改进的自监督学习方法,DINOv2 实现了高效的通用视觉特征学习,并且在多个任务中表现出色。DINOv2 的特点是:
- 无需人工标注或文本指导,完全依赖图像数据。
- 可扩展到大规模模型和数据,性能优于现有方法。
- 输出的特征可以直接应用于多种任务,而无需微调。
该工作为开发真正通用的视觉基础模型提供了重要的思路和实践。
总结来说,这篇文章的核心是通过改进自监督学习和数据处理,成功训练出了一个高效、强大的通用视觉模型 DINOv2,在多个视觉任务中达到了新的高度。
Motivation
近年来,一种称为图像-文本预训练的不同技术已成为许多计算机视觉任务的标准方法。但是,由于该方法依赖于手写字幕来学习图像的语义内容,因此它**会忽略这些文本描述中通常未明确提及的重要信息。**例如,一个巨大的紫色房间里的椅子图片的标题可能显示为“single oak chair”。然而,标题遗漏了有关背景的重要信息,例如椅子在紫色房间中的空间位置。因此,我们认为基于字幕的功能缺乏对本地信息的正确理解,并可能导致需要详细本地化信息的下游任务性能不佳。因为 DINOv2 是基于自我监督学习的,所以我们不依赖文本描述来避免这个问题。反过来,再加上强大的执行力,DINOv2 能够为单眼深度估计提供最先进的结果。对于上下文,单目深度估计是一项任务,其目标是预测哪些对象在前景中,哪些对象在背景中。
一般来说,对图像的人工注释需求是一个瓶颈,因为它限制了可用于训练模型的数据量。在专门的应用领域中,图像很难甚至不可能标记。例如,在标记的细胞成像上训练机器学习模型是具有挑战性的,因为可以注释细胞的专家数量有限,而且肯定不会达到所需的规模。然而,对微观细胞图像进行自我监督训练为基础细胞图像模型开辟了道路,从而为生物发现开辟了道路,例如,可以将已知治疗方法与新疗法进行比较。同样的故事也适用于动物密度和丰度的估计,从而可以确定生物多样性下降的根源和保护工作的有效性。这两个例子都是基于原始开源的 DINO 算法,我们希望 DINOv2 可以改进这样的工作线。DINOv2 的训练稳定性和可扩展性将推动应用领域的进一步发展。一个已经在进行中的应用是我们与上述世界资源研究所的森林测绘合作。
我们的发布正值通过匹配数据增强来训练特征的联合嵌入模型的性能趋于平稳之际。具体来说,ImageNet 的评估性能在 2019 年至 2021 年期间波动了 10%,此后波动幅度不大(自 2021 年以来波动了 +1%)。社区更专注于开发替代方案,例如遮罩图像建模,这限制了该领域的进展。此外,除其他 SSL 方法外,DINO 类模型很难在 ImageNet 的经典范围之外进行训练,从而限制了它们在研究中的采用。
从 DINO 到 DINOv2 的进展需要克服几个挑战:创建一个大型的精选训练数据集,改进训练算法和实现,以及设计一个功能性蒸馏管道。
————————————————
本文主要介绍了一些技术上的创新,以充分挖掘自监督学习的潜力。其中,包括自动化数据管道用于获取更好的数据集,以及训练包含 10 亿个可调参数的 ViT 模型,并通过无监督蒸馏方法,将其压缩成一系列能够应用于不同任务的小模型。这些技术可以让计算机视觉领域变得更加高效、精准,并且更好理解。