weixin_72661020/convnextv2-nano-1k-224
模型介绍文件和版本Pull Requests讨论分析

ConvNextV2-Nano-1k-224 昇腾 NPU 部署指南

简介

ConvNextV2-Nano 是 ConvNextV2 系列轻量级图像分类模型,输入 3x224x224,基于 ImageNet-1k 数据集训练。适用于图像分类、视觉特征提取等任务。

验证环境

项目版本
硬件Atlas 800 A2
CANN8.5.RC1
PyTorch2.5.1
torch_npu2.5.1
Python3.10

推理

使用 transformers 库加载模型进行推理:

import torch
from transformers import AutoImageProcessor, ConvNextV2ForImageClassification
from PIL import Image

device = torch.device("npu:0" if torch.npu.is_available() else "cpu")
model_path = "facebook/convnextv2-nano-1k-224"

processor = AutoImageProcessor.from_pretrained(model_path)
model = ConvNextV2ForImageClassification.from_pretrained(model_path).to(device)
model.eval()

image = Image.open("test.jpg").convert("RGB")
inputs = processor(images=image, return_tensors="pt")
inputs = {k: v.to(device) for k, v in inputs.items()}

with torch.no_grad():
    outputs = model(**inputs)

logits = outputs.logits
predicted = logits.argmax(-1).item()
print(f"预测类别: {predicted}")

性能参考

指标数值
平均推理时间5.29 ms
输入尺寸3x224x224
测试平台Atlas 800 A2
Batch Size1

精度评测

Ascend NPU 精度评测

NPU vs CPU 精度对比(CPU 为基线,NPU 为验证目标):

指标数值
测试用例数4
最大 logits 差异0.071636
Top-1 一致性4/4
平均 KL 散度0.000051
精度要求Top-1 100% + KL 散度 < 0.01
精度结论一致 (PASS)

精度评测源代码和日志详见 eval/ 目录。

注意事项

  1. 必须使用 PyTorch 权重(从 facebook/ 命名空间下载)
  2. Xenova/ 命名空间为 ONNX 格式,不兼容 PyTorch 推理
  3. 使用 torch.npu 将模型迁移到 NPU 设备
下载使用量0