当前位置: 首页 > news >正文

介绍 一下 DINOV2 骨干网络

DINOV2 骨干网络详解

一、基本概况

DINOV2(Distillation with No Labels version 2)是 Meta AI 开发的自监督视觉基础模型,基于Vision Transformer (ViT) 架构,在 1.42 亿张无标注图像上训练,能生成无需微调即可直接用于下游任务的通用视觉特征

二、核心架构

1. 基础结构

  • 输入处理:将图像分割为 14×14 像素的非重叠块 (patch),通过线性投影嵌入
  • 主体:多层 Transformer 编码器,包含多头自注意力和前馈网络
  • 输出:返回类别 token(全局图像表示)和patch tokens(局部特征),可选4 个寄存器 tokens

2. 模型规模

提供四种大小的预训练模型:
模型参数规模嵌入维度头数层数特点
ViT-S/1421M3846-MLP 前馈网络
ViT-B/1486M76812-MLP 前馈网络
ViT-L/14300M10241624MLP 前馈网络
ViT-g/141.1B15362440SwiGLU 前馈网络
注:所有模型 patch size 均为 14,适用于 224×224 及更大尺寸图像(需为 14 的倍数)

三、关键技术创新

1. 寄存器机制 (Registers) - 革命性突破

  • 问题:传统 ViT 会将某些图像块用作 "临时存储器",导致注意力图出现伪影
  • 解决方案:在输入序列中添加4 个专门的可学习寄存器 token(不对应任何图像区域)
  • 作用:作为 "计算中转站",让模型将全局信息存储在专用 tokens 而非图像块中
  • 效果:消除注意力伪影,提升特征质量,增强模型对局部和全局信息的捕捉能力

2. 训练策略创新

(1) 教师 - 学生框架
  • 两个网络:学生网络(参数可学习)和教师网络(学生 EMA 更新,参数缓慢变化)
  • 训练目标:学生网络学习匹配教师网络的输出分布
(2) 双重损失函数
  • DINO 损失:图像级对比,匹配教师和学生的 [CLS] token
  • iBOT 损失:patch 级重建,预测被 mask 的图像块(增强局部理解)
(3) 其他优化
  • Untied 投影头:图像级和 patch 级损失使用独立 MLP 头,提高表示多样性
  • Sinkhorn-Knopp 归一化:稳定训练,增强 batch 多样性
  • KoLeo 熵正则化:鼓励特征空间分布更分散
  • 高效注意力:实现 FlashAttention 和序列打包,减少内存占用,加速训练

3. 数据策略

  • LVD-142M 数据集:精心筛选的 1.42 亿图像,通过去重、聚类确保多样性
  • 自动筛选:使用自监督特征进行相似性检索和 K-means 聚类,避免类别不平衡
  • 去偏处理:减少对西方高收入家庭图像的偏差

四、性能表现

1. 图像分类(ImageNet-1k)

  • ViT-g/14(带寄存器):87.1% top-1 准确率(线性评估,无需微调)
  • 超越 OpenCLIP 等模型,接近弱监督 SOTA

2. 下游任务表现(无需微调)

任务表现备注
深度估计 (NYUv2)RMSE=0.298仅需线性层
语义分割 (ADE20K)mIoU=53.0%接近全监督模型
实例检索 (Oxford-H)mAP=58.2%大幅领先其他自监督模型
细粒度分类与 OpenCLIP 相当或超越Cars、Aircraft 等数据集
注:使用更大模型 (ViT-g) 和寄存器机制效果更佳

五、核心优势

1. 零样本迁移能力

  • 特征可直接用于线性分类器k-NN 检索语义分割等任务,无需微调
  • 节省 90% 以上训练时间,降低部署门槛

2. 特征质量卓越

  • 同时捕获全局语义局部细节,适用于图像和像素级任务
  • 视角变化光照差异遮挡等具有强鲁棒性

