边缘计算深度学习模型分布式训练方法、装置和存储介质
文献发布时间:2024-04-18 19:54:45
技术领域
本发明涉及深度学习技术领域,尤其是一种边缘计算深度学习模型分布式训练方法、装置和存储介质。
背景技术
目前云数据中心的人工智能模型集中或分布式训练,即云训练或云边缘训练,通常是训练数据进行预处理,然后传输到云,并不适用于所有的人工智能模型训练场景,特别是在边缘计算环境下,需要考虑连续学习、地理分散位置和隐私敏感数据保护等多个方面,从分布式训练的讨论,并从三个方面分析人工智能训练和边缘计算:
(1)持续学习:作为当前和未来人工智能的关键,持续学习强调关于环境信息和行动策略的知识的持续更新,这一点最近在深度强化学习中得到了很好的证明。
(2)地理位置分散:在边缘计算环境下,由于大量数据从地理分散位置生成并进行分析以实现统一的目标,谁执行模型的训练计算过程以及如何减少不同设备之间的通信成本是模型训练过程中的问题。
(3)隐私敏感数据保护:目前的传统的集中式人工智能模型训练可能会侵犯训练数据的隐私问题,这在边缘计算环境及大型不安全的网络上将所有数据合并到云中显得非常严重。
例如,对于与目标检测和目标跟踪相结合的监控应用,如果终端设备直接向云发送大量实时监控数据到云进行在线训练,会带来较高的网络成本,可能导致视频内容信息泄露。为了解决上述这些挑战,分布式训练在边缘可以追溯到的工作,随机梯度下降(SGD)方法提出边缘计算网络解决大型线性回归问题,然而,该方法是为地震成像应用和不能推广的人工智能训练,因为训练大规模模型的通信成本非常高。
因此,相关技术存在的上述技术问题亟待解决。
发明内容
有鉴于此,本发明实施例提供一种边缘计算深度学习模型分布式训练方法、装置和存储介质,能够对深度学习模型进行分布式训练。
一方面,本发明的实施例提供了一种边缘计算深度学习模型分布式训练方法,包括:
在终端设备和边缘节点都初始化代理,然后迭代以下过程:
通过终端设备从边缘节点下载参数,将参数分配给终端设备的本地参数;基于终端设备的本地样本训练更新参数;
通过终端设备上传训练更新后的参数和本地训练次数到边缘节点;
通过边缘节点更新训练时间,并基于从终端设备的接收数据,通过服务器进行聚合更新参数;
其中,迭代过程前和/或迭代过程中,还包括训练优化处理,训练优化处理包括基于定期通信和结构化更新的通信优化处理、基于资源约束确定计算消耗的资源优化处理和基于信息交互的安全优化处理。
可选地,通信优化处理,包括:
通过使终端和服务器的定期通信,限制深度学习模型更新,结合结构化更新使深度学习模型具有预设的结构;
其中,预设的结构包括低秩矩阵和稀疏矩阵。
可选地,通信优化处理,还包括:
在上传模型聚合之前进行子采样、概率量化和结构化随机旋转的操作,用于压缩完整的更新;
以及,通过数据增强进行非均匀分布训练数据的缓解,和,基于中介调度的贪婪策略,最小化中介数据分布与均匀分布,进行训练任务分配。
可选地,资源优化处理,包括:
根据模型训练的时间成本、内存使用和计算工作量分析模型训练的计算消耗得到神经元需要被屏蔽的层数,在每个训练期间动态屏蔽不同的神经元组,并在神经元组聚合期间恢复和更新。
可选地,资源优化处理,还包括:
通过使用效率模型为无线网络上的深度学习制定一个非凸的资源分配问题,用于捕获终端的能源成本和能源成本之间的权衡;
利用终端的能源成本和能源成本之间的权衡推导出封闭解,表征效率控制的目标影响。
可选地,利用终端的能源成本和能源成本之间的权衡推导出封闭解,表征效率控制的目标影响,包括:
在给定的用户选择和资源块分配下得到目标传输功率;
将资源优化处理问题转化为二值匹配问题;
确定最佳的用户选择和资源块分配策略。
可选地,安全优化处理,包括:
向敏感数据添加噪音,对隐私信息进行差分化。
可选地,安全优化处理,还包括:
将终端设备的本地模型纳入训练过程,包括训练过程的规范、隐私机制的选择和配置和本地模型担保的会计程序。
另一方面,本发明的实施例提供了一种边缘计算深度学习模型分布式训练装置,包括处理器以及存储器;
存储器用于存储程序;
处理器执行程序实现如前面的方法。
另一方面,本发明的实施例提供了一种计算机可读存储介质,存储介质存储有程序,程序被处理器执行实现如前面的方法。
本发明实施例还公开了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器可以从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行前面的方法。
本发明实施例通过在终端设备和边缘节点都初始化代理,然后迭代以下过程:通过终端设备从边缘节点下载参数,将参数分配给终端设备的本地参数;基于终端设备的本地样本训练更新参数;通过终端设备上传训练更新后的参数和本地训练次数到边缘节点;通过边缘节点更新训练时间,并基于从终端设备的接收数据,通过服务器进行聚合更新参数;其中,迭代过程前和/或迭代过程中,还包括训练优化处理,训练优化处理包括基于定期通信和结构化更新的通信优化处理、基于资源约束确定计算消耗的资源优化处理和基于信息交互的安全优化处理。本发明相比传统云场景下的深度学习模型集中训练及更新方法,提升了系统通信效率、模型训练速度和保障了数据安全,同时本申请中提出的技术可以提升边缘计算环境下的深度学习模型训练速度,从而在边缘计算与深度学习结合领域,对于提升边缘计算环境下的深度模型训练效率及数据安全保护具有重大价值,提高了系统的实用价值。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种边缘计算深度学习模型分布式训练方法的流程概要示意图;
图2为本发明实施例提供的一种边缘计算深度学习模型分布式训练装置的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
本申请的说明书和权利要求书及附图中的术语“第一”、“第二”、“第三”和“第四”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
目前云模型训练或云边缘的模型训练面临的挑战在人工智能服务需要持续学习和数据隐私保护,在边缘计算架构中,由大量的边缘节点与适度的计算资源,通过处理数据或训练自己训练边缘或可能在“端边云”,从而可以减轻网络的压力和保护数据隐私;把边缘作为模型训练的核心模块,被称为“模型边缘计算训练”,这种模式的模型训练可能需要大量的资源来消化分布式数据,并在层次结构中交换更新;特别是,当前联邦学习是一个新兴的分布式模型训练学习架构,可以帮助解决这些问题的设备具有不同的能力和有限的网络条件在边缘计算,联邦学习可以基于隐私保护基础上的处理训练数据,并通过协同机制,实现模型的同步和更新。
目前云数据中心的人工智能模型集中或分布式训练,即云训练或云边缘训练,通常是训练数据进行预处理,然后传输到云,并不适用于所有的人工智能模型训练场景,特别是在边缘计算环境下,需要考虑连续学习、地理分散位置和隐私敏感数据保护等多个方面,我们从分布式训练的讨论,我们从三个方面分析人工智能训练和边缘计算:.
(1)持续学习:作为当前和未来人工智能的关键,持续学习强调关于环境信息和行动策略的知识的持续更新,这一点最近在深度强化学习中得到了很好的证明。
(2)地理位置分散:在边缘计算环境下,由于大量数据从地理分散位置生成并进行分析以实现统一的目标,谁执行模型的训练计算过程以及如何减少不同设备之间的通信成本是模型训练过程中的问题。
(3)隐私敏感数据保护:目前的传统的集中式人工智能模型训练可能会侵犯训练数据的隐私问题,这在边缘计算环境及大型不安全的网络上将所有数据合并到云中显得非常严重。
例如,对于与目标检测和目标跟踪相结合的监控应用,如果终端设备直接向云发送大量实时监控数据到云进行在线训练,会带来较高的网络成本,可能导致视频内容信息泄露。为了解决上述这些挑战,分布式训练在边缘可以追溯到的工作,随机梯度下降(SGD)方法提出边缘计算网络解决大型线性回归问题,然而,该方法是为地震成像应用和不能推广的人工智能训练,因为训练大规模模型的通信成本非常高。
为了解决上述问题,本申请提出了一种边缘计算深度学习模型分布式训练方法。本申请以分布式计算、边缘计算、大数据、深度学习、卷积网络、联邦学习、模型剪裁、及嵌入式模型推理加速处理为理论基础,针对边缘计算数据特征处理,并建立基于模型分割和云计算的边缘计算的模型推理加速技术。
术语解释:
深度学习:深度学习是机器学习的一种,而机器学习是实现人工智能的必经路径。深度学习的概念源于人工神经网络的研究,含多个隐藏层的多层感知器就是一种深度学习结构。深度学习通过组合低层特征形成更加抽象的高层表示属性类别或特征,以发现数据的分布式特征表示。研究深度学习的动机在于建立模拟人脑进行分析学习的神经网络,它模仿人脑的机制来解释数据,例如图像,声音和文本等。
声音处理:声音处理是计算机科学领域以及人工智能领域的一个重要的研究方向,它研究用计算机来处理、,达到人与计算机之间进行有效通讯。声音处理主要应用于语音分类、噪声检测、语音识别等方面。
计算机视觉:计算机视觉是一门研究如何使机器“看”的科学,更进一步的说,就是是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取‘信息’的人工智能系统。这里所指的信息指Shannon定义的,可以用来帮助做一个“决定”的信息。因为感知可以看作是从感官信号中提取信息,所以计算机视觉也可以看作是研究如何使人工系统从图像或多维数据中“感知”的科学。
分布式计算:分布式计算是一种计算方法,和集中式计算是相对的。随着计算技术的发展,有些应用需要非常巨大的计算能力才能完成,如果采用集中式计算,需要耗费相当长的时间来完成。分布式计算将该应用分解成许多小的部分,分配给多台计算机进行处理。这样可以节约整体计算时间,大大提高计算效率。
边缘计算:边缘运算,又译为边缘计算,是一种分布式运算的架构,将应用程序、数据资料与服务的运算,由网络中心节点,移往网络逻辑上的边缘节点来处理。边缘运算将原本完全由中心节点处理大型服务加以分解,切割成更小与更容易管理的部分,分散到边缘节点去处理。边缘节点更接近于用户终端设备,可以加快资料的处理与发送速度,减少延迟。
联邦学习:联邦机器学习是一个机器学习框架,能有效帮助多个机构在满足用户隐私保护、数据安全和政府法规的要求下,进行数据使用和机器学习建模。联邦学习作为分布式的机器学习范式,可以有效解决数据孤岛问题,让参与方在不共享数据的基础上联合建模,能从技术上打破数据孤岛,实现AI协作。联邦学习有三大构成要素:数据源、联邦学习系统、用户。在联邦学习系统下,各个数据源方进行数据预处理,共同建立及其学习模型,并将输出结果反馈给用户。
CNN:卷积神经网络(CNN或ConvNet)是一类深度神经网络,最常用于分析视觉图像。CNN使用多层感知器的变体设计,需要最少的预处理。它们也被称为移位不变或空间不变人工神经网络(SIANN),基于它们的共享权重架构和平移不变性特征。
RNN:循环神经网络(RNN)是一类深度循环神经网络,最常用于分析序列数据,RNN使用LSTM等多层感知器的变体设计,需要最少的预处理。
SGD:随机梯度下降是迭代法的一种,可以用于求解最小二乘问题(线性和非线性都可以)。在求解机器学习算法的模型参数,即无约束优化问题时,随机梯度下降(RandomGradient Descent)是最常采用的方法之一,另一种常用的方法是最小二乘法。在求解损失函数的最小值时,可以通过梯度下降法来一步步的迭代求解,得到最小化的损失函数和模型参数值。
差分隐私:差分隐私(英语:differential privacy)是密码学中的一种手段,旨在提供一种当从统计数据库查询时,最大化数据查询的准确性,同时最大限度减少识别其记录的机会,即对查询的结果加入噪声,使得攻击者无法辨别某一样本是否在数据集中
CPU:中央处理器(CPU),是电子计算机的主要设备之一,电脑中的核心配件。其功能主要是解释计算机指令以及处理计算机软件中的数据。CPU是计算机中负责读取指令,对指令译码并执行指令的核心部件。
GPU:图形处理器(graphics processing unit,GPU),又称显示核心、视觉处理器、显示芯片,是一种专门在个人电脑、工作站、游戏机和一些移动设备(如平板电脑、智能手机等)上做图像和图形相关运算工作的微处理器,在深度学习领域,常用作模型训练加速。
鉴于现有技术的问题,一方面,本发明的实施例提供了一种边缘计算深度学习模型分布式训练方法,包括:
在终端设备和边缘节点都初始化代理,然后迭代以下过程:
通过终端设备从边缘节点下载参数,将参数分配给终端设备的本地参数;基于终端设备的本地样本训练更新参数;
通过终端设备上传训练更新后的参数和本地训练次数到边缘节点;
通过边缘节点更新训练时间,并基于从终端设备的接收数据,通过服务器进行聚合更新参数;
具体地,一些具体实施例中,如图1所示,通过分布式训练及模型更新同步,为了加强数据的隐私保护和减少数据传输,对于深度学习模型的策略及训练,可以采用分布式协同训练方法,首先,在终端设备和边缘节点都初始化一个代理,然后迭代以下过程:
(1)终端设备从边缘节点下载参数,并将其分配给终端设备的本地参数,然后,终端设备通过基于本地样本的训练更新参数。
(2)终端设备上传训练后的参数到边缘节点,并上传终端设备的本地训练次数。
(3)边缘节点更新训练时间,通过从终端设备接收数据,并通过聚合更新参数。
通过上述训练过程,可以在不直接传输样本数据的情况下实现边缘计算环境下深度学习模型的分布式协同训练。
其中,迭代过程前和/或迭代过程中,还包括训练优化处理,训练优化处理包括基于定期通信和结构化更新的通信优化处理、基于资源约束确定计算消耗的资源优化处理和基于信息交互的安全优化处理;
需要说明的是,一些实施例中,通信优化处理,包括:通过使终端和服务器的定期通信,限制深度学习模型更新,结合结构化更新使深度学习模型具有预设的结构;其中,预设的结构包括低秩矩阵和稀疏矩阵。
一些实施例中,通信优化处理,还包括:在上传模型聚合之前进行子采样、概率量化和结构化随机旋转的操作,用于压缩完整的更新;以及,通过数据增强进行非均匀分布训练数据的缓解,和,基于中介调度的贪婪策略,最小化中介数据分布与均匀分布,进行训练任务分配。
具体地,在FL(联邦学习)中,不需要上传原始训练数据,因此在很大程度上降低了通信成本。然而,联邦学习仍然需要将本地更新的模型传输到中央服务器。假设DL(深度学习)模型规模足够大,从边缘设备向中央服务器上传更新数据,如模型权重,也会消耗不可忽略的通信资源。为了解决这个问题,我们可以让FL客户端(对应终端设备)定期(而不是持续)与中央服务器通信,以寻求对共享DL模型的共识。此外,结构化更新是指限制模型的更新,使其具有预先指定的结构,具体来说:(1)低秩矩阵;(2)稀疏矩阵。完整的模型更新被保持。但是,在上传模型聚合之前,进行了子采样、概率量化和结构化随机旋转的组合操作,以压缩完整的更新,同时包含了这些特征,并为强凸和非凸损失函数提供了接近最佳的理论保证,同时从经验上证明了通信-计算的权衡。
与只研究减少上行链路的通信成本不同,它同时考虑到了服务器到设备(下行链路)和设备到服务器(上行链路)的通信。对于下行链路,全局深度学习模型的权重被重塑为一个矢量,然后应用子采样和量化。自然,这样的模型压缩是有损失的,与上行链路不同(多个边缘设备上传他们的模型进行平均),损失不能通过下行链路的平均化来缓解。Kashin的表示法可以在子采样之前作为基础变换来利用,以减轻后续压缩操作所产生的误差。此外,对于上行链路,每个边缘设备不需要在本地训练一个基于整个全局模型的模型,而只需要训练一个较小的子模型或修剪过的模型。由于子模型和修剪过的模型比全局模型更轻,更新上传中的数据量就会减少。
与云计算资源相比,边缘设备的计算资源比较稀缺。为了提高通信效率,还应考虑其他挑战:(1)计算资源是异构的,边缘设备的有限;(2)边缘设备的训练数据可以分布为非均匀的。本方案利用数据增强缓解非均匀分布训练数据的缺陷,另一方面,设计贪婪策略,基于中介调度,为了分配客户中介每个中介穿越所有未分配客户的数据分布选择适当的参与客户,旨在使中介的数据分布最接近均匀分布,最小化中介数据分布与均匀分布。当中介达到分配客户端的最大限制时,中央服务器将创建一个新的中介并重复此过程,直到为所有客户端分配了训练任务。
为了加速全局聚合在联邦学习,利用空中计算的优势,其原理是探索无线多址通道的叠加特性,通过多个边缘设备的同时传输来计算所需的功能。无线信道的干扰可以被利用,而不仅仅是克服这些干扰。在在传输过程中,来自边缘设备的并发模拟信号可以通过信道系数自然地进行权衡。然后,服务器只需要将这些重塑的权重叠加起来作为聚合结果。
需要说明的是,一些实施例中,资源优化处理,包括:根据模型训练的时间成本、内存使用和计算工作量分析模型训练的计算消耗得到神经元需要被屏蔽的层数,在每个训练期间动态屏蔽不同的神经元组,并在神经元组聚合期间恢复和更新。
一些实施例中,资源优化处理,还包括:通过使用效率模型为无线网络上的深度学习制定一个非凸的资源分配问题,用于捕获终端的能源成本和能源成本之间的权衡;利用终端的能源成本和能源成本之间的权衡推导出封闭解,表征效率控制的目标影响。
其中,利用终端的能源成本和能源成本之间的权衡推导出封闭解,表征效率控制的目标影响,包括:在给定的用户选择和资源块分配下得到目标传输功率;将资源优化处理问题转化为二值匹配问题;确定最佳的用户选择和资源块分配策略。
具体地,当联邦学习部署相同的神经网络模型到异构边缘设备时,计算能力弱的设备(掉队者)可能会大大延迟全局模型聚合虽然训练模型可以优化加速掉队,由于异构设备的资源有限,优化后的模型通常导致结构分歧和协作收敛有严重缺陷,首先分析模型训练的时间成本、内存使用和计算工作量分析模型训练的计算消耗。在模型分析的指导下,哪些神经元需要在每一层被屏蔽,以确保模型训练的计算消耗满足特定的资源约束。第二,与生成具有发散结构的确定性优化模型不同,不同的神经元组将在每个训练期间被动态屏蔽,并在随后的聚合期间恢复和更新,从而确保模型全面的更新。值得注意的是,尽管通过资源优化提高了训练速度,并让所有的掉队者同步工作,其中的同步聚合可能无法处理极端的情况。
当联邦学习部署在移动边缘计算场景中时,联邦学习的训练时间将主要取决于客户端的数量及其计算能力。具体地说,联邦学习的总训练时间不仅包括计算时间,还包括所有客户端的通信时间。一方面,客户端的计算时间取决于客户端的计算能力和本地数据大小。另一方面,通信时间与客户端的信道增益、传输功率和本地数据大小相关。因此,为了最小化联邦学习的训练时间,适当的资源分配不仅需要考虑联邦学习参数,如计算-通信权衡的精度水平,还需要考虑客户端的资源分配,如功率和CPU周期。
然而,最小化客户端的能源消耗和联邦学习挂钟时间冲突,例如,客户端可以节省能源总是保持CPU在低频,但这肯定会增加训练时间因此,为了平衡能源成本和训练时间,首先设计为每个客户端解决局部问题大约直到局部精度水平实现,然后,通过使用效率模型,为无线网络上的深度学习制定了一个非凸的资源分配问题,以捕获客户端的能源成本和能源成本之间的权衡,并利用该问题的特殊结构,将其分解为三个子问题,并相应地推导出封闭解,并表征效率控制对最优的影响。
由于用于传输模型更新的上行带宽有限,因此BS必须优化自身的资源分配,而用户必须优化其传输功率分配,以降低每个用户的数据包错误率,从而提高联邦学习性能。为此,制定资源分配和用户选择联邦学习成一个联合优化问题,目标是最小化联邦学习损失函数的值同时满足延迟和能源消耗需求来解决这个问题,首先推导出期望收敛速度的封闭表达式为了建立包错误率和联邦学习性能之间的显式关系基于这种关系,优化问题可以简化为混合整数非线性规划问题,然后解决如下:第一,在给定的用户选择和资源块分配下找到最优传输功率;然后将原始优化问题转化为二值匹配问题;最后,找到最佳的用户选择和资源块分配策略。
联邦学习涉及设备的数量通常很大,从数百到百万的平均损失可能不适合模型性能。虽然普通联邦学习下的平均精度很高,但个别设备所需的模型精度可能无法保证。基于效用函数α-公平无线网络公平资源分配,定义了一个公平的目标q-F联邦学习联合资源优化,q-F联邦学习最小化总重加权损失参数化q,因此,损失较高的设备将获得更高的相对重量,从而鼓励更少的方差,自适应联邦学习避免了手工制作公平性约束的负担,可以根据所需的公平性动态调整目标,实现了设备间精度分布方差的效果。
需要说明的是,一些实施例中,安全优化处理,包括:向敏感数据添加噪音,对隐私信息进行差分化。
一些实施例中,安全优化处理,还包括:将终端设备的本地模型纳入训练过程,包括训练过程的规范、隐私机制的选择和配置和本地模型担保的会计程序。
具体地,分布式训练中参与者的信息交互一直是分布式机器学习中隐私问题的一个关键点,这在上面的章节中有详细的讨论。联邦学习避免了上传训练数据可能造成的隐私泄露,但同时也引入了关于模型更新的隐私问题。通过向敏感数据添加噪音,差分隐私(DP)以严格和量化的表达方式控制信息的泄露,以确保整个数据集中任何个人的数据对最终结果几乎没有影响,这有助于减少联邦学习训练更新中隐私泄露的威胁。
考虑到聚合服务器可以接收来自所有参与者的模型更新,并且服务器位于多域的分层和异构计算环境中,很难提供足够的安全水平可接受的成本,很难在任何地方以可接受的成本提供足够的安全水平,这使得服务器成为隐私保护的薄弱点。为了解决这个问题,集成的本地模型DP(本地DP)迭代训练过程不需要信任聚合服务器,可以总结如下:参参与者首先用自己的数据计算模型更新,然后用DP处理更新,最后上传处理后的更新,用于模型聚合。为了给出一个分配隐私预算的一般方法,并分析不同训练环境(FL或不FL)下的隐私成本,提出了一个模块化的方法,将DP纳入训练过程分为三个方面:(1)训练过程的规范(2)隐私机制的选择和配置,以及(3)DP担保的会计程序。分布式DP模型(分布式DP)也可以在不依赖可信服务器的情况下保护参与者的隐私,并且在精度上优于相同级别的本地DP。在分布式DP中,通信成本需要额外考虑基于准确性和隐私之间的权衡。
从另一种方式来看,服务器也不应该完全信任训练设备,因为对手可以毒害他们的训练数据或直接篡改模型更新,从而导致全局模型受损。为了使联邦学习能够容忍少量的设备训练有毒数据集,健壮的联合优化定义了一个修剪平均操作。过将中毒设备产生的数值以及正常设备中的自然离群值剔除,实现了保护全局模型不受数据中毒影响的稳健聚合。更直接地说,对手可以破坏更新信息的完整性。为了使对手能够通过模型更新中毒向聚合模型注入后门,我们开发一种攻击方法模型替换,使对手能够通过模型更新中毒向聚合模型中注入一个后门,显示更严重的影响比数据中毒攻击的后门训练模型是降低有针对性的子任务的性能没有过度影响整体性能,进一步研究,这表明(1)成功引入后门在很大程度上取决于对手的分数。(2)规范裁剪是有效的减轻对手的影响,并添加高斯噪声基于规范裁剪可以进一步提高防御的性能减轻对手的影响伪装多个身份引入后门,提出了防御方法来区分异常更新的多样性来自训练数据和造成的相似性相同的攻击目标。
近似算法理论分析显示了可接受速率的收敛特性,仿真证明了提高模型精度和减少损失功能。除此之外,联邦学习必须健壮的退出边缘设备,否则一旦设备失去连接,训练任务将失败,为了解决这个问题,本方案提出安全聚合协议来实现鲁棒性,从而容忍三分之一的设备未能及时处理本地训练或上传更新。反过来,联邦学习中聚合服务器的故障可能导致全局模型更新不准确,从而扭曲所有局部模型更新。此外,数据样本数量较多的边缘设备可能不太愿意参与联邦学习。因此,通过联邦学习,实现在每个边缘设备而不是特定服务器的局部全局模型更新,确保设备故障在更新全局模型时不会影响其他局部更新;(2)刺激边缘设备参与联邦学习的适当奖励机制。
综上所述,本发明实施例通过通信优化处理、资源优化处理和安全优化处理,并结合分布式训练及模型更新同步,对比传统的边缘计算环境中的集中式深度模型训练方法,本发明采用基于联邦学习的分布式边缘计算深度学习模型训练机制,相比传统云场景下的深度学习模型集中训练及更新方法,提升了系统通信效率、模型训练速度和保障了数据安全,同时本技术中提出的技术可以提升边缘计算环境下的深度学习模型训练速度,从而在边缘计算与深度学习结合领域,对于提升边缘计算环境下的深度模型训练效率及数据安全保护具有重大价值,提高了系统的实用价值,同时提升了处理效率以及准确率。
如图2所示,本发明实施例的另一方面还提供了一种边缘计算深度学习模型分布式训练装置100,包括处理器110以及存储器120;
存储器120用于存储程序;
处理器110执行程序实现如前面的方法。
本发明方法实施例的内容均适用于本装置实施例,本装置实施例所具体实现的功能与上述方法实施例相同,并且达到的有益效果与上述方法达到的有益效果也相同。
本发明实施例的另一方面还提供了一种计算机可读存储介质,存储介质存储有程序,程序被处理器执行实现如前面的方法。
本发明方法实施例的内容均适用于本计算机可读存储介质实施例,本计算机可读存储介质实施例所具体实现的功能与上述方法实施例相同,并且达到的有益效果与上述方法达到的有益效果也相同。
本发明实施例还公开了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器可以从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行前面的方法。
在一些可选择的实施例中,在方框图中提到的功能/操作可以不按照操作示图提到的顺序发生。例如,取决于所涉及的功能/操作,连续示出的两个方框实际上可以被大体上同时地执行或方框有时能以相反顺序被执行。此外,在本发明的流程图中所呈现和描述的实施例以示例的方式被提供,目的在于提供对技术更全面的理解。所公开的方法不限于本文所呈现的操作和逻辑流程。可选择的实施例是可预期的,其中各种操作的顺序被改变以及其中被描述为较大操作的一部分的子操作被独立地执行。
此外,虽然在功能性模块的背景下描述了本发明,但应当理解的是,除非另有相反说明,的功能和/或特征中的一个或多个可以被集成在单个物理装置和/或软件模块中,或者一个或多个功能和/或特征可以在单独的物理装置或软件模块中被实现。还可以理解的是,有关每个模块的实际实现的详细讨论对于理解本发明是不必要的。更确切地说,考虑到在本文中公开的装置中各种功能模块的属性、功能和内部关系的情况下,在工程师的常规技术内将会了解该模块的实际实现。因此,本领域技术人员运用普通技术就能够在无需过度试验的情况下实现在权利要求书中所阐明的本发明。还可以理解的是,所公开的特定概念仅仅是说明性的,并不意在限制本发明的范围,本发明的范围由所附权利要求书及其等同方案的全部范围来决定。
功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行装置、装置或设备(如基于计算机的装置、包括处理器的装置或其他可以从指令执行装置、装置或设备取指令并执行指令的装置)使用,或结合这些指令执行装置、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行装置、装置或设备或结合这些指令执行装置、装置或设备而使用的装置。
计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行装置执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管已经示出和描述了本发明的实施例,本领域的普通技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同物限定。
以上是对本发明的较佳实施进行了具体说明,但本发明并不限于实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做出种种的等同变形或替换,这些等同的变形或替换均包含在本发明权利要求所限定的范围内。
- 深度学习分布式运算方法、装置、计算机设备及存储介质
- 机器学习模型训练方法、装置、存储介质和计算机设备
- 语句输出、模型训练方法、装置、计算机设备及存储介质
- 一种模型训练方法、计算机可读存储介质及计算设备
- 分类器训练方法、装置、设备和计算机可读存储介质
- 一种边缘计算中面向深度学习的分布式模型训练方法及相关装置
- 深度学习模型的分布式训练方法、装置、设备及存储介质