主页 > 职业资格 > 速录师培训 >

技术前沿|边缘AI新方法TinyML,超低功耗,存储占用KB计,在边缘设备上举行机械学习

  • 推荐星级:
  • 授课对象:
  • 上课地址:
  • 授课学校:
  • 浏览人数:
课程价格:
  • 课程详情
  • 学校环境
  • 课程评价
本文摘要:人工智能 AI 正在加速速度从云端走向边缘,进入到越来越小的物联网设备中。而这些物联网设备往往体积很小,面临着许多挑战,例如功耗、延时以及精度等问题,传统的机械学习模型无法满足要求,那么微型机械学习又如何呢?在 NASA 的推动下,小型化的电子产物成为了一个完整的消费品行业。 现在我们可以把贝多芬的全部音乐作品放在翻领针上用耳机听。

欧洲杯足彩

人工智能 AI 正在加速速度从云端走向边缘,进入到越来越小的物联网设备中。而这些物联网设备往往体积很小,面临着许多挑战,例如功耗、延时以及精度等问题,传统的机械学习模型无法满足要求,那么微型机械学习又如何呢?在 NASA 的推动下,小型化的电子产物成为了一个完整的消费品行业。

现在我们可以把贝多芬的全部音乐作品放在翻领针上用耳机听。——天体物理学家兼科学评论员尼尔 · 德格拉斯 · 泰森 (Neil deGrasse Tyson)超低功耗嵌入式设备随处可见,再加上用于微控制器的 TensorFlow Lite 等嵌入式机械学习框架的引入,这些使得人工智能驱动的物联网设备大规模普及。——哈佛大学副教授 Vijay Janapa Reddi嵌入式设备的微型机械学习(TinyML)示意图。

本文关于微型机械学习系列文章的第一篇,旨在向读者先容微型机械学习的观点及其未来的潜力。后续文章将深入讨论特定应用、实现和相关教程。

TinyML 简介在已往的十年里,我们已经看到,由于处置惩罚器速度的提升和大数据的泛起,机械学习算法的规模呈指数级增长。最初模型很小,在当地盘算机上可以使用 CPU 中的一个或多个内核运行。不久之后,使用 GPU 的盘算成为处置惩罚更大数据集的须要条件,而且由于引入了云服务,如 SaaS 平台(谷歌 Google Colaboratory)和 IaaS(Amazon EC2 Instances),盘算变得越发容易获得。

此时,算法仍然可以在单机上运行。迩来,专用集成电路(ASIC)和张量处置惩罚单元(TPU)的生长,它们可以容纳 8GPU 左右的功率。这些设备增强了跨多个系统漫衍学习的能力,并试图生长越来越大的模型。随着 GPT-3 算法(2020 年 5 月)的公布,这种情况到达了极点,其网络结构包罗惊人的 1750 亿个神经元——是现在存在于人类大脑中的两倍多(约 850 亿)。

这是有史以来第二大神经网络神经元数量的 10 倍——Turing-NLG(2020 年 2 月公布,包罗约 175 亿个参数)。一些人预计称,模型的训练成本约为 1000 万美元,使用了约莫 3 GWh 的电力(约莫是三个核电站一小时的发电量)。

虽然 GPT-3 和 Turing-NLG 的成就值得赞扬,但一些业内人士品评人工智能工业的碳足迹越来越大。然而,这也有助于引发人工智能界对更节能盘算的兴趣。诸如更有效的算法、数据表现和盘算,它们一直是微型机械学习的焦点。微型机械学习(TinyML)是机械学习和嵌入式物联网(IoT)设备的交集。

该领域是一门新兴的工程学科,有可能使许多行业发生革命性厘革。TinyML 的行业受益者是边缘盘算和节能盘算,其源于物联网(IoT)的观点。物联网的传统理念是将数据从当地设备发送到云上举行处置惩罚。一些人对这个观点提出了以下几个方面的担忧:隐私、延迟、存储和能源效率。

能源效率:传输数据(通过电线或无线)是很是耗能的,比板载盘算(特别是乘积单元)的耗能多一个数量级。开发能够自己举行数据处置惩罚的物联网系统是最节能的方法;隐私:传输数据可能会侵犯隐私。数据可能被恶意的到场者截获,而且当数据存储在一个单一的位置(如云)时,其宁静性就会降低。通过将数据生存在设备上并只管淘汰通信,能够提高数据宁静性和隐私性;存储:对许多物联网设备来说,所获得的数据毫无价值。

