边缘智能:AI与物联网融合架构
本文提出一种结合边缘计算与云计算优势的物联网人工智能架构,通过在云中训练模型并在边缘执行推理,解决延迟、带宽与算力限制问题。系统支持CPE链自动化部署,并引入策略技术实现动态管理,适用于灾害响应、农业自动化等实时性要求高的场景。
将人工智能应用于物联网的边缘计算架构
摘要
互联物联网设备的激增为基于人工智能的方法带来了大数据问题。这些设备所需响应时间要求物联网数据必须在边缘进行处理,但边缘通常缺乏学习AI模型所需的资源。我们提出一种架构,可兼顾边缘处理与基于服务器/云中心计算在人工智能算法方面的优势。我们讨论了如何利用策略管理来改进并支持该架构。
关键词
物联网、人工智能、流数据、边缘计算、认知分析
I. 引言
物联网(IoT)已变得至关重要,因为它能够基于实时上下文信息提供无处不在的服务。由于设备数量庞大以及视频等高带宽模态的日益使用,物联网设备产生了大量数据。为了实时从海量物联网数据中提取洞察,处理必须在数据生成的位置附近(即边缘)进行。然而,大多数机器学习和人工智能算法需要大量的处理能力,而边缘端并不总是具备这样的资源。我们提出了一种基于分布式边缘/云范式的架构,能够在边缘与中心位置处理数据的收益和成本之间实现良好平衡。
在第二部分中,我们描述了一些在边缘结合使用物联网和人工智能的激励性示例。第三部分介绍了将人工智能应用于物联网数据的不同方法,接着在第四部分描述了一个可用于简化创建边缘人工智能应用程序任务的系统。在第五部分中,我们描述了策略技术在该系统中的几种应用方式。最后,在第六部分中,我们提出了结论并提及了一些未来的研究方向。
II. 需要人工智能的物联网应用
物联网应用指的是监控并可选择性地操控物理环境的任何应用。例如,追踪动物、使用无人机进行监控和边境巡逻、维护建筑设备、飞机遥测、通过语音命令控制百叶窗等。这些应用中的许多都需要使用复杂的人工智能功能,包括图像、音频和视频分析。
一群无人机在检查偏远地区的森林火灾或倒塌建筑物时,需要具备识别阴燃区域或可能被困人员/宠物的能力。每架无人机都需要能够识别和检测物体,或可能存在隐患的区域,例如阴燃的火点。由于无法通过无线网络连接并传输大量数据,或及时接收中央控制器的指令,这些任务变得更加复杂。混乱的地形和灾难环境中典型的快速变化情况也可能加剧这些问题。整体系统需要能够执行复杂的目标检测,识别可能仍在阴燃的区域,并引导灭火机制前往该区域。
同样,如果我们考虑一辆在大型小麦农场上负责喷洒除草剂的农业车辆,该车辆需要在以每小时50英里的速度行进时,区分可能存在的杂草和所需作物,并仅对杂草喷洒除草剂。这需要复杂的图像处理技术,以在一片绿色中区分杂草和作物。此外,这种识别和响应必须在不到0.1毫秒的时间内完成,以实现厘米或更小的精度。
其他应用包括系统能够监听设备机房中发动机的异常声音并关闭故障电机,或监听含有危险化学品的大桶的滴漏情况并启动纠正措施。
为了满足这些用例所需的响应性,数据不能发送到云进行处理。然而,实现良好的视觉或听觉识别所需的算法需要大量的计算能力,超过了无人机或车辆上所能具备的计算能力。因此,我们需要创建一种混合架构,能够在系统的适当位置智能地处理数据。
III. 物联网中人工智能的架构替代方案
人工智能解决任何问题的方法都可以用图1所示的两阶段过程来抽象。在该过程的第一阶段,构建一组AI模型。这些模型可以通过使用机器学习算法和一组训练数据、处理自然语言文档或编码人类专业知识来构建。模型可以用不同的方式表示,例如推理规则集、决策树或神经网络。
一旦构建了这些模型,它们就可以被使用根据传感器输入数据进行推理,并指导系统的运行。
以农业车辆为例,训练阶段可以利用一组所需作物和不需要的杂草的照片来创建能够区分作物与杂草的模型。在推理阶段,车辆使用这些模型对遇到的植物进行分类,并对不需要的杂草启动除草剂喷雾。在灾后恢复或火灾预防的例子中,可以对能够将图像映射到危险情况的模型进行类似的训练。同样,发动机正常和异常声音的录音或泄漏的录音可用于为设备间或危险化学品泄漏创建模型。
人工智能解决方案的模型构建步骤需要大量的处理能力。最佳模型的构建通常需要大量训练数据、处理大规模文档语料库,或两者兼有。所需的处理能力通常只有在中心位置、大型数据中心或云站点才能获得。集中化具有其他优势——在单一同质环境中运行的中央系统更易于维护、编程和升级。它具备全局知识,能够全面掌握所有可用数据,并可提供更好的安全性、弹性,并通过规模经济降低每笔交易的成本。云计算日益流行在很大程度上归功于集中式系统的固有优势。
构建人工智能赋能的物联网系统的一种自然方式是采用集中式方法。可以将现场传感器收集的所有数据流式传输到中心位置,并在此处进行模型构建和推理阶段。采用这种方法时,参与灾后恢复的无人机将所有信息传回中心位置进行处理。中心位置应已创建所需的模型,并在图像流式传输时使用这些模型执行推理任务。如果无人机与中心位置之间的网络连接具有足够的带宽和较低的延迟,该方法可以有效运行。
情况如图2所示。然而,集中式方法可能存在某些缺点。除了延迟问题外,还需考虑数据隐私、数据量或网络连通性成本等因素。另一种方法是将模型构建放在云中进行,而推理任务则在边缘完成,如图3所示。