3. 模型灵活可扩展

  • 提供多种规模,从小巧的 ViT-S (21M) 到大型的 ViT-g (1.1B)
  • 支持模型蒸馏:小模型可从大模型获取知识,提升性能且减少计算

六、应用场景

1. 计算机视觉基础任务

  • 图像分类:直接使用线性层进行高精度分类
  • 目标检测:结合轻量级检测器,如 YOLO、Mask R-CNN
  • 实例分割:与 Mask2Former 等模型结合,实现像素级精度

2. 行业应用

  • 医疗影像:疾病诊断、器官分割(如 ProtoSAM 框架)
  • 自动驾驶:道路检测、障碍物识别、场景理解
  • 遥感:卫星图像分析、环境监测
  • 工业检测:光伏板故障识别(准确率 98.7%,效率提升 5 倍)

七、使用方式

python
运行
# 使用PyTorch加载预训练模型
import torch

# 加载基础模型
model = torch.hub.load(‘facebookresearch/dinov2’, ‘dinov2_vitb14’)

# 加载带寄存器的模型
model_with_registers = torch.hub.load(‘facebookresearch/dinov2’, ‘dinov2_vitb14_reg’)

# 提取特征
image = torch.randn(1, 3, 224, 224) # 输入图像
with torch.no_grad():
outputs = model(image)
cls_token = outputs[‘cls_token’] # 全局特征 (1, 768)
patch_tokens = outputs[‘patch_tokens’] # 局部特征 (1, 256, 768)

注:模型支持任意大小图像,会自动裁剪至 14 的倍数

八、总结

DINOV2通过自监督学习 + ViT 架构 + 寄存器机制的组合,构建了一个 **"即插即用" 的通用视觉骨干 **,无需标注数据和微调就能在各种视觉任务中表现出色。其技术创新不仅推动了计算机视觉基础研究,也为 AI 应用落地提供了强大工具。
信息来源:Meta AI 论文 "DINOv2: Learning Robust Visual Features without Supervision"(2023) 及官方实现
http://www.dtcms.com/a/594228.html

相关文章:

  • 算法的初步认识
  • 库尔勒网站商城建设广告联盟赚钱app
  • nginx屏蔽指定js文件的访问
  • 无锡网站排名系统如何建设网站子页
  • 网站建设规划建议贸易类公司取名
  • 进程间通信(一)
  • 学做文案的网站企业宣传片制作模板
  • 北流网站建设制作网站在线制作软件
  • 2025 创客匠人全球创始人 IP + AI 万人高峰论坛:教育创业者的破局密钥
  • 目前做网站框架设计软件教程
  • 如何在命令行中运行Dev-C++程序?
  • 哪里有服务好的网站建设wordpress模板导航类
  • 线性代数 - 齐次线性方程组的解 与满秩/降秩的关系
  • 做外贸的网站有哪几个公司网址怎么申请
  • 【图论 有向图 环 传递闭包】P8186 [USACO22FEB] Redistributing Gifts S|普及+
  • Java Map体系集合
  • [InvalidArgumentException] property not exists:app\model\xxxModel->id
  • 大模型AI应用,正在企业级赛道迅猛爆发
  • 网站运营方案设计we建站
  • 网站备案怎么在工信部信息核验网站关键词在线优化
  • MATLAB基于面积和重心预测精度的IOWA算子的模糊变权组合预测模型
  • torch.ones_like(input)功能
  • 蓝牙钥匙 第79次 蓝牙与5G/6G技术融合:构建下一代无线通信新生态
  • 互联网创意网站有哪些方面二建注册成功在哪里查
  • DeepSeek邮件管理全攻略
  • 做外贸网站能用虚拟主机吗怎样用flash做游戏下载网站
  • pc端的移动端网站建设广东中山网站建设 光龙
  • 11.3 QGIS地图图表直方图应用和二次开发实现
  • 使用 LoRA 高效微调 Qwen 模型:从入门到实战
  • 如何做网站的维护和推广专业做网站照片