d
dingdang666/webssl-dino300m-full2b-224-NPU
模型介绍文件和版本Pull Requests讨论分析

webssl-dino300m-full2b-224 on Ascend NPU

1. 简介

本文档记录 webssl-dino300m-full2b-224(Web-SSL DINO 300M)在昇腾 NPU(Ascend 910B3)环境的适配部署与精度验证结果。

Web-SSL DINO 300M 是一种基于 Vision Transformer 的视觉特征提取模型(参数量约 304M),使用 DINOv2 自监督方法在 20 亿网络图像上训练,无需语言监督。该模型输出 1024 维 CLS token 特征,适用于图像分类、检索等下游任务。本项目完成该模型在昇腾 NPU 上的推理适配,验证 NPU 与 CPU 推理结果的精度误差 < 1%。

相关地址:

  • 权重下载地址(HuggingFace):https://huggingface.co/facebook/webssl-dino300m-full2b-224
  • 论文:https://arxiv.org/abs/2504.01017
  • 适配代码仓库:https://gitcode.com/dingdang666/webssl-dino300m-full2b-224-NPU

2. 验证环境

组件版本
Python3.11.x
PyTorch2.10.0+cpu
torch_npu2.10.0
transformers5.8.1
safetensors0.7.0
CANN8.5.1
NPU 硬件Ascend 910B3

3. 模型信息

项目值
模型架构ViT (DINOv2-based)
参数量~304M
特征维度1024
Layers40
Attention Heads24
输入尺寸3×224×224
权重格式safetensors
框架PyTorch (transformers)
预训练数据2B MetaCLIP web images
许可证CC-BY-NC-4.0

4. Conda 环境安装

conda create -n webssl-dino300m python=3.11 -y
conda activate webssl-dino300m
pip install torch==2.10.0 torchvision==0.25.0 --index-url https://repo.huaweicloud.com/repository/pypi/simple/
pip install torch_npu==2.10.0 --index-url https://repo.huaweicloud.com/repository/pypi/simple/
pip install transformers safetensors pillow --index-url https://repo.huaweicloud.com/repository/pypi/simple/

5. 推理执行

# NPU
python3 inference.py --model_path /path/to/model --image_path /path/to/img.jpg

# CPU
python3 inference.py --model_path /path/to/model --image_path /path/to/img.jpg --device cpu

# 评测
python3 benchmark.py --model_path /path/to/model

6. 参数说明

脚本参数说明默认值
inference.py--model_path模型路径必需
--image_path图像路径必需
--devicenpu:0 或 cpunpu:0
benchmark.py--model_path模型路径必需
--npu_deviceNPU 设备npu:0
--num_warmup预热轮数3

7. 精度评测结果

输出张量向量级相对误差余弦相似度最大绝对误差平均绝对误差
features0.006683%0.99999982122.58e-046.17e-05
指标实测值阈值状态
向量级相对误差0.0067%< 1%PASS
余弦相似度0.9999998> 0.99PASS

8. 性能数据

操作耗时
CPU 推理时间(FP32)0.81s
NPU 推理时间(FP32,3轮预热后)0.15s
加速比5.43x

9. 注意事项

  1. 使用 Dinov2Model 加载,输出 last_hidden_state 的 CLS token([:, 0])作为特征。
  2. 权重文件不包含在适配仓库中,需从 HuggingFace 下载。
  3. NPU 预热 3 轮消除首次编译开销。
下载使用量0