导图社区 关于部署移动深度学习应用程序的调查:系统和技术视角
这是一篇关于关于部署移动深度学习应用程序的调查:系统和技术视角的思维导图。信息系统的概念系统16信息系统数据与信息16环境组织供应商顾客管理机构股东竞争者输入处理分类整理计算输出信息系统反馈信息系统的功能
编辑于2022-09-30 19:45:02 陕西关于部署移动深度学习应用程序的调查:系统和技术视角
介绍
研究MDLA在移动设备上的部署非常重要,这使得将大量集中式应用迁移到移动端成为可能。
在移动设备上部署 MDLA
主要思想
减少运行深度学习任务的资源需求
或设计适合移动设备的深度学习框架以优化 MDLA 的计算
降低深度学习模型的复杂性
降低模型空间复杂度
剪枝
剪枝旨在减少模型参数的数量。
基本思想
选择并删除一些对模型精度影响不大的琐碎参数
然后重新训练模型以恢复模型性能
参数共享
层与层之间有加权边,权重参数的个数会随着节点数的增加而增加。
共享某些边的权重
以减少参数
网络量化
通过减少每个权重参数的位数来压缩初始网络
量化
使用低精度数据来表示原始的高精度数据
直接设计小模型
一些工作期望通过更精细的模型设计或直接训练有前途的网络架构而不是迭代执行训练和修剪来产生小而准确的深度模型
降低模型时间复杂度
低秩张量分解
通常基于低秩逼近的理论和方法
是加速大型 CNN 的非常有用的工具
它将原始加权张量分解为两个或多个张量,并对分解后的张量进行优化,通常使用标准SVD将三维张量展开为二维张量,或使用多个一维张量的外积和近似来降低时间复杂度
计算加速
通常通过改进矩阵乘法、降低数字分辨率等来加速前向传播
知识蒸馏
主要思想
训练一个小的网络模型来模仿预先训练好的一个大网络的知识,类似于老师和学生的关系
大网是"老师",小网是"学生"。
一般的方法
是学习教师模型的softmax分类输出
数据转换
输入数据被转换以加快计算速度
直接设计小模型
为了减少移动深度模型的推理延迟,我们可以直接设计小型、快速的移动模型,同时确保其准确性。
一种自动化的移动神经架构搜索 (MNAS) 方法
该方法使用深度强化学习来搜索特定权衡的模型。
重用中间结果
图像帧之间的数据重用
经常应用于相同的模型和相似的输入,典型用于连续移动视觉。
多个深度任务之间的数据重用
任务之间的数据重用通常针对不同的深度模型和相同的输入实现。
MDLA 可能有多个模型用于不同但相关的任务,在相似的时间内执行相同的输入,重复底层特征提取计算是一种资源浪费。
流行的想法是共享多个任务的模型的部分计算结果。
跨设备的数据重用
适用于不同设备和相似输入上的相同模型。
多个任务之间的资源调度
移动系统上通常运行不止一个 MDLA。
所有这些深度模型之间的联合资源调度优化,而不是对单个深度任务的独立优化,可以最大化所有 MDLA 的性能总和。
移动设备上的深度学习框架
现有的框架比较沉重,出的对应的移动版本主要针对了GPU芯片的优化,对推理阶段带来的效益微乎其微
最近,一些工作集中在开发专业软件库,以在资源有限的移动设备上训练和部署深度模型。总体思路是结合传统框架,加速训练网络的推理过程,显着减少运行 MDLA 的资源。
MDLA的分布式部署
卸载
一种通过将计算迁移到具有更多资源的可计算节点来增强移动系统功能的解决方案
位置
远程云
在大多数情况下,这种方法对于数据传输需求小、计算需求大、交互需求低的 MDLA 来说是一个不错的选择。
然而,移动云仍面临多重挑战。显然,由于与用户的距离相对较远,移动云计算并不适合所有的卸载案例,尤其是交互密集型应用。 MCC 还为移动网络的无线电和回程增加了大量额外负载。
边缘网络
由于与用户的距离较远,回程带宽有限,MCC很难很好地应对所有的卸载场景,尤其是近年来对延迟敏感和交互密集的MDLA。
移动边缘计算(MEC) 是一种很有前途的解决方案,可以弥补 MCC 问题
MEC通过在无线接入网络中提供IT和云计算,更贴近移动用户[51]。 MEC作为5G时代的关键技术之一,具有低时延、高带宽、实时无线网络信息、位置感知等优势。
ad hoc 移动小云 [57] 已成为移动用户更近的卸载点。
他们可以 临 时 将 计 算 卸 载 到 对 等 设 备 , 以 节 省 本 地 能 源 和 资 源 。
远程云和边缘网络的协作
对比
MCC提供大容量服务和丰富的计算资源,但距离移动终端太远,面临高延迟。
MEC更贴近移动用户,延迟低,但计算资源有限,查询容量小。
Adhoc 移动小云最接近移动用户,提供更多的通信方式和低延迟。
用户可以通过无线网络中的一跳访问小云,但小云上的资源极其有限,提供的服务很少。
Teerapittayanon 提出了一种基于分布式计算层次结构的分布式深度神经网络(DDNN),包括云、边缘网络和终端设备。 DDNN 可以适应云中的 DNN 推理,以及使用 DNN 的浅层部分在边缘服务器和终端设备上进行快速和本地推理
在广泛分布的计算层次的支持下,DDNN 可以扩展神经网络和地理范围[83]。
在 [84],维托尔等人。提供了一种新的策略来简化物联网场景中的云和雾设施的组合,称为组合雾云(CFC)。
。它引入了QoS感知的服务分配问题,并将其表示为一个整数优化问题,以满足容量要求并最小化延迟。
林等人。协调小云和远程云的计算资源,充分利用这两个系统。
为无线带宽和计算资源分配开发了一个系统奖励模型
将问题表述为半马尔可夫决策过程,并使用 LP 求解器工具将其求解为线性规划问题
计算模式
单服务器单用户
主要专注于制定卸载策略,即在本地运行MDLA,进行完全卸载或者将MDLA分成几个独立的子任务进行部分卸载
目标是最小化能源成本或任务的总延迟,或者在两者之间进行权衡
单机多用户
必须考虑计算资源分配和无线信道竞争问题
当多个用户将他们的计算卸载到一台服务器以同时减少他们的 MDLA 的处理时间时,他们的响应时间可能不如预期的那么完美。
为了获得更好的系统性能,应该考虑在多个时间和能源约束下联合优化单个用户的卸载策略
多服务器单用户
在这种情况下,我们首先设置服务器不是远程云的前提;
它是一组边缘服务器或可计算设备,距离运行 MDLA 的移动设备不远。
两种情况
完全卸载MDLA
移动设备需要在多个可计算位置中选择一个点边缘服务器和附近可计算设备上的当前无线信道状态、任务队列和可用资源。它被定义为请求路由问题,我们在 D 段中讨论它;
MDLA 也可以分为几个子任务并 卸载到多个边缘服务器和可计算设备。
在这种情况下,边缘设备的异构性和时变性对任务的划分和分配以及计算结果的收集和整合提出了艰巨的挑战
多服务器多用户
问题定义
单个服务器上的资源分配
边缘服务器上的资源有限,可能无法满足来自覆盖区域的所有请求。我们将服务器上有限资源在多个用户之间的分配定义为资源分配问题。
用户多台服务器的路由请求
5G时代基站密度将达到50个BS/km2[86],这将导致用户位于具有重叠区域的复杂多基站环境中。这种复杂的、多单元的情况使得用户很难决定在哪里卸载他们的 MDLA 任务以实现MDLA 的最佳性能,我们将其定义为请求路由问题。
服务的放置
服务可以缓存在离用户不远的边缘服务器上,以提供更低的服务访问延迟。
有三个先决条件:
边缘服务器只能缓存有限数量的服务;
用户的请求只能通过他们请求的服务路由到服务器;
用户处于复杂的多单元环境中。
我们必须决定如何在多个边缘服务器之间分配各种服务,以响应更多请求并最大限度地提高整体性能。我们将此定义为服务放置问题,并在 C 小节中讨论其解决方案。
在边缘服务器之间平衡卸载
移动用户的分布呈现出巨大的空间多样性和移动性。
这些特征导致边缘服务器之间的工作负载不平衡,并影响请求-响应时间。
由此定义两个问题
负载均衡问题
资源共享问题
卸载决策
分布式部署的基本思想
将各种 MDLA 的任务卸载到资源充足的后台
当我们做出卸载决策时,一个关键的挑战是决定何时以及如何卸载,因为卸载并不总是有益的
卸载模式
完全卸载
高度集成或相对简单的任务无法分区,必须在本地执行或作为一个整体卸载到服务器或对等设备。
或者,可以对 MDLA 进行分区,但在做出卸载决策后,完全卸载被认为是当前的最佳解决方案。
部分卸载
一个 MDLA 由许多组件组成,并且可以划分为多个分区以实现细粒度(部分)计算卸载。
必须注意以下三点
(i)分区和组件的依赖关系影响组件的执行顺序和卸载顺序。行政命令中较高的组件具有较低的卸载优先级。
(ii) 硬件受限组件必须在移动设备上本地执行;例如,在移动视频分析应用中,我们通过移动设备上的摄像头获取无法卸载的图像或视频流。
(iii) 还应考虑组件之间交换的数据大小和每个组件的计算量。趋势通常是卸载计算量大的组件或与其他组件的数据流量较少或以相反的执行顺序卸载。
考虑三个方面的潜在策略
(i)将 MDLA 的一些子任务卸载到后台,以减少移动设备的计算延迟和能耗;
(ii) 卸载部分处理后的数据,而不是所有初始数据,以减少传输延迟和能耗;
(iii) 保护用户移动数据的安全和隐私。
决策方法
基于规则的卸载决策
通常考虑是否卸载作为组合优化问题在一组约束下的输出结果。
通过测量特定约束条件下当前任务执行的上下文和优化目标来制定问题,并利用一定的数学知识解决问题并输出决策方案。
基于学习的卸载决策
首先要收集、量化和表征程序当前的运行上下文,包括电池电量、应用程序属性、用户移动性、网络状态等,然后将它们作为深度学习模型的输入然后输出当前是否以及如何卸载。
主要使用两种基本策略
通常用于构建分类器的DNN
在决策制定中具有出色性能的 DRL
分布式缓存
观察到两点
首先,用户请求的服务具有高度的可重复性;
也就是说,同一个应用程序被应用商店中的数千名用户下载并运行在数千种不同的移动设备上。
通过将这些服务部署在移动边缘网络中,移动用户可以在良好的网络条件下轻松地将其 MDLA 数据卸载到边缘服务器,从而大大降低 MDLA 的执行延迟。
服务是否可以缓存在某个边缘服务器中,直接决定了其覆盖区域内的用户是否可以将其计算卸载到边缘。
其次,在 MAR 应用程序和许多其他视频图像 MDLA 中,许多用户可能会重复请求类似的视频内容。
由于视频传输占用较大的带宽,如果每次请求都从CDN取视频,重复的内容传输会造成很大的带宽浪费。
所以, 我们应该在移动网络中采用智能缓存策略,使移动用户能够从附近的缓存中获取内容,这可以显着减少MDLA的数据访问时间,并大大消除网络连接动态的影响。
。事实证明,3G 移动网络和 4G LTE 网络中的缓存可以将移动流量减少 1/3 到2/3 [99]。
缓存内容
服务(即MDLA 的深度模型)
服务缓存
是边缘服务器或附近可计算设备及其相关数据库中缓存的深度模型
允许用户在边缘卸载相应的计算任务
由于我们只能在资源受限的边缘服务器中同时缓存有限数量的 MDLA 服务
因此我们必须仔细决定缓存哪些服务,以最大限度地提高整个系统的卸载利润
我们缓存在边缘服务器上的服务决定了用户可以卸载哪些任务。
如果我们缓存最流行的服务,系统可能会获得最大的性能收益。
数据
MDLA 的输入数据
移动设备上硬件获取的实时数据,例如用于物体分类的图像;
从中央存储中心的内容提供商处获取的离线数据,例如支持 VR/AR 和全景视图的多媒体数据。
分布式数据缓存仅适用于离线数据,不适用于实时数据。
因此,对于实时数据,我们讨论数据压缩和传输;
对于离线数据,我们讨论分布式缓存。
实时数据
操作是卸载,主要问题是有限的动态无线带宽。
非实时数据
在很多分布式部署的MDLA中,用户需要经常与服务器交换数据,或者很多用户可能会重复向CDN请求相同的多媒体内容。
在传统的基于云的架构中,内容通常从中央数据存储中心获取,远离用户,不适合数据交换频繁、访问请求量大的特点。它会产生相当大的延迟并影响用户的服务质量。
近年来,将数据缓存在靠近用户的地方变得越来越流行,例如边缘服务器或附近的 ad hoc 设备。
缓存位置
分为三个主要存储位置
EPC核心网络
无线接入网络(RANs)
自组织设备
考虑一个基本问题
虽然更紧密的缓存减少了相同内容在网络其余部分的冗余传输并释放了核心,但大多数网络是按照树形分布层次结构组织的。
而且缓存位置离用户越近,覆盖的用户就越少
边缘服务器服务的用户数少于中央云存储服务的用户数。
如果在某个缓存点没有用户请求数据,则可能不需要主动将复制的内容带到边缘点。
因此,需要智能选择缓存位置和优化内容放置。
四种情况下的内容传输
无缓存
每个内容请求都需要通过复杂的网络传输,才能从远程 ISP 获取内容,导致存储冗余和传输延迟很大。
使用核心网络缓存
加入核心网缓存后,ISP与核心网设备的通信可以有所减少;
使用无线接入网络缓存
增加RAN缓存后,接入网与核心网的通信流量可以显著降低
使用具有 D2D 通信的自组织设备缓存
进一步增加设备缓存和D2D通信,可以进一步降低传输延迟
核心网络
EPC中缓存服务器和PC节点的集中部署,极大地简化了移动内容分发网络的管理,并且易于随着内容需求多样性的增加而扩展。
EPC缓存的命中率非常高,因为它拥有庞大的存储库和大量的用户。
由于内容是通过 EPC 下游的 GPRS 隧道协议 (GTP) 封装和传输的
在EPC 上部署内容感知缓存比在其他位置更容易
主要有两个缺点
核心网距离用户较远,会导致用户访问数据时延迟较大
核心网覆盖用户范围大,多个用户重复请求相同的内容,会浪费更多的网络传输资源
无线接入网络RAN
尽管在核心网络中部署缓存更容易,但最近,许多作品更倾向于将内容缓存推送到更靠近用户的边缘。
在新兴的 5G 网络中,
基站(BS)自然会配备边缘服务器(如 Nvidia Jetson TX21),并为缓存服务提供存储能力。
RAN缓存通常将内容缓存在eNB中
主要分为两类
宏基站
宏基站覆盖范围大,服务更多用户,存储资源丰富,缓存命中率更高。
微基站
与宏基站相比,微基站存储空间更小,覆盖范围更小,因此从缓存内容的多样性来看,可能缓存命中率更低。
但是,微基站带来了更大的灵活性,更重要的是,微基站之间的协同内容共享可以共同优化用户的请求,提高缓存命中率。
此外,微基站相对于宏基站的最大优势之一是离用户更近,因此可以带来更小的延迟,以减少网络连接不稳定的影响。
自组织设备ad hoc devices
D2D通信技术的出现,使得终端设备之间进行方便、直接的点对点通信成为可能。
常见的做法是将内容缓存在地理位置较近的辅助节点或属于具有相似特征的用户的设备上,并使用 D2D 通信辅助其传输。
将中央服务器与多个最终用户结合
形成了一个内容交付系统,支持三种内容交付模式
中央服务器存储整个内容目录并将请求的内容交付给移动用户
移动设备缓存有限,可以通过 D2D 通信相互传输内容;
中央服务器将内容传输给移动用户,然后再传输给其他用户。
他们的目标是决定在终端设备上缓存哪些内容以最小化服务成本
考虑多媒体大数据卸载架构中具有延迟约束的两跳无线连接的QoS。
当两个移动用户请求相同的多媒体数据内容时
一个用户从基站下载数据并使用 D2D 将数据转发给另一个用户。
作者提出了三种最优的单跳传输功率分配方案来解决支持这种双跳无线链路传输的问题,同时保证两个单跳的有界 QoS 要求。
缓存策略
缓存策略决定了缓存的内容和位置,以及何时释放其存储。
基于流行度
缓存流行度更高的内容可以最大化一定区域内所有用户的总QoE。
内容的流行度
定义为对特定内容的请求数与用户请求总数之比
但值得注意的是,内容的流行并非一成不变;它遵循Zipf分布,这是一个幂律分布[ 113 ]。
因此,有必要在基于流行度的缓存策略中更新内容的流行度
另一个重要的事实是,大范围内的内容流行度分布往往不同于小范围内的分布。
因此,内容流行度的衡量面临着空间粒度知识的难点,不仅因为各类边缘服务器的覆盖范围不同,还因为用户在多个单元之间动态流动。
这也会对内容流行度的预测产生影响,尤其是对于覆盖范围较小的基站 中的边缘服务器。
基于热点
在 VR/AR、视频流服务和实时互动游戏等许多多媒体MDLA 中,用户通常会看到最吸引人的视点。
这些感兴趣的区域或视频剪辑被定义为热点,应在缓存中优先考虑。
有时,一个视图中有多个热点。例如,[103] 模拟 VR 视图中所有视点的吸引力,以缓存最有可能被请求的内容。
基于用户偏好
用户偏好配置文件包括特定用户在一定时间段内请求每个内容的概率,并且不同个体之间存在显着差异。
这是因为用户通常对特定的内容类别有强烈的偏好。
可以根据用户的历史内容需求和用户之间的相似度来预测用户的偏好。这些信息可以广泛用于推荐系统。
由于偏好的特性,某个偏好类别下的用户数不会太大
因此适合应用于覆盖范围较小的缓存服务器,如基站或家庭小云。
基于学习
首先,内容流行度是区域性的,不是固定的,很难捕捉。
其次,在大多数情况下,我们缓存的内容是面对高度动态和复杂的用户播放行为的视频流。
因此,使用内容需求历史知识的基于学习的缓存策略非常有前途。
典型应用
面向用户的MDLA
主要为移动用户提供多样化、个性化的智能服务,用户是主要受益者
他们使用集成在移动设备上的轻量级便携式数据采集设备,包括摄像头、麦克风、传感器等
并使用这些数据在附近的移动设备或边缘服务器上进行计算。
如果计算复杂,可以进一步卸载到远程云端。这种深度学习是轻量级、便携且贴近用户的。
面向第三方的MDLA
主要收益者是服务提供商和网络运营商
场景
移动众包
分布式深度学习任务
各种物联网应用
未来方向
移动设备
移动信息采集装置
移动设备设计
移动设备功耗
数据管理
数据个性化管理
数据隐私和安全
系统与网络
MDLA 的分布式系统
推进通信
新应用类型
多媒体数据自动识别、360度全景传输、视点高清、超分辨率重建、遮挡后视觉扩展、视觉鉴权等
结论
部署MDLA
是在移动设备上本地执行它们。
主要方法
通过改进深度学习算法或重新设计模型架构以适应移动终端来降低复杂度;
重用深度模型的中间结果以减少计算量;
为移动设备开发更轻量级的深度学习框架
使用云、移动边缘服务器和自组小云(ad hoc cloudlets)来实现 MDLA 的分布式部署。
三个角度
分布式部署框架
计算卸载决策
缓存配置