嵌入式AI

曾伟 2024-07-29

简介:今天接触到了嵌入式AI,或者叫Edge AI。今天我们在国产ARM主机,ARM MCU上都可以面临着新的运行AI算法的需求。这些嵌入式端或者边缘端的市场需求比如有:自动驾驶系统,机器人系统,无人机系统,消费电子产品等,当然这当中每一个领域都很大,但是毋庸置疑,将AI算法部署到这些应用的嵌入式芯片上确实是一个新增的需求点。

TinyML

Tiny Machine Learning (TinyML) 专注于在安全、低延迟、低功耗和低带宽的边缘设备上开发和部署机器学习模型。在资源受限的微控制器上实现低资源消耗、低功耗的机器学习算法(Matthew Stewart)。

TinyML

TinyML应用

为什么需要发展TinyML:

  1. TinyML涉及的微控制器体积下、成本低、能效高,电池一次可供电数年。
  2. TinyML是边缘人工智能的一个子集,具有边缘计算的许多优势:
    • 可进行实时本地计算,降低延迟
    • 降低远程通信要求,降低带宽成本
    • 卓越的可靠性,即使在网络连接中断时也能持续
    • 通过更少的数据传输和本地数据存储来提高安全性

边缘和云

TinyML的局限性:与树莓派、Jetson Nano等功能强大的设备相比,微控制内存和计算能力有限,使得TinyML上运行的模型类型存在一定局限性,比如只能进行模型尺寸有限的预测和异常检测、分辨率和速度较低的图像识别、仅关键字/唤醒词检测的音频识别,至于具有多层深度神经网络的自然语言处理目前超出TinyML的范围。但是,TinyML的可获得性和能源效率对于许多应用仍然具有价值。

一些TinyML的应用场景:

  1. 监控机器的性能特征并在发生故障之前提供维护,最大限度地减少了设备停机时间和维修成本,从而提高了业务收入和工作场所的安全性。
  2. 通过对收集到的环境数据进行实时分析,来改善精准农业中的作物生长,帮助农业专家通过学习过去的数据做出最大化作物产量的决策。可以使用 TinyML 设备分析个体牲畜的状况和行为,从而实时对它们的健康状况做出智能结论。
  3. 可让智能设备用于监控和优化交通、分析碳足迹,甚至开发基于视觉的安全系统。
  4. 基于运动的跌倒检测器可以识别儿童或老人跌倒的实例,而关键字检测可以识别呼救声。

TinyML软件框架:

框架名 描述
TensorFlow Lite Micro TensorFlow Lite Micro 是 TensorFlow Lite 针对 AIOT 的轻量级 AI 引擎,用于在微控制器和其他资源受限的设备上运行机器学习模型。

TinyML硬件: | | | | | | —– | —- | —– | —- | |Arduino Nano 33 BLE Sense | Arduino Nano RP2040 connect | Wio Terminal | Seeed XIAO |

C++库