m
mxy-yy/vit_small_patch16_dinov3.lvd1689m-npu
模型介绍文件和版本Pull Requests讨论分析
下载使用量0

DINOv3 ViT-small Patch16 LVD1689M Ascend 部署指南

概述

本项目提供 DINOv3 ViT-small (lvd1689m) 模型在华为昇腾 NPU 上的部署方案,基于 PyTorch + torch_npu 实现高性能图像特征提取推理。

模型信息

属性值
模型名称vit_small_patch16_dinov3.lvd1689m
架构Vision Transformer (ViT)
参数量22M
图像尺寸256 x 256
输出特征维度384
池化方式Average (avg)
预训练方法DINOv3
预训练数据LVD-1689M

环境信息

项目版本/内容
设备Ascend 910B

文件结构

vit_small_patch16_dinov3.lvd1689m-ascend/
├── inference.py                   # 推理脚本
└── README.md                       # 本文档

运行推理

精度测试

cd vit_small_patch16_dinov3.lvd1689m-ascend/
python inference.py --precision_test

推理测试

cd vit_small_patch16_dinov3.lvd1689m-ascend/
python inference.py --model_path vit_small_patch16_dinov3.lvd1689m --weight_file model.safetensors

推理参数说明

参数默认值说明
--model_pathvit_small_patch16_dinov3.lvd1689m模型目录
--imageNone图片路径,不提供则使用随机张量
--weight_filepytorch_model.bin权重文件格式
--precision_testFalse运行精度测试

精度测试结果

指标实测值阈值状态
Max Error (sum)6.10e-05< 1e-3PASS
Max Error (mean)2.38e-07< 1e-5PASS
Max Error (std)1.86e-09< 1e-5PASS

性能数据

操作耗时
CPU 参考计算 (20 tensors)0.0356s
NPU 推理 (20 tensors)0.2478s

性能指标

指标值
单图推理时间~5.5s (含编译)
图像尺寸256 x 256
输出特征384 维
吞吐量0.18 images/sec

文件结构

vit_small_patch16_dinov3.lvd1689m-ascend/
├── README.md       # 本文档
├── inference.py    # 推理脚本
└── test.log        # 运行日志

注意事项

  1. 模型首次推理包含编译时间,后续推理更快
  2. 图像预处理使用双线性插值
  3. 精度测试: NPU 与 CPU 误差极小,最大 sum error 为 6.10e-05,远低于阈值 1e-3

参考链接

  • DINOv3 论文
  • 华为昇腾社区