边缘方法具有较高的带宽效率,向中心位置发送的数据更少。除了降低成本并改善延迟和响应性外,该方法还具有提升系统可扩展性的优势。
一些人工智能范式本质上是分布式的,例如多智能体系统 [1]。多智能体系统由相互通信和交互的分布式实体组成,其行为基于某种学习到的或预编程的模型。然而,此类多智能体系统以复杂的方式相互作用,可能具有任意拓扑结构,并可能导致不稳定性及涌现现象 [2]。这种复杂性对于支持人工智能的物联网解决方案而言既不必要也不理想。一种更简单的方法足以应对大量实际的物联网应用,即采用树形结构作为拓扑结构,其中边缘设备作为树的叶节点,集中式云系统作为树根。此外,对于大多数物联网用例而言,仅包含边缘节点和根节点、深度为1的树结构已足够。
对于大多数物联网应用而言,所需的工作不仅仅是创建一个模型并在边缘使用它。一个应用可能包含许多不同的步骤,其中一些可能基于人工智能技术,而另一些则可能不是。通常,我们认为一个应用由多个处理元件(PE)组成,其中一些我们称之为认知处理元件(CPE),因为它们使用人工智能模型来生成输出。因此,一个应用将由一个包含多个分支的处理元件流程图构成。此类工作流的一个良好表示方式是由Node-Red这类系统生成的,Node-Red是一种用于构建物联网(IoT)应用的工具,专注于简化代码块之间的“连线”以执行任务。
为了便于开发,处理元件链在集中式环境中进行开发,连同任何必要的支持程序一起打包,并部署到边缘。这使得复杂的分析能够对数据流进行分布式处理,同时利用云环境的强大能力来开发所需的处理元件集合,以及对分布式边缘环境的整体管理。
IV. 原型边缘部署系统
我们的长期愿景是让用户只需简单地按一下按钮,即可在边缘设备上利用云中的认知组件组合出相关应用。该方法利用云的计算资源来实现以下目标:(a)执行复杂的学习操作;(b)在确定将要部署到边缘的适当分析方法之前,同时建模、测试并评估大量算法;(c)利用云中广泛可用的微服务设计新功能,以丰富训练数据集并提高所选模型的准确率;以及(d)定义一个可验证过程,用于CPE链在边缘设备上的组合与协同部署。
尽管在云中获取训练数据是我们所提出方法的一个关键优势,但在基于云的解决方案中,帮助数据科学家找到相关数据是一个首要关注的问题。用户应能够将他们的训练数据上传到云中,之后系统会自动创建边缘程序。他们还应能够访问其他科学家提供的标注数据。这种通过众包方法对标注数据进行传播和再利用的方式,进一步增强了我们在将AI模型部署到边缘之前,在云中对其进行准确训练和测试的能力。在某些情况下,当无法获得来自边缘设备的真实测量数据时,可能希望使用在云中生成的模拟数据。
可以针对各种CPE链在云中构建模板,并将其与一个或多个AI模型相关联。CPE链的主要用途是建立推理所需的数据管道。典型的CPE链包含五个基本元素,用于执行数据采集、特征工程、聚合、推理和报告。CPE链还可以通过用户定义函数(如用户定义过滤器)进行扩展,也可包含在边缘运行模型、监控特定算法性能和/或设置触发器以报告机器学习模型评分或分类所需的系统定义函数。
CPE链还可以被设计为包含多个按顺序连接的认知元素,以形成更复杂的认知程序,其中一个AI模型产生的分类输出可作为第二个AI模型特征向量中的输入特征。

