0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如今MCU上“跑”机器学习,也很给力

星星科技指导员 来源:mouser 作者:Doctor M 2023-05-19 09:55 次阅读

机器学习(ML)是解决涉及模式识别问题的一个非常好的工具,ML算法能将杂乱的原始数据转化为可用信号。其基本流程是基于数据产生模型,然后利用模型预测输出,从而实现无需人工交互即可完成学习、推理和决策等目的。然而,对高性能计算资源的需求将许多ML应用程序限制在云中。也就是说,只有云数据中心级别的性能才能满足ML对算力的要求。令业界兴奋的是,随着算法设计以及微处理器体系结构的不断进步,在最小的微控制器MCU)上运行复杂的机器学习工作负载正在成为可能。

嵌入式设备上运行机器学习模型通常被称为嵌入式机器学习(Embedded machine learning)。嵌入式设备中的机器学习有很多好处:

它消除了在云服务器上传输和存储数据的需要,从而减少了传输数据时涉及的数据和隐私泄露。

它强化了对知识产权、个人数据和商业秘密的保护。

ML模型的执行可有效避免向云服务器传输数据的需要,节约了宝贵的带宽和网络资源。

使用基于ML模型的嵌入式设备是可持续的,它的碳足迹要低得多。因为设备中使用的微控制器都是低能耗的。

嵌入式系统比基于云中心的系统效率更高,边缘设备上的ML模型可以实现实时响应。

TinyML:MCU厂商的新商机

深度学习模型最初的成功主要归功于拥有大量内存和GPU集群的大型服务器。虽然云端深度学习非常成功,但它并不适用于所有情况,因为许多应用需要在设备上进行推理。当今的大多数AI应用程序都是基于机器学习技术,如果在资源受限的设备上能够流畅地运行机器学习模型,必将为许多新兴应用打开了一扇技术之门,这也是近些年边缘计算和嵌入式机器学习越来越火的一个重要原因。

嵌入式机器学习是机器学习的一个领域,这些被称为微型机器学习(Tiny Machine Learning,TinyML)的模型非常适用于内存和处理能力有限、互联网连接不存在或受限的边缘设备。现在,TinyML已经成为机器学习中一个快速发展的领域,通过硬件、算法和软件的有机结合,使之能够以mW及以下的功率完成传感器数据的分析,实现了在小型硬件上嵌入AI的过程。

虽然TinyML是一个新概念,但将机器学习应用于智能设备并不是什么新鲜事。比如,大多数的智能手机都有某种神经网络,音乐识别、许多相机模式(如夜视和肖像模式)都是依靠嵌入式深度学习的例子。这些都是TinyML的用武之地,也将Edge AI向前推进了一步。

Edge AI芯片组将AI引入到无数的终端内部,包括移动设备、汽车、智能音箱和无线摄像头等。然而,这些设备往往因难以支持高计算性能和高数据吞吐量,无法充分利用产生的所有数据。TinyML的横空出世,使得在MCU上运行机器学习模型成为可能。这些MCU普遍价格低廉,外形小巧,内置几百KB的低功耗内存(SRAM)和几兆字节的存储空间,功耗很低,且应用广泛。TinyML芯片组的主要目标是解决成本和能效问题,它们通过为小型推理工作负载设计的软件,在低功耗、低处理能力和小内存的硬件上实现了数据分析性能,这一技术有可能彻底改变物联网的未来。

如今,全球活跃的物联网(IoT)设备超过2500亿台,预计每年增长20%。这些设备每天都会收集大量数据,在云中处理这些数据存在相当大的挑战。现在,TinyML有望弥合边缘硬件和设备智能之间的鸿沟。麦肯锡研究人员预测,到2025年,物联网行业将产生4-11万亿美元的潜在经济影响,其中制造业为最大的垂直产业,达到1.2-3.7万亿美元。

市场咨询公司ABI Research在其新的白皮书《TinyML:科技领域的下一个重大机遇》中预测,2021至2026年间,物联网连接数量将增加近三倍,达到236亿。每一次新的连接都代表着利用AI和机器学习的机会,TinyML技术将是抓住企业这一机会的关键。因此,ABI预计,TinyML设备的出货量将从2020年的1520万台增加到2030年的25亿台。

