Article / 文章中心

一文读懂边缘计算(Edge ML)!

发布时间:2022-06-02 点击数:49

使用边缘计算在本地设备上启用人工智能

随着物联网(IoT)的发展,云网络负担过重,企业忽视了安全等关键的云计算问题。所有这些问题的解决方案是在本地设备“Edge ML”上运行机器学习模型。

编辑搜图

边缘计算是一种允许智能设备利用机器和深度学习算法在本地分析数据的技术,从而减少对云网络的依赖。本文将重点了解边缘计算的工作原理和功能。

首先,先来了解物联网(IoT)  的概念及其对边缘计算的影响。

一、什么是物联网?

物联网(IoT)是一种物理项目网络,其使用预定义的协议和信息传感设备将一切连接到互联网。该设备通过信息共享和通信,实现智能识别、定位、跟踪、监控和管理。

互联网不再只是计算机网络;其已经演变成一个由各种形状和大小的设备组成的网络,包括车辆、智能手机、家用电器、玩具、相机、医疗仪器和工业系统、动物、人和建筑物,所有的设备都相互连接,所有的通信和共享信息都基于预定义的协议,以实现智能重组、定位、追踪、安全可控,甚至个人实时在线监控、在线升级和推进。

物联网(IoT)是一个概念和范式,其考虑了环境中普遍存在的各种对象,这些对象可以通过无线和有线连接和独特的解决方案,相互交互并与其他对象协作,以创建新服务并实现共同目标。

二、什么是边缘计算?

边缘计算作为一种云计算扩展出现,使云服务更接近最终用户。边缘计算提供虚拟计算平台,这些平台提供通常位于网络边缘的处理、存储和网络功能。

边缘服务器是向终端设备提供服务的设备,可以是IoT网关、路由器和移动网络基站、汽车或其他位置的小型数据中心。边缘设备是向边缘服务器请求服务的终端设备,如手机、物联网设备和嵌入式设备。

边缘计算与人工智能的结合为基于人工智能的应用程序的主要问题提供了可能的答案。这种新的智能模式被称为边缘智能。边缘智能是指在靠近数据收集地点的地方,由数据收集、缓存、处理和分析的系统和设备组成的网络,目的是提高数据质量和速度,同时保护数据隐私和安全。

传统的云端智能需要终端设备将创建或收集的数据上传到远程云端上,而边缘智能则在本地处理和分析数据,有效保护用户隐私,减少反应时间,节约带宽资源。

何时使用边缘计算

因此,有效地处理、存储和处理数据变得更加重要。快速有效地处理数据尤其重要,以最大限度地减少安全隐患,加快企业流程。边缘计算试图优化web应用程序和互联网设备,同时减少带宽利用率和通信延迟。

例如,石油和天然气装置通常位于偏远地区。边缘计算通过使处理更接近资产来实现实时分析,从而减少对集中云的高质量连接的依赖。

三、边缘计算是如何工作的?

边缘计算背后的目标是让模型存在于网络边缘的设备上。然后,ML算法在设备上本地执行,无需互联网连接来分析数据并产生可用结果。整个过程可以分为四个主要部分。

1.边缘缓存

边缘缓存是一种分布式数据系统,将边缘设备及其周围环境产生的数据以及从互联网接收到的数据,进行收集和存储,以支持边缘用户的智能应用。在边缘,数据是分散的。

边缘设备,如监控设备和传感器,收集环境数据。这些数据被保存在适当的位置,并通过智能算法进行处理和分析,为最终用户提供服务。

缓存基于请求冗余。在边缘缓存中,获取的数据被输入到智能应用程序中,结果被传输回数据存储的位置。冗余分为类型冗余、数据冗余和计算冗余。

数据冗余是指智能应用程序的输入可能是相同的,也可能是部分相同的。考虑到连续的移动视觉分析,连续帧之间有很多可比较的像素。一些资源有限的边缘设备可能需要将捕获的视频传输到边缘服务器进行额外的处理。在使用缓存时,边缘设备只需要上传各种像素或帧。边缘设备可能会重复使用重复段的结果,以尽量减少过度处理。

计算冗余是指智能应用所需要的计算任务可能是相同的。例如,边缘服务器向边缘设备提供图像识别服务。来自同一环境的识别任务可能是相同的,例如,来自同一位置的不同用户的物体识别任务。边缘服务器可以立即将之前获得的识别结果反馈给用户。

