本项目将 timm/swin_large_patch4_window7_224.ms_in22k_ft_in1k 图片分类模型适配到单卡昇腾 NPU(Ascend910)。
模型类型:timm 标准图片分类模型
输入尺寸:224x224
输出类别数:1000
详细环境信息见 logs/env_check.log。
pip install -r requirements.txt
python inference.py推理脚本使用 modelscope.snapshot_download 下载权重,timm.create_model(pretrained=False) 创建模型结构并加载本地权重,在 npu:0 上执行真实推理。
Top-5 预测结果示例:
python eval_accuracy.pyCPU 与 NPU 推理结果对比:
说明:此为 smoke consistency 检查,非官方 ImageNet 精度评测。
python benchmark.py| 指标 | 数值 |
|---|---|
| Avg | 17.54 ms |
| Min | 17.00 ms |
| Max | 18.03 ms |
| P50 | 17.72 ms |
| P90 | 17.90 ms |
| P95 | 17.96 ms |
| Throughput | 57.00 images/sec |
eval_accuracy.py 对同一输入分别在 CPU 和 NPU 上推理,对比 logits 分布与 Top-K 一致性。结果见 logs/accuracy.log。
见 screenshots/self_verification.png 与 screenshots/self_verification.txt。
logs/env_check.log — 环境检查logs/inference.log — 推理日志logs/accuracy.log — 精度对比日志logs/benchmark.log — 性能基准日志logs/stage0.log — 模型可用性验证日志snapshot_download 自动下载到本地缓存,首次运行需要联网。pretrained=True 触发 HuggingFace 直连下载。#NPU