名厂云集TinyML赛道

自TinyML诞生以来,创新市场一直热点不断,许多产品都非常引入关注。例如:基于NVIDIA Jetson Xavier NX的工业AI智能相机,这是由Adlink公司推出的业界首款工业智能相机,该相机基于英伟达(NVIDIA)的Jetson Xavier NX,性能高、尺寸小,效率大约是前代产品的十倍,是一款紧凑、可靠、功能强大的Edge AI应用产品,为制造业、物流、医疗保健、农业和许多其他商业领域的人工智能创新打开了方便之门。

TinyML专注于优化机器学习的工作负载,以便它们可以在低功耗的微控制器上运行。TinyML的激增将导致Edge AI在传统关键市场之外的扩张,更多的终端用户可以从基于声波、温度、压力、振动和其他数据源的智能连接传感器和物联网设备中受益。如今,TinyML正处在机器学习和嵌入式物联网的交汇点上,有可能为许多行业带来颠覆性的变革。TinyML的潜在应用几乎是没有边界的,比如:可以预测何时需要服务的工业机器人,可以监测作物是否存在有害昆虫的传感器,当库存减少时可以要求重新进货的店内货架,在保持隐私的同时可以跟踪生命体征的医疗监护仪。

音频分析、模式识别和语音人机界面是当今TinyML应用最多的领域。恩智浦(NXP)基于EdgeReady MCU的3D人脸识别解决方案利用i.MX RT117F跨界MCU,能够帮助开发人员快速地将3D人脸识别和先进的活体检测填加到其产品中,即使在户外照明条件下设备也能正常工作。该方案具备的3D活体检测功能还能识别和抵御使用照片或3D模型的欺诈,仅需使用高性能3D结构化光摄像头模块(SLM)和可选的基于低成本CMOS传感器的RGB摄像头,无需使用昂贵、耗电、基于Linux的MPU。

方案中采用的i.MX RT1170是一款跨界MCU,它采用了主频达1GHz的Cortex-M7内核和主频达400MHz的Arm Cortex-M4,拥有卓越的计算能力、多种媒体功能以及实时功能。人脸识别和活体检测可在i.MX RT117F MCU上完全离线执行,不再借助云,不仅消除了延迟问题,还能有效保护消费者的隐私。

poYBAGRm1vyAY4SxAAOFYl8jhBg686.png

图1:i.MX RT117F 3D人脸识别硬件结构框图(图源:NXP)

视觉、运动和手势识别同样是TinyML的重要应用领域。意法半导体(ST)的AI解决方案主要基于STM32产品组合,借助预训练神经网络,嵌入式开发人员可以在任何基于Cortex M4、M33和M7的STM32上进行移植、优化和验证。STM32CubeMX是一种图形工具,通过分步过程可以非常轻松地配置STM32微控制器和微处理器,以及为Arm Cortex-M内核或面向Arm Cortex-A内核的特定Linux设备树生成相应的初始化C代码。

STM32Cube.AI是STM32CubeMX的AI扩展包,设计人员可以在其基础上更高效地开发自己的AI产品。FP-AI-VISION1属于STM32Cube的一种功能包(FP),含有基于卷积神经网络(CNN)的计算机视觉应用实例。

目前,FP-AI-VISION1包括三个基于CNN的图像分类应用示例:

在彩色(RGB24位)帧图像上运行的食品识别应用;

在彩色(RGB24位)帧图像上运行的人员存在检测应用;

在灰度(8位)帧图像上运行的人员存在检测应用。

现在,ST提供的TinyML计算机视觉解决方案可识别18种常见食物,也可以实施人员在场检测,或者基于目标检测模型统计场景中的人数等。

随着IoT市场规模的扩大,边缘的数据量增长迅猛,由TinyML赋能的AIoT应运而生。根据Markets and Markets的分析数据,2019年的AIoT市场规模约为51亿美元,预计到2024年将增长至162亿美元,复合年均增长率(CAGR)高达26%。AIoT的主要作用是赋能联网设备使其具备机器学习能力,从而执行复杂的智能运算。