缓存可以存储在三个位置:宏观和微观基站,以及边缘设备。有两种类型的材料被称为流行文件和智能模型。宏基站通常用作边缘智能中的边缘服务器,提供存储数据的智能服务。

缓存的交付有两种方式,一种是从单个基站交付,另一种是基于多个基站之间的协作从多个基站交付。此外,还仔细研究了缓存的理想内容,即基于数据冗余的内容和基于计算冗余的内容。与宏观和微观基站相比,边缘设备往往拥有更少的资源和更大的移动性。由于宏BSs、微BSs和边缘设备的存储容量有限,必须解决内容替换问题。

2.边缘训练

边缘训练是一个分布式学习过程,使用存储在边缘的训练集学习所有权重和偏差的最佳值,以及隐藏的模式。边缘训练,与传统的在强大的服务器或计算集群上进行集中训练的方法不同,通常发生在边缘服务器或边缘设备上,其通常没有集中式服务器或计算集群那么强大。

该设备可以通过两种方式进行训练:单独训练和协作训练。单独训练是在一个设备上完成的,没有其他人的帮助,而协作训练是指许多设备一起工作,训练一个共享的算法。由于单独训练需要更多的硬件,而这些硬件有时是不可获得的,现有的大多数材料都集中在协同训练设计上。

边缘训练比集中式训练模式慢得多,在集中式训练模式中,强大的CPU和GPU可以确保以最短的训练周期获得良好的结果。一些研究人员对加速边缘训练感兴趣。根据训练体系结构,将训练加速工作分为单独训练加速和协作训练加速两类。

单机训练是一个封闭系统,在单个设备上通过迭代计算获得最优参数或模式。另一方面,协作训练是基于多个设备的协作,这些设备需要定期联系以更新。更新的频率和更新的成本是影响沟通效率和培训成功的两个因素。

该领域的研究主要关注如何在降低更新频率和成本的情况下保持模型/算法性能。此外,协作训练的开放性使其容易受到恶意用户的攻击。还有一些关于隐私和安全问题的文献。

3.边缘推理

边缘推理是在前向传递中使用学习算法,来计算边缘设备和服务器上的输出的阶段。目前,大多数AI模型都打算部署在具有强大CPU和GPU的设备上,然而,这在边缘设置中是不可行的。

通过发明新的算法来减少硬件需求并自然适合边缘设置,或者通过压缩现有的模型来消除推断过程中的多余操作,使模型适合于边缘环境。

在构建新方法的情况下,有两种方法:允许计算机构建最优模型,即架构搜索,以及使用深度可分离卷积和组卷积的人类发明的架构。

目前的模型被压缩以进行模型压缩,以创建更薄和更小的模型,这些模型具有更高的计算和能源效率,并且精度损失很低或没有损失。模型压缩技术包括低秩逼近、知识蒸馏、压缩层设计、网络剪枝和参数量化。

4.边缘卸载

边缘卸载是一种分布式计算范式,可在边缘提供缓存、训练和推理等计算功能。如果单个边缘设备缺乏支持某个边缘智能应用程序的能力,则应用程序职责可能会被转移到边缘服务器或其他边缘设备。边缘卸载层透明地向其他三个边缘智能组件提供计算服务。卸载策略在边缘卸载中至关重要,因为其要最大限度地利用边缘环境中的可用资源。

云服务器、边缘服务器和边缘设备包含可用的计算机资源。设备到云(D2C)卸载、设备到边缘服务器(D2E)卸载、设备到设备(D2D)卸载和混合卸载是最常用的技术。

D2C卸载技术选择将预处理操作留在边缘设备上,并将剩余的作业卸载到云服务器,这可能会大大减少上传数据的数量和延迟。

D2E卸载方法采用了类似的程序,可以进一步减少延迟和对蜂窝网络的依赖。

专注于D2D卸载方法中的智能家居场景,其中物联网小工具、可穿戴设备和智能手机,协作执行训练/推理任务。

混合卸载解决方案提供了最大的适应性,充分利用所有可用资源。

边缘计算的应用

边缘计算正被用于各个领域,其在本地或网络边缘收集、处理、过滤和分析数据。边缘计算用于以下领域:

(1) 医疗保健

边缘计算可以通过利用机器学习和自动化来帮助数据访问。其有助于识别需要医生快速关注的有问题的数据,以改善患者护理并消除健康事件。

病人的慢性疾病可以通过健康监测器和其他可穿戴医疗设备进行监测。其有可能在需要援助时立即通知护理人员,从而挽救生命。此外,手术机器人必须能够立即解释数据,以便安全、及时、准确地提供帮助。如果这些设备依赖于在做出判断之前,将数据发送到云端,后果可能是灾难性的。

