g
gyccc/facebook-regnet-y-160-NPU
模型介绍文件和版本Pull Requests讨论分析
下载使用量0

timm/regnety_160 on Ascend NPU

1. 简介

本项目将 RegNet Y-160MF 模型适配到华为昇腾 NPU (Ascend910) 上运行。RegNet Y-160MF 是 Facebook 提出的 RegNet 系列中的 Y 变体,使用 Swish (SiLU) 激活函数,160MF 参数量级,适用于 ImageNet 图像分类任务。

原始模型来源:HuggingFace timm/regnety_160.tv2_in1k(与 facebook/regnet-y-0160-sw-in1k 架构相同)。

2. 验证环境

  • 硬件: Ascend910 NPU
  • 操作系统: Linux
  • CANN: cann-8.5.1
  • PyTorch: torch + torch_npu
  • Python: 3.11

详细环境信息见 logs/env_check.log。

3. 推理运行

pip install -r requirements.txt
HF_ENDPOINT=https://hf-mirror.com python inference.py

推理结果 (NPU Top-5):

  • Top-1: class_698 (0.3836)
  • Top-2: class_829 (0.2125)
  • Top-3: class_920 (0.0394)
  • Top-4: class_743 (0.0194)
  • Top-5: class_819 (0.0167)

日志保存在 logs/inference.log。

4. 精度验证

对单张测试图片进行 CPU 与 NPU 一致性验证:

指标数值
max_abs_error0.002305
mean_abs_error0.000378
relative_error0.0599%
cosine_similarity1.000000
threshold1.0%
结果PASS
  • CPU Top-1: class_698
  • NPU Top-1: class_698
  • CPU Top-5: class_698, class_829, class_920, class_743, class_819
  • NPU Top-5: class_698, class_829, class_920, class_743, class_819
  • Top-1 match: True
  • Top-5 match: True

5. 性能参考

指标数值
avg_ms9.40 ms
min_ms9.30 ms
max_ms9.56 ms
p509.39 ms
p909.56 ms
p959.56 ms
images_per_sec106.37 images/sec

详细性能日志见 logs/benchmark.log。

6. 精度评测说明

本项目包含单图 smoke consistency 验证,非官方 ImageNet 完整验证集评测。详细指标见第 4 节。CPU 与 NPU 输出的 cosine_similarity 达到 1.000000,Top-1 和 Top-5 预测完全匹配,relative_error 仅为 0.0599%,远低于 1.0% 的通过阈值。

7. 自验证截图

自验证截图包含 NPU 环境信息、推理结果、精度验证和性能测试摘要,见 screenshots/self_verification.png。

8. 日志文件

  • logs/inference.log - NPU 推理 Top-5 结果
  • logs/accuracy.log - CPU-NPU 精度一致性检查
  • logs/benchmark.log - 性能基准测试
  • logs/env_check.log - 环境检查信息
  • logs/paths.txt - 模型路径信息

9. 注意事项

  • 本项目使用 timm.create_model('regnety_160', pretrained=False) + 本地权重加载
  • 模型权重通过 HuggingFace Hub 下载,不包含在 git 仓库中
  • 需要设置 HF_ENDPOINT=https://hf-mirror.com 以使用国内镜像
  • 禁止将 *.bin, *.safetensors 等权重文件提交到 git 仓库

10. 标签

#NPU #Ascend #Ascend910 #RegNet #ImageClassification