tf_mixnet_l.in1k 是 MixNet(Mixed Depthwise Convolutional Kernels)系列的最大规模变体,由 Google Research 提出。MixNet 通过混合不同大小的深度可分离卷积核(如 3x3、5x5、7x7)来优化卷积神经网络的精度和效率平衡。tf_mixnet_l 是 MixNet 的 Large 版本,拥有系列中最高的模型容量和最强的表示能力,在 ImageNet-1K 上预训练。
原始模型地址:
图像分类(Image Classification)
tf_mixnet_l(MixNet Large)| 项目 | 说明 |
|---|---|
| 输入尺寸 | (1, 3, 224, 224) — 批量大小 1,RGB 3 通道,224×224 像素 |
| 输入格式 | 经过归一化的 RGB 图像张量(mean=[0.485,0.456,0.406], std=[0.229,0.224,0.225]) |
| 输出尺寸 | (1, 1000) — 批量大小 1,1000 类 ImageNet 分类 logits |
| 输出格式 | 未归一化的分类分数(logits),通过 Softmax 可转换为概率 |
| 组件 | 版本 |
|---|---|
| Python | 3.11.14 |
| PyTorch | 2.9.0 |
| torch_npu | 2.9.0.post1 |
| timm | ≥0.9.0 |
| Pillow | ≥9.0.0 |
| safetensors | ≥0.3.0 |
| 昇腾 CANN | 8.5.1 |
| NPU | Ascend910 |
本模型为纯 PyTorch 图像分类模型,通过 timm 框架加载预训练权重,可直接在昇腾 NPU 上运行。适配要点与系列内其他模型一致:
timm.create_model() 创建模型架构,从 ModelScope 下载的 safetensors 权重文件加载参数。.to('npu:0') 将模型参数和输入张量迁移至 NPU。torch.no_grad() 上下文关闭梯度计算。# 安装依赖
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple timm torch torch_npu pillow safetensors
# 检查 NPU 环境
python3 -c "import torch; print(torch.npu.is_available())"python3 inference.py \
--model tf_mixnet_l.in1k \
--checkpoint-dir /path/to/model/dir \
--device cpupython3 inference.py \
--model tf_mixnet_l.in1k \
--checkpoint-dir /path/to/model/dir \
--device npupython3 compare_cpu_npu.py| 排名 | 类别 ID | 概率 |
|---|---|---|
| 1 | 852 | 0.032102 |
| 2 | 971 | 0.028115 |
| 3 | 911 | 0.025092 |
| 4 | 539 | 0.021834 |
| 5 | 574 | 0.018821 |
CPU 推理耗时:0.0783s
| 排名 | 类别 ID | 概率 |
|---|---|---|
| 1 | 852 | 0.032101 |
| 2 | 971 | 0.028114 |
| 3 | 911 | 0.025091 |
| 4 | 539 | 0.021833 |
| 5 | 574 | 0.018820 |
NPU 推理耗时:0.0142s
| 指标 | CPU | NPU | 加速比 |
|---|---|---|---|
| 推理耗时 | 0.0783s | 0.0142s | 5.51x |
| 指标 | 数值 |
|---|---|
| 最大绝对误差(Max Absolute Error) | 0.00207204 |
| 平均绝对误差(Mean Absolute Error) | 0.00042590 |
| 均方误差(MSE) | 0.00000030 |
| MAE/Mean(|CPU|) 比率 | 0.053% |
| 余弦相似度(Cosine Similarity) | 0.99999994 |
| Top-1 分类一致性 | 一致 |
| Top-5 分类一致性 | 一致 |
| 最大概率差异 | 0.00001955 |
| 平均概率差异 | 0.00000049 |
NPU 与 CPU 推理结果误差为 0.053%,远低于 1% 的阈值。Top-1 和 Top-5 分类结果完全一致,余弦相似度为 0.99999994,表明 NPU 推理精度完全符合要求。

import torch
import torch_npu
from timm import create_model
from safetensors.torch import load_file
# 加载模型
model = create_model('tf_mixnet_l.in1k', pretrained=False)
state_dict = load_file('path/to/model.safetensors')
model.load_state_dict(state_dict)
model = model.to('npu:0')
model.eval()
# 推理
with torch.no_grad():
input_tensor = torch.randn(1, 3, 224, 224).to('npu:0')
output = model(input_tensor)
probs = torch.nn.functional.softmax(output[0], dim=0)
top5 = probs.topk(5)
print(top5)from modelscope import snapshot_download
model_path = snapshot_download('timm/tf_mixnet_l.in1k')#+NPU — 适配昇腾 NPU#+CV — 计算机视觉#+图像分类 — 图像分类任务#+昇腾 — 华为昇腾平台#+MixNet — MixNet 架构#+timm — timm 模型库本模型仓库由 model-agent 自动生成,用于昇腾 NPU 适配验证。