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

timm/darknet53.c2ns_in1k on Ascend NPU

1. 简介

本项目将 timm/darknet53.c2ns_in1k 图片分类模型适配到华为昇腾 NPU (Ascend910) 上运行。

  • 模型来源:ModelScope (timm/darknet53.c2ns_in1k)
  • 模型类型:图片分类 (Image Classification)
  • 输入尺寸:256x256
  • 输出类别:1000 (ImageNet-1k)
  • 适配方式:ModelScope snapshot_download 下载权重,timm.create_model(pretrained=False) 创建结构并加载本地权重

2. 验证环境

  • NPU: Ascend910_9362
  • npu-smi: 25.5.2
  • Python: 3.11
  • PyTorch + torch_npu

3. 推理运行

pip install -r requirements.txt
python inference.py

推理结果 (NPU Top-5):

  • Top-1: class_974 (0.3731)
  • Top-2: class_975 (0.0501)
  • Top-3: class_657 (0.0468)
  • Top-4: class_980 (0.0432)
  • Top-5: class_472 (0.0248)

日志保存在 logs/inference.log。

4. 精度验证

python eval_accuracy.py

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

  • Top-1 class: class_974
  • Top-1 prob: 0.373068
  • Top-5: class_974 (0.373068), class_975 (0.050091), class_657 (0.046759), class_980 (0.043193), class_472 (0.024766) 对单张测试图片进行 CPU 与 NPU 一致性验证:
指标数值
max_abs_error0.004714
mean_abs_error0.000763
relative_error0.0812%
cosine_similarity1.000000
threshold1.0%
结果PASS

5. 性能参考

python benchmark.py
指标数值
Avg latency7.83 ms
Min latency6.57 ms
Max latency18.28 ms
P50 latency6.67 ms
P90 latency18.28 ms
Throughput127.64 images/sec

6. 精度评测

本项目未在完整 ImageNet-1k 验证集上运行正式精度评测,仅提供单图 smoke 一致性验证。如需完整精度,请在 ImageNet-1k 上运行 timm 官方验证流程。

7. 自验证截图

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

8. 日志文件

  • logs/env_check.log — NPU 环境信息
  • logs/inference.log — 推理输出日志
  • logs/accuracy.log — CPU-NPU 一致性对比
  • logs/benchmark.log — 性能基准测试结果

9. 注意事项

  • 严禁使用 timm.create_model(..., pretrained=True),避免 HuggingFace 直连下载
  • 权重文件(*.safetensors, *.bin, *.pth 等)未提交到仓库,运行时自动从 ModelScope 下载
  • 本工程使用 model_utils.py 统一封装模型加载逻辑,避免各脚本重复实现

10. 标签

#NPU #Ascend #timm #ImageClassification