2021年6月英飞凌(Infineon)推出的ModusToolbox ML,其目标就是让公司的PSoC MCU具有深度学习的功能。ModusToolbox ML是一项基于ModusToolbox软件的全新功能,可为开发人员提供基于深度学习的ML模型所需的中间件、软件库和专用工具。ML可与ModusToolbox中已有的软件框架无缝集成,十分便利地集成到安全的AIoT系统中。ModusToolbox ML允许开发人员使用他们首选的深度学习框架(如TensorFlow),直接部署到PSoC MCU上。此外,ML还有助于工程师优化嵌入式平台的模型,降低平台复杂度,并提供具有基于测试数据的性能验证功能。

为了帮助开发人员快速地将本地智能添加到他们的IoT设计中,Infineon选择了与SensiML公司合作。SensiML是QuickLogic的子公司,向市场提供尖端的软件,使超低功耗IoT终端能够实现AI,公司的旗舰方案SensiML Analytics Toolkit提供了一个端到端的开发平台,涵盖数据采集、标签、算法和固件自动生成和测试。SensiML的“Analytics Toolkit” Edge AI开发软件现在可以与Infineon ModusToolbox配合使用, 为开发人员提供了一种快速简便的方法来记录来自Infineon XENSIV传感器的数据,创建复杂的基于AI/ML的模型,并在PSoC6 MCU上运行定制的应用程序。

不断壮大的TinyML生态系统

TinyML社区成立于2019年,是一个由研究人员和行业工程师组成的社区,致力于将ML能力引入到微控制器设备。TinyML由机器学习体系结构、技术、工具和方法组成,能够在以电池驱动设备为主的低功率目标设备上对各种传感模式(视觉、音频、运动、化学和其他)执行分析。TinyML的创始人之一Evgeni Gousev认为:“我们正处于数字转型革命中,TinyML以低成本执行设备上的机器智能和分析,并结合固有的隐私功能,提供了极大的节能优势。”

TinyML将在许多行业普及,它将影响包括:零售、医疗保健、交通、健康、农业、健身和制造业等几乎每一个行业。与此同时,行业的参与者很快就认识到了TinyML的价值,并迅速采取行动创建了一个支持性的生态系统。

Arm是TinyML的坚定支持者,同时也是TinyML技术的领导者。随着超过1800亿基于Arm的芯片的出货,其IP、工具和1100多个软件合作伙伴已经构建了数十亿微型智能IoT设备。

如今,Arm®Cortex®-M系列MCU已经成为TinyML应用最广泛的平台,它们能够快速高效地执行实时计算,价格便宜,可靠性高,响应速度快,且耗电很少。Cortex-M55处理器是Arm最具AI能力的Cortex-M处理器,它提供了增强、节能的DSP和ML性能。Ethos-U55 NPU是一种新的ML处理器,称为microNPU,专门设计用于在面积受限的嵌入式和物联网设备中加速ML推理。Ethos-U55与支持AI的Cortex-M55处理器相结合,使ML性能比现有基于Cortex-M的系统提高了480倍。

事实上,在2021年初,Raspberry Pi树莓派)就发布了第一块微控制器板,这是市场上价格最实惠的开发板之一,售价仅为4美元。这款名为Raspberry Pi Pico,基于RP2040 MCU,内置功能强大的双核Cortex-M0+处理器,能够运行TensorFlow Lite Micro,很快我们就能看到该板的各种TinyML用例。

对于淹没在海量数据中的决策者来说,TinyML好比是一个救星,它将边缘的数据充分利用起来,使人们能够更快地获取正确的信息。此外,TinyML还通过在设备上处理数据并只传输关键信息来改善了人们普遍担忧的隐私问题。

