嵌入式系统部署AI应用加速开发週期
人工智慧(AI)起源于达特茅斯学院于1956年举办的夏季研讨会。在该会议上,「人工智慧」一词首次被正式提出。运算能力的技术突破推动了AI一轮又一轮的发展。近年来,随着大数据的可用性提升,第三轮AI发展浪潮已经来临...
人工智慧(AI)起源于达特茅斯学院于1956年举办的夏季研讨会。在该会议上,「人工智慧」一词首次被正式提出。运算能力的技术突破推动了AI一轮又一轮的发展。近年来,随着大数据的可用性提升,第三轮AI发展浪潮已经来临。
2015年,基于深度学习的AI演算法在ImageNet竞赛的影像辨识准确度首次超过人类,代表着AI发展突飞勐进。随着电脑视觉研究的突破,深度学习已经在语音辨识、自然语言处理等不同研究领域都取得了巨大的成功。现在,AI已经在生活中的各面向展现出巨大潜力。
人工智慧的发展演进与主要概念,大致解释如下:
‧ AI:任何能让电脑类比人类行为的技术。
‧机器学习:人工智慧(AI)的子集。透过从资料中学习而不断改进的演算法或方法论。
‧深度学习:机器学习(ML)的子集。透过使用类比人类大脑神经网路的多层结构,从大量资料中获得有价值资讯的学习演算法。
|
AI生力军,Deep Edge AI应运而生
由于运算能力的需求,目前AI技术主要应用于云端场景。由于资料传输延迟等因素的限制,基于云端的解决方案可能无法满足部分使用者对资料安全性、系统回应能力、私密性、以及本地节点功耗的限制。在集中式AI解决方案中,嵌入式设备(智慧音箱、穿戴式装置等)通常依赖云端伺服器藉以实现AI功能,而在Deep Edge AI解决方案中,嵌入式设备本身即可在本地执行AI演算法,实现即时环境感测、人机互动、决策控制等功能。
|
将AI推理运算迁移到深度边缘运算将带来一些优势,例如更好的系统回应能力、更周全的使用者资讯隐私保护(并非所有资料都需要传输到云端)、以及降低连接成本和功耗。
|
根据ABI的研究结果,到2030年,Deep Edge AI装置的全球出货量将达到25亿台。意法半导体(ST)注意到,日益成长的Deep Edge AI技术社群和生态系统专注于独立、低功耗且经济的嵌入式解决方案。ST在AI方面投入大量资源,协助开发人员在微控制器/微处理器(STM32系列)和感测器(动作MEMS、ToF等)嵌入式系统上快速部署AI应用。
为了加速开发週期,ST提供一系列的AI工具,针对STM32家族,及具备机器学习核心(机器学习核心;MLC)的动作MEMS感测器上所训练的AI模型(STM32Cube.AI),能更方便地进行最佳化。AI已经在许多领域取得了令人瞩目的成就。我们相信,愈来愈多的智慧终端装置将会对人类生活产生更深远且正面的影响。
透过生态系统快速部署AI应用
ST提供一个完整的硬体和软体的生态系统,能快速、轻松地开发多种执行于感测器和微控制器上的Deep Edge AI演算法。
在MEMS感测器生态系统中,感测器上的MLC嵌入式引擎,能协助开发人员在边缘装置上实现如手势辨识、动作辨识、异常检测等等AI演算法。。
|
因此,物联网解决方案开发人员可以使用UNICO-GUI工具开发超低功耗应用,进行快速prototyping并且部署ST任一内嵌 MLC 的感测器。
基于原生低功耗感测器设计、进阶AI事件侦测、唤醒逻辑和即时边缘运算功能,感测器中的MLC极大地减少了系统资料传输量,降低了网路处理负担。
如果开发人员决定在感测器上开发一个机器学习解决方案,则需要一套全新的方法来实现自己的应用。
开发机器学习演算法,起点是资料及分类的定义。遵循以下五个步骤,能够在感测器中创建并执行AI应用。UNICO-GUI是一种图形化使用者介面,支援包括决策树产生等五个步骤。
|
为了方便开发人员快速在STM32上部署已训练的AI模型,ST开发了一款简单易用且高效的工具:STM32Cube.AI(亦称X-CUBE-AI)。X-CUBE-AI可以分析并将已训练的神经网路转换为优化的C语言程式,并针对STM32系列自动进行测试。
为了展示不同AI应用如何在STM32上直接执行,并加速STM32嵌入式开发人员的研发、验证和部署时程,ST提供许多AI应用以供参考。开发人员可以利用这些嵌入式AI应用套
装软体进行二次开发,快速实现自订模型的部署。下列表格为ST制造的开发工具和嵌入式应用套装软体。
AI开发工具和嵌入式应用软体
产品编号 |
说 明 |
UNICO-GUI |
MEMS evaluation kit套装软体 |
STM32CubeMX |
STM32Cube初始化程式产生器 |
X-CUBE-AI |
AI expansion pack for STM32CubeMX |
产品编号 |
说 明 |
X-LINUX-AI |
应用于AI电脑视觉的STM32 MPU OpenSTLinux expansion pack |
FP-AI-SENSING1 |
STM32Cube function pack,应用超低功耗物联网节点,具有基于音讯和动作感测的AI应用 |
FP-AI-VISION1 |
STM32Cube function pack,应用于高性能STM32,具有电脑视觉AI应用 |
FP-AI-NANOEDG1 |
STM32Cube function pack, 具有AI状态监测应用 |
FP-AI-FACEREC |
STM32Cube function pack, 具有AI人脸辨识应用 |
FP-AI-CTXAWARE1 |
STM32Cube function pack,应用于分散式AI的超低功耗情境感知 |
有STM32的地方就有Deep Edge AI。
STM32的所有MCU都支援AI模型的部署。对于运算能力较低的MCU,支援机器学习演算法。对于运算能力较高的MCU,更支援深度学习模型。
|
可执行应用范例的开发板列表如下:
产品编号 |
说 明 |
B-L475E-IOT01A |
STM32L4开发套件,包含IoT节点、低功耗无缐解决方案、BLE、NFC、SubGHz、Wi-Fi |
STEVAL-STLKT01V1 |
SensorTile开发套件 |
STEVAL-MKSBOX1V1 |
SensorTile.box无缐多感测器开发套件 |
STEVAL-STWINKT1B |
STWIN SensorTile基于工业IoT上的应用,无缐工业节点开发套件和参考设计 |
STM32L562E-DK |
开发套件,採用STM32L562QE MCU |
STM32H747I-DISCO |
开发套件,採用STM32H747XI MCU |
STM32MP157C-DK2 |
开发套件,採用STM32MP157C MPU |
STM32MP157F-DK2 |
开发套件,採用STM32MP157F MPU |
Avenger96 |
基于STM32MP157A的Avenger96板(源自96Boards) |
B-CAMS-OMV |
相机模组套装,用于STM32板 |