timm/tf_efficientnetv2_s.in21k_ft_in1k on Ascend NPU
#NPU
1. 简介
本项目将 timm/tf_efficientnetv2_s.in21k_ft_in1k 模型适配为可在单卡昇腾 NPU(Ascend910)上运行的推理工程。
- 模型名称: EfficientNetV2-S (ImageNet-21k 预训练 + ImageNet-1k 微调)
- 来源: ModelScope
- 输入尺寸: 300x300 RGB
- 类别数: 1000
2. 验证环境
- NPU 设备: Ascend910_9362
- torch: 支持版本
- torch_npu: 已安装并可用
- modelscope: 已安装
3. 推理运行
pip install -r requirements.txt
python inference.py
推理结果 (NPU Top-5):
- Top-1: class_972 (0.6423)
- Top-2: class_979 (0.1736)
- Top-3: class_970 (0.0312)
- Top-4: class_976 (0.0090)
- Top-5: class_888 (0.0043)
日志保存在 logs/inference.log。
4. 精度验证
对单张测试图片进行 CPU 与 NPU 一致性验证:
| 指标 | 数值 |
|---|
| max_abs_error | 0.003197 |
| mean_abs_error | 0.000653 |
| relative_error | 0.0999% |
| cosine_similarity | 1.000000 |
| threshold | 1.0% |
| 结果 | PASS |
- CPU Top-1 与 NPU Top-1 类别一致
- CPU Top-5 与 NPU Top-5 类别一致
5. 性能参考
单卡 Ascend910 NPU 性能测试结果:
- 平均延迟: 15.02 ms
- 最小延迟: 14.49 ms
- 最大延迟: 15.34 ms
- 吞吐量: 66.56 images/sec
6. 精度评测
Top-5 预测结果(测试图):
- class_972: 64.23%
- class_979: 17.36%
- class_970: 3.12%
- class_976: 0.90%
- class_888: 0.43%
7. 自验证截图
见 screenshots/ 目录。
8. 日志文件
logs/env_check.log - 环境检查日志
logs/inference.log - 推理日志
logs/accuracy.log - 精度验证日志
logs/benchmark.log - 性能基准测试日志
9. 注意事项
- 本项目不包含模型权重文件,权重通过 ModelScope snapshot_download 自动下载
- 首次运行时会自动下载权重到本地缓存
- 推理使用
timm.create_model(pretrained=False) + 本地权重加载方式
- 不支持 HuggingFace 直连下载
10. 标签 #NPU
本项目适配华为昇腾 NPU 平台,使用 torch_npu 进行推理加速。