v
v50_/timm-vit_base_patch16_224.augreg_in1k-NPU
模型介绍文件和版本Pull Requests讨论分析
下载使用量0

timm/vit_base_patch16_224.augreg_in1k on Ascend NPU

1. 简介

本项目将 timm/vit_base_patch16_224.augreg_in1k 适配至华为昇腾 NPU(Ascend910),实现单卡推理、精度一致性验证与性能基准测试。

  • 模型来源:ModelScope timm/vit_base_patch16_224.augreg_in1k
  • 框架:timm
  • 权重加载:timm.create_model(pretrained=False) + ModelScope snapshot_download 本地权重加载
  • 输入尺寸:224x224
  • 输出维度:1000 类 ImageNet 分类 logits

2. 验证环境

项目版本/型号
NPUAscend910
npu-smi25.5.2
PyTorch2.9.0+cpu
torch_npuavailable
timmlatest

3. 推理运行

pip install -r requirements.txt
python inference.py

NPU 推理结果(单张测试图):

项目数值
Input shape[1, 3, 224, 224]
Output shape[1, 1000]
Top-1class_21 (0.203968)
Top-2class_22 (0.121386)
Top-3class_128 (0.109912)
Top-4class_23 (0.099468)
Top-5class_127 (0.059127)

4. 精度验证

对单张测试图片进行 CPU 与 NPU 一致性验证:

指标数值
max_abs_error0.013841
mean_abs_error0.002110
relative_error0.2032%
cosine_similarity0.999998
threshold1.0%
结果PASS
  • CPU Top-1: class_21
  • NPU Top-1: class_21
  • CPU Top-5: class_21, class_22, class_128, class_23, class_127
  • NPU Top-5: class_21, class_22, class_128, class_23, class_127
  • Top-1 match: True
  • Top-5 match: True

5. 性能参考

python benchmark.py
指标数值
avg latency5.282 ms
min latency5.220 ms
max latency5.372 ms
p50 latency5.265 ms
p90 latency5.372 ms
p95 latency5.372 ms
Throughput189.30 images/sec

6. 精度评测说明

本项目包含单图 smoke consistency 验证,非官方 ImageNet 完整验证集评测。详细指标见第 4 节。

7. 自验证截图

见 screenshots/self_verification.png 与 screenshots/self_verification.txt。

8. 日志文件

日志说明
logs/env_check.logNPU 环境检查
logs/inference.logNPU 推理结果
logs/accuracy.logCPU-NPU 精度一致性
logs/benchmark.log性能基准测试

9. 注意事项

  1. 权重通过 ModelScope snapshot_download 下载,运行时自动缓存到本地,无需手动放置。
  2. 严禁使用 timm.create_model(..., pretrained=True) 进行 HuggingFace 自动下载。
  3. 请勿将 *.bin, *.safetensors, *.pth, *.pt, *.ckpt, *.onnx 等权重文件提交到仓库。
  4. 首次运行会触发 ModelScope 下载,耗时取决于网络速度。

10. 标签

#NPU #Ascend #Ascend910 #timm #ViT #ImageNet