g
gyccc/timm-caformer_m36.sail_in22k_ft_in1k_384-NPU
模型介绍文件和版本Pull Requests讨论分析

timm/caformer_m36.sail_in22k_ft_in1k_384 on Ascend NPU #NPU

1. 简介

将 timm 库中的 CAFormer-M36 图片分类模型适配为可在单卡昇腾 NPU(Ascend910B)上运行的提交工程。

  • 模型: timm/caformer_m36.sail_in22k_ft_in1k_384
  • 类型: 图片分类(Image Classification)
  • 输入分辨率: 384x384
  • 输出: 1000 类(ImageNet-1K)
  • 参数量: ~36M(Medium CAFormer 变体)
  • 权重来源: ModelScope snapshot_download,通过 timm.create_model(pretrained=False) 加载本地权重
  • 兼容性等级: A(timm 标准模型)

2. 验证环境

项目值
NPUAscend910B (Ascend910_9362)
PyTorch2.x
torch_npu已安装
timm已安装
modelscope已安装
Python3.x

3. 推理运行

cd timm-caformer_m36.sail_in22k_ft_in1k_384-NPU
pip install -r requirements.txt
python inference.py

推理输出示例(随机测试图片):

Top-5 predictions:
  class_975: 0.390609
  class_978: 0.148572
  class_460: 0.106211
  class_976: 0.085261
  class_972: 0.025693

4. 精度验证

python eval_accuracy.py

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

指标数值
max_abs_error0.002898
mean_abs_error0.000497
relative_error0.0517%
cosine_similarity1.000000
threshold1.0%
结果PASS
  • CPU Top-1 与 NPU Top-1 类别一致
  • CPU Top-5 与 NPU Top-5 类别一致

5. 性能参考

指标值
Input1x3x384x384
Avg Latency18.50 ms
Min Latency17.87 ms
Max Latency19.31 ms
P5018.24 ms
P9019.31 ms
P9519.31 ms
Throughput54.05 images/sec
预热次数2
正式迭代10

6. 精度评测

  • Smoke 一致性验证已通过(CPU vs NPU Top-1/Top-5 完全一致)
  • 官方精度评测需使用完整 ImageNet-1K 验证集
  • 本工程仅验证模型可在 NPU 上正确推理并获得合理输出

7. 自验证截图

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

8. 日志文件

文件说明
logs/inference.logNPU 推理日志
logs/accuracy.logCPU vs NPU 精度一致性日志
logs/benchmark.log性能基准测试日志
logs/env_check.logNPU 环境检查日志

9. 注意事项

  • 使用 ModelScope snapshot_download 下载权重,不使用 HuggingFace 直连
  • 使用 timm.create_model(pretrained=False) 创建模型结构,手动加载本地权重
  • 权重文件(.safetensors, .bin)不提交到 Git 仓库
  • 输入分辨率为 384x384(非默认 224x224),使用 timm.data.resolve_model_data_config 自动获取预处理配置
  • CAFormer 是基于 Transformer 的混合架构(CNN + Transformer),Medium 变体参数量约 36M

10. 标签 #NPU

本工程已通过 Ascend NPU 适配验证,可提交。

下载使用量0