什么是 TinyML?
ML 正如你可能猜到的,代表机器学习,在大多数情况下(虽然不总是如此),现在指的是深度学习。TinyML 中的 Tiny 意味着 ML 模型经过优化,可以在功耗极低且占用空间很小的设备上运行,比如各种 MCU。它是边缘机器学习或嵌入式机器学习的一个子集。

嵌入式设备有各种形状和尺寸,从"嵌入式超级计算机" Nvidia Jetson Xavier AGX 到最小的微控制器,例如 ESP32 或 Cortex M0。


为什么微控制器上的嵌入式机器学习被归为特殊类别,甚至有了自己的酷炫名称?
因为它有自己的一套优势和限制。TinyML 的吸引力实际上在于 MCU 无处不在、体积小、能耗低且相对便宜。

以 ARM Cortex M0+ 和基于它构建的小巧 Seeeduino XIAO 开发板为例——该开发板只有拇指大小(21×17.8mm),功耗仅为 1.33 mAh(这意味着它可以在 150 mA 电池上工作约 112 小时,如果进入深度睡眠模式会更久),成本仅为 4.3 美元。
由于最近在模型优化方面的改进以及专门为在微控制器上运行机器学习模型推理而创建的框架的出现,现在可以为这些微型设备赋予更多智能。我们现在可以在微控制器上部署神经网络进行音频场景识别(例如大象活动或玻璃破碎声)、热词检测(用特定短语激活设备)甚至简单的图像识别任务。带有嵌入式微控制器的设备可以用来为旧传感器赋予新的生命和意义,比如使用安装在机械装置上的加速度计进行异常检测和预测性维护——或者区分各种酒类,如这个演示中所示!

TinyML 的可能性真的很巨大。
那么限制呢?主要的限制因素是 MCU 的 RAM/FLASH 大小——无论你优化得多好,都无法将那个 YOLO9999 塞进一个微型微控制器中。

自动语音识别也是如此——虽然简单的热词(或语音命令检测)是可能的,但开放域语音识别超出了 MCU 的能力范围。目前是这样。
Seeed EDU 团队推出了一个权威的分步课程,介绍如何使用 Wio Terminal 开始学习 TinyML。
你可以通过点击下面的链接下载 PDF 格式的课程和课程材料。此外,你还可以找到之前在 Seeed studio 博客和 Hackster.io 网站上发布的独立项目——课程中的项目和独立项目都使用 Arduino IDE 来编程设备,并混合使用 Edge Impulse 和 Tensorflow Lite for Microcontrollers 进行模型训练和推理。
课程和独立项目的主要区别在于,课程主要旨在供 STEM 教师用作开发自己教学材料的基础或作为现成的课程材料,而独立项目则供创客和黑客探索和改进。
Edge Impulse 是一个用户友好的边缘设备机器学习开发平台,为整个 TinyML 流水线提供初学者友好(但功能强大)的 Web 界面和工具包,从数据收集一直到模型部署。

另一方面,Tensorflow Lite for Microcontrollers 虽然学习曲线更陡峭,但允许你实现自己的模型训练和推理流水线。

《TinyML》与 Wio Terminal 课程

下载 PDF
下载课程材料
Seeed_Arduino_WioTerminal_TinyML_Course-1.0.zip
课程材料的 Github 仓库
《TinyML》与 Wio Terminal 课程的 Github
无代码编程入门《TinyML》

旨在通过 Wio Terminal 和 Codecraft 图形化编程向初学者介绍嵌入式机器学习的基础知识。
下载 PDF
技术支持与产品讨论
感谢您选择我们的产品!我们在这里为您提供不同的支持,以确保您使用我们产品的体验尽可能顺畅。我们提供多种沟通渠道,以满足不同的偏好和需求。