整体能力可以用三个阶段来描述:发现、部署和运行。
图4中指出了一个正在探索的第四阶段,稍后将简要描述。

在“发现”阶段,用户将上传训练数据、对其进行标注,并测试多种机器学习模型。这些模型可从多个库中获取。其目标是发现对训练数据领域最有效的模型。根据模型对应的F分数和损失函数,确定表现最佳的N个模型。随后,用户可选择一个或多个模型进行部署。自动化模型生成采用一系列技术组合:(a)同时训练多个模型(例如SVM、随机森林、K-近邻等);(b)应用已知的特征“工程”方法,以识别所选模型的潜在改进空间;(c)使用测试数据比较同一模型的不同实现方式(Python vs Spark vs SPSS)。
在部署阶段,所选模型会被检索、序列化并打包为Docker容器,然后加载到共享仓库中,供边缘组件访问。相应的CPE链被实现为一个Node-Red流程,该流程中的每个节点都围绕CPE链中确定的处理元件实现一个包装器。该Node-Red流程还包含在训练阶段构建的初始词图,并包含训练集的词汇表。
在运行阶段,边缘设备上运行的微服务负责根据用户请求实例化CPE流,并在边缘设备上执行相关的Docker容器。在边缘设备内部,CPEs根据训练阶段定义的特征选择和变换被组织成CPE组。由于CPE组具有相似的特征向量,因此该组中所有模型运行所需的前置数据转换(即特征工程、聚合、词哈希等)只需为组内的所有机器学习模型执行一次。模型被定制到适当的特征集,该特征集可扩展以包含聚合和构造特征。后者利用了可能可用且已知在识别目标特征方面有效的附加信息。
上文简要提到的重训练阶段旨在获取有关CPEs有效性的信息已部署以进一步改进。这种向云的反馈机制旨在实现学习和持续改进。

