机器,设备学习的边缘

麻省理工学院的研究人员开发了一种技术,使AI模型能够不断地从智能手机和传感器等智能边缘设备上的新数据中学习,从而降低能源成本和隐私风险。

通过大卫·l·钱德勒 2022年10月18日
提供:麻省理工学院

微控制器是一种可以运行简单命令的微型计算机,是数十亿连接设备(从物联网设备到汽车传感器)的基础。但廉价、低功耗的微控制器内存极其有限,而且没有操作系统,这使得在独立于中央计算资源的“边缘设备”上训练人工智能模型具有挑战性。

在智能边缘设备上训练机器学习模型可以使其适应新数据并做出更好的预测。例如,在智能键盘上训练一个模型可以使键盘不断地从用户的书写中学习。然而,训练过程需要如此多的内存,在模型部署到设备上之前,通常是在数据中心使用功能强大的计算机完成的。这样做成本更高,还会引发隐私问题,因为用户数据必须发送到中央服务器。

为了解决这个问题,麻省理工学院和麻省理工学院- ibm沃森人工智能实验室的研究人员开发了一种新技术,可以使用不到四分之一兆字节的内存进行设备上的训练。为连接设备设计的其他训练解决方案可以使用超过500 MB的内存,大大超过大多数微控制器256-KB的容量(每兆字节有1024 KB)。

研究人员开发的智能算法和框架减少了训练模型所需的计算量,这使得过程更快,内存效率更高。他们的技术可以在几分钟内用于训练微控制器上的机器学习模型。

这种技术还通过将数据保存在设备上来保护隐私,这在数据敏感的情况下尤其有用,比如在医疗应用程序中。它还可以根据用户的需求定制模型。此外,与其他训练方法相比,该框架保留或提高了模型的准确性。

“我们的研究使物联网设备不仅可以执行推理,还可以不断更新人工智能模型到新收集的数据,为终身设备学习铺平了道路。低资源利用率使得深度学习更容易获得,并且可以有更广泛的覆盖范围,特别是对于低功耗的边缘设备,”电子工程和计算机科学系(EECS)副教授宋汉说,他是麻省理工学院- ibm沃森人工智能实验室的成员这篇论文描述这种创新。

与韩寒一起完成这篇论文的还有共同第一作者、EECS博士生林骥和朱立庚,以及麻省理工学院博士后陈伟明和王伟琛,以及麻省理工学院- ibm沃森人工智能实验室的主要研究人员甘闯。这项研究将在神经信息处理系统会议上发表。

韩寒和他的团队之前谈到了内存和计算瓶颈当试图在微小的边缘设备上运行机器学习模型时,这是它们的一部分TinyML倡议

利用神经网络进行机器学习

一种常见的机器学习模型被称为神经网络。这些模型大体上以人脑为基础,包含层层相互连接的节点(或神经元),它们处理数据以完成一项任务,比如识别照片中的人。首先必须训练模型,这包括向它展示数百万个例子,这样它才能学习任务。在学习过程中,模型会增加或减少神经元之间的连接强度,这被称为权重。

模型在学习过程中可能经历数百次更新,中间激活必须在每一轮中存储。在神经网络中,激活是中间层的中间结果。因为可能有数百万个权重和激活,训练一个模型比运行一个预训练的模型需要更多的内存,Han说。

Han和他的合作者使用了两种算法解决方案来提高训练过程的效率,减少内存密集型。第一种被称为稀疏更新,它使用一种算法,在每一轮训练中确定最重要的权重进行更新。该算法开始一次冻结一个权重,直到它看到精度下降到设置的阈值,然后停止。其余的权重被更新,而与冻结权重对应的激活不需要存储在内存中。

“更新整个模型非常昂贵,因为有很多激活,所以人们倾向于只更新最后一层,但你可以想象,这损害了准确性。对于我们的方法,我们有选择地更新那些重要的权重,并确保准确性得到充分保留,”韩说。

他们的第二个解决方案涉及量化训练和简化权重,通常是32位。一种算法将权重四舍五入,通过一种被称为量化的过程,使它们只有8位,这减少了用于训练和推理的内存量。推理是将模型应用于数据集并生成预测的过程。然后,该算法应用一种称为量化感知缩放(QAS)的技术,它就像一个乘数一样调整权重和梯度之间的比率,以避免可能来自量化训练的任何精度下降。

研究人员开发了一种名为微型训练引擎的系统,可以在一个没有操作系统的简单微控制器上运行这些算法创新。该系统改变了训练过程中步骤的顺序,因此在模型部署到边缘设备之前,在编译阶段完成了更多的工作。

“我们将大量的计算,如自动微分和图形优化,推到编译时间。我们还积极削减冗余操作符以支持稀疏更新。一旦在运行时,我们在设备上的工作量就会减少很多,”Han说。

研究人员通过训练计算机视觉模型来检测图像中的人来测试他们的框架。仅经过10分钟的训练,它就学会了成功完成任务。提供:麻省理工学院

研究人员通过训练计算机视觉模型来检测图像中的人来测试他们的框架。仅经过10分钟的训练,它就学会了成功完成任务。提供:麻省理工学院

一个成功的加速

他们的优化只需要157千字节的内存就可以在微控制器上训练一个机器学习模型,而其他设计用于轻量级训练的技术仍然需要300到600兆字节。

他们通过训练计算机视觉模型来检测图像中的人来测试他们的框架。仅经过10分钟的训练,它就学会了成功完成任务。他们的方法训练模型的速度比其他方法快20倍以上。

现在,他们已经证明了这些技术在计算机视觉模型上的成功,研究人员希望将其应用于语言模型和不同类型的数据,如时间序列数据。与此同时,他们希望利用他们所学到的知识在不牺牲准确性的情况下缩小更大模型的尺寸,这可能有助于减少训练大规模机器学习模型的碳足迹。

“AI模型在设备上的适应/训练,特别是在嵌入式控制器上,是一个公开的挑战。来自麻省理工学院的这项研究不仅成功地展示了这种能力,而且还为实时保护隐私的设备个性化提供了新的可能性,”英特尔的首席工程师Nilesh Jain说,他没有参与这项工作。“该出版物中的创新具有更广泛的适用性,并将引发新的系统-算法协同设计研究。”

-由Chris Vavra编辑,网页内容经理,控制工程, CFE媒体与技术,cvavra@cfemedia.com


作者简介:麻省理工学院新闻办公室