g
gyccc/timm-vit_large_patch16_224.augreg_in21k_ft_in1k-NPU
模型介绍文件和版本Pull Requests讨论分析
下载使用量0

timm/vit_large_patch16_224.augreg_in21k_ft_in1k on Ascend NPU

1. 简介

将 timm/vit_large_patch16_224.augreg_in21k_ft_in1k(ViT-Large/16,ImageNet-21k 预训练 + ImageNet-1k 微调)适配为可在单卡华为昇腾 NPU(Ascend910B)上运行的提交工程。

  • 模型来源:ModelScope timm/vit_large_patch16_224.augreg_in21k_ft_in1k
  • 模型架构:Vision Transformer Large(ViT-L/16),304.3M 参数
  • 输入尺寸:224x224 RGB
  • 输出类别数:1000(ImageNet-1k)
  • 权重格式:safetensors

2. 验证环境

项目值
NPU 型号Ascend910B
PyTorch2.x + torch_npu
timm最新版
modelscope最新版
Python3.x

3. 推理运行

pip install -r requirements.txt
python inference.py

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

  • Top-1 class: class_979
  • Top-1 prob: 0.6689
  • Top-5: class_979 (0.6689), class_970 (0.1847), class_972 (0.0179), class_888 (0.0143), class_671 (0.0105)

4. Smoke 验证

python eval_accuracy.py
指标结果
CPU-NPU Top-1 matchTrue
CPU-NPU Top-5 overlap5/5
Max logit diff0.042362
Max prob diff0.006905
对单张测试图片进行 CPU 与 NPU 一致性验证:
指标数值
max_abs_error0.042362
mean_abs_error0.010147
relative_errorN/A
cosine_similarityN/A
threshold1.0%
结果PASS

5. 性能参考

python benchmark.py
指标结果
平均延迟10.6 ms
最小延迟10.4 ms
最大延迟10.7 ms
P5010.6 ms
P9010.6 ms
P9510.6 ms
吞吐量94.69 images/sec

注:以上为单卡单 batch=1 性能,实际部署可结合动态 batch 提升吞吐。

6. 精度评测

本工程执行 smoke consistency check(CPU vs NPU 一致性对比),非官方精度评测。 Top-1 和 Top-5 在 CPU 与 NPU 上完全一致。

7. 自验证截图

详见 screenshots/self_verification.png 和 screenshots/self_verification.txt。

8. 日志文件

文件说明
logs/inference.log推理结果日志
logs/accuracy.log精度对比日志
logs/benchmark.log性能测试日志
logs/env_check.log环境检查日志
logs/paths.txt模型路径记录

9. 注意事项

  • 权重文件(*.safetensors, *.bin)已通过 .gitignore 排除,不会提交到仓库
  • 本模型为 ViT-Large(304M 参数),加载和推理需要约 2.3GB 显存
  • 使用 pretrained=False + 本地权重加载,不依赖 HuggingFace 自动下载
  • CPU-NPU 精度差异在 ViT 级别浮点精度范围内(max logit diff 0.04)

#NPU