【转发】发布MCU上跑的轻量神经网络包 NNoM, 让MCU也神经一把

发布MCU上跑的轻量神经网络包 NNoM, 让MCU也神经一把
引用自 《电子发烧友论坛》
http://bbs.elecfans.com/forum.php?mod=viewthread&tid=1768290&page=1#http://bbs.elecfans.com
 
2019-5-1 19:03:01  
分享
 
本帖最后由 majianjia 于 2019-5-1 19:07 编辑



NNoM (Neural Network on Microcontroller)
是一个轻量化,纯C实现的一个机器学习和神经网络包。AIoT那么火,为何大家却止步于科普文?因为现成的机器学习框架都太复杂太难用。NNoM从一开始就被设计成提供给嵌入式大佬们的一个简单易用的神经网络框架。你不需要会TensoRFlow, 只需要用30秒入门Keras。

它拥有以下优点:
  • 快速开发: 电脑上训练的 Keras 模型直接转换成 C 文件。
  • 默认纯C后端: 移植和使用畅通无阻,支持32/64bit,MCU/PC。
  • 支持复杂结构: 支持多种复杂的网络模型结构。
  • 完善的文档: 拥有 API 文档,入门指南,优化指南。
  • 入门简单: 多个从简单到复杂的例子,完全开源。

MCU 上的神经网络能做什么?
  • 语音关键词识别 (KeyWord Spotting)
  • 使用运动传感器识别活动状态 (Human Activity Recognition)
  • 神经网络控制系统 (替代PID等传统控制方法)
  • 图像处理 (带专用加速器的 MCU)
  • ...


它轻量但不低能, 它支持二十多种不同的神经网络计算,各种复杂的网络结构。它几乎不依赖硬件平台,同时能在各种32bit 和64bit的平台上编译运行。

它提供一键转换脚本,可以一行代码把刚训练好的Keras模型转换成一个独立的C语言头文件,直接包含在MCU工程内就可以跑起来。NNoM没有特别的依赖,使得它使用上比TensorFlow在使用上要方便很多。

另外,NNoM跟RT-Thread也可以很完美的配合,NNoM使用RTT的mesh 可以直接体验各种不同的例子。他还可以选择开启CMSIS-NN后端,轻松实现2~5倍加速!

最重要的是,它拥有完整的API文档,很多例子和各种各样的教程。

体验第一个例子:RTT例子https://majianjia.github.io/nnom/example_mnist_simple_cn/
下载地址:NNoM GitHub https://github.com/majianjia/nnom

posted on   大魔司教教主  阅读(1249)  评论(0编辑  收藏  举报

编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

导航

统计

点击右上角即可分享
微信分享提示