cv_vit-base_patch16_224.in21k on Ascend NPU
1. 简介
本文档记录 cv_vit-base_patch16_224.in21k (ViT Base, ImageNet-21K) 在昇腾 NPU 上的适配验证结果。
- 模型来源: google/vit-base-patch16-224-in21k
- 架构: ViT Base (patch_size=16, img_size=224)
- 参数量: ~86.6M
- 任务: Image Classification (图像分类, ImageNet-21K, 21843类)
- 适配状态: SUCCESS
- 适配时间: 2026-05-17
2. 验证环境
| 组件 | 版本 |
|---|
torch | 2.9.0 |
torch-npu | 2.9.0.post1 |
timm | 1.0.27 |
CANN | 8.5.1 |
- NPU: Ascend 910B4
- 系统: Linux aarch64
3. 推理脚本
python inference.py --device npu:0 --dtype float32
4. 推理输出证据
模型: cv_vit-base_patch16_224.in21k
设备: npu:0
精度: float32
--- CPU 推理 ---
输出形状: [1, 21843]
Logits 前5个: [-0.09858351 -0.07669611 -0.03989065 0.00952076 -0.01249235]
是否有 NaN: False
预测类别: 18716
--- NPU 推理 (npu:0) ---
输出形状: [1, 21843]
Logits 前5个: [-0.09853349 -0.07666759 -0.04045952 0.01075202 -0.01252813]
是否有 NaN: False
预测类别: 18716
5. 性能参考
6. CPU vs NPU 精度对比
| 指标 | 数值 |
|---|
| Cosine Similarity | 0.999982 |
| Max Abs Error | 0.003616 |
| 精度误差 | < 0.01% |
| 是否满足要求 | 是(< 1%) |
7. 评测材料
| 材料 | 文件 | 说明 |
|---|
| 推理脚本 | inference.py | 独立可运行的 NPU 推理代码 |
8. 注意事项
- 使用 timm 库的
vit_base_patch16_224 模型定义
- 权重从 modelscope 的
google/vit-base-patch16-224-in21k 加载
- 输入: 随机 224x224 RGB 图像
- 输出: 21843 类 ImageNet-21K 分类 logits
贡献者: xujiashuai
参赛赛道: 模型适配赛道
提交时间: 2026-05-17