想象一下,一个宁静摄像头一天 24 小时都在记载一座大楼的入口。在一天的大部门时间里,摄像机的镜头毫无用处,因为什么都没有发生。通过一个更智能的系统,须要时激活,降低存储容量,传输到云端所需的数据量会淘汰;潜在因素:对于尺度的物联网设备,如 Amazon Alexa,这些设备将数据传输到云举行处置惩罚,然后凭据算法的输出返回响应。

从这个意义上说,这个设备只是一个通往云模型的便捷门户,就像你和亚马逊服务器之间的「信鸽」。这个设备相当愚蠢,完全依赖互联网的速度来发生效果。如果你的网速很慢,Amazon Alexa 也会变慢。

对于具有机载自动语音识别功效的智能物联网设备来说,由于淘汰了对外部通信的依赖性,因此延迟降低了。这些问题导致了边缘盘算的生长,即在边缘设备(云的边缘设备)上执行处置惩罚运动。

这些设备在内存、盘算和功耗方面都受到了极大的资源限制,这使得更高效算法、数据结构和盘算方法得以生长。这些革新同样适用于较大的模型,可能会使机械学习模型的效率提高一个数量级,而不影响准确度。例如,微软开发的 Bonsai 算法可以小到 2KB,但比典型的 40MB kNN 算法或 4MB 神经网络性能更好。

这个效果听起来可能不重要,可是同样准确度的模型巨细却降到了万分之一,这是很可观的。这么小的模型可以在使用 2 KB RAM 的 Arduino Uno 上运行——简而言之,你现在可以在一个 5 美元的微控制器上建设这样一个机械学习模型。机械学习正在向两种盘算范式分化:以盘算为中心的盘算和以数据为中心的盘算。

在以盘算为中心的范式中,数据由数据中心的规范举行存储以及分析,而在以数据为中心的范式中,在当地完成对源数据的处置惩罚。虽然以盘算为中心的范式似乎正在迅速走向一个极限,但以数据为中心的范式才刚刚开始。物联网设备和嵌入式机械学习模型变得越来越普遍,预计到 2020 年底将凌驾 200 亿台运动设备,许多设备你可能还没注意到。