我们的模型部署方法是一个框架,实现了用于将机器学习模型自动部署到边缘的REST API。系统架构分为云子系统和边缘子系统。
云子系统实现了用于构建CPE流、训练机器学习模型并将训练好的模型导出到Docker仓库所需的服务。云子系统的一个关键组件是数据科学家认知助手(CADS),用于训练和比较多个机器学习模型的推理性能。
边缘子系统实现了实例化CPE流以及代表CPE流中引用的模型的相应Docker容器所需的服务。
V. 策略技术
A. 策略技术的应用
策略技术的应用已被证明对于简化复杂的分布式环境 [3] 的管理和操作非常有用。它允许根据本地环境按需做出决策,同时保持由整体管理系统施加的约束。因此,策略为软件适应不同的边缘环境以及自主组件以可接受的方式响应变化的条件提供了一种途径。上述的边缘/云模型通过允许在本地部署的分析工具独立处理数据流,从而增强了边缘设备的自主性。
分布式环境的管理还必须保持边缘组件的自主性。若采用集中式方法来监控和维护系统中所有设备本地状态的详细信息,其所固有的处理、通信和存储开销将过于昂贵。因此,使用策略技术是支持分布式管理的自然方式。在我们的边缘/云模型中,政策将成为各种管理和操作流程中的关键决策机制。
边缘组件将具有关于其性能、可执行的分析数量以及与其本地环境中的数据相关的模型数量的管理策略。从一个边缘设备获得的知识可以被传达给其他边缘设备,以协调活动并帮助它们做出选择。这种跨组件影响的适用性可以基于各个系统的属性及其当前上下文。
各种边缘组件之间的交互越动态,底层策略技术所需灵活性就越高。当前基于策略的管理模型具有这样的语义:管理系统设定的政策在部署到受管系统时,其条件和动作是固定的。而一种较新的策略技术范式允许受管设备自主生成自身的政策 [4]。这些政策可根据本地环境以及边缘组件之间的直接交互动态变化,从而提高受管设备的自主性和响应性。
政策可以在分布式系统内以多种方式使用,以支持不同的决策过程。它们不仅限于运行管理决策。例如,鉴于存在大量不同的机器学习模型,必须就哪些模型最适合哪些类型的分析以及相关的训练集做出选择。这些信息可以记录在政策中,以反映现有知识或系统经验。
B. 联盟场景与政策示例
在联盟行动中,例如当来自不同国家的士兵需要执行联合任务时,通常必须建立一个动态兴趣社区。动态兴趣社区(CoI)是指一群个人为了在特定时期内完成某项任务而聚集在一起,并在经过特定时期后或任务完成后解散的群体。此类动态兴趣社区也可能在非军事环境中形成,例如当不同的民用机构联合起来灭火或应对飓风aftermath时。在动态CoI中,并非所有成员都必然受到同等信任,因此与信息共享相关的政策可能因联盟成员群体而异。这可以被视为社会技术系统 [5] 的一个实例。
当动态兴趣社区(CoI)形成时,它们需要支持性的信息技术基础设施以更有效地开展操作。资产可能来自各个不同的联盟成员,并且需要实现互操作。软件定义联盟(SDC)技术可提供此类支持 [6]。它们结合并扩展了软件定义网络的概念,以在联盟行动的上下文中运行。支持软件定义联盟所需的一项关键技术是基于策略的管理系统(PBMS)。我们将描述在涉及美国和英国两国资产的特定联盟场景上下文中所使用的政策类型。
一座岛屿发生了地震。许多建筑物倒塌,人员被困,基础设施受损。多艘美国和英国舰船正在该区域演习并提供援助,但在他们到达之前会有几小时的延迟。我们关注的是从舰船操作的无人机的部署,这些无人机原本设计用于海上搜索。它们需要被改装以用于搜索在基于陆地的地震搜救任务中,且必须在几小时内完成。
这些无人机配备了摄像头,并拥有用于图像处理以识别目标的(边缘)推理引擎。因此,岸上的数据科学家开始为地震区域创建训练数据。这些数据包括合成数据(例如,将物体叠加在人体上)、来自其他地震的开源信息,以及从岛屿上的第一响应者传回的一些图像,这些第一响应者处于超负荷状态且通信能力有限。该学习阶段利用美国设施在岸上进行,其输出结果通过卫星发送至美国和英国的船只。
许多政策适用于此场景。这些政策可用于从以往事件中选择训练数据,以最好地匹配岛屿的特征,例如植被和建筑结构材料。政策还可用于选择可信来源的开源信息。在无人机性能可能最初较差但经过重新训练后会提升的情况下,政策也可用于选择其他信息来源,例如使用人工分析师来补充对无人机的图像处理。可能需要保护某些图像的隐私,例如尊重在该岛屿拥有房产的贵宾的敏感性。
美国和英国的无人机及其传感器具有不同的能力。通过政策来充分利用这些资源,例如,使用部分无人机识别可能有人员伤亡的区域,而使用其他无人机定位伤亡人员。尽管这些无人机被设计为自主运行(即不需要远程飞行员),但也可以选择由地面部队在视距内操控无人机,以获取复杂损毁城市景观中的图像。相关政策包括对飞行员资质的评估,以及在无人机需求较高时进行资源冲突化解。
机器学习算法本身可能会利用政策来选择各种替代方案。在由不同模型组成的集成中,性能可能与模型在不同训练集上的有效性同样重要。在灾难情况下,快速得出粗略结论通常比等待详细分析更为可取。类似地,必须权衡误报(错误地判断有人被困在建筑物的瓦砾中)与漏报(未能检测到实际上被困的人)。通常,减少一种类型的错误会导致另一种类型的错误增加。可以根据正在进行的操作和本地环境,通过政策来优先选择其中一种结果。
VI. 结论
我们提出了一种在云上构建分析包并将其部署到边缘使用的架构。基于该架构的基础设施正在设计和原型设计中。一些初步实验结果非常有前景。此类系统能够以受控方式分布式处理数据流,将密集但结构良好的处理任务在边缘完成。边缘计算在降低延迟、减少数据移动以及保护本地数据隐私方面非常有效。
我们继续研究观察者与控制器(边缘和云)之间的功能划分,并确定高效构建用于流数据的分布式协同分析应用所需的支持和工具。
我们还展示了策略技术如何用于此类动态分布式系统的管理和运行控制。文中举例说明了在处理方案选择以及性能、弹性和隐私等系统特性管理中,政策自然产生的多种方式。基于策略的机制正随着物联网和协同计算的需求不断发展。我们正在研究如何为协同自主系统提供必要的支持,主要通过应用生成型策略模型来实现。这些模型允许受管系统在其所属整体系统目标所设定的范围内自行生成策略。该范式的有效性及其实施所需的工具和数据结构正在被研究。
更多推荐
所有评论(0)