本项目将 timm 预训练模型 resnet50.tv_in1k 适配到华为昇腾 NPU (Ascend910)。该模型为 ResNet-50 架构,在 ImageNet-1K 上使用 TV(Timm Vision)训练权重。
timm/resnet50.tv_in1k)timm.create_model(pretrained=False) + 本地权重加载| 项目 | 值 |
|---|---|
| NPU | Ascend910 |
| PyTorch | torch + torch_npu |
| timm | 已安装 |
| 输入分辨率 | 224 x 224 |
| 输出维度 | 1000 (ImageNet-1K) |
pip install -r requirements.txt
python inference.py推理结果(NPU):
| 排名 | 类别 | 置信度 |
|---|---|---|
| Top-1 | class_421 | 0.2604 |
| Top-2 | class_975 | 0.1523 |
| Top-3 | class_600 | 0.1306 |
| Top-4 | class_506 | 0.1066 |
| Top-5 | class_536 | 0.0411 |
对单张测试图片进行 CPU 与 NPU 一致性验证:
| 指标 | 数值 |
|---|---|
| max_abs_error | 0.006501 |
| mean_abs_error | 0.001565 |
| relative_error | 0.1029% |
| cosine_similarity | 1.000000 |
| threshold | 1.0% |
| 结果 | PASS |
| 指标 | 数值 |
|---|---|
| 平均延迟 | 5.22 ms |
| 最小延迟 | 5.05 ms |
| 最大延迟 | 5.35 ms |
| P50 | 5.23 ms |
| P90 | 5.32 ms |
| P95 | 5.34 ms |
| 吞吐量 | 191.50 images/sec |
| 输入分辨率 | 224x224 |
本项目包含单图 smoke consistency 验证,非官方 ImageNet 完整验证集评测。详细指标见第 4 节。
见 screenshots/self_verification.png
logs/inference.log — 推理结果logs/accuracy.log — CPU-NPU 精度一致性logs/benchmark.log — 性能基准测试timm.data.resolve_model_data_config 自动生成#NPU