(2) 建设

边缘计算主要用于建筑行业的工人安全,从安全设备、摄像头、传感器等收集和分析数据。其为组织提供了工作场所安全条件的概述,并保证人员遵守安全法规。

(3)广告

零售企业的有针对性的营销和信息,取决于现场设备中指定的关键因素,如人口统计信息。在这种情况下,边缘计算可以帮助保护用户隐私。其可能会对数据进行加密并维护数据源,而不是将未受保护的数据传输到云端。

(4)制造业

在制造业中,边缘计算被用于监控工业过程,并使用机器学习和实时分析来提高产品质量和检测生产错误。其还鼓励将环境传感器纳入制造业务。

边缘计算还提供有关库存组件及其使用寿命的信息,使生产商能够对运营和设施做出更准确和及时的业务选择。

(5)农业

边缘计算用于农业传感器,以测量养分密度和耗水量,并改善收成。传感器会收集环境、温度和土壤变量的数据,审查它们的影响,以提高农业生产力和保证在最有利的气候条件下进行收获。

(6)天然气和石油

边缘计算可用于监测天然气和石油设施的安全性。传感器持续测量湿度和压力。为了快速响应,需要有足够的网络连接。问题是,这些设施中的大多数都位于距离较远、联系有限的地方。

因此,将边缘计算置于此类系统处或附近,可提供增强的连接和持续监控能力。边缘计算还可以实时检测设备问题。这些传感器可以监控所有设备产生的能量,包括电动汽车、风电场系统等,并使用电网管理来帮助降低成本和高效地创造能源。

  • 自动驾驶汽车

自动驾驶汽车在人行横道前必须立即停车。依靠远程服务器来做出这种判断是不公平的。此外,采用边缘技术的汽车可以更有效地进行交互,因为其可以先相互交谈,而不是先将有关事故、天气状况、交通或转移的数据发送到远程服务器。边缘计算是有益的。

  • 智能音响系统

智能音响系统可以学习在本地理解语音命令,以执行简单的命令。即使互联网访问中断,打开和关闭灯、或更改恒温器设置也是可行的。

边缘计算的优点和缺点

(一)优点

1. 更快的响应时间

如前所述,在边缘设备处或附近部署计算进程有助于最大限度地减少延迟。

考虑在同一建筑物内移动文件。其需要更长的时间来交换文件,因为与位于全球任何地方的远程服务器进行对话,然后作为接收到的文件返回。该路由器使用边缘计算负责整个工作场所的数据传输,极大地减少了延迟。同时,还节省了大量的带宽。

2. 成本效益

边缘计算节省了服务器资源和带宽,从而节省了成本。当部署云服务来支持企业或家庭中的大量智能设备时,成本会增加。另一方面,边缘计算有可能通过将所有这些设备的计算部分重新定位到边缘来降低成本。

3. 数据保护和隐私

在海外服务器上移动数据会引起隐私、安全和法律方面的问题。如果被劫持并落入坏人之手,可能会造成严重的问题。

边缘计算使数据更接近其来源,同时保持在数据规则的参数范围内。其允许敏感数据在本地处理,而不是转移到云或数据中心。因此,数据在本地的场所内是安全的。

(二)缺点

1. 存储和成本

即使云存储的成本降低了,本地端也有额外的成本。这在很大程度上源于边缘设备存储容量的发展。边缘计算还有一个成本因素,因为必须替换或改进现有的IT网络基础设施,以支持边缘设备和存储。一些业务可能会发现,过渡到边缘网络的成本与构建和维护传统IT基础设施的成本相当。

2. 数据丢失

边缘计算的好处也伴随着危险。为了尽量减少数据损失,在部署系统之前,必须对系统进行良好的规划和编程。许多边缘计算设备应该在收集数据后丢弃无用的数据;然而,如果移除的数据是重要的,则数据就会丢失,并且在云端的分析是不准确的。

3. 安全风险

在云计算和企业级别有安全优势,但在本地级别也有安全危险。如果企业的本地网络容易受到攻击,那么让一个基于云计算的供应商提供一流的安全保障是毫无意义的。

总结

设备上的机器学习允许在接近数据源的地方进行计算,同时在上传数据时保持隐私,从而最大限度地减少了网络拥塞。通过本文,可了解到边缘计算的概念、工作原理、优缺点及其应用。