讲师博文
AI:你能走多低 来源 : 原创     2021-03-05

随着成熟的MCU厂商和AI加速初创企业试图证明自己对这一想法的承诺,嵌入式机器学习(ML)的需求将大大增加,这主要是在TinyML的旗帜下进行的。

丹尼尔·西图纳亚克(Daniel Situnayake)是软件工具公司Edge Impulse的TinyML创始人,也是该技术的著名著作的合著者。他说,今天的情况与1990年代大不相同。

“嵌入式ML的令人兴奋的事情是,机器学习和深度学习并不是未经验证的新技术-实际上,它们已经在服务器级计算机上成功部署了相当长的时间,并且是成功的核心。产品。嵌入式ML旨在将一套行之有效的技术应用于新的环境,从而使许多以前不可能的新应用成为可能。”

ABI Research预测,用于TinyML市场的低功耗,支持AI的MCU和加速器市场将从今年的年收入不足3000万美元增长到到下个十年之初的超过20亿美元。

尽管增长迅速,ABI分析师Lian Jye Su预计随着博世等大公司进入市场,竞争将变得更加激烈。已经有一些新兴公司,例如Eta Compute,从硅片转向了软件工具。

“我们确实看到了一些合并。同时,物联网市场的巨大分散意味着大量供应商将得以生存,就像总体上的MCU或物联网芯片组市场一样。”他指出,并指出了许多专注于特定垂直市场的供应商。

TinyML面临严峻的约束。搜索引擎巨头TensorFlow Micro框架的技术负责人Pete Warden和Situnayake共同撰写的“ TinyML:使用TensorFlow Lite在Arduino和超低功耗微控制器上进行机器学习”在Linley Group的Fall Processor Conference上说目的是采用深度学习模型,并“使它们在具有20KB RAM的设备上运行。我们希望采用使用该尖端技术构建的模型,并将其粉碎以在非常低功耗的处理器上运行。

“由于它是开源软件,因此我们不仅可以与Google内部的产品团队进行互动,而且还可以收到来自世界各地试图开发有趣产品的产品团队的大量要求。我们经常不得不说:不,那还不可能。总的来说,我们看到了很多未满足的需求。” Warden说。

核心问题是从服务器环境移植的深度学习模型要求即使在相对简单的模型下,也要在短时间内执行数百万甚至数十亿的乘加(MAC)功能。Linley Group总裁Linley Gwennap表示,相对简单的音频应用程序(例如拾取可以激活语音识别的语音单词)每秒需要大约200万个MAC。视频需要更多。

芯片供应商已经能够通过在进行推理时利用相对较低的单个计算精度要求来推动MAC数量的增长。尽管在服务器上进行培训通常需要单精度或双精度浮点算术,但对于大多数应用程序而言,字节宽整数(int8)计算似乎已足够。

有迹象表明,对于模型中的选定层,甚至int8 MAC也没有必要。在许多情况下,仅使用几个门即可执行的二进制或三进制计算不会损害整体精度。Situnayake说,潜在的性能提升是巨大的,但缺乏充分利用它们所需的硬件和软件支持的组合。

尽管TensorFlow Lite框架的工具通常支持int8权重,但对较低分辨率的支持远未普及。“这种情况正在迅速改变,” Situnayake指出,他指的是诸如Syntiant的加速器,该加速器支持二进制,2位和4位权重,并且Plumerai致力于直接训练二进制化的神经网络。

他补充说:“尽管这些技术仍处于最前沿,并且尚未成为嵌入式ML开发人员的主流,但不久之后它们便成为标准工具包的一部分。”

减少算术负担

TinyML工作还有其他选择可以减少算术负担。Edge Impulse的联合创始人兼首席技术官Jan Jongboom在去年下半年的TinyML Asia大会上发表讲话说,ML的主要吸引力在于它能够找到传统算法无法选择的数据相关性。问题在于,如果输入是原始样本,大多数常规模型必须处理大量参数才能找到那些相关性。

Jongboom说:“您想伸出手来帮助您简化机器学习算法,让它的生活变得更轻松。” 对于典型的实时信号,最有用的技术是使用特征提取:将数据转换为表示形式,从而可以用较少数量级的参数来构建神经网络。

以语音为例,向mel-cepstrum空间的转换极大地减少了可以有效编码声音变化的参数数量。

在其他传感器数据中,例如来自用于旋转机械振动检测的加速度计的馈送,其他形式的联合时频表示通常会起作用。

Sigma Numerix的顾问和DSP工程师John Edwards和牛津大学的客座讲师在振动分析项目中使用了这种方法。

在这种情况下,短时的傅立叶变换具有最佳的权衡,再加上补偿变速电动机的变换。特征提取将模型的尺寸减小到只有两层,可以在将Arm Cortex-M33内核与DSP加速器结合在一起的NXP LPC55C69上轻松处理。

Jongboom说,尽管可能会倾向于走深度学习的道路,但其他机器学习算法也可以提供结果。“我们最好的异常检测模型不是神经网络:它的基本k均值聚类。”

在需要深度学习的地方,稀疏性进一步降低了模型开销。这可以采取修剪的形式,其中对模型输出影响很小的权重仅从管道中删除。另一个选择是将精力集中在数据流中随时间变化的部分上。例如,在监视视频中,这可能意味着使用图像处理来检测运动对象并将它们与背景分离,然后再将处理后的像素输入模型。

对于Jongboom和其他人来说,这是一次学习的经历。在描述TinyML各个阶段的进度时,在2017年夏天,他认为整个概念是不可能的。到2020年夏天,在研究了一起优化应用程序和模型设计的方法后,他的态度已转变为认为在低功耗硬件上进行实时图像分类是可行的。随着更有效地支持低精度和稀疏性的低功率加速器出现,可以以微功率运行的模型范围应该扩大。

Situnayake声称,结果很可能是:“与其他类型的工作负载相比,ML最终将代表更大的份额。设备上ML的优势将推动业界朝着创建和部署更快,功能更强大的低功耗芯片发展,这些芯片将代表全球所有嵌入式计算的绝大部分。” 尽管将有很多设备无法运行这些工作负载,但随着模型尺寸的不可避免地增长,对速度的需求将集中注意力在其需求上,并且只要应用程序得以遵循,就开始主导软件和硬件体系结构的开发。

扫码申领本地嵌入式教学实录全套视频及配套源码

上一篇:数字签名和证书如何为嵌入式系统提供保护

下一篇:嵌入式FPGA的吸引力能否克服传统的成本障碍,并最终实现加速增长

400-611-6270

Copyright © 2004-2024 华清远见教育科技集团 版权所有
京ICP备16055225号-5京公海网安备11010802025203号