人工智能(AI)和机器学习(ML)是使系统能够从数据中学习,进行推断并随着时间的推移提高其性能的关键技术。这些技术通常用于大型数据中心和功能强大的GPU,但是将它们部署在资源有限的设备(如微控制器MCU)上的需求越来越大。
在本博客中,Silicon Labs(亦称“芯科科技”)产品营销高级经理Gopinath Krishniah先生将带您探究MCU技术和AI/ML的交叉与汇合,以及它如何影响低功耗边缘设备的发展;同时将讨论在电池供电设备的MCU上运行AI的困难、创新和实际用例,并进一步介绍芯科科技专为边缘智能开发所提供全套MCU+AI/ML工具的解决方案。
AI/ML和MCU概述
人工智能创造的计算机系统可以完成类似人类的任务,比如理解语言、寻找模式和做决定。机器学习是人工智能的一个子集,涉及使用算法,让计算机从数据中学习,并随着时间的推移变得更好。机器学习模型可以找到模式,排序对象,并从示例中预测结果。
mcu在使AI和ML在边缘设备上成为可能方面发挥着重要作用。
基于MCU运行的边缘AI/ML用例包括:
关键字识别:识别特定的单词或短语(例如,语音命令),而不需要云连接。
传感器融合:结合来自多个传感器的数据,做出比单一传感器解决方案更明智的决策。
异常检测:检测传感器数据中的异常值或异常模式,可能表明故障,错误或威胁,用于预测性维护或质量控制。
目标检测:在摄像机或其他传感器捕获的图像或视频中识别和定位感兴趣的对象(例如,人脸、行人、车辆)。
手势识别:在摄像机或其他传感器捕获的图像或视频中解释人类手势(如手部动作、面部表情、身体姿势),以改善人机交互。
AI/ML在MCU上的挑战
深度学习模型,特别是深度神经网络(DNN),已经成为计算机视觉和自然语言处理等复杂任务中不可或缺的一部分。然而,它们的计算需求是巨大的。这种资源密集型模型对于日常设备来说是不切实际的,尤其是那些由边缘设备中的低功耗MCU供电的设备。深度学习模型复杂性的增长是必然的,随着深度神经网络变得越来越复杂,它们的尺寸会膨胀,使它们与MCU上有限的可用计算资源不兼容。
什么是TinyML?
TinyML指的是为在资源受限的设备上部署而优化的机器学习模型和技术。这些设备在边缘运行,在那里生成数据,并在本地执行推理。TinyML系统通常运行在低功耗MCU上,对节点本地收集的数据执行推断。推理是人工智能模型的关键时刻,测试它在训练中所学知识的应用能力。本地推理使MCU能够直接执行AI模型,在不依赖外部服务器或云服务的情况下做出实时决策。
在AI/ML环境中,局部推理至关重要,原因如下:
资源限制:许多嵌入式设备,特别是那些使用电池供电的设备,资源有限,例如内存、处理能力和能源效率。传统的通用微控制器由于其有限的处理能力和内存、有限的能源资源或缺乏片上加速而难以有效地执行人工智能任务。本地推理允许这些资源受限的设备在不消耗过多功率的情况下执行AI工作负载,以提高效率和性能。
用户体验增强:考虑一个例子-支持人工智能的电子Cat Flap。通过训练它区分猫和其他物体,它可以只为被授权的猫开门。在这里,本地推理通过确保安全性和便利性来改善用户体验,而不需要诸如RFID项圈之类的额外硬件。
效率和性能:GPU通常用于大规模人工智能部署,因为它们可以并行执行许多流程,这对于有效的人工智能训练至关重要。然而,对于小型嵌入式应用来说,GPU的成本很高,并且超出了功率预算。AI优化的MCU具有专门的架构,通过为AI工作负载提供更好的性能和功率效率来实现平衡。芯科科技提供的新型无线SoC和MCU中已包括一个矩阵矢量处理器,作为其AI/ML支持的一部分。这种专门的硬件加速器旨在增强AI/ML算法或矢量数学运算的性能,以缩短推理时间并以更低的功耗执行这些关键任务。
总之,边缘的本地推理可以实现实时决策,减少延迟,增强安全性,使电池供电的设备具有人工智能功能,并增强用户体验,使其成为现代计算系统的关键组成部分,同时满足资源限制。
芯科科技前沿的AI/ML解决方案
芯科科技作为智能、安全物联网无线连接领域的开拓者,正在致力于将AI/ML带到边缘。我们对创新的承诺导致了开创性的解决方案,它赋予资源受限的设备如MCU具备更丰富的智能功能。
针对TinyML进行优化的设备
EFR32xG24、EFR32xG28和EFR32xG26等无线MCU系列产品均结合了78 MHz的ARM-M33处理器、高性能无线电、精密模拟性能,以及一个AI/ML硬件加速器,给开发人员一个灵活的平台,用于部署边缘智能。同时,这些产品还支持广泛的物联网无线协议,提供最高的安全性与最佳的RF性能/能效比的组合。
现今的开发人员经常被迫为在边缘部署人工智能/ ML而付出许多精力。xG24、xG28和xG26使用专用的AI/ML加速器,可以大幅降低整体设计复杂性,助力开发人员更快实现产品原型。专门的硬件设计对于处理复杂的计算可提高8倍的推理速度,以及在能源效率上改进了6倍;这与基于固件和云计算的解决方案相比,可提供更高的性能和效益。硬件加速器的使用将从主应用程序MCU中触发的负担卸下了更多的时钟周期,从而服务您的应用程序。
简化AI/ML开发的工具
构建、测试和部署机器学习所需算法的工具与运行这些算法的MCU一样重要。通过与TensorFlow、SensiML和EdgeImpulse等TinyML领域的领导者合作,芯科科技为初学者和专家提供了多种开发工具的选择。使用这个新的AI/ML工具链和芯科科技的SimplicityStudio开发环境,开发人员可以创建应用程序,从各种连接的设备中提取信息,以做出智能的机器学习驱动的决策。
芯科科技提供各种工具和资源来支持ML应用程序:
ML应用:开发平台支持TinyML模型推理,由TensorFlow Lite forMicrocontrollers (TFLM)框架支持。存储库包含一组利用ML的嵌入式应用程序。
机器学习工具包(MLTK):这是一个带有命令行实用程序和脚本的Python包,可帮助为芯科科技的嵌入式平台开发机器学习模型。它包括从命令行界面或Python脚本执行机器学习操作的功能,确定机器学习模型在嵌入式平台上的执行效率,以及使用Google TensorFlow训练机器学习模型。
芯科科技还提供一个TinyML解决方案,作为机器学习工具包的一部分。该工具包包括TinyML基准测试使用的几个模型。这些模型可以在芯科科技GitHub上找到,包括异常检测、图像分类和关键字识别。
AI/ML驱动的边缘设备为我们与周围环境的互动开辟了新的视野,它们将很快以惊人的方式改变我们的生活。芯科科技处于TinyML创新的最前沿,使其能够将这些功能以前所未有的方式带入低功耗,连接的边缘设备。