[发明专利]基于端边云协同的深度学习模型训练加速方法有效
| 申请号: | 202010021406.3 | 申请日: | 2020-01-09 |
| 公开(公告)号: | CN111242282B | 公开(公告)日: | 2023-03-28 |
| 发明(设计)人: | 陈旭;周知;刘德银 | 申请(专利权)人: | 中山大学 |
| 主分类号: | G06N3/0464 | 分类号: | G06N3/0464;G06N3/084 |
| 代理公司: | 广州市华学知识产权代理有限公司 44245 | 代理人: | 李盛洪 |
| 地址: | 510275 广东*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 基于 端边云 协同 深度 学习 模型 训练 加速 方法 | ||
1.一种基于端边云协同的深度学习模型训练加速方法,其特征在于,所述的深度学习模型训练加速方法包括:
S1、离线测量步骤,测量所需训练的深度学习模型基于单个图像数据作为输入时各个网络层所输出的特征图像的数据量的大小;测量所需训练的用于图像识别的深度学习模型各个网络层基于单个图像数据作为输入时,在参与任务计算的各计算节点上执行计算所需的平均计算时延大小;
S2、在线优化步骤,首先测量当前端边云各计算节点之间的网络带宽,再利用在离线测量步骤下得到的基于单个训练样本作为输入深度学习模型各个网络层所输出的数据量的大小和各网络层在各计算节点进行计算所需的平均计算时延、及测量所得网络带宽作为输入,通过对单次迭代训练过程的总训练时延进行理论建模,然后将总训练时延作为目标函数,加入约束条件构建一个最小化优化问题,通过求解优化问题得到最优的分割深度学习模型的切割点和参与任务计算的各计算节点进行深度学习模型训练时所需处理的图像数据的大小作为输出;
S3、协同训练步骤,根据在线优化步骤输出的最优的模型分割的切割点和训练数据分配的策略,端边云各计算节点按照所得的策略,各计算节点基于一定数目的图像数据对深度学习模型进行协同训练;
所述的在线优化步骤中,通过对单次迭代训练过程的总训练时延进行一个理论建模,然后将总训练时延作为目标函数,加入必要的约束条件构建一个最小化优化问题,得到最优的模型分割的切割点和用于训练的图像数据分配的策略的过程包括:
S21、定义三种任务类型如下:
TASK O:基于bo个图像数据作为输入,执行原本的整个深度学习模型训练的计算任务;
TASK S:基于bs个图像数据作为输入,执行深度学习模型前ms层训练的计算任务;
TASK L:基于bl个图像数据作为输入,执行深度学习模型前ml层训练的计算任务;
其中bo,bs,bl均为整数,分别代表用于训练的图像数据分配的策略,ms,ml均为整数,分别代表模型分割的策略;
再定义三个计算节点nodeo、nodes、nodel,假定三种计算任务TASK O、TASK S、TASK L分别分配给计算节点nodeo、nodes、nodel进行执行;
将定义的三个计算节点与实际参与计算的端计算节点、边缘计算节点、云计算节点根据一一对应原则建立映射关系;
S22、对于可能的映射策略找出基于该映射策略下最优的模型分割的切割点和用于训练的图像数据分配的策略,其中,整个训练的总训练时延包括计算时延和数据传输时延,过程如下:
S221、对计算时延进行理论建模,使用Tj,i,b,forward和Tj,i,b,backward分别表示在计算节点j,j∈{o,s,l},o,s,l分别代表计算节点nodeo、nodes、nodel上基于b个图像数据作为输入执行第i层深度学习模型的前向传播时延和后向传播时延,计算公式如下:
/
公式(1)中,表示在计算节点j上基于单个图像作为输入执行第j层深度学习模型前向传播所需的平均计算时延;
公式(2)中,表示在计算节点j上基于单个图像作为输入执行第j层深度学习模型反向传播所需的平均计算时延;
S222、求解深度学习模型更新过程中在各计算节点产生的计算时延,计算公式如下:
公式(3)中,To,update表示在计算节点nodeo更新其所包含的深度学习模型层的参数所需的计算时延,表示在计算节点nodeo执行第i层深度学习模型参数更新所需的平均计算时延;
公式(4)中,Ts,update表示在计算节点nodes更新其所包含的深度学习模型层的参数所需的计算时延,表示在计算节点nodes执行第i层深度学习模型参数更新所需的平均计算时延;
公式(5)中,Tl,update表示在计算节点nodel更新其所包含的深度学习模型层的参数所需的计算时延,表示在计算节点nodel执行第i层深度学习模型参数更新所需的平均计算时延;
S223、求解数据传输时延Tcommunication,计算公式如下:
公式(6)中,DataSize表示所需传输数据的大小,Bandwidth表示当前测量所得的带宽大小;
S23、将整个分布式的深度学习模型训练按照以下原则进行划分:前ms层深度学习模型在并行的三个计算节点上运行,ms+1层至ml层在并行的计算节点nodel和计算节点nodeo上运行,ml+1层至最后一层仅运行在计算节点nodeo上,然后将总训练时延切分为三个阶段:
阶段一:训练前ms层深度学习模型所需的时延;
阶段二:训练ms+1层至ml层深度学习模型所需的时延;
阶段三:训练而ml+1层至最后一层深度学习模型所需的时延;
S231、对于阶段一,用和/分别表示阶段一中所需的前向传播和后向传播所需的时延,计算公式如下:
/
公式(7)中,To,input、Ts,input、Tl,input分别代表计算节点nodeo、nodes、nodel接收训练所需图像数据的数据传输时延,Ts,output代表从计算节点nodes将前向传播的输出数据给计算节点nodeo的数据传输时延,代表计算节点nodeo基于bo个图像数据作为输入执行第i层深度学习模型的前向传播所需要的时延,/代表计算节点nodes基于bs个图像数据作为输入执行第i层深度学习模型的前向传播所需要的时延,/代表计算节点nodel基于bl个图像数据作为输入执行第i层深度学习模型的前向传播所需要的时延;
公式(8)中,Ts,grad代表从计算节点nodeo将反向传播的梯度数据发送给计算节点nodes的数据传输时延,代表计算节点nodeo基于bo个图像数据作为输入执行第i层深度学习模型的反向传播所需要的时延,/代表计算节点nodes基于bs个图像数据作为输入执行第i层深度学习模型的反向传播所需要的时延,/代表计算节点nodel基于bl个图像数据作为输入执行第i层深度学习模型的反向传播所需要的时延;
S232、对于阶段二,用和/分别表示阶段二中所需的前向传播和后向传播所需的时延,计算公式如下:
公式(9)中,Tl,output代表计算节点nodel将前向传播的输出数据发送给计算节点nodeo的数据传输时延,代表计算节点nodeo基于bo+bs个图像数据作为输入执行第i层深度学习模型的前向传播所需要的时延;
公式(10)中,Tl,grad代表计算节点nodeo发送反向传播计算的梯度给计算节点nodel产生的数据传输时延,代表计算节点nodeo基于bo+bs个图像数据作为输入执行第i层深度学习模型的反向传播所需要的时延;
S233、对于阶段三,用和/分别表示阶段三中所需的前向传播和后向传播所需的时延,计算公式如下:/
公式(11)中,代表计算节点nodeo基于bo+bs+bl个图像数据作为输入执行第i层深度学习模型的前向传播所需要的时延,N代表所训练模型的总层数;
公式(12)中,代表计算节点nodeo基于bo+bs+bl个图像数据作为输入执行第i层深度学习模型的反向传播所需要的时延;
S24、当深度学习模型训练的反向传播计算完成,计算节点nodes和计算节点nodel将其计算的模型参数梯度发送给计算节点nodeo,然后计算节点nodeo对所得参数梯度进行一个汇总取平均得到处理后的参数梯度,最后再将汇总后的参数梯度分别发送给计算节点nodes和计算节点nodel,各计算节点基于所得汇总后的参数梯度更新模型的参数,求解模型更新所需的时延,公式计算如下:
Tupdate=max{Ts,weightGrad,Tl,weightGrad}+max{To,update,Ts,update,Tl,update}(13)
公式(13)中,Ts,weightGrad和Tl,weightGrad分别代表计算节点nodes和计算节点nodel与计算节点nodeo进行参数梯度数据交换所产生的数据时延;
S25、将深度学习模型训练的总训练时延用Ttotal表示,计算公式如下:
S26、根据深度学习模型训练中每次迭代所用到的图像数据的数目为定值B,添加以下限制条件:
bo+bs+bl=B
根据变量ms和ml可能取值等于0,此时代表计算节点nodes和计算节点nodel不参与训练任务的计算,分配给计算节点nodes和计算节点nodel的样本数据为0,添加以下限制条件:
0≤bs≤msB,
0≤bl≤mlB
根据限制条件,将总训练时延作为目标函数进行最小化,将得到的一个最小化优化的问题表示如下:
s.t.bo+bs+bl=B
0≤bs≤msB
0≤bl≤mlB
对于以上最小化优化问题,将变量ms和ml的值确定后,最小化优化问题则变成一个整数线性规划问题,采用优化求解器对该整数线性规划问题进行求解,通过对变量ms和ml的可能取值进行遍历,再求解出相应最优的bo、bs、bl的解得到一个待选策略集合,最后比较待选策略集合内的策略选出最优的策略。
2.根据权利要求1所述的基于端边云协同的深度学习模型训练加速方法,其特征在于,对所述的整数线性规划问题进行求解的优化求解器为CPLEX或GUROBI。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中山大学,未经中山大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010021406.3/1.html,转载请声明来源钻瓜专利网。





