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

timm/convnext_xlarge.fb_in22k_ft_in1k on Ascend NPU

1. 简介

本工程将 timm/convnext_xlarge.fb_in22k_ft_in1k 图片分类模型适配为可在单卡昇腾 NPU (Ascend910) 上运行的提交工程。

  • 原始模型: timm/convnext_xlarge.fb_in22k_ft_in1k
  • 模型类型: ConvNeXt (ImageNet-1k 分类,1000 类)
  • 参数量: 350,196,968
  • 输入尺寸: 224x224
  • 适配方式: ModelScope snapshot_download 下载权重,timm.create_model(pretrained=False) 创建结构并加载本地权重

2. 验证环境

  • NPU 设备: Ascend910_9362
  • npu-smi 版本: 25.5.2
  • PyTorch NPU: 可用
  • 模型下载: ModelScope 官方仓库

环境详情见 logs/env_check.log。

3. 推理运行

pip install -r requirements.txt
python inference.py

inference.py 使用 model_utils.py 加载模型,通过 timm.data.resolve_model_data_config 自动解析预处理配置,在 npu:0 上执行真实推理。Top-5 预测结果写入 logs/inference.log。

4. 精度验证

python eval_accuracy.py

对单张测试图片进行 CPU 与 NPU 一致性验证:

指标数值
max_abs_error0.014928
mean_abs_error0.003129
relative_error0.6983%
cosine_similarity0.999987
threshold1.0%
结果PASS
  • CPU Top-1 与 NPU Top-1 类别一致
  • CPU Top-5 与 NPU Top-5 类别一致

5. 性能参考

python benchmark.py

单卡 NPU batch_size=1 性能(预热 2 次 + 正式 10 次):

指标数值
Avg latency24.97 ms
Min latency24.93 ms
Max latency25.02 ms
P50 latency24.97 ms
P90 latency25.02 ms
P95 latency25.02 ms
Throughput40.05 images/sec

结果写入 logs/benchmark.log。

6. 精度评测

注:本项目仅提供 smoke 一致性验证。若需官方 ImageNet-1k Top-1/Top-5 精度,请使用标准 eval 脚本在完整验证集上运行。

7. 自验证截图

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

8. 日志文件

  • logs/env_check.log — NPU 环境信息
  • logs/stage0.log — 模型可用性检查
  • logs/inference.log — 推理结果
  • logs/accuracy.log — CPU-NPU 精度一致性
  • logs/benchmark.log — 性能基准测试

9. 注意事项

  1. 权重通过 ModelScope snapshot_download 自动下载到本地缓存,首次运行需要联网。
  2. 严禁使用 timm.create_model(..., pretrained=True) 触发 HuggingFace 直连下载。
  3. 权重文件 (*.bin, *.safetensors, *.pth 等) 已加入 .gitignore,不提交到仓库。
  4. 测试图片 assets/test.jpg 为占位图,实际使用时应替换为真实图片。

10. 标签

#NPU #Ascend #ImageClassification #ConvNeXt #timm