CN115329989B - 边缘计算场景下基于模型分割的同步联邦学习加速方法 - Google Patents
边缘计算场景下基于模型分割的同步联邦学习加速方法 Download PDFInfo
- Publication number
- CN115329989B CN115329989B CN202211250872.4A CN202211250872A CN115329989B CN 115329989 B CN115329989 B CN 115329989B CN 202211250872 A CN202211250872 A CN 202211250872A CN 115329989 B CN115329989 B CN 115329989B
- Authority
- CN
- China
- Prior art keywords
- model
- edge server
- time
- terminal equipment
- matched
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/20—Ensemble learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- Image Analysis (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了边缘计算场景下基于模型分割的同步联邦学习加速方法,涉及联邦学习和边缘计算的技术领域,同步联邦学习中,每个终端设备均会选择一个分割点对模型进行分割,并选择一个边缘服务器进行匹配,终端设备计算模型的前半部分,并将模型的后半部分计算任务发送到所匹配边缘服务器上,利用所匹配边缘服务器计算模型的后半部分;通过对每个终端设备的模型分割策略和边缘服务器匹配策略进行优化,确定每个终端设备所选择的分割点以及所匹配的边缘服务器,使得同步联邦学习的模型训练完成总时间最小化。本发明将同步联邦学习、边缘计算、模型分割相结合,降低终端设备之间计算资源的差异,减少同步联邦学习的整体训练时间。
Description
技术领域
本发明涉及联邦学习和边缘计算的技术领域,尤其是边缘计算场景下基于模型分割的同步联邦学习加速方法。
背景技术
边缘计算(EC)指的是将数据的处理转移到更加靠近的网络边缘端,提高数据处理的效率。联邦学习(FL)是一种适用于EC的分布式机器学习方式,每个参与者(终端设备)使用自身的本地数据共同训练一个神经网络模型,其详细工作步骤如下:1、每个参与者用自身数据在本地训练模型;2、每个参与者将训练后的模型参数上传到参数服务器,通过聚合每个参与者上传的模型参数以获得全局模型。上述过程会被迭代多次直到被训练的模型达到期望的准确率。联邦学习(FL)有两种不同的迭代方式,同步迭代方式和异步迭代方式,其中,同步迭代方式指的是:需要等待所有参与者完成本地模型训练并上传模型参数至参数服务器后,才开始模型聚合。
边缘计算场景下的同步联邦学习中,每一轮迭代的时间取决于计算资源最差的参与者的训练时间,同时计算资源好的参与者需要等待计算资源差的参与者完成本地训练后,才能模型聚合并进行下一轮的迭代,出现了空等的情况,造成了计算资源的浪费。因此在边缘计算场景下的同步联邦学习中,各参与者计算资源之间的差异性不仅会加大模型训练的时间成本,而且会造成计算资源的严重浪费。
发明内容
为了克服上述现有技术中的缺陷,本发明提供边缘计算场景下基于模型分割的同步联邦学习加速方法,充分利用边缘计算场景下边缘服务器的计算资源,通过对每个终端设备上模型的进行分割和卸载,将分割后的模型卸载至所匹配的边缘服务器进行计算,降低终端设备之间计算资源的差异,以减少同步联邦学习的整体训练时间。
为实现上述目的,本发明采用以下技术方案,包括:
边缘计算场景下基于模型分割的同步联邦学习加速方法,采用n个终端设备和m个边缘服务器进行同步联邦学习;
同步联邦学习中,每个终端设备均会选择一个分割点对模型进行分割,将模型分割为前半部分和后半部分,并从m个边缘服务器中选择一个边缘服务器进行匹配,终端设备计算模型的前半部分,并将模型的后半部分计算任务发送到所匹配边缘服务器上,利用所匹配边缘服务器计算模型的后半部分;
对每个终端设备的模型分割策略和边缘服务器匹配策略进行优化,即确定每个终端设备所选择的分割点以及所匹配的边缘服务器,使得同步联邦学习的模型训练完成总时间最小化。
优选的,每个终端设备的模型分割策略和边缘服务器匹配策略的确定方法具体如下所示:
S31,构建分割点集合P;
S32,基于分割点集合P,初始化每个终端设备的模型分割策略和边缘服务器匹配策略,在初始化的策略下,计算各个终端设备执行单次迭代的模型训练时间即单次训练时间,以及计算同步联邦学习的单次迭代时间;
S33,根据各个终端设备的单次训练时间,找出单次迭代时间最大的终端设备,并根据边缘服务器匹配策略,找出单次迭代时间最大的终端设备所匹配的边缘服务器,将单次迭代时间最大的终端设备用E1max表示,终端设备E1max所匹配的边缘服务器用S1max表示;
根据边缘服务器选择策略,确定所有与S1max相匹配且先于E1max到达S1max的终端设备,并从所有与S1max相匹配且先于E1max到达S1max的终端设备中任意选择一个终端设备作为设备e1;
S34,为设备e1重新匹配边缘服务器,从除S1max之外的其他边缘服务器中任意选择一个边缘服务器与设备e1相匹配,并从分割点集合P中为设备e1重新选择分割点;
若设备e1重新匹配边缘服务器以及重新选择的分割点使得设备e1的单次训练时间减少,则进入步骤S35;否则继续执行步骤S34,继续为设备e1重新匹配边缘服务器,并为设备e1重新选择分割点,直至使得设备e1的单次训练时间减少;
S35,若步骤S34的操作使得同步联邦学习的单次迭代时间减少,则进入步骤S36;否则,跳转步骤S34,继续为设备e1重新匹配边缘服务器,并为设备e1重新选择分割点,直至使得设备e1的单次训练时间和联邦学习的单次迭代时间均减少,再进入步骤S36;
若将设备e1与除S1max之外的所有其他边缘服务器均进行匹配并重新选择分割点后,仍不能使得设备e1的单次训练时间和联邦学习的单次迭代时间均减小,则跳转执行步骤S33,从所有与S1max相匹配的终端设备中重新选择一个终端设备作为设备e1,并继续执行步骤S34~S35,直至使得设备e1的单次训练时间和联邦学习的单次迭代时间均减小,再进入步骤S36;
若从所有与S1max相匹配的终端设备中选择完所有终端设备作为设备e1,仍不能使得设备e1的单次训练时间和联邦学习的单次迭代时间均减小,则跳转步骤S37;
S36,按照步骤S34的方式更新设备e1的模型分割策略和边缘服务器匹配策略后,并计算各个终端设备的单次训练时间,以及联邦学习的单次迭代时间;
S37,再次找出单次迭代时间最大的终端设备,并根据边缘服务器匹配策略,再次找出单次迭代时间最大的终端设备所匹配的边缘服务器,将再次找出的单次迭代时间最大的终端设备用E2max表示,终端设备E2max所匹配的边缘服务器用S2max表示;
根据边缘服务器匹配策略,确定所有与S2max不相匹配的终端设备,从所有与S2max不相匹配的终端设备中任意选择一个终端设备作为设备e2,且设备e2所匹配的边缘服务器为Se2;
S38,将E2max所匹配的边缘服务器Se2max与设备e2所匹配的边缘服务器Se2相交换,即将E2max与边缘服务器Se2匹配,将设备e2与边缘服务器Se2max匹配,且从分割点集合P中分别为E2max和设备e2重新选择分割点;
若E2max和设备e2重新的选择分割点使得E2max和设备e2的单次训练时间均减少,则进入步骤S39;否则继续执行步骤S38,继续为E2max和设备e2重新选择分割点,直至使得E2max和设备e2的单次训练时间均减少,进入步骤S39;
若E2max和设备e2重新的选择分割点始终不能使得E2max和设备e2的单次训练时间均减少,则跳转步骤S37,从所有与S2max不相匹配的终端设备中重新选择一个终端设备作为设备e2,并继续执行步骤S38;
S39,若步骤S38的操作使得同步联邦学习的单次迭代时间减少,则进入步骤S310;否则,跳转步骤S37,从所有与S2max不相匹配的终端设备中重新选择一个终端设备作为设备e2,并继续执行步骤S38~S39,直至使得E2max的单次训练时间、设备e2的单次训练时间、联邦学习的单次迭代时间均减少,再进入步骤S310;
若从所有与S2max不相匹配的终端设备中选择完所有终端设备作为设备e2,仍不能使得E2max的单次训练时间、设备e2的单次训练时间、联邦学习的单次迭代时间均减少,则跳转步骤S311;
S310,按照步骤S38的方式更新设备e2的模型分割策略和边缘服务器匹配策略后,并计算各个终端设备的单次训练时间,以及联邦学习的单次迭代时间,跳转步骤S33,进行下一轮优化;
S311,表示联邦学习的单次迭代时间无法继续减少,此时的各个终端设备模型分割策略和边缘服务器匹配策略即为最优解。
优选的,将终端设备用E表示,Ei表示第i个终端设备,i=1,2...n;将边缘服务器用S表示,Sj表示第j个边缘服务器,j=1,2...m;第i个终端设备Ei选择的分割点为Ri,即模型在第Ri层分割,将模型分割为前Ri层即前半部分和后V-Ri层即后半部分,Ri=1,2,..V,模型共有V层;第i个终端设备Ei选择第zi个边缘服务器Szi进行匹配,zi=1,2,...m;
第i个终端设备Ei的单次训练时间ti的计算方式为:
ti=ti_E+ti_S+ti_trans+ti_w+ti_up;
其中,ti_E为模型的前Ri层在终端设备Ei上的计算时间;ti_S为模型的后V-Ri层在终端设备Ei所匹配边缘服务器Szi上的计算时间;ti_trans为中间数据传输时间,即模型的第Ri层与第Ri+1层之间的中间数据在终端设备和边缘服务器之间传输所需的时间;ti_w为模型的后V-Ri层计算任务在终端设备Ei所匹配边缘服务器Szi上的等待时间;ti_up为终端设备Ei的模型参数上传时间。
优选的,模型的前Ri层在终端设备Ei上的计算时间ti_E为:
其中,L_Ei(w,f)为模型的第w层在终端设备Ei上的前向传播时间;L_Ei(w,b)为模型的第w层在终端设备Ei上的反向传播时间;Xi(r)表示终端设备Ei的模型分割策略,Xi(r)取值为0或1;Ri为终端设备Ei的分割点,即模型在第Ri层被分割;
模型的后V-Ri层在终端设备Ei所匹配边缘服务器Szi上的计算时间ti_S为:
其中,L_Sj(w,f)为模型的第w层在第j个边缘服务器Sj上的前向传播时间;L_Sj(w,b)为模型的第w层在第j个边缘服务器Sj上的反向传播时间;Yi(j)为终端设备Ei的边缘服务器匹配策略,Yi(j)取值为0或1;Szi为第zi个边缘服务器,即终端设备Ei所匹配的边缘服务器。
优选的,终端设备Ei的中间数据传输时间ti_trans为:
其中,G(r)为第r层与第r+1层之间的中间数据量;B(E,S)为终端设备Ei和所匹配边缘服务器Szi之间的带宽大小;Xi(r)表示终端设备Ei的模型分割策略,Xi(r)取值为0或1;Ri为终端设备Ei的分割点。
优选的,模型的后V-Ri层计算任务在终端设备Ei所匹配边缘服务器Szi上的等待时间ti_w为:
ti_w=max{0,Ii-ATi};
其中,Ii表示在终端设备Ei所匹配边缘服务器Szi的等待队列上排在模型的后V-Ri层计算任务前面的任务完成所需的时间,ATi表示终端设备Ei发送的模型的后V-Ri层计算任务到达所匹配边缘服务器Szi上所需的时间。
优选的,终端设备Ei的模型参数上传时间ti_up为:
其中,d(w)表示模型第w层的参数数据量;B(E,PS)为参数服务器与终端设备Ei之间的带宽大小;Xi(r)表示终端设备Ei的模型分割策略,Xi(r)取值为0或1;Ri为终端设备Ei的分割点。
优选的,同步联邦学习的单次迭代时间T为:
T=max(ti),i=1,2,...n;
其中,ti为第i个终端设备的单次训练时间。
优选的,步骤S1中,分割点集合P的构建方式为:
针对每个终端设备,分别遍历每一个边缘服务器和模型的每一个分割点;针对终端设备所匹配的每一个边缘服务器,分别计算以每一个分割点进行模型分割后的单次训练时间,选择单次训练时间较小的k个分割点作为该终端设备的备选分割点,构建该终端设备的备选分割点集合;
将每个终端设备的备选分割点集合取交集,得到分割点集合P。
优选的,步骤S4和步骤S8中,从分割点集合P中选择使得设备的单次训练时间为最小的分割点。
本发明的优点在于:
(1)本发明将同步联邦学习、边缘计算、模型分割相结合,利用边缘服务器的计算资源降低终端设备之间计算资源的差异,以减少同步联邦学习的整体训练时间。
(2)模型分割技术不仅能够加速模型训练,同时还能够保护数据隐私,采用模型分割技术,终端设备无需将本地训练数据上传至所匹配的边缘服务器,从而有效地保障了本地数据的隐私性。
(3)本发明在确定每个终端设备的模型分割策略和边缘服务器匹配策略时,由于解的数量较多,但是模型不同层的参数数据量、计算量、中间数据量等相关参数不同,并不是每一个层都适合作为分割点,因此首先根据模型不同层的特征,来设计算法找出适合作为分割点的层,从而减少解空间的大小。
(4)本发明分析边缘服务器的选择问题,将该问题归纳为一个多对一的匹配问题,并以双边匹配理论为基础,结合数学模型设计出相对应的匹配算法,能够快速且精准的匹配出使得终端设备的单次训练时间以及同步联邦学习的单次迭代时间均减少的策略。
(5)本发明在建立单个终端设备的单次训练时间的数学模型时,综合考虑了模型前半部分在在终端设备上的计算时间、模型后半部分在所匹配边缘服务器上的计算时间、中间数据传输时间、模型后半部分计算任务在所匹配边缘服务器上的等待时间、边缘设备的模型参数上传时间。
附图说明
图1为边缘计算场景下基于模型分割的同步联邦学习加速方法流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明针对多终端设备多边缘服务器场景,假设存在n个终端设备和m个边缘服务器。其中,终端设备用E表示,Ei表示第i个终端设备,i=1,2...n。边缘服务器用S表示,Sj表示第j个边缘服务器,j=1,2...m。同时,模型共有V层,每一层都有可能作为分割点。
同步联邦学习中,每个终端设备均会选择一个分割点对模型进行分割,将模型分割为前半部分和后半部分,并从m个边缘服务器中选择一个边缘服务器进行匹配,同步联邦学习的单次迭代中,每个终端设备计算模型的前半部分,并将模型的后半部分计算任务发送到所匹配边缘服务器上,利用所匹配边缘服务器计算模型的后半部分,每个终端设备和所匹配边缘服务器完成本次迭代的模型训练后,每个终端设备和所匹配边缘服务器分别将本次迭代后的模型参数上传到参数服务器,参数服务器对所有终端设备和边缘服务器所上传的模型参数进行模型聚合,得到本次迭代后的全局模型。
本发明通过对每个终端设备的模型分割策略和边缘服务器匹配策略进行优化,即确定每个终端设备所选择的分割点以及所匹配的边缘服务器,使得同步联邦学习的模型训练完成总时间最小化。
由图1所示,边缘计算场景下基于模型分割的同步联邦学习加速方法,包括以下步骤:
S1,在同步联邦学习的单次迭代中,将单个终端设备执行单次迭代的模型训练作为最小单元,对终端设备执行单次迭代的模型训练时间即单次训练时间进行建模,将终端设备的单次训练时间分别五个部分,分别为:模型前半部分在在终端设备上的计算时间、模型后半部分在所匹配边缘服务器上的计算时间、中间数据传输时间、模型后半部分计算任务在所匹配边缘服务器上的等待时间、边缘设备的模型参数上传时间。
其中,第i个终端设备Ei选择的分割点为Ri,即模型在第Ri层分割,将模型分割为前Ri层即前半部分和后V-Ri层即后半部分,Ri=1,2,..V,模型共有V层;第i个终端设备Ei选择第zi个边缘服务器Szi进行匹配,zi=1,2,...m。
第i个终端设备Ei的单次训练时间ti表达式为:
ti=ti_E+ti_S+ti_trans+ti_w+ti_up;
其中,ti_E为模型的前Ri层在终端设备Ei上的计算时间;ti_S为模型的后V-Ri层在终端设备Ei所匹配边缘服务器Szi上的计算时间;ti_trans为中间数据传输时间,即模型的第Ri层与第Ri+1层之间的中间数据在终端设备和边缘服务器之间传输所需的时间;ti_w为模型的后V-Ri层计算任务在终端设备Ei所匹配边缘服务器Szi上的等待时间;ti_up为终端设备Ei的模型参数上传时间。
模型的前Ri层在终端设备Ei上的计算时间ti_E为:
其中,L_Ei(w,f)为模型的第w层在终端设备Ei上的前向传播时间;L_Ei(w,b)为模型的第w层在终端设备Ei上的反向传播时间;Xi(r)表示终端设备Ei的模型分割策略,Xi(r)取值为0或1;Ri为终端设备Ei的分割点,即模型在第Ri层被分割。
模型的后V-Ri层在终端设备Ei所匹配边缘服务器Szi上的计算时间ti_S为:
其中,L_Sj(w,f)为模型的第w层在第j个边缘服务器Sj上的前向传播时间;L_Sj(w,b)为模型的第w层在第j个边缘服务器Sj上的反向传播时间;Yi(j)为终端设备Ei的边缘服务器匹配策略,Yi(j)取值为0或1;Szi为第zi个边缘服务器,即终端设备Ei所匹配的边缘服务器。
终端设备Ei的中间数据传输时间ti_trans为:
其中,G(r)为第r层与第r+1层之间的中间数据量;B(E,S)为终端设备Ei和所匹配边缘服务器Szi之间的带宽大小。本实施例中,假设任一终端设备和任一边缘服务器之间的带宽大小均相同。
模型的后V-Ri层计算任务在终端设备Ei的所匹配边缘服务器Szi上的等待时间ti_w为:
ti_w=max{0,Ii-ATi};
其中,Ii表示在终端设备Ei所匹配边缘服务器Szi的等待队列上排在模型的后V-Ri层计算任务前面的任务完成所需的时间,ATi表示终端设备Ei发送的模型的后V-Ri层计算任务到达所匹配边缘服务器Szi上所需的时间。
终端设备Ei的模型参数上传时间ti_up为:
其中,d(w)表示模型第w层的参数数据量;B(E,PS)为参数服务器与终端设备Ei之间的带宽大小。本实施例中,假设任一终端设备和参数服务器之间的带宽大小均相同。
S2,根据每个终端设备的单次训练时间,计算同步联邦学习的单次迭代时间T:
T=max(ti),i=1,2,...n;
其中,ti为第i个终端设备的单次训练时间。
S3,由于同步联邦学习的每次迭代过程相同,即同步联邦学习的每次迭代时间T都是相同的,因此本发明通过最小化同步联邦学习的单次迭代时间T来优化同步联邦学习模型训练完成的整体训练时间,优化函数F为:
F=min(T)=min(max(Ti)),i=1,2,...n;
根据上述优化函数F可知,若期望同步联邦学习的单次迭代时间T最小化,则需要减少单个终端设备的单次训练时间,需要对每个终端设备的模型分割策略和边缘服务器匹配策略进行优化,即确定每个终端设备所选择的分割点以及所匹配的边缘服务器。
对单个终端设备的单次训练时间ti的数学模型进行分析,得出该数学模型具有以下两个特点:
1、ti的数学模型中存在两类解即Xi(r)和Yi(j),Xi(r)和Yi(j)均为取值为0或1的变量,且解的数量较多,i=1,2,...n;r=1,2,...V;j=1,2,...m。
2、ti的数学模型是非线性的。
因此,如何减小单个终端设备的单次训练时间ti的问题是难以直接求解,本发明针对该数学模型的特点,通过以下方式对ti的数学模型问题进行求解:
由于模型不同层的参数数据量、计算量、中间数据量等相关参数不同,并不是每一个层都适合作为分割点,因此首先根据模型不同层的特征,来设计算法找出适合作为分割点的层,从而减少解空间的大小。再分析边缘服务器的选择问题,将该问题归纳为一个多对一的匹配问题,并以双边匹配理论为基础,结合数学模型设计出相对应的匹配算法。
具体通过如下步骤,对步骤S3的优化函数F进行求解,确定每个终端设备的模型分割策略和边缘服务器匹配策略,即解出Xi(r)和Yi(j)的取值;
S31,选择模型的若干层作为分割点,构建分割点集合P;
先在不考虑模型的后V-Ri层计算任务在终端设备Ei所匹配边缘服务器Szi上的等待时间ti_w的前提下,即ti_w=0,为每个终端设备分别选择出备选分割点,构建备选分割点集合;针对每个终端设备,分别遍历每一个边缘服务器和模型的每一个分割点;针对终端设备所匹配的每一个边缘服务器,分别计算以每一个分割点进行模型分割后的单次训练时间,选择单次训练时间较小的k个分割点作为该终端设备的备选分割点,构建该终端设备的备选分割点集合;再将每个终端设备的备选分割点集合取交集,得到分割点集合P;
其中,k的取值随着模型总层数的变化而变化,模型的总层数V的值越大,则k的取值也越大。
通过步骤S31将分割点的选择缩小,减小解空间的大小后,再将问题归纳为一个多对一的卸载问题,并基于匹配理论设计一个启发式算法,算法详细过程如后续步骤所示。
S32,以分割点集合P为基础,初始化每个终端设备的模型分割策略和边缘服务器匹配策略,在初始化的策略下,计算各个终端设备执行单次迭代的模型训练时间即单次训练时间,以及计算同步联邦学习的单次迭代时间。
S33,根据各个终端设备的单次训练时间,找出单次迭代时间最大的终端设备,并根据边缘服务器匹配策略,找出单次迭代时间最大的终端设备所匹配的边缘服务器,将单次迭代时间最大的终端设备用E1max表示,终端设备E1max所匹配的边缘服务器用S1max表示;
根据边缘服务器选择策略,定所有与S1max相匹配且先于E1max到达S1max的终端设备,并从所有与S1max相匹配且先于E1max到达S1max的终端设备中任意选择一个终端设备作为设备e1。
S34,为设备e1重新匹配边缘服务器,从除S1max之外的其他边缘服务器中任意选择一个边缘服务器与设备e1相匹配,并从分割点集合P中为设备e1重新选择分割点,且从分割点集合P选择能够使设备e1的单次训练时间为最小的分割点;
若设备e1重新匹配边缘服务器以及重新选择的分割点使得设备e1的单次训练时间减少,则进入步骤S35;否则继续执行步骤S34,继续为设备e1重新匹配边缘服务器,并为设备e1重新选择分割点,直至使得设备e1的单次训练时间减少。
S35,若步骤S34的操作使得同步联邦学习的单次迭代时间减少,则进入步骤S36;否则,跳转步骤S34,继续为设备e1重新匹配边缘服务器,并为设备e1重新选择分割点,直至使得设备e1的单次训练时间和联邦学习的单次迭代时间均减少,再进入步骤S36;
若将设备e1与除S1max之外的所有其他边缘服务器均进行匹配并重新选择分割点后,仍不能使得设备e1的单次训练时间和联邦学习的单次迭代时间均减小,则跳转执行步骤S33,从所有与S1max相匹配的终端设备中重新选择一个终端设备作为设备e1,并继续执行步骤S34~S35,直至使得设备e1的单次训练时间和联邦学习的单次迭代时间均减小,再进入步骤S36;
若从所有与S1max相匹配的终端设备中选择完所有终端设备作为设备e1,仍不能使得设备e1的单次训练时间和联邦学习的单次迭代时间均减小,则跳转步骤S37。
S36,按照步骤S34的方式更新设备e1的模型分割策略和边缘服务器匹配策略后,并计算各个终端设备的单次训练时间,以及联邦学习的单次迭代时间。
S37,再次找出单次迭代时间最大的终端设备,并根据边缘服务器匹配策略,再次找出单次迭代时间最大的终端设备所匹配的边缘服务器,将再次找出的单次迭代时间最大的终端设备用E2max表示,终端设备E2max所匹配的边缘服务器用S2max表示;
根据边缘服务器匹配策略,确定所有与S2max不相匹配的终端设备,从所有与S2max不相匹配的终端设备中任意选择一个终端设备作为设备e2,且设备e2所匹配的边缘服务器为Se2。
S38,将E2max所匹配的边缘服务器Se2max与设备e2所匹配的边缘服务器Se2相交换,即将E2max与边缘服务器Se2匹配,将设备e2与边缘服务器Se2max匹配,且从分割点集合P中分别为E2max和设备e2重新选择分割点;
若E2max和设备e2重新的选择分割点使得E2max和设备e2的单次训练时间均减少,则进入步骤S39;否则继续执行步骤S38,继续为E2max和设备e2重新选择分割点,直至使得E2max和设备e2的单次训练时间均减少,进入步骤S39;
若E2max和设备e2重新的选择分割点始终不能使得E2max和设备e2的单次训练时间均减少,则跳转步骤S37,从所有与S2max不相匹配的终端设备中重新选择一个终端设备作为设备e2,并继续执行步骤S38。
S39,若步骤S38的操作使得同步联邦学习的单次迭代时间减少,则进入步骤S310;否则,跳转步骤S37,从所有与S2max不相匹配的终端设备中重新选择一个终端设备作为设备e2,并继续执行步骤S38~S39,直至使得E2max的单次训练时间、设备e2的单次训练时间、联邦学习的单次迭代时间均减少,再进入步骤S310;
若从所有与S2max不相匹配的终端设备中选择完所有终端设备作为设备e2,仍不能使得E2max的单次训练时间、设备e2的单次训练时间、联邦学习的单次迭代时间均减少,则跳转步骤S311。
S310,按照步骤S38的方式更新设备e2的模型分割策略和边缘服务器匹配策略后,并计算各个终端设备的单次训练时间,以及联邦学习的单次迭代时间,跳转步骤S33,进行下一轮优化。
S311,表示联邦学习的单次迭代时间无法继续减少,此时的各个终端设备模型分割策略和边缘服务器匹配策略即为最优解。
本发明考虑多设备多服务器的场景,将同步联邦学习、边缘计算、模型相结合,利用边缘服务器的计算资源降低终端设备之间计算资源的差异,以减少同步联邦学习的整体训练时间。另外,采用模型分割技术,终端设备无需将本地训练数据上传至所匹配的边缘服务器,有效地保障了本地数据的隐私性。
本实施例中,边缘服务器和参数服务器二者之间通过有线连接,因此二者之间之间的参数传输时间忽略。
以上仅为本发明创造的较佳实施例而已,并不用以限制本发明创造,凡在本发明创造的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明创造的保护范围之内。
Claims (6)
1.边缘计算场景下基于模型分割的同步联邦学习加速方法,其特征在于,采用n个终端设备和m个边缘服务器进行同步联邦学习;
同步联邦学习中,每个终端设备均会选择一个分割点对模型进行分割,将模型分割为前半部分和后半部分,并从m个边缘服务器中选择一个边缘服务器进行匹配,终端设备计算模型的前半部分,并将模型的后半部分计算任务发送到所匹配边缘服务器上,利用所匹配边缘服务器计算模型的后半部分;
对每个终端设备的模型分割策略和边缘服务器匹配策略进行优化,即确定每个终端设备所选择的分割点以及所匹配的边缘服务器,使得同步联邦学习的模型训练完成总时间最小化;
每个终端设备的模型分割策略和边缘服务器匹配策略的确定方法具体如下所示:
S31,构建分割点集合P;
S32,基于分割点集合P,初始化每个终端设备的模型分割策略和边缘服务器匹配策略,在初始化的策略下,计算各个终端设备执行单次迭代的模型训练时间即单次训练时间,以及计算同步联邦学习的单次迭代时间;
S33,根据各个终端设备的单次训练时间,找出单次训练时间最大的终端设备,并根据边缘服务器匹配策略,找出单次训练时间最大的终端设备所匹配的边缘服务器,将单次训练时间最大的终端设备用E1max表示,终端设备E1max所匹配的边缘服务器用S1max表示;
根据边缘服务器选择策略,确定所有与S1max相匹配且先于E1max到达S1max的终端设备,并从所有与S1max相匹配且先于E1max到达S1max的终端设备中任意选择一个终端设备作为设备e1;
S34,为设备e1重新匹配边缘服务器,从除S1max之外的其他边缘服务器中任意选择一个边缘服务器与设备e1相匹配,并从分割点集合P中为设备e1重新选择分割点;
若设备e1重新匹配边缘服务器以及重新选择的分割点使得设备e1的单次训练时间减少,则进入步骤S35;否则继续执行步骤S34,继续为设备e1重新匹配边缘服务器,并为设备e1重新选择分割点,直至使得设备e1的单次训练时间减少;
S35,若步骤S34的操作使得同步联邦学习的单次迭代时间减少,则进入步骤S36;否则,跳转步骤S34,继续为设备e1重新匹配边缘服务器,并为设备e1重新选择分割点,直至使得设备e1的单次训练时间和联邦学习的单次迭代时间均减少,再进入步骤S36;
若将设备e1与除S1max之外的所有其他边缘服务器均进行匹配并重新选择分割点后,仍不能使得设备e1的单次训练时间和联邦学习的单次迭代时间均减小,则跳转执行步骤S33,从所有与S1max相匹配的终端设备中重新选择一个终端设备作为设备e1,并继续执行步骤S34~S35,直至使得设备e1的单次训练时间和联邦学习的单次迭代时间均减小,再进入步骤S36;
若从所有与S1max相匹配的终端设备中选择完所有终端设备作为设备e1,仍不能使得设备e1的单次训练时间和联邦学习的单次迭代时间均减小,则跳转步骤S37;
S36,按照步骤S34的方式更新设备e1的模型分割策略和边缘服务器匹配策略后,并计算各个终端设备的单次训练时间,以及联邦学习的单次迭代时间;
S37,再次找出单次训练时间最大的终端设备,并根据边缘服务器匹配策略,再次找出单次训练时间最大的终端设备所匹配的边缘服务器,将再次找出的单次训练时间最大的终端设备用E2max表示,终端设备E2max所匹配的边缘服务器用S2max表示;
根据边缘服务器匹配策略,确定所有与S2max不相匹配的终端设备,从所有与S2max不相匹配的终端设备中任意选择一个终端设备作为设备e2,且设备e2所匹配的边缘服务器为Se2;
S38,将E2max所匹配的边缘服务器Se2max与设备e2所匹配的边缘服务器Se2相交换,即将E2max与边缘服务器Se2匹配,将设备e2与边缘服务器Se2max匹配,且从分割点集合P中分别为E2max和设备e2重新选择分割点;
若E2max和设备e2重新的选择分割点使得E2max和设备e2的单次训练时间均减少,则进入步骤S39;否则继续执行步骤S38,继续为E2max和设备e2重新选择分割点,直至使得E2max和设备e2的单次训练时间均减少,进入步骤S39;
若E2max和设备e2重新的选择分割点始终不能使得E2max和设备e2的单次训练时间均减少,则跳转步骤S37,从所有与S2max不相匹配的终端设备中重新选择一个终端设备作为设备e2,并继续执行步骤S38;
S39,若步骤S38的操作使得同步联邦学习的单次迭代时间减少,则进入步骤S310;否则,跳转步骤S37,从所有与S2max不相匹配的终端设备中重新选择一个终端设备作为设备e2,并继续执行步骤S38~S39,直至使得E2max的单次训练时间、设备e2的单次训练时间、联邦学习的单次迭代时间均减少,再进入步骤S310;
若从所有与S2max不相匹配的终端设备中选择完所有终端设备作为设备e2,仍不能使得E2max的单次训练时间、设备e2的单次训练时间、联邦学习的单次迭代时间均减少,则跳转步骤S311;
S310,按照步骤S38的方式更新E2max和设备e2的模型分割策略和边缘服务器匹配策略后,并计算各个终端设备的单次训练时间,以及联邦学习的单次迭代时间,跳转步骤S33,进行下一轮优化;
S311,表示联邦学习的单次迭代时间无法继续减少,此时的各个终端设备模型分割策略和边缘服务器匹配策略即为最优解;
同步联邦学习的单次迭代时间T为:
T=max(ti),i=1,2,...n;
其中,ti为第i个终端设备的单次训练时间;
步骤S1中,分割点集合P的构建方式为:
针对每个终端设备,分别遍历每一个边缘服务器和模型的每一个分割点;针对终端设备所匹配的每一个边缘服务器,分别计算以每一个分割点进行模型分割后的单次训练时间,选择单次训练时间较小的k个分割点作为该终端设备的备选分割点,构建该终端设备的备选分割点集合;
将每个终端设备的备选分割点集合取交集,得到分割点集合P。
2.根据权利要求1所述的边缘计算场景下基于模型分割的同步联邦学习加速方法,其特征在于,将终端设备用E表示,Ei表示第i个终端设备,i=1,2...n;将边缘服务器用S表示,Sj表示第j个边缘服务器,j=1,2...m;第i个终端设备Ei选择的分割点为Ri,即模型在第Ri层分割,将模型分割为前Ri层即前半部分和后V-Ri层即后半部分,Ri=1,2,..V,模型共有V层;第i个终端设备Ei选择第zi个边缘服务器Szi进行匹配,zi=1,2,...m;
第i个终端设备Ei的单次训练时间ti的计算方式为:
ti=ti_E+ti_S+ti_trans+ti_w+ti_up;
其中,ti_E为模型的前Ri层在终端设备Ei上的计算时间;ti_S为模型的后V-Ri层在终端设备Ei所匹配边缘服务器Szi上的计算时间;ti_trans为中间数据传输时间,即模型的第Ri层与第Ri+1层之间的中间数据在终端设备和边缘服务器之间传输所需的时间;ti_w为模型的后V-Ri层计算任务在终端设备Ei所匹配边缘服务器Szi上的等待时间;ti_up为终端设备Ei的模型参数上传时间。
3.根据权利要求2所述的边缘计算场景下基于模型分割的同步联邦学习加速方法,其特征在于,模型的前Ri层在终端设备Ei上的计算时间ti_E为:
其中,L_Ei(w,f)为模型的第w层在终端设备Ei上的前向传播时间;L_Ei(w,b)为模型的第w层在终端设备Ei上的反向传播时间;Xi(r)表示终端设备Ei的模型分割策略,Xi(r)取值为0或1;Ri为终端设备Ei的分割点,即模型在第Ri层被分割;
模型的后V-Ri层在终端设备Ei所匹配边缘服务器Szi上的计算时间ti_S为:
其中,L_Sj(w,f)为模型的第w层在第j个边缘服务器Sj上的前向传播时间;L_Sj(w,b)为模型的第w层在第j个边缘服务器Sj上的反向传播时间;Yi(j)为终端设备Ei的边缘服务器匹配策略,Yi(j)取值为0或1;Szi为第zi个边缘服务器,即终端设备Ei所匹配的边缘服务器。
5.根据权利要求2所述的边缘计算场景下基于模型分割的同步联邦学习加速方法,其特征在于,模型的后V-Ri层计算任务在终端设备Ei所匹配边缘服务器Szi上的等待时间ti_w为:
ti_w=max{0,Ii-ATi};
其中,Ii表示在终端设备Ei所匹配边缘服务器Szi的等待队列上排在模型的后V-Ri层计算任务前面的任务完成所需的时间,ATi表示终端设备Ei发送的模型的后V-Ri层计算任务到达所匹配边缘服务器Szi上所需的时间。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211250872.4A CN115329989B (zh) | 2022-10-13 | 2022-10-13 | 边缘计算场景下基于模型分割的同步联邦学习加速方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211250872.4A CN115329989B (zh) | 2022-10-13 | 2022-10-13 | 边缘计算场景下基于模型分割的同步联邦学习加速方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115329989A CN115329989A (zh) | 2022-11-11 |
CN115329989B true CN115329989B (zh) | 2023-02-14 |
Family
ID=83914937
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211250872.4A Active CN115329989B (zh) | 2022-10-13 | 2022-10-13 | 边缘计算场景下基于模型分割的同步联邦学习加速方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115329989B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116166406B (zh) * | 2023-04-25 | 2023-06-30 | 合肥工业大学智能制造技术研究院 | 个性化边缘卸载调度方法、模型训练方法和系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113206887A (zh) * | 2021-05-08 | 2021-08-03 | 武汉理工大学 | 边缘计算下针对数据与设备异构性加速联邦学习的方法 |
CN113419857A (zh) * | 2021-06-24 | 2021-09-21 | 广东工业大学 | 一种基于边缘数字孪生关联的联邦学习方法及系统 |
CN113610303A (zh) * | 2021-08-09 | 2021-11-05 | 北京邮电大学 | 一种负荷预测方法及系统 |
CN113992676A (zh) * | 2021-10-27 | 2022-01-28 | 天津大学 | 端边云架构和完全信息下分层联邦学习的激励方法及系统 |
CN114219097A (zh) * | 2021-11-30 | 2022-03-22 | 华南理工大学 | 一种基于异构资源之上的联邦学习训练和预测方法及系统 |
CN114554495A (zh) * | 2022-01-29 | 2022-05-27 | 南京邮电大学 | 一种面向联邦学习的用户调度和资源分配方法 |
CN114925852A (zh) * | 2022-05-20 | 2022-08-19 | 南京大学 | 一种基于模型分割和资源分配的联邦学习训练方法及系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11915154B2 (en) * | 2020-07-10 | 2024-02-27 | EMC IP Holding Company LLC | Managing artificial intelligence model partitions for edge computing environment |
US20220222584A1 (en) * | 2022-04-01 | 2022-07-14 | Yamini Nimmagadda | Heterogeneous compute-based artificial intelligence model partitioning |
-
2022
- 2022-10-13 CN CN202211250872.4A patent/CN115329989B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113206887A (zh) * | 2021-05-08 | 2021-08-03 | 武汉理工大学 | 边缘计算下针对数据与设备异构性加速联邦学习的方法 |
CN113419857A (zh) * | 2021-06-24 | 2021-09-21 | 广东工业大学 | 一种基于边缘数字孪生关联的联邦学习方法及系统 |
CN113610303A (zh) * | 2021-08-09 | 2021-11-05 | 北京邮电大学 | 一种负荷预测方法及系统 |
CN113992676A (zh) * | 2021-10-27 | 2022-01-28 | 天津大学 | 端边云架构和完全信息下分层联邦学习的激励方法及系统 |
CN114219097A (zh) * | 2021-11-30 | 2022-03-22 | 华南理工大学 | 一种基于异构资源之上的联邦学习训练和预测方法及系统 |
CN114554495A (zh) * | 2022-01-29 | 2022-05-27 | 南京邮电大学 | 一种面向联邦学习的用户调度和资源分配方法 |
CN114925852A (zh) * | 2022-05-20 | 2022-08-19 | 南京大学 | 一种基于模型分割和资源分配的联邦学习训练方法及系统 |
Non-Patent Citations (1)
Title |
---|
边缘智能下基于模型分割的推理阶段优化方案研究;许志刚;《中国优秀硕士学位论文全文数据库》;20220216(第2期);第3-40页 * |
Also Published As
Publication number | Publication date |
---|---|
CN115329989A (zh) | 2022-11-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6806412B2 (ja) | パターン認識に適用可能なモデルを最適化するための方法および装置ならびに端末デバイス | |
CN113609521A (zh) | 一种基于对抗训练的联邦学习隐私保护方法及系统 | |
CN115329989B (zh) | 边缘计算场景下基于模型分割的同步联邦学习加速方法 | |
CN111741054A (zh) | 一种移动用户深度神经网络计算卸载时延最小化方法 | |
CN112183668B (zh) | 并行训练业务模型的方法及装置 | |
CN112948885B (zh) | 实现隐私保护的多方协同更新模型的方法、装置及系统 | |
CN111010341B (zh) | 一种基于深度学习的覆盖网络路由决策方法 | |
CN112990018A (zh) | 一种动态变化网络环境下深度学习模型的加速执行方法 | |
CN106909449A (zh) | 一种移动终端程序的计算迁移方法与装置 | |
Liang et al. | DNN surgery: Accelerating DNN inference on the edge through layer partitioning | |
CN108470251B (zh) | 基于平均互信息的社区划分质量评价方法及系统 | |
CN112733552A (zh) | 机器翻译模型构建方法、装置以及设备 | |
CN115329990B (zh) | 边缘计算场景下基于模型分割的异步联邦学习加速方法 | |
WO2021035980A1 (zh) | 人脸识别模型的训练方法、装置、设备及可读存储介质 | |
CN115150288B (zh) | 一种分布式通信系统和方法 | |
CN112910716B (zh) | 一种基于分布式dnn的移动雾计算损耗联合优化系统和方法 | |
WO2022186808A1 (en) | Method for solving virtual network embedding problem in 5g and beyond networks with deep information maximization using multiple physical network structure | |
Yang et al. | Communication-efficient Federated Learning with Cooperative Filter Selection | |
CN117390448B (zh) | 一种用于云际联邦学习的客户端模型聚合方法及相关系统 | |
Huang et al. | Elastic DNN Inference with Unpredictable Exit in Edge Computing | |
Dong et al. | Design and Prototyping Distributed CNN Inference Acceleration in Edge Computing | |
CN116192662B (zh) | 基于业务行为预测与确定性网络关联模型及推荐方法 | |
CN114202071B (zh) | 一种基于数据流模式的深度卷积神经网络推理加速方法 | |
CN110443344B (zh) | 一种基于k2abc算法的动量轮故障诊断方法及装置 | |
US20220351090A1 (en) | Federated learning method for decision tree-oriented horizontal |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |