什么是边缘计算边缘计算是如何工作的
什么是边缘计算?边缘计算是在靠近物或数据源头的网络边缘侧,通过融合网络、计算、存储、应用核心能力的分布式开放平台,就近提供边缘智能服务。简单点讲,边缘计算是将从终端采集到的数据,直接在靠近数据产生的本地设备或网络中进行分析,无需再将数据传输至云端数据处理中心。
目录为什么需要边缘计算?边缘计算VS云计算边缘计算是如何工作的?边缘计算的典型应用更多收起为什么需要边缘计算?物联网技术的快速发展,使得越来越多具备独立功能的普通物体实现互联互通,实现万物互联。得益于物联网的特征,各行各业均在利用物联网技术快速实现数字化转型,越来越多的行业终端设备通过网络联接起来。
然而,物联网作为庞大而复杂的系统,不同行业应用场景各异,据第三方分析机构统计,到2025年将有超过千亿的终端设备联网,终端数据量将达300ZB,如此大规模的数据量,按照传统数据处理方式,获取的所有数据均需上送云计算平台分析,云计算平台将面临着网络时延高、海量设备接入、海量数据处理难、带宽不够和功耗过高等高难度挑战。
为了解决传统数据处理方式下时延高、数据实时分析能力匮乏等弊端,边缘计算技术应运而生。边缘计算技术是在靠近物或数据源头的网络边缘侧,通过融合网络、计算、存储、应用核心能力的分布式开放平台,就近提供边缘智能服务。简单点讲,边缘计算是将从终端采集到的数据,直接在靠近数据产生的本地设备或网络中激进型分析,无需再将数据传输至云端数据处理中心。
边缘计算VS云计算边缘计算的概念是相对于云计算而言的,云计算的处理方式是将所有数据上传至计算资源集中的云端数据中心或服务器处理,任何需要访问该信息的请求都必须上送云端处理。
因此,云计算面对物联网数据量爆发的时代,弊端逐渐凸显:
云计算无法满足爆发式的海量数据处理诉求。随着互联网与各个行业的融合,特别是在物联网技术普及后,计算需求出现爆发式增长,传统云计算架构将不能满足如此庞大的计算需求。
云计算不能满足数据实时处理的诉求。传统云计算模式下,物联网数据被终端采集后要先传输至云计算中心,再通过集群计算后返回结果,这必然出现较长的响应时间,但一些新兴的应用场景如无人驾驶、智慧矿山等,对响应时间有极高要求,依赖云计算并不现实。
边缘计算的出现,可在一定程度上解决云计算遇到的这些问题。如下图所示,物联终端设备产生的数据不需要再传输至遥远的云数据中心处理,而是就近即在网络边缘侧完成数据分析和处理,相较于云计算更加高效和安全。
边缘计算VS云计算表1-1边缘计算和云计算的区别项目
边缘计算
云计算
计算方式
分布式计算,聚焦实时、短周期数据的分析
集中式计算,依赖云端数据中心
处理位置
靠近产生数据的终端设备或物联网关
云端数据中心
延时性
低延时
高延时
数据存储
只向远端传输有用的处理信息,无冗余信息
采集到的所有信息
部署成本
低
高
隐私安全
隐私性和安全性较高
隐私性和安全性相对低,需要高度关注
边缘计算是如何工作的?边缘计算架构如下图所示,尽可能靠近终端节点处处理数据,使数据、应用程序和计算能力远离集中式云计算中心。
边缘计算架构终端节点:由各种物联网设备(如传感器、RFID标签、摄像头、智能手机等)组成,主要完成收集原始数据并上报的功能。在终端层中,只需提供各种物联网设备的感知能力,而不需要计算能力。边缘计算节点:边缘计算节点通过合理部署和调配网络边缘侧节点的计算和存储能力,实现基础服务响应。网络节点:负责将边缘计算节点处理后的有用数据上传至云计算节点进行分析处理。云计算节点:边缘计算层的上报数据将在云计算节点进行永久性存储,同时边缘计算节点无法处理的分析任务和综合全局信息的处理任务仍旧需要在云计算节点完成。除此之外,云计算节点还可以根据网络资源分布动态调整边缘计算层的部署策略和算法。边缘计算的典型应用正是基于这种更实时处理数据的能力、特性,更快的响应时间,边缘计算非常适合被应用于物联网领域,通过具有边缘计算能力的物联网关就近(网络边缘节点)提供设备管理控制等服务,解决物联网通信“最后一公里”的问题,最终实现物联网设备的智慧连接和高效管理。
边缘计算网联网架构如下图所示,它聚焦于工业物联网领域,不仅支持丰富的工业协议和物联接口,可以广泛适应不同行业设备的联接场景,而且通过开放的边缘计算能力和云管理架构,快速满足不同行业边缘智能数据处理诉求:
联接:实现海量终端设备接入物联网络,主要通过边缘计算网关支持的各种物联接口(IP化PLC/RF/RS485/RS232等)连接各种传感器和终端,实现终端设备接入。云管理:通过物联网平台,应用云计算技术,实现边缘物联设备(如网络、设备、容器及应用)的统一云化管理,同时北向支持与其他行业应用系统灵活对接。行业应用:物联网平台提供标准的开放接口与不同合作伙伴的行业应用系统开放对接,构建广泛的行业适应性,可开发更多契合行业场景,深度定制化物联网行业应用。边缘计算物联网参考资源1(ebook)EC-IoT什么是边缘人工智能和边缘计算两者有什么联系
什么是边缘人工智能和边缘计算?
边缘人工智能是人工智能中最引人注目的新领域之一,它旨在让人们运行人工智能流程,而不必担心隐私或因数据传输而导致的减速。边缘人工智能正在实现更广泛、更广泛地使用人工智能,让智能设备无需访问云即可对输入做出快速反应。虽然这是对边缘人工智能的快速定义,但让我们花点时间通过探索使边缘人工智能成为可能的技术并查看边缘人工智能的一些用例来更好地了解边缘人工智能。
什么是边缘计算?
要想真正了解边缘人工智能,我们首先要了解边缘计算,而了解边缘计算最好的方式就是将其与云计算进行对比。云计算是通过互联网提供计算服务。相比之下,边缘计算系统没有连接到云,而是在本地设备上运行。这些本地设备可以是专用的边缘计算服务器、本地设备或物联网(IoT)。使用边缘计算有许多优点。例如,基于互联网/云的计算受到延迟和带宽的限制,而边缘计算不受这些参数的限制。
什么是边缘人工智能?
现在我们了解了边缘计算,我们可以看看边缘人工智能。边缘人工智能结合了人工智能和边缘计算。人工智能算法在能够边缘计算的设备上运行。这样做的好处是可以实时处理数据,而无需连接到云端。
大多数尖端的人工智能流程都是在云中执行的,因为它们需要大量的计算能力。结果是这些人工智能进程很容易受到停机的影响。由于边缘人工智能系统在边缘计算设备上运行,因此必要的数据操作可以在本地进行,在建立互联网连接时发送,从而节省时间。深度学习算法可以在设备本身、数据的原点上运行。
由于越来越多的设备需要在无法访问云的情况下使用人工智能,边缘人工智能变得越来越重要。想想现在有多少工厂机器人或多少辆汽车配备了计算机视觉算法。在这些情况下,数据传输的滞后时间可能是灾难性的。自动驾驶汽车在检测街道上的物体时不会受到延迟的影响。由于快速响应时间如此重要,因此设备本身必须具有边缘人工智能系统,使其能够在不依赖云连接的情况下分析和分类图像。
当边缘计算机被委托执行通常在云端进行的信息处理任务时,其结果是实时低延迟、实时处理。此外,通过将数据传输限制在最重要的信息上,可以减少数据量本身并最大限度地减少通信中断。
边缘人工智能和物联网
边缘人工智能与5G和物联网(IoT)等其他数字技术相结合。物联网可以为边缘人工智能系统生成数据以供使用,而5G技术对于边缘人工智能和物联网的持续发展至关重要。
物联网是指通过互联网相互连接的各种智能设备。所有这些设备生成的数据都可以输入到边缘人工智能设备,该设备也可以作为数据的临时存储单元,直到与云同步。数据处理方法允许更大的灵活性。
第五代移动网络5G对边缘人工智能和物联网的发展都至关重要。5G能够以更高的速度传输数据,最高可达20Gbps,而4G只能以1Gbps的速度传输数据。5G还支持比4G更多的同时连接(每平方公里1,000,000对100,000)和更好的延迟速度(1ms对10ms)。与4G相比,这些优势很重要,因为随着物联网的发展,数据量也在增长,传输速度也会受到影响。5G可以在更广泛的设备之间实现更多交互,其中许多设备都可以配备边缘人工智能。
边缘人工智能的用例几乎包括在本地设备上比通过云完成数据处理更有效的任何实例。然而,边缘人工智能的一些最常见用例包括自动驾驶汽车、自主无人机、面部识别和数字助理。
自动驾驶汽车是边缘人工智能最相关的用例之一。自动驾驶汽车必须不断扫描周围环境并评估情况,根据附近的事件修正其轨迹。实时数据处理对于这些案例至关重要,因此,他们的板载边缘人工智能系统负责数据存储、操作和分析。边缘人工智能系统对于将3级和4级(全自动)车辆推向市场是必要的。
由于自动无人机不是由人类操作员驾驶的,因此它们对自动驾驶汽车的要求非常相似。如果无人机在飞行时失控或发生故障,它可能会坠毁并损坏财产或生命。无人机可能会飞出互联网接入点的范围之外,它们必须具备边缘人工智能功能。边缘人工智能系统对于美团无人配送车等旨在通过无人机递送包裹的服务来说将是不可或缺的。
边缘人工智能的另一个用例是面部识别系统。面部识别系统依靠计算机视觉算法,分析相机收集的数据。为安全等任务而运行的面部识别应用程序需要可靠运行,即使它们没有连接到云。
数字语音助理是边缘人工智能的另一个常见用例。苹果语音助手Siri等数字语音助理必须能够在智能手机和其他数字设备上操作,即使它们没有连接到互联网。在设备上处理数据时,无需将其传送到云端,这有助于减少流量并确保隐私。
AIR学术|智能边缘计算:让智能无处不在
智能边缘计算并不是要取代云计算,而是和云计算互为补充,一起更好地为用户提供服务。云计算和边缘计算会不断融合;智能计算分布在不同的地方,但又相互连接,协同合作。——刘云新活动概况
10月13日下午,第10期AIR学术沙龙在清华大学智能产业研究院(AIR)图灵报告厅如期举行。本期活动荣幸地邀请到了清华大学国强教授、清华大学智能产业研究院(AIR)首席研究员刘云新教授为我们做题为《智能边缘计算:让智能无处不在》的报告。
本次讲座由清华大学智能产业研究院首席科学家赵峰教授主持,活动为线上(视频号、哔哩哔哩)线下的模式,共计约2700人次观看。
讲者介绍
刘云新,现任清华大学国强教授、智能产业研究院首席研究员。此前,他在微软亚洲研究院工作近20年,担任主任研究员,负责移动计算、边缘计算、异构计算等研究方向。他在MobiSys、MobiCom、SenSys、TON、TMC等国际学术会议和期刊上发表学术论文90多篇,拥有已授权美国专利16项。他的研究成果成功应用到了VisualStudio等多项微软产品中,并被国际媒体广泛报道。他获得了MobiSys2021最佳论文奖,SenSys2018最佳论文Runner-up奖,MobiCom2015最佳演示奖,和PhoneSense2011最佳论文奖。他曾任或现任多个国际学术会议的技术程序委员会成员,包括MobiSys、MobiCom、ATC、WWW、INFOCOM等,并担任国际学术会议MobiHoc2021的大会共同主席,国际学术期刊IEEETransactionsonMobileComputing的编委,以及ACMSIGBEDChina副主席。
报告内容
随着计算机软件和人工智能的快速发展以及新型应用的不断涌现,计算模式正在从以云计算为中心的集中式智能向边缘计算的分布式智能逐步演变。在智能边缘计算时代,如何利用人工智能赋能于资源受限又形态各异的边缘设备,满足丰富多样的智能应用的实际需求,面临诸多技术挑战,也带来了很多研究课题。刘云新教授在本次报告中主要讲述了智能边缘计算中的挑战和机遇,并且介绍了相关研究工作的近期进展。
近年来,随着网络带宽的增加和终端设备算力的提升,边缘计算(EdgeComputing)在学术界和工业界都成为了一个热门话题。边缘计算其实是相对于云计算(CloudComputing)而言的。在云计算中,所有终端设备上产生的数据,通过网络传输到云端进行计算和存储。而在边缘计算中,数据的计算和存储都在边缘上(边缘服务器或者终端设备)完成,无需再通过网络将数据传输到远端的云上,也就是数据中(Datacenter),从而避免网络传输带来的延迟,也保护了用户的数据隐私安全。现在,随着人工智能的热潮不断推进,边缘计算不仅仅只是计算,更是智能计算,我们称之为智能边缘计算(IntelligentEdgeComputing)。
边缘计算是计算模式(ComputingParadigm)不断演进的自然结果。如下图所示,如果我们回顾计算模式的发展历史,就会发现一个简单的规律:计算模式是在集中式计算和分布式计算之间不断摇摆,往复式发展前进的。
在大型机(Mainframe)时代,计算资源稀缺,很多人共享一台主机,计算是集中式的;随着集成电路和晶体管的发展,计算机逐渐从昂贵的“大块头”缩小成价格低廉,人人都能购买得到的台式机和便于携带的笔记本电脑,人类进入了个人计算(PersonalComputing)时代,计算又成为分布式的。在云计算时代,计算模式又回到集中式的,通过高速网络,人们可以共享云上的海量的计算和存储资源。此时,人工智能(AI)蓬勃发展,云上提供很多智能服务,成为智能云计算。而随着边缘计算的出现,计算模式再一次成为分布式的。我们不仅有智能云计算,还要有智能边缘计算(IntelligentEdgeComputing)。
智能边缘计算的出现当然不仅仅是满足表面上的简单规律,背后有其必然性和强大的驱动力,是计算机软硬件和新应用新需求不断发展的必然结果。
1.现在是万物互联和人工智能的时代,智能物联网(AIoT)飞速发展,各种新型设备不断涌现,产生了海量数据。比如现在的智能监控摄像头无处不在,每天产生以TB计的视频数据。把所有这些数据都传输到云上进行处理,是当今的云和网络无法承受的。
2.在智能终端的新场景和应用需要数据在本地进行处理。为了给用户更好的体验,现在的AR/VR应用和自动驾驶都对数据处理的实时性有很高的要求。尤其是当网络发生故障可能带来灾难性后果。再如,人们对个人隐私越来越关注,而很多数据(视频、图片、音频等)都包含大量的个人隐私。保护个人隐私的最好的方法就是在本地进行数据处理,不把个人数据传到网络上去。
3.终端硬件的快速发展使得智能边缘计算成为可能。随着AI算法的日益成熟,人们开始设计制造专用的AI芯片,特别是专门用于深度学习模型推理的AI芯片,这些AI芯片不仅数据处理能力强大,而且尺寸小、功耗低、价格便宜,可以应用到各种边缘设备上,为智能边缘计算提供了坚实的硬件基础。
需要指出的是,智能边缘计算并不是要取代云计算,而是和云计算互为补充,一起更好地为用户提供服务。云计算和边缘计算会不断融合;智能计算分布在不同的地方,但又相互连接,协同合作。
智能边缘计算的挑战
智能边缘计算的主要目标就是用AI赋能于边缘设备(包括终端设备和边缘服务器)和应用,更好地为用户服务。为此,需要在边缘设备上部署运行机器学习或者深度学习模型,进行本地数据处理。为保证系统性能和用户体验,智能边缘计算面临着以下问题和挑战。
面向不同设备的模型压缩和优化。深度学习模型通常都十分庞大,由数百万甚至以亿计的参数构成。运行这些模型需要耗费大量的计算和内存资源。虽然智能边缘设备的处理和存储能力大幅增长,和云计算相比还是远远不如。因此,如何把深度学习模型在资源受限的边缘设备上运行起来就是一个巨大的挑战。传统的模型压缩和优化(比如剪枝,量化等)主要关注的是如何把模型变小的同时尽量少损失模型精度。然而,边缘设备的特点是类型多,差异性大,处理器类型性能和内存大小千差万别。我们认为,没有一个统一的模型能够适用于所有的边缘设备,而是应该结合硬件的特性,为不同的设备提供最适合的模型,不仅考虑模型大小和精度损失,更要考虑模型在设备上的执行性能,比如延迟和功耗等。
基于异构硬件资源的系统优化。即使有了一个可以运行的模型,如何提高模型的运行效率也是一个值得深入研究的课题。我们需要一个高效的模型推理引擎,把系统性能提高到极致。这不仅需要软件层面的系统优化,更要有软件和硬件的协同设计,能够充分利用底层硬件的能力。特别地,边缘设备往往有着各种异构的硬件资源,比如智能手机,不仅有大小不同的CPU核(ARMbig.Little),还有DSP,GPU,甚至NPU。而现有的系统往往只能利用其中一种计算资源(比如CPU或者GPU),还远远不能充分发挥硬件的性能。我们需要研究如何充分利用同一设备上的异构硬件资源,深度优化系统性能,大大降低模型执行的延迟和能耗。
隐私保护和模型安全。用户隐私数据保护是一个日益重要的课题。在边缘设备无法运行高精度模型的情况下(比如,在低端的监控摄像头上),利用云计算或者边缘服务器来执行深度学习模型就不可避免。在这种情况下,我们就需要研究如何利用远程的计算资源的同时还能不泄露用户的隐私数据。另外,在边缘设备上运行模型还带来了一个新的问题:模型的安全。训练一个好的模型需要花费巨大的人力物力。因此,模型是重要的数字资产。在云计算模式下,模型是存储运行在云上的,终端用户无法直接接触模型数据。而在边缘计算中,模型是部署到本地设备上的,恶意用户可以破解终端系统复制模型数据。所以,如何在智能边缘计算中保护模型的安全就是一个新的重要研究课题。
主动持续学习。智能边缘计算还带来了新的改善模型的机会。目前的模型训练和模型使用通常是割裂的。一个模型在事先收集好的数据集上进行训练,然后被部署到设备上进行使用。然而,模型使用中的数据往往是和训练时的数据集不一样的。比如,每个智能摄像头由于其位置和光线的不同,它们看到的图像内容和特征都不尽相同,从而导致模型精度下降。我们认为,模型被部署到设备上以后,应该根据设备上的输入数据进行适配和优化,而且随着设备处理越来越多的新数据,它应该从中学习到新的知识,主动地、持续不断地提高它的模型。此外,多个设备还应该把它们学习到的不同的新知识合并到起来,一起合作来改进和完善全局的模型。
这些问题是挑战,更是机遇,为我们科研工作者们提供了实际的应用场景和科研课题。过去几年,作者所在团队和国内外同行紧密合作,对这些问题进行了研究,取得了一系列的进展。下面我们介绍一下其中部分工作。
智能边缘计算的相关工作
首先,我们要想是不是模型的计算量少就拥有较小的延时?是不是相同模型在所有芯片上都能高效运行?
边缘设备的一个重要特点是硬件的异构性。当我们在边缘设备上运行AI模型时,往往需要关注模型执行的实际性能,比如延迟和能耗等,而不仅仅是模型本身的精度。然而,现有的模型设计方法,包括专家手工设计和基于NAS(NeuralArchitectureSearch)的自动模型搜索,都主要关注模型的精度,而不是模型执行时的的延迟和能耗。为了适配边缘设备有限的资源,现有的NAS系统通常通过限制模型的大小或者计算量(比如FLOPs数目)来降低模型执行的时间。然而,FLOPs数目并不能直接反应模型在不同硬件上的执行时间。模型MobileNetEdgeTPU的FLOPs是模型MobileNetV3的4.7倍,但在EdgeTPU上的执行时间(即延迟,latency)却比MobileNetV3还要少(3.6毫秒vs.4毫秒)。在图2中,模型MobileNetV3比其上一代MobileNetV2有更少的FLOPs数目,在ARMCPU(CortexA76)上运行时快25%;但在IntelMovidiusVPU上运行时MobileNetV2却比MobileNetV3快71%。
(图1)
(图2)
通过我们的研究发现,仅仅用计算量来限制并不能保证实际部署的运行效率。换句话说,当前仅仅用计算或访存量作为高效模型设计的指标是不合理的。每个部署框架都有不同的特性,高效算法设计必须考虑目标平台的特性,才能取得最好的性能。该工作已发表论文“ToBridgeNeuralNetworkDesignandReal-WorldPerformance:ABehaviorStudyforNeuralNetworks”,被MLSys2021录用。
该工作通过评估整个深度学习算法设计空间在目标平台上的行为特性来指导高效的算法设计。其目标是回答以下三个研究问题:
1.算法设计空间中有哪些异常的行为特性?这里的异常特性是指:不同算法配置会导致计算或访存量增加或减少,但部署平台的推理延时没有相应地增加或减少。这些特性是在算法设计中要尤其注意利用或避免的。
2.这些异常行为特性背后的原因是什么?
3.这样的特性对高效的深度学习算法的设计有什么启示?
深入研究不同的模型结构在不同的硬件平台上运行时的行为特性,我们在7种硬件平台上,包括ARMCPU、AdrenoGPU、DSP、VPU、EdgeTPU、KendryteKPU和RockchipNPU,对神经网络模型设计的不同维度(比如不同类型的算子、卷积的通道数、不同的激活函数、数据的精度等)进行了深度评估,发现总结了多种异常的行为特征(比如,增加卷积的通道数并不一定增加执行时间),并揭示了其背后的原因和对于改进神经网络设计的启示。这些发现充分表明,我们在设计神经网络模型时就要充分考虑硬件的差异性,为不同的硬件设计不同的模型,以在模型执行延迟和模型精度之间取得最佳的平衡。
最终,我们总结了七条异常的行为特征可用于指导深度学习的算法设计。
1.除KPU外,随着输出通道数的增加,卷积延时在推理平台上以阶梯式增加。
2.一个网络模块的相对延时在不同推理平台上差异很大。除了在CPU上,非卷积算子可能会极大地拖慢推理速度。
3.只有ReLU和ReLU6的延时在每个推理平台上可以忽略。HardSwish只在CPU和GPU上可忽略。除了KPU,Swish激活函数在各个推理平台上都会显著增加推理延时。
4.随着内核尺寸的增加,除了CPU、GPU和EdgeTPU的DWConv,Conv和DWConv延时的增加都远小于计算量的增加。
5.在NPU上应用INT8相较于FP16能获得11倍的加速比(除了MobileNetV3只有2.5的加速比)。然而,在CPU上,INT8相较于FP32的加速比小于3.6。
6.INT8会在许多模型上显著降低推理精度。
7.考虑到对神经网络模型的支持程度,特别是对新模型的支持程度,CPU平台是最好的选择。考虑到延时和能耗,以及对基础的流行的神经网络模型的支持,EdgeTPU和NPU是最好的选择。
高效的神经网络模型需要考虑硬件特性,那么如何才能设计适配不同的硬件设计的模型呢?
深度神经网络(DNN)模型在实际部署中的延迟(推理时间)是决定模型是否可用的一个重要指标。然而,模型设计过程中对数以亿计的设计选项进行实际的部署和延迟评估会造成巨大的开销。因此,如何进行高效、准确的模型运行延迟预测对模型的设计至关重要。但现有技术缺乏对部署平台优化策略的理解以及对灵活多变模型架构的泛化性,所以无法做到准确的模型推理时间预测。针对上述问题,我们提出并开发了nn-Meter模型推理时间预测系统。该系统可高效、准确地预测DNN模型在不同边缘设备上的推理延迟,其关键思想是将整个模型划分为内核(kernel),即设备上的执行单元,然后执行内核级预测。相关论文“nn-Meter:TowardsAccurateLatencyPredictionofDeep-LearningModelInferenceonDiverseEdgeDevices”荣获了MobiSys2021大会的最佳论文奖(BestPaper),并且是本届大会唯一一篇获得了ArtifactEvaluation全部三个最高级别徽章(即代码可评估、代码可获取和实验结果可复制)的论文。
nn-Meter的关键思想是将整个模型划分为内核(kernel),即硬件设备上的执行单元,然后执行内核级预测。如图3所示,nn-Meter建立在两个关键技术之上:内核检测(KernelDetection)和自适应数据采样(AdaptiveDataSampling)。内核检测能够自动识别部署平台(硬件及其软件框架)的算子融合行为,从而基于这些策略将模型分解为实际运行的内核。自适应数据采样从整个设计空间中有效地采样最有益的配置,以高效地构建准确的内核级延迟预测器。对于每个内核,nn-Meter都会提取特征并预测其延迟,所有内核预测延迟之和则为整个模型的预测延迟。
nn-Meter不需要模型级数据来构建预测器,而且还可以在它从未见过的模型上进行预测:nn-Meter选择了AlexNets、VGGs、MobileNetv1s、MobileNetv2s和NASBench201进行评估。对于每个模型变体,先将该变体作为测试集,剩下的模型变体作为训练集来训练基准方法,然后再进行交叉验证得到评估结果。nn-Meter则通过所有内核的预测延迟总和来预测模型整体延迟。
与基准方法相比,nn-Meter是唯一能够在各种设备上始终实现准确预测的方法。平均而言,nn-Meter89.2%的准确率明显优于FLOPs(22.1%)、FLOPsMAC(17.1%)和BRP-NAS(8.5%)。同时,nn-Meter在完整的包含26,000个模型的基准数据集上的预测结果中,分别在移动CPU和GPU上实现了99.0%和99.1%的预测准确率。在IntelVPU上,nn-Meter则可以在±10%的误差范围内达到83.4%的预测准确率。
有了nn-Meter,我们的面向硬件的自动模型搜索系统不需要实际设备,就能够快速地评估大量
模型在特定硬件上的实际运行性能,自动搜索生成满足特定延迟要求的模型。
当我们得到一个好的模型,如何把它有效的部署在实际的设备上呢?
深度学习模型已被大量使用于各类终端应用中。业界不少企业也都推出了端侧推理框架。然而,端侧硬件资源的有限性和异构性以及对低能耗的要求,给高效的模型推理实现带来了更大的挑战。通过测试,我们发现深度学习模型运行在终端设备上时,其计算资源利用率极低。
CPU是移动端侧最主要的计算资源,目前端侧大部分模型推理也都在CPU完成。端侧CPU多采用大小核的异构多核架构,以同时满足低能耗和高性能的需求。但当增加小核硬件资源时,现有的模型推理实现并不能取得相应的性能加速,而且还浪费了宝贵的硬件资源。通过分析发现该问题是由于推理运行时各个核上不均衡的任务分配所导致。因此,我们提出了AsyMo解决方案,通过高效利用端侧异构多核CPU来加速模型推理的工作。AsyMo充分考虑了端侧CPU的异构性、缓存资源的有限性和执行环境的不确定性,结合推理执行的确定性、算子的易并行性和计算/访存的密集性,实现了基于延迟开销模型的任务划分策略、面向异构的任务调度策略和最优能耗频率设置策略三个关键技术。该工作已发布论文“AsyMo:ScalableandEfficientDeep-LearningInferenceonAsymmetricMobileCPUs”,被MobiCom2021录用。
并行任务划分对模型推理性能有很大影响,为了找到在大小核上最合适的任务大小,我们通过分析不同任务大小对并行度、访存和任务调度开销等带来的影响,构建了任务大小和延迟开销的关系模型,利用该模型可以直接计算得到大小核上延迟最小的任务尺寸。当模型运行时,面向异构的任务调度会将这些划分好的任务公平地分配到相应的大核或小核上执行,并根据各个核运行的情况适时地调整任务分配,以达到各个核的任务均衡。整个划分和执行过程如图3所示。因此,在AsyMo的作用下,推理执行过程中各个核所执行的任务数与其计算能力一致,并使各个核的利用率都提升到了90%以上。
对于能耗方面,AsyMo根据目标深度学习模型的数据重用率,以及CPU在不同频率下的计算和访存能耗曲线,为不同深度学习模型确定了推理执行的能耗最低频率。该方法既消除了DVFS响应不及时所带来的错位,也使AsyMo在延迟降低的同时大幅度节约了能耗。
我们在多个硬件、操作系统、以及深度学习框架上对AsyMo进行了评估,AsyMo均能取得非常好的加速和能耗节省效果。例如,在Kirin970上,相比于优化过的Tensorflow基线(在默认TensorFlow之上实现了矩阵-向量乘法的并行及模型参数拷贝消除),对于卷积占主导的模型AsyMo可以在达到46%加速的同时降低37%的能耗,对于全连接占主导的模型则可以达到最高97%的加速,以及降低1.22倍的能耗。
深度学习模型中稀疏能有效提升模型运行速度。
除了以上工作,我们还在如何利用模型稀疏性(Sparsity),包括模型参数的稀疏,中间结果(featuremap)的稀疏,和双边稀疏来加速模型的执行;
模型参数的稀疏相关工作“EfficientandEffectiveSparseLSTMonFPGAwithBank-BalancedSparsity”发表在FPGA,2019会议上。这个剪枝算法是面向硬件加速的。
在这之前常用的剪枝方法有细粒度剪枝和粗粒度剪枝。其中,细粒度剪枝会得到一个非结构化的稀疏矩阵(也就是0的分布是不均匀的),将其实施到硬件上时会有负载不均衡的问题;粗粒度剪枝可以得到结构化的稀疏矩阵,但是对精度的影响会比较大。而我们提出的Bank-Balanced剪枝兼顾了负载的均衡性与精度,将矩阵的每一行均匀分成N个Bank,然后对每个Bank进行相同稀疏度的细粒度剪枝。
这对硬件实施时的负载均衡十分有利,并且这样的剪枝方式相比于粗粒度剪枝降低了较大的权值被剪掉的可能性。
模型中间结果(feature-map)的稀疏工作发表论文“SeerNet:PredictingConvolutionalNeuralNetworkFeature-MapSparsitythroughLow-BitQuantization”,被CVPR2019录用。该工作提出了一种利用特征映射稀缺性来加速CNN推断的新的通用方法。实验证明原始网络高度量化的版本足够准确地预测输出稀缺性,且利用这种在推断时的稀缺性会导致与原网络相比必不可少的准确率下降。为了加速推断,对每个卷积层,该方法首先通过在原始网络层的量化版本上运行推断来获得一个输出特征映射的二元稀疏掩码,随后进行一个全精度稀缺卷积来找到非零输出的精确值。
此外,刘老师还指出团队现在密切关注智能边缘计算中的各种新场景和新应用,比如视频分析、VR/AR、自动驾驶、AIoT等,特别是随着5G的到来,如何构建更好的智能边缘智能云的系统,为这些场景和应用提供更好的支撑。
撰文/章晋睿
编辑排版/冼晓晴
校对责编/黄妍
精彩视频回顾及完整版PPT下载,请点击:
AIR学术沙龙第10期|智能边缘计算:让智能无处不在
边缘智能:边缘计算与人工智能融合的新范式
边缘智能:边缘计算与人工智能融合的新范式
周知,于帅,陈旭,
中山大学数据科学与计算机学院,广东广州510006
摘要:边缘计算与人工智能这两种高速发展的新技术之间存在着彼此赋能的巨大潜力。通过3个研究案例,展示协同边缘计算和人工智能这两种技术如何促进各自的进一步发展。从边缘计算赋能人工智能的维度,针对深度学习模型在网络边缘侧的部署,提出了基于边端协同的深度学习按需加速框架,通过协同优化模型分割和模型精简策略,实现时延约束下的高精度模型推理。从人工智能赋能边缘计算的维度,针对边缘计算服务的放置问题,提出了基于在线学习的自适应边缘服务放置机制和基于因子图模型的预测性边缘服务迁移方法。
关键词:边缘计算;人工智能;边缘智能;服务迁移
论文引用格式:
周知,于帅,陈旭.边缘智能:边缘计算与人工智能融合的新范式.大数据[J],2019,5(2):53-63
ZHOUZ,YUS,CHENX.Edgeintelligence:anewnexusofedgecomputingandartificialintelligence.BigDataResearch[J],2019,5(2):53-63
1引言
近年来,随着全球范围内社会经济与科学技术的高速发展,信息通信技术(informationcommunicationstechnology,ICT)产业不断地涌现出了许多新兴技术。其中,有两种代表性技术被广泛认为对人类经济社会产生了巨大的推动力与深远的影响力。其一,作为人工智能领域代表性技术的深度学习,受益于算法、算力和数据集等方面的进步,近年来得到了突飞猛进的发展,并在无人驾驶、电子商务、智能家居和智慧金融等领域大展拳脚,深刻改变了人们的生活方式,提高了生产效率。而另外一种技术则为从传统的云计算技术演化发展而来的边缘计算技术,相比于云计算,边缘计算将强计算资源和高效服务下沉到网络边缘端,从而拥有更低的时延、更低的带宽占用、更高的能效和更好的隐私保护性。
然而,鲜为人知的是,人工智能和边缘计算这两种具有划时代意义的新技术目前正面临着各自进一步发展的瓶颈。一方面,对于深度学习技术而言,由于其需要进行高密度的计算,因此目前基于深度学习的智能算法通常运行于具有强大计算能力的云计算数据中心。考虑到当下移动终端设备的高度普及,如何将深度学习模型高效地部署在资源受限的终端设备,从而使智能更加贴近用户与物端,解决人工智能落地的“最后一公里”这一问题已经引起了学术界与工业界的高度关注。另一方面,对于边缘计算而言,随着计算资源与服务的下沉与分散化,边缘计算节点将被广泛部署于网络边缘的接入点(如蜂窝基站、网关、无线接入点等)。边缘计算节点的高密度部署也给计算服务的部署带来了新的挑战:用户通常具有移动性,因此当用户在不同节点的覆盖范围间频繁移动时,计算服务是否应该随着用户的移动轨迹而迁移?显然,这是一个两难的问题,因为服务迁移虽然能够降低时延从而提升用户体验,但其会带来额外的成本开销(例如带宽占用和能源消耗)。
幸运的是,人工智能和边缘计算各自面临的发展瓶颈可以通过它们二者之间的协同得到缓解。一方面,对于深度学习而言,运行深度学习应用的移动设备将部分模型推理任务卸载到邻近的边缘计算节点进行运算,从而协同终端设备与边缘服务器,整合二者的计算本地性与强计算能力的互补性优势。在这种方式下,由于大量计算在与移动设备邻近的具有较强算力的边缘计算节点上执行,因此移动设备自身的资源与能源消耗以及任务推理的时延都能被显著降低,从而保证良好的用户体验。另一方面,针对边缘计算服务的动态迁移与放置问题,人工智能技术同样大有可为。具体而言,基于高维历史数据,人工智能技术可以自动抽取最优迁移决策与高维输入间的映射关系,从而当给定新的用户位置时,对应的机器学习模型即可迅速将其映射到最优迁移决策。此外,基于用户的历史轨迹数据,人工智能技术还可以高效地预测用户未来短期内的运动轨迹,从而实现预测性边缘服务迁移决策,进一步提升系统的服务性能。总体而言,边缘计算和人工智能彼此赋能,将催生“边缘智能”的崭新范式,从而产生大量创新研究机会。
本文将简要介绍笔者研究团队在融合边缘计算与人工智能两个方向上的初步探索。首先,从边缘计算赋能人工智能的维度出发,为了在网络边缘侧高效地运行深度学习应用,本文提出了一个基于边端协同的按需加速深度学习模型推理的优化框架——Edgent。为了实现降低模型推理时间,并按需保障模型精确率的双重目标,Edgent采取以下两种优化策略:深度学习模型分割,自适应地划分移动设备与边缘服务器之间的深度神经网络模型计算量,以便在较小的传输时延代价下将较多的计算卸载到边缘服务器,从而降低整体端到端时延;深度学习模型精简,通过在适当的深度神经网络的中间层提前退出,进一步减小计算时延。其次,从人工智能赋能边缘计算的维度出发,针对边缘计算服务的动态迁移与放置问题,本文首先提出了一种用户自适应管理的在线服务放置机制。该机制能够通过在线学习(onlinelearning)人工智能技术自适应复杂的用户行为和多变的边缘网络环境,从而辅助用户做出高效的服务迁移决策。最后,本文还将展示如何使用因子图模型(factorgraphmodel)这一新兴人工智能技术实现用户位置预测,从而改善边缘服务动态迁移决策的质量。
2边缘计算驱动实时深度学习
作为人工智能领域的主流技术之一,深度学习近年来得到了学术界与产业界的大力追捧。由于深度学习模型需要进行大量的计算,因此基于深度学习的智能算法通常存在于具有强大计算能力的云计算数据中心。随着移动终端和物联网设备的高速发展与普及,如何突破终端设备资源限制,从而将深度学习模型高效地运行在资源受限的终端设备这一问题已经引发了大量关注。为解决这一难题,可考虑边缘计算赋能人工智能的思路,利用边缘计算就近实时计算的特性,降低深度学习模型推理的时延与能耗。
2.1问题描述
常见的深度学习模型(如深度卷积神经网络)是由多层神经网络相互叠加而成的.不同网络层的计算资源需求以及输出数据量都具有显著的差异性,那么一个直观的想法是将整个深度学习模型(即神经网络)切分成两部分,其中计算量大的一部分卸载到边缘端服务器进行计算,而计算量小的一部分则保留在终端设备进行本地计算。显然,终端设备与边缘服务器协同计算的方法能有效降低深度学习模型的计算时延。但是,选择不同的模型切分点将导致不同的计算时间,需要选择最佳的模型切分点,从而最大限度地发挥终端与边缘协同的优势。
除了对模型进行切分外,加速深度学习模型推断的另一手段为模型精简,即选择完成时间更快的“小模型”,而不是选择对资源需求更高的“大模型”。对于任意的深度学习任务,可以离线训练生成具有多个退出点的分支网络,退出点越靠后,模型越“大”,准确率也越高,但相应地推断时延也越大。因此,当深度学习任务的完成时间比较紧迫时,可以选择适当地牺牲模型的精确度,以换取更优的性能(即时延)。值得注意的是,此时需要谨慎权衡性能与精度之间的折中关系。
综合运用上述模型切分和模型精简两种方法调整深度学习模型推断时间的优化手段,并小心权衡由此引发的性能与精度之间的折中关系,本文定义如下研究问题:对于给定时延需求的深度学习任务,如何联合优化模型切分和模型精简这种方法,使得在不违反时延需求的同时最大化深度学习模型的精确度。
2.2优化框架
针对上述问题,笔者团队提出了基于边缘与终端协同的深度学习模型推断优化框架Edgent。如图1所示,Edgent的优化逻辑分为3个阶段:离线训练阶段、在线优化阶段以及协同推断阶段。
图1 基于边缘与终端协同的深度学习模型运行推断优化框架Edgent
上述基于边缘服务器与终端设备协同的深度学习模型推断框架的设计思路为:在离线阶段,训练好满足任务需求的分支网络,同时为分支网络中的不同神经网络层训练回归模型,以此估算神经网络层在边缘服务器与在终端设备上的运行时延;在在线优化阶段,回归模型将被用于寻找符合任务时延需求的退出点以及模型切分点;在协同推断阶段,边缘服务器和终端设备将按照得出的方案运行深度学习模型。
(1)离线训练阶段
在离线训练阶段,Edgent需要执行以下两个初始化操作:分析边缘服务器与终端设备的性能,针对不同类型的深度学习模型网络层(如卷积层、池化层等)生成基于回归模型的时延估算模型。在估算网络层的运行时延时,Edgent会对每层网络层进行建模,而不是对整个深度学习模型进行建模,不同网络层的时延是由各自的自变量(如输入数据的大小、输出数据的大小)决定的,基于每层的自变量,可以建立回归模型,估算每层网络层的时延;训练带有多个退出点的分支网络模型,从而实现模型精简。这里笔者采用BranchyNet分支网络结构,在BranchyNet的结构下,可以设计并训练生成带有多个退出点的分支网络。需要注意的是,性能分析取决于设备(例如手机、VR头盔和智能手表等不同设备在运行同一深度学习模型时的性能表现不同),而深度学习模型是取决于应用的(例如物体识别和物体分类等不同计算机视觉应用对应的深度学习模型不同),因此在给定深度学习应用以及设备(即限定边缘服务器与终端设备)的情况下,以上两个初始化操作在离线阶段只需要完成一次。
(2)在线优化阶段
这个阶段的主要工作是利用离线训练的回归模型在分支网络中找出符合时延需求的退出点以及模型分割点。因为要最大化地给出方案的准确率,所以在该阶段中,笔者从最高准确率的分支开始,迭代地找出符合需求的退出点和切分点。在这个过程中,Edgent实时测量当前移动终端与边缘服务器之间链路的网络带宽,以便估算移动终端与边缘服务器间的数据传输时延。紧接着,Edgent沿着尺寸从大到小的网络分支,依次遍历每个网络分支上不同的分割点,并基于当前网络带宽和不同网络层计算时间估算所选分支网络与分割点对应的端到端时延与模型精确度。在遍历完所有的分支网络与切分点后,Edgent输出满足时延需求的所有网络分支与切分点组合中具有最大精确度的一个组合。
(3)协同推断阶段
在协同推断阶段,根据在线优化阶段输出的最优网络分支与切分点组合,边缘服务器与移动终端对深度学习模型进行协同推断。实验表明,Edgent在提升深度学习应用实时性能方面表现优异,能在不同的计算时延需求下,实现高精度的模型推理(具体实验结果请见参考文献)。
3基于在线学习的自适应边缘服务放置机制
基于人工智能赋能边缘计算的思路,针对边缘计算服务的动态迁移与放置问题,笔者接下来介绍一种用户自适应管理的在线服务放置机制。该机制利用人工智能的在线学习技术,针对复杂的用户行为和多变的边缘网络环境进行自适应学习,从而辅助用户做出高效的服务迁移决策。
3.1问题描述
尽管边缘计算能解决用户资源受限和云计算中时延过大的问题,但由于边缘节点服务覆盖范围较小,用户的移动将对服务质量产生极大的影响。如图2所示,当用户从一个边缘节点服务区域移动至其他的节点服务区域时,需考虑是否进行服务迁移,以保证满意的服务质量。一方面,用户可以选择继续让服务在原边缘节点进行处理,通过边缘节点之间的数据传输保证服务的连续性。另一方面,用户可以选择服务迁移,以此减小端到端时延。前者可能由于过长的网络距离导致较大的传输时延,后者则引入了服务迁移导致的额外开销。同时由于用户的个性化需求,不同的服务种类和迁移开销也增加了服务放置的难度,例如轻量级的应用用户更倾向于本地处理,计算密集型应用用户更倾向于云服务器处理,计算密集型且时延敏感型的应用用户更倾向于边缘服务器处理。为此,笔者提出了一种基于在线学习的自适应边缘服务放置机制,该机制可以有效地权衡时延与迁移代价之间的折中关系。
图2 边缘网络中的用户移动示意
3.2基于在线学习的自适应边缘服务放置算法
服务放置策略的制定通常与用户行为特性和网络环境有关。其中,行为特性主要包括用户的移动模型、请求服务的种类以及个人偏好等因素,网络环境主要包括边缘网络可用的资源、节点之间的传输带宽等因素。对于用户来说,其当前时刻的行为特性是已知的,而网络环境是透明的。用户自适应管理机制通过在线学习的方式,根据用户的历史决策数据对动态网络环境的相关参数进行评估。随着环境探索次数的增加,用户对网络参数的评估也会愈发精准,进而优化其服务放置策略。为了方便刻画用户移动过程中的一系列决策行为,笔者将连续的时间段划分为一系列小的离散片段,在每个离散的时间片段中,用户确定当前的服务放置策略,同时用户行为和动态网络环境在该片段内保持不变。
为了有效地衡量边缘网络中的用户服务质量,笔者分别从用户可感知时延和服务迁移代价两方面进行研究。用户可感知时延从所需的计算时延和通信时延两部分进行考虑。计算时延主要取决于所需处理的请求服务数据量大小和放置节点的可用计算资源,如CPU的运算速度。通信时延主要由用户当前的接入时延和传输时延两部分构成。其中,接入时延主要取决于当前用户的位置和边缘路由器的状态。通常来说,为了减少通信能耗,用户将选择与最近的边缘路由器进行连接。而传输时延与网络状态(如边缘节点之间的带宽)、网络距离有关。服务迁移产生的额外运行代价(如带宽资源的占用等)主要取决于上一时刻和当前时刻的节点选择。由此,可以通过计算式(1)刻画用户的服务质量:
ω1D1(πt)+ω2D2(πt,yt)+ω3S(πt-1,πt)(1)
其中,πt-1、πt分别表示上一时刻和当前时刻的服务放置决策(即在每一时刻t动态决策当前服务应当放置在云端服务器或某个边缘服务器),yt表示用户当前的位置,ω1、ω2、ω3(≥0)分别为计算时延D1、通信时延D2和迁移代价S的非负权重参数,权重参数的设定与用户的个人偏好和服务种类有关:权重参数越大,表明对应时延或迁移代价的重要性越高。
如果可对未来长期时间T的用户行为特征和网络状态进行精准预测,那么就可以通过动态规划的方法求得长期服务的线下最优策略。然而在实际环境中,难以对以上用户和网络信息进行精准预测,同时对于每个决策时刻而言,由于缺少对网络环境参数的了解,用户收集系统信息将消耗额外的通信代价。
基于给定的优化目标,即用户服务质量,如何在未知后期用户行为和网络环境的情形下优化一系列服务放置决策,从而最小化可感知时延和服务迁移代价呢?针对此问题,笔者提出的自适应边缘服务放置机制将通过在线学习方法——上下文多臂老虎机(contextualmulti-armedbandit)不断探索动态系统,进而根据累计的历史数据分析评估整体的动态网络环境,为后续的放置策略制定提供更准确的评估。在每个离散时间片段的开始,用户将收集服务请求的行为特征,并用向量b(t)=[ω1λt,ω2Lt,ω3πt-1]表示,其中包含当前用户请求服务处理量的大小λt、用户实时位置Lt以及上一时刻服务放置策略πt-1。之后用户结合动态网络中可行放置策略πt的网络估计参数μ π t与行为特征b(t)对放置策略πt产生的代价c^π =b(t)Tμπ 进行汤普森采样(Thompson sampling)评估,从中选取代价最小的策略作为最终的放置策略。在该时间片段的末尾,用户将获得放置策略πt的服务质量表现cπt,同时自适应管理机制将利用时间片段内的所有信息,更新用户行为特征和放置策略与服务质量表现之间的潜在关系,即服务放置策略的网络参数,具体算法如下。
算法1:基于在线学习的自适应服务放置算法。
初始化网络中计算节点i相应的用户特征Bi=I、网络估计参数μi=0以及其累积的上下文代价fi=0。
对于每一个时间片段t=1,2,…,T,执行以下操作。
●根据计算节点i的网络参数μi,再结合当前的用户特征b(t),依据汤普森采样评估其相应的代价。
●选择其中最小估计代价,的计算节点作为当前的服务放置策略,并在时间片段的末尾收到相应的服务质量表现。
●更新选择计算节点相应的用户特征,,以及其网络估计参数。
笔者对车辆在边缘网络中随机行驶的场景进行了模拟,以此对所提框架的有效性进行验证。图3记录了基于在线学习的自适应边缘服务放置机制在不同时间片段下的服务质量表现,并同时与已知长期所有信息下的理论最优放置策略进行了比较。从结果可以看出,随着时间的增加,所提机制不断逼近最优的放置策略,这表明通过在线学习的方式能有效地优化策略制定。
图3 自适应服务放置策略与理论最优放置策略对比
4基于因子图模型的预测性边缘服务迁移
前文介绍的基于在线学习的自适应边缘服务放置机制主要利用用户的统计性历史信息,接下来介绍另一种利用用户的预测性信息进行边缘服务放置优化的方法。具体而言,笔者首先利用因子图模型对用户的位置进行预测,进而设计基于位置预测的边缘服务迁移算法。
4.1基于因子图模型的用户位置预测
为了进行精准的位置预测,笔者从用户的历史信息中提取了多个维度的特征,如不同时刻的时间、位置、网络状态以及社交频率特征等,并使用因子图(factorgraph,FG)模型将其有效地整合到一个统一的框架之中。用户在t时刻的时间特征、社交频率特征以及网络状态特征分别用表示。位置信息用yt表示。其中,时间特征为从时间戳中得到的用户的时间信息(比如具体时刻、工作日或者周末等),社交频率特征则是对用户在该时段内各种社交行为特征(比如发布推文、刷新推文、转发推文、预览多媒体视频、观看多媒体视频等)分别进行频率计算得到的数据。网络状态特征是指用户当前所处的网络状态(Wi-Fi、蜂窝网络或者无网络连接)。空间位置信息即用户所处的具体位置。如图4所示,在同一时刻(例如t时刻),用户不同类型的特征与位置之间的关联可以用进行刻画,其中i∈{h,s,n},h、s、n分别代表时间特征、社交频率特征以及网络状态特征。相邻时刻之间的位置关联用w(yt-1,yt)表征,yt-1和yt分别代表用户在t-1和t时刻的位置信息。因子图模型可以很好地捕捉不同类型特征之间的关联,通过使用置信传播算法对该模型进行训练,最终,可以通过最大化后验概率的方法获得用户下一时刻最有可能出现的位置。
x
图4 面向用户位置预测的因子图模型
同时,由于不同用户的有效特征具有较强的差异性,笔者利用ReliefF(RF)算法对提取的特征进行了用户个性化筛选,以取得更好的预测效果。
4.2基于位置预测的边缘服务迁移方法
在保证较低的服务时延的要求下,服务应该根据用户的移动性在不同的基站之间进行动态的迁移,然而频繁的服务迁移会带来巨大的代价(如额外的网络带宽使用和电力资源消耗)。因此,要考虑在给定长期成本预算C的情况下(T个时刻的预算)如何进行服务迁移决策,才能最小化用户总时延。该问题可以表示为:
其中,pt和yt分别表示服务和用户在t时刻的位置,dt表示在t时刻是否进行服务迁移的决策。c(pt-1,pt)为服务迁移所需的代价,这和带宽以及pt-1和pt之间的地理距离有关。用户在t时刻感知到的时延用s(pt,yt)表示。这一问题的关键是每一时刻下的迁移决策dt。
一个具体的例子是,若用户在t时刻从位置a移动到位置b,在t+1时刻又返回到位置a,那么在t时刻是否需要服务迁移呢?如果无法预知用户下一时刻的位置,一种最简单直接的方法就是让服务一直跟随用户进行迁移,这样虽然能够保证用户的服务质量,但是会带来巨大的服务迁移代价。当能够预知用户下一时刻的位置时,考虑到长期预测的限制,便能够在t时刻进行更加明智的决策,以避免服务反复迁移带来的代价。这一例子充分体现了位置预测在迁移决策过程中的重要性,因此笔者考虑了基于位置预测的个性化服务迁移。
4.3预测性延迟迁移算法
首先,笔者构思了延迟迁移(lazymigration,LM)算法。该算法通过“向后看”,对当前时刻进行服务迁移所需的成本和从上一迁移时刻到目前累积的非迁移时延进行权衡,进而决定是否迁移。如果累积时延不超过当前的迁移代价,那么将一直延迟服务的迁移。进一步地,利用预测的用户下一时刻的位置信息,笔者对算法进行了改进。在进行累积时延和迁移代价的权衡之前,笔者引入了一种“向前看”的机制。考虑到用户未来可能的时延比过去的时延更具有决策的指导意义,笔者首先通过“向前看”估计用户当前时刻和下一时刻可能会感知到的时延,并和当前迁移代价进行权衡。如果预知到在不迁移情况下,用户接下来两个时间片的时延很大,则直接进行服务的迁移,否则就使用延迟迁移算法进行决策,这就是预测性延迟迁移(predictivelazymigration,PLM)算法,见算法2。
算法2:预测性延迟迁移算法。
输入:用户的位置集合Y={y1,y2,…,yT},预测的下一位置集合Z={z1,z2,…,zT},向前看参数μ1和向后看参数μ2。
输出:用户访问总时延和总迁移代价。
算法过程:
初始化t←1,m←y1,S←0,C←0
τ←1./*上次迁移的时间*/
fort=1,2,3,…,Tdo
ifyt≠mthen
ifc(m,yt)
物联网和边缘计算有什么关系看尽本文秒懂!
原标题:物联网和边缘计算有什么关系?看尽本文秒懂!什么是物联网和边缘计算?
物联网会产生大量的数据,这些数据需要经过处理和分析才能使用。边缘计算将会使计算服务更接近最终用户或数据源,如物联网设备。
这就让我们能够在设备所在的边缘收集和处理物联网数据,而不用将数据发回数据中心或云端来帮助识别模式,从而更快地展开行动,如异常检测,进行预测性维护。
物联网设备利用计算能力可以实时、快速分析数据,这项能力正变得日益宝贵。
物联网(IoT)是指将物理对象连接到互联网的过程。更具体地说,物联网就是指任何无需人工干预即可通过无线网络接收和传输数据的物理设备或硬件系统。
物联网设备可以是任何东西,从灯泡等普通家用物品,到医疗设备等医疗行业资产,再到可穿戴设备、智能设备,甚至是智慧城市的交通信号灯。
一个典型物联网系统要维持正常工作,就要在反馈回路中不断发送、接收和分析数据。而分析既可以由人进行,也可以由人工智能和机器学习(AI/ML)代劳,时长也从近实时到较长时间而不等。
边缘计算是指在用户或数据源的物理位置或附近进行的计算,这样可以降低延迟,节省带宽。
通过将计算服务靠近这些位置,用户能够得到更快速可靠的服务,获得更好的用户体验,公司则能够更好地支持对延迟敏感的应用、利用AI/ML分析等技术识别趋势和提供更好的产品和服务。
通过边缘计算,公司能够在许多位置使用和分布公共资源池,帮助扩展集中式基础架构,从而满足越来越多的设备和数据的需求。
物联网网关可以将数据从边缘发回云端或集中式数据中心,或者送到边缘系统进行本地处理。
展开全文物联网和边缘计算有什么关联?
物联网需要拥有更接近物理设备或数据源实际位置的计算能力。为了能够快速对物联网传感器和设备生成的数据进行分析,从而加速响应或解决问题,人们需要在边缘进行分析,而不是将数据传回中央站点再进行分析。
边缘计算是物联网设备数据和计算需求的本地处理和存储源,它可以降低物联网设备与这些设备所连接的中心IT网络之间的通信延迟。
如果没有边缘计算,物联网只能依赖于云端或数据中心的网络连接和计算服务。但在物联网设备和云端之间来回发送数据会导致响应时间变慢,运维效率降低。
边缘计算还有助于解决其他问题,例如改善通过缓慢的蜂窝或卫星连接发送海量数据所需的网络带宽,以及确保网络断线时系统继续离线工作。
边缘计算使您能够充分利用物联网设备创建的海量数据。通过将分析算法和机器学习模型部署到边缘,您可以实现数据的本地处理并将它们用于快速决策。边缘计算还可以对数据进行整合,随后将其发送到中央站点进行进一步处理或长期存储。
物联网设备和边缘设备有什么区别?
边缘设备是指位于网络边缘远程位置的物理硬件。它有足够的内存、处理能力和计算资源。它可以在网络其他组件的帮助下近乎实时地收集、处理和执行数据。
物联网设备是连接到互联网上的物理对象,是数据的来源。而边缘设备是收集和处理数据的地方。如果物理对象拥有足够的存储和计算能力,可以在毫秒内做出低延迟决策并处理数据时,边缘设备也可以被视为物联网的一部分。物联网设备和边缘设备这两个术语有时可以交替使用。返回搜狐,查看更多
责任编辑: