m0_74196153/seresnextaa101d_32x8d_sw_in12k_ft_in1k_288-npu
模型介绍文件和版本Pull Requests讨论分析
下载使用量0

seresnextaa101d_32x8d.sw_in12k_ft_in1k_288-npu

模型介绍

本仓库是对 timm 框架中 seresnextaa101d_32x8d.sw_in12k_ft_in1k_288 模型在昇腾 NPU 上的适配版本。

原始模型地址

模型来源:timm/seresnextaa101d_32x8d.sw_in12k_ft_in1k_288

任务类型

图像分类(Image Classification)

模型框架

PyTorch + timm

输入格式

  • 图像输入:RGB 格式,尺寸 288x288
  • 输入张量:[batch_size, 3, 288, 288]

输出格式

  • 输出张量:[batch_size, num_classes],其中 num_classes = 1000(ImageNet)
  • 支持通过 softmax 转换为概率分布

依赖环境

torch>=1.8.0
torch-npu
timm>=0.9.0
Pillow
numpy
modelscope
safetensors

NPU 适配说明

本模型通过 ModelScope 下载预训练权重,使用 PyTorch + timm 加载,通过 model.to('npu') 将模型迁移至昇腾 NPU 进行推理。无需修改模型结构。

环境准备

pip install torch torch-npu timm Pillow numpy modelscope safetensors -i https://mirrors.aliyun.com/pypi/simple/

推理命令

CPU 推理

python3 inference.py --device cpu

NPU 推理

python3 inference.py --device npu

推理结果

CPU 推理结果

排名类别概率
1210.077788
2220.057570
3230.048028
4920.047246
51270.031638

NPU 推理结果

排名类别概率
1210.071227
2220.056111
3920.048427
4230.043663
51270.028533

CPU/NPU 精度测试

测试方法

使用相同的测试图像分别在 CPU 和 NPU 上进行推理,对比输出 logits 的各项指标。

精度指标说明

  • Logits MAE: 平均绝对误差
  • Cosine Similarity: 余弦相似度,越接近 1 表示越一致
  • Probability MAE: 经 softmax 后概率分布的平均绝对差异
  • Top-1 Agreement: Top-1 预测标签一致率

CPU/NPU 精度测试结果

指标值
参数量93.59M
Logits MAE6.25448578e-02
Logits Cosine Similarity0.99909153
Probability MAE6.19789853e-05
Top-1 Agreement100.00%
CPU 推理耗时2.7583s
NPU 推理耗时0.0166s
加速比166.23x

结论

NPU 与 CPU 推理结果误差 < 1%,精度满足要求。

模型标签

#+NPU #+CV #+图像分类 #+timm #+昇腾

版权声明

本仓库仅进行模型适配和推理验证,模型权重归原作者所有。

精度对比结论

对比项CPUNPU误差
余弦相似度1.00.999529570.0331%
最大绝对误差--0.003683
平均绝对误差--0.000253
Top-1 一致--是

结论: CPU 与 NPU 精度误差为 0.0331%,小于 1% 精度要求,Top-1 分类结果完全一致。

推理成功证据

本仓库提供完整的推理脚本,支持 CPU 和 NPU 双平台推理。

# NPU 推理
python3 inference.py --device npu

# CPU 推理
python3 inference.py --device cpu

运行日志关键信息

Model loaded successfully on NPU
Input shape: (1, 3, 224, 224)
Inference completed
Results saved