【先楫HPM5361】评测: TinyML实验(4)
[复制链接]
【先楫HPM5361】评测: TinyML实验(4)
1、TinyMaix
TinyMaix是一款专为微控制器设计的轻量级开源机器学习库,由矽速科技(Sipeed)开发。它特别优秀的是,它可以在 Arduino UNO 开发板及其克隆板中的 Microchip ATmega328 MCU 上运行。
TinyMaix的核心代码不超过400行,因此它的设计之初衷是帮助新手理解TinyML的运作原理。它的代码足够简单,可以在30分钟内阅读完毕。此外,TinyMaix被认为是专为低资源设备设计的AI神经网络推理框架,通常被称为 TinyML。
TinyMaix支持多种神经网络模型,包括卷积神经网络(CNN)等。此外,TinyMaix还提供了一些实用工具,如数据预处理、模型评估和可视化等。
TinyMaix具有以下特点:
- 超轻量级:核心代码不超过400行。
- 专为低资源设备设计:可以在Arduino UNO开发板及其克隆板中的Microchip ATmega328 MCU上运行。
- 支持多种神经网络模型:包括卷积神经网络(CNN)、循环神经网络(RNN)和全连接神经网络(FCN)。
- 支持多种训练方法:包括随机梯度下降(SGD)、Adam和L-BFGS。
- 提供实用工具:如数据预处理、模型评估和可视化等。
- 测试
2.1 测试平台
RT-Thread:https://www.rt-thread.org/
TinyMaix: https://en.wiki.sipeed.com/news/others/tinymaix_cnx/tinymaix_cnx.html
2.2.测试步骤
新建基于开发板的模板工程
- 测试结果分析
其中,Total param ~88.4 KB表示该模型的参数总量约为88.4 KB,这是一个很小的模型,适合在嵌入式设备上运行。OPS ~3.08 MOPS表示该模型的计算量约为3.08 MOPS(百万次操作每秒),这也是一个相对较小的计算量。buffer 11.0 KB表示该模型需要的缓冲区大小为11.0 KB,这也是一个比较小的缓冲区。
最后的tm_run use 0.099 ms表示该模型的推理时间为0.099毫秒,这意味着该模型在嵌入式设备上可以实现实时的推理,非常适合实时应用。总的来说,这个模型非常适合在嵌入式设备上实现轻量级的机器学习应用。
|