【TVM 教程】开发环境中加入 microTVM
💡
原文中文,约9300字,阅读约需23分钟。
📝
内容提要
本文介绍如何将microTVM编译的Visual Wake Word模型集成到STM32CubeIDE中,步骤包括导入模型、编译生成MLF文件、添加样本图像,并在IDE中创建项目以运行模型。
🎯
关键要点
- Apache TVM 是一个深度学习编译框架,适用于多种硬件平台。
- 本教程介绍如何将 microTVM 编译的模型集成到 STM32CubeIDE 中。
- 使用 MLPerf Tiny 的 Visual Wake Word 模型和 nucleo_l4r5zi 开发板进行示例。
- 步骤包括导入模型、编译生成 MLF 文件、添加样本图像。
- 安装 microTVM 所需的 Python 依赖项,包括 pyserial、tflite 和 Pillow。
- 导入 Visual Wake Word TFLite 模型,并定义输入形状。
- 生成模型库格式文件,定义目标、运行时和执行器。
- 将样本图像添加到 MLF 文件中,以便于模型评估。
- 在 STM32CubeIDE 中创建项目,配置外设和生成初始化代码。
- 将编译后的模型集成到生成的项目中,包含必要的头文件和源文件。
- 在主函数中设置模型的输入和输出,并运行推理。
- 优化项目设置以提高编译效率,并运行项目以查看推理结果。
❓
延伸问答
如何在 STM32CubeIDE 中集成 microTVM 编译的模型?
首先导入模型,使用 TVM 编译生成 MLF 文件,添加样本图像,然后在 STM32CubeIDE 中创建项目并配置外设,最后将编译后的模型集成到项目中。
安装 microTVM 需要哪些 Python 依赖项?
需要安装 pyserial、tflite 和 Pillow,命令为:pip install pyserial==3.5 tflite==2.1 Pillow==9.0 typing_extensions。
Visual Wake Word 模型的输入形状是什么?
Visual Wake Word 模型的输入形状为 (1, 96, 96, 3),即一个 96x96 像素的 RGB 图像。
如何生成模型库格式文件?
定义目标、运行时和执行器后,使用 TVM 编译模型并导出生成的代码和依赖项到一个 tar 文件中。
在 STM32CubeIDE 中创建项目的步骤是什么?
选择 File -> New -> STM32Project,输入项目名称,选择目标板,初始化所有外设,然后生成项目。
如何在项目中包含 CMSIS-NN 源文件?
从 CMSIS-NN 存储库下载或克隆文件,并按照项目设置步骤将 CMSIS-NN 文件夹包含在项目中。
🏷️
标签
➡️