并行分割学习中的资源编排与调度优化
文摘
科学
2024-07-10 12:28
陕西
分割学习(Split learning, SL)可以有效解决资源受限的设备在训练多参数神经网络(neutral networks, NN)过程中算力不足的问题,同时还可以和联邦学习无缝结合,保护用户隐私。得益于此,该技术有望在未来大模型的云边端部署中发挥重要作用。简而言之,SL将NN模型分成多个部分,允许客户端(Client)将最大的部分作为处理任务卸载给计算能力强大的协助设备(Helper),比如边缘设备等。在并行SL中,多个Helper可以处理一个或多个Client端的模型部分,因此,大大减少了模型的最大训练时间。在此背景下,来自University College Dublin & VistaMilk SFI与Delft University of Technology的研究团队讨论了如何高效编排分割学习的工作流,具体而言,研究了最小化训练时间导向下的Client-Helper分配和调度决策问题,提出了一种基于问题内在对称性特征的求解方案,该方案具备很好的可扩展性。仿真结果表明,该方案可以将训练时间缩短52.3%。Workflow Optimization for Parallel Split Learning
Joana Tirana1, Dimitra Tsigkari2, George Iosifidis2, Dimitris
Chatzopoulos1
1School
of Computer Science, University College Dublin & VistaMilk SFI, Ireland
2Delft
University of Technology, The Netherlands
https://arxiv.org/abs/2402.10092
论文版权归属Proceedings of IEEE INFOCOM 2024及IEEE版权方,本文分享仅用于技术交流,未经许可禁止用于商业用途。分割学习为资源受限的客户端设备提供了训练百万级参数神经网络的可能。具体而言,整个网络被分为三个部分,part1,part2,以及part3,其中part1和part3为神经网络的首部和尾部,part2为神经网络的重要部分(计算密集型),该部分可以借助Helper协助加速训练,part1和part3直接和训练样本交互,则放置在客户端。在传统的分割学习中,客户端共享一个part2,Helper先后和每一个客户端协作进行数据训练,这会导致训练时间非常长;在并行分割学习中,Helper分配给每个客户端不同版本的part2,允许客户端并行训练模型,进行模型更新。每轮训练结束后,所有的客户端同步各自的模型,多个Helper协作时可以进一步降低训练时间。如何高效地协调编排这些计算资源来进行并行分割学习值得研究。在此过程中,需要考虑每个参与者的计算资源和存储资源,以及Client到Helper之间的通信速率。考虑下图所述网络,网络中包含多个Client,如物联网或者手持设备等,多个Helper,如边缘算力设备、云端算力设备等,Client与Helper之间存在互不干扰的链路。考虑到硬件设备以及通信链路的差异性,Client之间存在异构性,具体表现在算力和存储能力的不同,同时不同链路之间的通信时延也不同。本文不考虑分割层位置(对于不同设备,分割层位置可能不同)和训练超参数(包括批次大小以及学习率等)的影响。如上图所示,Client首先执行part1前向传播,然后将激活层参数传输给Helper,Helper收到参数后进行part2前向传播,紧接着将新激活层参数传回给Client,Client开始part3部分的前向传播,并计算损失。接下来,反向传播过程开始,流程上与前向传播类似。当所有批次训练过程都完成后,每部分模型参数采用FedAvg算法进行聚合。其中各符号的说明请参照图2,式中第一大项表示网络中Client侧的最长传输与处理时延,第二大项描述Helper端的最长处理时延。Client与Helper之间的配对以及每一个Helper中任务的调度顺序对上述时延有着直接影响。通过构建配对关系以及调度顺序与训练时延之间的关系,该问题被建模为一个整数线性规划问题。该问题被论证为NP-难问题。研究人员考虑了将编排调度问题分解为两个子问题进行求解,如下图所示,其中子问题一为前向传播过程中的Client-Helper匹配问题以及Helper中的任务调度顺序优化问题,子问题二为反向传播过程中的任务调度顺序问题。对于子问题一,研究人员采用交替乘子方向法来迭代寻找最佳的Client-Helper匹配方案以及Helper中的任务调度方案;对于子问题二,研究人员通过一种启发式迭代算法逐渐逼近最佳的Helper中反向传播任务的调度方案。在数据集与模型方面,研究人员采用了CIFAR-1数据集以及下述两种神经网络模型:1)ResNet101;2)VGG19。测试的硬件平台如下表所示,其中最后两个为Helper。同时,在场景设计方案,研究人员主要考虑了两类场景,场景一聚焦于较低程度的设备资源异构性;场景二则考虑了设备资源的高度异构性。上图比较了本文所提方案与基线方案的性能,对于基线方案,首先以随机方式决定Client-Helper的匹配(需要考虑内存的影响),然后以FCFS顺序调度任务。该基线可以看作是并行SL的简单实现,没有对分配或调度进行主动决策。可以观察到,相比于基线方案,本文所提方案可以将训练时延最大减低至52.3%。本文讨论了并行分割学习框架中Client-Helper之间的协作编排调度问题,该问题为NP难问题,通过问题分解并结合ADMM算法,文中给出了高效的Client-Helper匹配机制以及多个训练任务下的Helper调度顺序方案,该方案被验证可大幅度降低网络的训练时延。
GenAINet公众号由IEEE Large Generative AI Models in Telecom (GenAINet) ETI成立,由GenAINet公众号运营团队负责维护并运行。
GenAINet公众号运营团队:
孙黎,彭程晖 (华为技术有限公司)
杜清河,肖玉权,张朝阳 (西安交通大学)
王锦光,俸萍 (鹏城实验室)
编辑:肖玉权
校对:张朝阳