Skip to main content
您可以在 Dragonwing 设备的 NPU 上加速运行 PyTorch 模型,实现快速高效的机器学习推理。

量化并转换模型

PyTorch 模型的权重和激活值使用 32 位浮点数。而开发板上的 NPU 仅支持 8 位整数,因此必须对 PyTorch 模型进行_量化_ — 将浮点值转换为定点值。这会使模型更小、运行更快(并能够在 NPU 上运行),但会对精度产生一定影响。 在开发板上打开终端,或通过 SSH 连接到开发板,然后按照以下步骤操作:
  1. 创建一个新的 venv,并安装 ONNX Runtime 以及示例所使用的 Python 软件包:
  1. 以下是运行 torchvision 中 SqueezeNet-1.1 的端到端示例。将此文件保存为 inference_pytorch_onnx.py:
  1. 在 CPU 上运行模型:
  1. 在 NPU 上运行模型:

技巧与窍门

禁用 CPU 回退

在调试时,您可能希望通过以下方式禁用回退到 CPU:

构建新版本的 onnxruntime 软件包

参见:edgeimpulse/onnxruntime-qnn-linux-aarch64