将 timm/vit_large_patch16_224.augreg_in21k_ft_in1k(ViT-Large/16,ImageNet-21k 预训练 + ImageNet-1k 微调)适配为可在单卡华为昇腾 NPU(Ascend910B)上运行的提交工程。
timm/vit_large_patch16_224.augreg_in21k_ft_in1k| 项目 | 值 |
|---|---|
| NPU 型号 | Ascend910B |
| PyTorch | 2.x + torch_npu |
| timm | 最新版 |
| modelscope | 最新版 |
| Python | 3.x |
pip install -r requirements.txt
python inference.py推理结果(单张测试图片):
python eval_accuracy.py| 指标 | 结果 |
|---|---|
| CPU-NPU Top-1 match | True |
| CPU-NPU Top-5 overlap | 5/5 |
| Max logit diff | 0.042362 |
| Max prob diff | 0.006905 |
| 对单张测试图片进行 CPU 与 NPU 一致性验证: |
| 指标 | 数值 |
|---|---|
| max_abs_error | 0.042362 |
| mean_abs_error | 0.010147 |
| relative_error | N/A |
| cosine_similarity | N/A |
| threshold | 1.0% |
| 结果 | PASS |
python benchmark.py| 指标 | 结果 |
|---|---|
| 平均延迟 | 10.6 ms |
| 最小延迟 | 10.4 ms |
| 最大延迟 | 10.7 ms |
| P50 | 10.6 ms |
| P90 | 10.6 ms |
| P95 | 10.6 ms |
| 吞吐量 | 94.69 images/sec |
注:以上为单卡单 batch=1 性能,实际部署可结合动态 batch 提升吞吐。
本工程执行 smoke consistency check(CPU vs NPU 一致性对比),非官方精度评测。 Top-1 和 Top-5 在 CPU 与 NPU 上完全一致。
详见 screenshots/self_verification.png 和 screenshots/self_verification.txt。
| 文件 | 说明 |
|---|---|
logs/inference.log | 推理结果日志 |
logs/accuracy.log | 精度对比日志 |
logs/benchmark.log | 性能测试日志 |
logs/env_check.log | 环境检查日志 |
logs/paths.txt | 模型路径记录 |
pretrained=False + 本地权重加载,不依赖 HuggingFace 自动下载#NPU