智能门铃、智能恒温器、以及说几个单词就能叫醒或者拿起就能叫醒的智能手机。本文的其余部门将更深入地关注 tinyML 的事情原理,以及当前和未来的应用。云的层级结构(图源:https://www.thinkebiz.net/what-edge-computing/)TinyML 用例在此之前,对于一个设备来说,庞大的电路是须要的,这样能够执行种种各样的行动。

现在,机械学习将这种硬件智能抽象成软件变得越来越有可能,使得嵌入式设备越来越简朴、轻便和灵活。TinyML 最显著的例子是智能手机。

这些设备通常都有叫醒词,例如:安卓智能手机的「Hey Google」,或是 iPhone 的「Hey Siri」。智能手机通过 CPU 处置惩罚这些运动,现代 iPhone 的主中央处置惩罚器是 1.85 GHz,会在几个小时内讧尽电量。对于大多数人一天中最多使用频频的设备来说,这种水平的耗电量不行接受。为相识决这个问题,开发人员开发了专用低功耗硬件,这种硬件可以由一个小电池(好比一个圆形的 CR2032 硬币电池)供电。

这使得电路纵然在 CPU 不运行的情况下(基本上是在屏幕不亮的时候)也能保持活跃状态。这些电路的功耗仅为 1mW,使用尺度 CR2032 电池可以供电长达一年。能源是许多电子设备的限制因素。任何需要主电源供电的设备都受限于有线电路,当十几台设备同时泛起在同一位置时,线路就会迅速超负荷。

电力系统的效率很低,而且价钱昂贵。将电源电压(在美国约为 120v)转换为典型的电路电压(通常约为 5 V)会浪费大量的能量。任何使用条记本电脑充电器的人在拔下充电器时都可能知道这一点。

充电器内变压器发生的热量在电压转换历程中浪费了能量。纵然是有电池的设备,电池的续航时间也有限,需要频繁地充电。

许多电子产物的电池在设计时只能使用一个事情日。TinyML 设备可以用硬币巨细的电池连续事情一年,这意味着在偏远情况中,只有在须要时才举行通信,以节约能源。单词叫醒并不是唯一一个无缝嵌入智能手机的 TinyML。

加速计数据用于确定是否有人刚刚拿起了手机,这将叫醒 CPU 并打开屏幕。显然,这并不是 TinyML 唯一的应用。事实上,TinyML 为企业以及喜好者提供了生产更智能物联网设备的机缘。

数据变得越来越重要,将机械学习资源分配到偏远地域内存有限的设备上,给数据麋集型行业(如农业、天气预报或地震学)带来了利益。毫无疑问,赋予边缘设备执行数据驱动处置惩罚的能力,将为工业历程带来范式转变。例如,当设备检测到土壤湿度、特定气体(例如苹果成熟时释放出乙烷)或特定大气条件(如大风、低温或高湿度)等特征时,检测设备会发送有助于作物的信息,极大地促进作物生长,从而提高作物产量。

再举一个例子,一个智能门铃可以安装一个摄像头,通过面部识别来确定谁在现场。这可以用于宁静目的,或者甚至只是当有人在场时,门铃上的摄像机信号会传输到屋子里的电视上,这样住民们就知道谁在门口。现在,TinyML 的两个主要重点领域是:关键字发现。大多数人已经熟悉此类应用法式。

「Hey Siri」和「Hey Google」是关键字的示例(通常与「hotword」或「wake word」同义使用)。这样的设备一连收听来自麦克风的音频输入,而且被训练为仅响应特定的声音序列,这些特定的声音序列与学习的关键字相对应。这些设备比自动语音识别 (ASR) 应用法式更简朴,而且相应地使用了更少的资源。

某些设备(例如 Google 智能手机)使用级联架构来提供扬声器验证以确保宁静性;视觉叫醒词。叫醒词有一个基于图像的类似物,称为视觉叫醒词。我们可以把它想象成一个图像的二值分类来表现某物是存在还是不存在。

例如,可以设计智能照明系统,使得其在检测到人的存在时启动,并在人脱离时关闭。同样,当存在特定的动物时,野生动物摄影师可以使用它来照相,而当他们发现有人时,可以使用宁静摄像机拍摄照片。下面显示了 TinyML 当前机械学习用例的更广泛概述。

TinyML 的机械学习用例(源图像:NXP)。TinyML 事情方式TinyML 算法的事情方式与传统机械学习模型基底细同。通常,这些模型是在用户的盘算机上或云上举行训练的。

后期训练是 TinyML 的事情真正开始的地方,这个历程通常被称为深度压缩。深度学习模型压缩流程图(图源:https://arxiv.org/pdf/1510.00149.pdf)模型蒸馏训练完成后,模型会被修改,以建立一个表现形式更紧凑的模型。剪枝和知识蒸馏是两种常用方法。

知识蒸馏的基本思想是,较大的网络具有一定的稀疏性或冗余性。虽然大型网络具有较高的表现能力,但如果网络容量不饱和,则可以在具备较低表现能力的较小网络(即较少的神经元)中举行表现。下图演示了知识蒸馏的历程:深度压缩历程图(图源:https://arxiv.org/pdf/1510.00149.pdf)同样地,剪枝可以使模型表现更紧凑。

欧洲杯足彩

广义上讲,剪枝试图去除对输出预测影响较小的神经元。通常与较小的神经权重有关,而较大的权重由于其在推理历程中的重要性而保持稳定。

然后,网络在剪枝后的架构上重新训练,微调输出。为模型的知识表现蒸馏举行的剪枝。量化经由蒸馏后,模型在训练后被量化成一种与嵌入式设备架构兼容的花样。

为什么需要量化?想象一下,一个使用 ATmega328P 微控制器的 Arduino Uno,它使用 8 位运算。要想在 Uno 上运行一个模型,理想情况下模型权重必须存储为 8 位整数(而许多台式盘算机和条记本电脑使用 32 位或 64 位浮点表现)。通过量化模型,权重的存储巨细淘汰为原来的 4 分之一(如 32 位到 8 位值的量化),而瞄准确度的影响可以忽略(通常约为 1–3%)。

8 位编码历程中量化误差的示意图(图源:https://tinymlbook.com/)此外,在量化历程中,由于量化误差,一些信息可能会丢失。为相识决这个问题,量化感知(QA)训练被提出并作为一种替代方案。哈夫曼编码哈夫曼编码是可变字长编码 (VLC) 的一种,该方法完全依据字符泛起概率来结构异字头的平均长度最短的码字。编译一旦模型被量化和编码,它就被转换成一种花样,该花样可以被某种形式的小型神经网络解释器解释,其中最盛行的可能是 TF Lite(巨细约 500kb)和 TF Lite Micro(巨细约 20kb)。

然后将该模型被编译成 C 或 C++(大多数微控制器都能有效地使用内存),并由设备上的解释器运行。TinyML 应用法式事情流(图源:https://tinymlbook.com/)TinyML 大部门技巧来自于处置惩罚庞大的微控制器世界。TF Lite 以及 TF Lite Micro 之所以这么小是因为所有不须要的功效都被删除了。

不幸的是,一些有用的功效也被删除了,如调试和可视化。这意味着,如果在部署期间泛起错误,就很难判断发生了什么。

此外,当模型存储在设备上时,还能举行推理。这意味着微控制器必须有足够大的内存来运行(1)操作系统和库;(2)神经网络解释器,如 TF Lite;(3)存储的神经权重和神经结构;(4)推理历程中的中间效果。因此,量化算法的峰值内存使用率,以及内存使用量、乘法累加单元(mac)的数量、精度等经常在 TinyML 研究论文中引用。

为什么不在设备上训练在设备上举行训练会带来更多的「并发症」。由于数值精度降低,很难保证充实训练网络所需的准确率水平。尺度台式盘算机上的自动区分方法对于机械精度约莫是准确的。

以 10^-16 的精度盘算导数令人难以置信,可是对 8 位值使用自动微分将会导致较差的效果。在反向流传历程中,这些导数会组合并最终用于更新神经参数。在如此低的数值精度下,模型的准确度可能很差。

话虽如此,神经网络已经使用 16 位和 8 位浮点数举行了训练。2015 年,Suyog Gupta 及其同事揭晓的第一篇有关降低深度学习中的数值精度的论文是《Deep Learning with Limited Numerical Precision》。

论文效果讲明,32 位浮点表现形式可以淘汰为 16 位定点表现形式,而准确度险些没有降低。但这是使用 stochastic rounding 算法的唯一情况, 因为通常来说,它会发生无偏效果。

2018 年,Naigang Wang 及其同事在其论文《Training Deep Neural Networks with 8-bit Floating Point Numbers》中使用 8 位浮点数训练了神经网络。由于需要在反向流传期间保持梯度盘算的保真度(在使用自动微分时能够实现机械精度),因此使用 8 位数字来训练神经网络要比使用推理更有挑战性。盘算效率如何?模型还可以举行裁剪,以提高盘算效率。

广泛部署在移动设备上的模型架构如 MobileNetV1 以及 MobileNetV2 就是很好的例子。这些本质上是卷积神经网络,它们重新界说了卷积运算,使其盘算效率更高。

这种更有效的卷积形式被称为深度可分散卷积。此外还可以使用基于硬件的设置以及神经架构搜索来优化架构延迟,但这些在本文中没有涉及。

下一次 AI 革命在资源受限设备上运行机械学习模型的能力为许多新的可能性打开了大门。AI 的生长可能使尺度机械学习越发节能,有助于淘汰人们对数据科学影响情况的担忧。此外,TinyML 允许嵌入式设备被赋予基于数据驱动算法的新智能,这些算法可以用于从预防性维护到森林中的鸟啼声检测等任何方面。虽然一些 ML 从业者无疑会继续扩大模型的规模,一个新的趋势是开发更多具备内存、盘算和能耗效率的机械学习算法。

现在,TinyML 仍处于起步阶段,未来生长的空间还很大。原文链接:https://towardsdatascience.com/tiny-machine-learning-the-next-ai-revolution-495c26463868(摘自:机械之心)。


本文关键词:技术前沿,边缘,新方法,TinyML,超低,功耗,存储,欧洲杯足彩

本文来源:欧洲杯足彩-www.zz5108.com

网上报名

学校信息

职业资格证即职业资格证书,是表明劳动者具有从事某一职业所必备的学识和技能的证明。它是劳动者求职、任职、开业的资格凭证,是用人单位招聘、录用劳动者的主要依据,也是境外就业、对外劳务合作人员办理技能水平公...

同类课程推荐

返回顶部