e
gcw_GSiqzzLf/maxvit-xlarge-tf-224-in21k-npu
模型介绍文件和版本Pull Requests讨论分析

maxvit_xlarge_tf_224.in21k 昇腾 NPU 适配

模型介绍

maxvit_xlarge_tf_224.in21k 是基于 timm (PyTorch Image Models) 的图像分类模型,采用 MaxViT (Multi-Axis Vision Transformer) 架构。

  • 模型名称: maxvit_xlarge_tf_224.in21k
  • 描述: MaxViT XLarge 224 IN21K
  • 任务类型: 图像分类
  • 模型框架: PyTorch + timm
  • 输入格式: RGB 图像 (224x224)
  • 输出格式: 1000/21841 类分类概率
  • 原始模型地址: timm/maxvit_xlarge_tf_224.in21k
  • ModelScope 地址: timm/maxvit_xlarge_tf_224.in21k

环境要求

  • 操作系统: Linux (aarch64)
  • NPU: Ascend910 (64GB HBM)
  • CANN: 8.5.1
  • Python: 3.11.14
  • PyTorch: 2.9.0
  • torch_npu: 2.9.0.post1
  • timm: 1.0.27

NPU 适配说明

MaxViT 是一种混合架构,结合了卷积和注意力机制。该模型通过 timm 库加载预训练权重,可在昇腾 Ascend910 NPU 上直接运行。

快速开始

安装依赖

pip install torch torch_npu timm Pillow numpy safetensors

使用清华镜像:

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple torch torch_npu timm Pillow numpy safetensors

下载模型

from modelscope.hub.snapshot_download import snapshot_download
model_dir = snapshot_download('timm/maxvit_xlarge_tf_224.in21k')

运行推理

# CPU
python3 inference.py --device cpu
# NPU
python3 inference.py --device npu

精度对比

python3 compare_cpu_npu.py

推理结果

NPU 推理输出

推理截图

CPU 与 NPU 对比

指标值
CPU Top-1834
NPU Top-1834
Top-1 匹配是
Top-5 重叠5/5
余弦相似度1.00000000
最大概率差异0.000365%
Top-1 概率相对误差0.029416%
CPU 耗时4.5394s
NPU 耗时0.2741s
加速比16.56x

Top-5 概率对比

类别CPU 概率NPU 概率差异
8250.0086520.0086550.00000365
8310.0081150.0081170.00000208
8340.0103690.0103720.00000305
14690.0093260.0093280.00000206
14700.0086160.0086180.00000190

精度测试结论

NPU与CPU推理结果误差为0.0004%,符合精度误差小于1%的要求

NPU与CPU推理结果误差为0.0004%,符合精度误差小于1%的要求

推理成功证据

以下日志展示了 NPU 推理成功的关键信息:

Top-1 Match: MATCH (CPU=834, NPU=834)
Top-5 Overlap: 5/5
--- Top-5 Probabilities ---

模型标签

#+NPU #+CV #+图像分类 #+昇腾 #+Ascend910 #+timm #+MaxViT #+PyTorch

下载使用量0