接下来,我们将看到一个拥有数万亿智能设备的新世界,这些智能设备有TinyML技术的支持,能够感知、分析和自主行动,并将为我们创造一个更健康、更可持续的环境。

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • mcu
    mcu
    +关注

    关注

    146

    文章

    16019

    浏览量

    343651
  • ML
    ML
    +关注

    关注

    0

    文章

    139

    浏览量

    34294
  • 机器学习
    +关注

    关注

    66

    文章

    8126

    浏览量

    130570
收藏 人收藏

    评论

    相关推荐

    MCU上“跑”机器学习依然也很给

    机器学习(ML)是解决涉及模式识别问题的一个非常好的工具,ML算法能将杂乱的原始数据转化为可用信号。其基本流程是基于数据产生模型,然后利用模型预测输出,从而实现无需人工交互即可完成学习、推理和决策
    发表于 07-20 17:11 986次阅读

    现实的世界很给

    现实的世界很给
    发表于 02-29 23:54

    设计思路学习

    本帖最后由 gk320830 于 2015-3-7 22:49 编辑 资料很给,以后学习足不出户啦!{:12:}
    发表于 07-22 14:04

    很给的LED旋转屏取模软件

    很给的LED旋转屏取模软件,可以把字上下左右和部分的互换,再生成代码。
    发表于 10-24 23:09

    学习FPGA的好东西 不自留 送给大家

    很给学习FPGA资料,送给大家
    发表于 09-10 11:49

    机器学习训练秘籍——吴恩达

    ``1 机器学习为什么需要策略?机器学习(machine learning)已然成为无数重要应用的基石——如今,在网络搜索、垃圾邮件检测、语
    发表于 11-30 16:45

    发布MCU的轻量神经网络包 NNoM, 让MCU神经一把

    本帖最后由 majianjia 于 2019-5-1 19:07 编辑 NNoM (Neural Network on Microcontroller)是一个轻量化,纯C实现的一个机器学习
    发表于 05-01 19:03

    在一颗通用MCU能畅玩深度学习吗?

    传统认知中,人工智能(AI)相关的深度学习应用,只有算充沛的MPU或者是PC才能玩得转。可你是否想过,在一颗通用MCU能畅玩深度
    发表于 07-20 06:51

    MCU为什么不起来呢

    导致MCU死机, 让人感觉的程序没有跑起来。问题分析在此情况下,MCU 为什么不起来呢, 笔者以STM32L072 芯片为例, 具体的分析一下。我们先了解 STM32电源控制中有三个复位方式:
    发表于 07-23 09:03

    学习stm32的过程

    基于IAR workbench下决心要学习stm32有一段时间了,从网上找到一些资源,我要自学网的黄老师很良心,理论性的知识讲的不多,干货和实操很给。下面讲一下学习的过程。1、工程模
    发表于 08-03 06:36

    高性能的机器学习让边缘计算更给

    的自主学习能力战胜了围棋世界冠军柯洁。当然,AI发展的如此迅速,与人类智慧的不断进步是密不可分的。利用机器学习(ML)等方面的技术,开发人员可以创建更丰富多样的应用,比如工业
    发表于 10-15 13:58

    MCU能做Machine learning吗

    你知道吗?MCU能做Machine learning (ML)刚刚过去的2018年被称为“人工智能元年”,2随着单芯片计算的不断增长,机器学习
    发表于 11-03 06:36

    MCU芯片分大战

    今天 我们来个中国通用32位MCU芯片 分大战!说起MCU,在物联网,智能硬件兴起的当...
    发表于 11-03 06:08

    什么是TinyML?微型机器学习

    的语音检测机器学习模型,该模型运行在 DSP 。同样的情况适用于其他的虚拟助手。图2. 唤醒词应用程序的组件来自哈佛大学学生的 TinyML 应用程序还包括汽车高速公路鹿检测(目
    发表于 04-12 10:20

    什么是机器学习? 机器学习基础入门

    大规模工作负载的云计算事实,这个领域已经如此专注于桌面和基于云计算的应用,以至于许多嵌入式工程师没有太多考虑机器学习如何影响他们。大多数情况下,并没有。然而,随着 TinyML 或微型机器
    发表于 06-21 11:06