边缘机器学习的多层方法

文章作者:Richard Quinnell

边缘机器学习的多层方法可以帮助简化AIoT的开发和部署。

实现边缘人工智能(AI)需要在处理和大量开发工作的成本和性能之间进行权衡。加入机器学习,使边缘设备更具适应性,使问题复杂化。边缘的多层机器学习方法可以帮助简化开发和部署事物的人工智能(AIoT)。

实现边缘人工智能存在许多挑战,其中最重要的是需要平衡硬件成本和它所提供的计算性能。在这种平衡中经常考虑的一个权衡是,在边缘设备中很少或根本不包含机器学习(ML),依靠供应商开发的算法来处理人工智能任务。

然而,经验表明,由于环境的局部变化,人工智能的现场性能可能会有很大的差异。因此,开发一个健壮的人工智能算法,可能需要在开发过程中进行大量的训练,以确保结果能够适应广泛的条件。即使这样,现场经验可能仍然显示出意想不到的变化,损害某些装置的性能,需要额外的培训发展,随着系统的激增。这些因素大大增加了开发工作和广泛部署的成本。

在边缘设备中实现一定程度的ML可以帮助缓解这个问题。如果该设备能够学习处理其特定的环境变化,那么最初的人工智能训练就不必如此全面。但是在边缘处实现一个鲁棒的ML算法加剧了硬件成本/性能的权衡问题。另一种选择是,让设备向基于云的ML工作报告数据,这会带来通信和带宽的复杂性。

因此,在面向广泛部署的设计中,如何在硬件成本、处理能力、通信能力、人工智能培训开发工作和人工智能现场性能之间取得适当的平衡是目前实现AIoT的主要障碍。在最近的嵌入式视觉峰会,我遇到了一个有趣的演讲一个可能提供解决方案的方法。由蒂姆·哈特利,机器视觉开发公司产品和营销副总裁的介绍SeeChange技术,进行自动神经网络模型训练。在文章中,Hartley描述了视觉人工智能系统的多层ML方法,似乎适用于任何基于传感器的人工智能系统,如图所示图1

一个多层ML方法的流程图 图1设置多个阈值可以帮助识别数据,为在第二个ML程序中细化人工智能算法提供机会。来源:丰富Quinnell

在一个基本的人工智能系统中,边缘算法通常会有一个基于传感器数据做出决策的单一阈值。通过阈值将导致一个动作,而不通过阈值将导致另一个动作,设备的ML程序可以使用这些结果来进一步改进其算法。然而,这种方法受到本地ML程序性能的限制。它还需要仔细设置阈值,以避免错误触发,同时也避免在适当的时候触发失败。

绕过这个限制的一种方法是使用另一个更强大的ML程序来检查数据。窍门是限制发送到第二个程序的数据量。例如,如果安装使用多个设备,则边缘服务器可以比较来自多个设备的结果,以查看是否有任何事件在一个设备上超过了阈值,而在另一个设备上没有。然后,服务器可以用增强的ML程序处理此类“感兴趣的事件”,以进一步细化附加设备的算法。

或者,设计师可以为边缘设备AI提供第二个阈值,为未达到响应阈值但高于拒绝阈值的结果事件创建一个“感兴趣的区域”。然后,设备可以将任何在该领域感兴趣的事件发送到一个基于云的ML程序——一个比设备程序更强大的程序——可以使用它们来改进设备的人工智能算法。

Hartley在他的演讲中指出,在数据处理中有一个额外的层的机会。如果基于云的ML程序也使用两个阈值,那么它就可以识别感兴趣的事件,并将其提交给人工操作员进行分析。这种方法允许人类的分析来帮助细化基于云的ML,而基于云的ML提供分析来细化设备的ML。

这种多层方法有希望允许AIoT系统利用ML来优化性能,同时平衡本地处理的成本和通信带宽的需求。它还承诺允许创建系统,使人工智能算法的改进成为一个自动化过程,以便广泛部署不会导致繁重的开发工作。该团队可以训练AI进行初始部署,然后让AIoT系统自己完善AI。

本文最初发表于经济日报

丰富Quinnell退休工程师兼作家,曾任EDN总编辑。

相关文章

留下你的评论