异构算力的联邦学习耗时预测方法、装置、设备及系统与流程

文档序号:37640397发布日期:2024-04-18 18:01阅读:11来源:国知局
异构算力的联邦学习耗时预测方法、装置、设备及系统与流程

本发明涉及计算机,特别是涉及异构算力的联邦学习耗时预测方法、装置、设备及系统。


背景技术:

1、联邦学习(federated learning)也称为协同学习,它可以在产生数据的设备上进行大规模的训练,并且这些敏感数据保留在数据的所有者那里,本地收集、本地训练。在本地训练后,中央的训练协调器通过获取分布模型的更新获得每个节点的训练贡献,但是不访问实际的敏感数据。联邦学习的参与者也被称为节点或客户端。在实际应用中,涉及到联邦学习的参与方众多,且各方由于基础算力设施的不同,导致联邦学习的不同参与方的算力能力也有较大差异,从而产生了异构算力场景下的联邦学习。

2、联邦学习过程的整体耗时是影响生产效率、决策等的关键因素,也是用户比较关注的问题。然而,目前还没有针对异构算力场景下的联邦学习耗时预测方案。

3、提供一种异构算力场景下的联邦学习耗时预测方案,是本领域技术人员需要解决的技术问题。


技术实现思路

1、本发明的目的是提供异构算力的联邦学习耗时预测方法、装置、设备及系统,用于实现在异构算力场景下的联邦学习耗时预测。

2、为解决上述技术问题,本发明提供一种异构算力的联邦学习耗时预测方法,包括:

3、采集联邦学习系统中各客户端异构设备的客户端异构设备信息、客户端训练任务信息以及对应的实际训练耗时测量结果和理论训练耗时计算结果,构建预测数据集;

4、利用所述预测数据集训练得到联邦学习时间预测模型,并在训练中根据所述实际训练耗时测量结果和所述理论训练耗时计算结果构建损失函数;

5、采集被测联邦学习系统中各被测客户端异构设备的客户端异构设备信息和客户端训练任务信息;

6、将所述被测客户端异构设备的客户端异构设备信息和客户端训练任务信息输入所述联邦学习时间预测模型,得到与所述被测客户端异构设备对应的客户端联邦学习耗时预测结果;

7、将所述客户端联邦学习耗时预测结果更新至所述被测联邦学习系统中的聚合节点以得到所述被测联邦学习系统的联邦学习耗时预测结果。

8、在一些实施中,采集所述理论训练耗时计算结果,包括:

9、根据各所述客户端异构设备的客户端异构设备信息和客户端训练任务信息计算得到所述客户端异构设备训练本地客户端模型的第一理论耗时以及所述客户端异构设备与所述联邦学习系统中的聚合节点之间传输模型权重的第二理论耗时;

10、根据所述第一理论耗时和所述第二理论耗时计算得到所述理论训练耗时计算结果。

11、在一些实施中,所述根据各所述客户端异构设备的客户端异构设备信息和客户端训练任务信息计算得到所述客户端异构设备训练本地客户端模型的第一理论耗时以及所述客户端异构设备与所述联邦学习系统中的聚合节点之间传输模型权重的第二理论耗时,包括:

12、根据所述客户端异构设备所执行的客户端训练任务的计算复杂度与所述客户端异构设备的峰值算力的比值计算得到所述第一理论耗时;

13、根据所述客户端异构设备向所述联邦学习系统中的聚合节点上传模型参数的理论上传耗时与所述客户端异构设备自所述联邦学习系统中的聚合节点下载模型参数的理论下载耗时计算得到所述第二理论耗时;

14、其中,所述理论上传耗时为所述客户端异构设备执行聚合任务时所需上传模型参数的数据量与所述客户端异构设备至所述联邦学习系统中的聚合节点的理论上行速率的比值;所述理论下载耗时为所述客户端异构设备执行聚合任务时所需下载模型参数的数据量与所述联邦学习系统中的聚合节点至所述客户端异构设备的理论下行速率的比值。

15、在一些实施中,,根据所述实际训练耗时测量结果和所述理论训练耗时计算结果构建所述损失函数,包括:

16、根据训练中的所述联邦学习时间预测模型输出的耗时预测结果和对应的所述实际训练耗时测量结果构建第一损失函数;

17、根据训练中的所述联邦学习时间预测模型输出的耗时预测结果和对应的所述理论训练耗时计算结果构建第二损失函数;

18、根据所述第一损失函数和所述第二损失函数构建所述损失函数。

19、在一些实施中,所述第一损失函数,具体通过下式表示:

20、l1=||h(x,z)-t||2;

21、其中,l1为所述第一损失函数,h(x,z)为训练中的所述联邦学习时间预测模型输出的耗时预测结果,x为客户端异构设备信息,z为客户端训练任务信息,t为对应的所述实际训练耗时测量结果。

22、在一些实施中,所述第二损失函数,具体通过下式表示:

23、l2=d(h(x,z)),t(x,z))=max(||h(x,z))-t(x,z)||2-m,0);

24、其中,l2为所述第二损失函数,h(x,z)为训练中的所述联邦学习时间预测模型输出的耗时预测结果,t(x,z)为对应的所述理论训练耗时计算结果,x为客户端异构设备信息,z为客户端训练任务信息,m为误差约束阈值,d()为度量损失函数,max()为取最大值计算。

25、在一些实施中,所述第一损失函数,具体通过下式表示:

26、l3=|h(x,z)-t|;

27、其中,l3为所述第一损失函数,h(x,z)为训练中的所述联邦学习时间预测模型输出的耗时预测结果,x为客户端异构设备信息,z为客户端训练任务信息,t为对应的所述实际训练耗时测量结果。

28、在一些实施中,所述第二损失函数,具体通过下式表示:

29、l4=d(h(x,z)),t(x,z))=max(|h(x,z)-t(x,z)|-m,0);

30、其中,l4为所述第二损失函数,h(x,z)为训练中的所述联邦学习时间预测模型输出的耗时预测结果,t(x,z)为对应的所述理论训练耗时计算结果,x为客户端异构设备信息,z为客户端训练任务信息,m为误差约束阈值,d()为度量损失函数,max()为取最大值计算。

31、在一些实施中,所述根据所述第一损失函数和所述第二损失函数构建所述损失函数,包括:

32、以所述第一损失函数与所述第二损失函数之和为所述损失函数。

33、在一些实施中,客户端异构设备信息包括:所述客户端异构设备的静态算力信息和所述客户端异构设备的动态算力信息;

34、其中,所述静态算力信息包括所述客户端异构设备的硬件计算能力值、所述客户端异构设备的硬件存储能力值以及所述客户端异构设备所处的通信环境的通信质量参数;

35、所述动态算力信息包括所述客户端异构设备的实时硬件计算能力值、所述客户端异构设备的实时硬件存储能力值以及所述客户端异构设备所处的通信环境的实时通信质量参数。

36、在一些实施中,所述静态算力信息包括所述客户端异构设备的图形处理器的显存总大小、所述图形处理器的显卡核心数量、所述图形处理器的计算主频率、所述图形处理器的计算浮点数的理论峰值、所述图形处理器的显存带宽中的至少一项以及所述客户端异构设备到聚合节点的理论时延、所述客户端异构设备到所述聚合节点的上下行速率中的至少一项;

37、所述动态算力信息包括所述图形处理器的可用显存大小、所述图形处理器的显卡版本中的至少一项以及所述客户端异构设备到所述联邦学习系统中的聚合节点的可用实时上行速率、所述客户端异构设备到所述联邦学习系统中的聚合节点的可用下行速率、所述客户端异构设备到所述联邦学习系统中的聚合节点的传输时延中的至少一项。

38、在一些实施中,客户端训练任务信息包括:

39、所述客户端异构设备所采用模型的类型、所述客户端异构设备的批量数据大小、所述客户端异构设备所采用模型的计算复杂度、所述客户端异构设备的训练数据的大小、所述客户端异构设备的训练数据的数据量中的至少一项。

40、在一些实施中,采集所述联邦学习系统中各所述客户端异构设备的客户端异构设备信息、客户端训练任务信息以及对应的实际训练耗时测量结果,包括:

41、利用模型性能分析工具或显卡分析工具采集所述联邦学习系统中各所述客户端异构设备的客户端异构设备信息、客户端训练任务信息以及对应的所述实际训练耗时测量结果。

42、在一些实施中,所述被测联邦学习系统采用同步更新的方式聚合模型参数;

43、将所述客户端联邦学习耗时预测结果更新至所述被测联邦学习系统中的聚合节点以得到所述被测联邦学习系统的联邦学习耗时预测结果,包括:

44、将所述客户端联邦学习耗时预测结果更新至所述被测联邦学习系统中的聚合节点,以自所述被测联邦学习系统中的聚合节点确定各所述客户端联邦学习耗时预测结果中的最大值作为所述被测联邦学习系统的联邦学习耗时预测结果。

45、在一些实施中,还包括:

46、确定所述客户端联邦学习耗时预测结果最大的预设个数所述被测客户端异构设备为落后客户端异构设备;

47、向所述落后客户端异构设备发送硬件升级建议,并接收所述落后客户端异构设备反馈的硬件升级结果;

48、将所述落后客户端异构设备的信息和所述硬件升级结果发送至所述被测联邦学习系统中其余所述被测客户端异构设备,以使其余所述被测客户端异构设备进行所述落后客户端异构设备参与联邦学习的资格的决策。

49、在一些实施中,所述将所述被测客户端异构设备的客户端异构设备信息和客户端训练任务信息输入所述联邦学习时间预测模型,得到与所述被测客户端异构设备对应的客户端联邦学习耗时预测结果,包括:

50、在所述被测客户端异构设备执行迭代训练时,将所述被测客户端异构设备在当前迭代训练中的客户端异构设备信息和客户端训练任务信息输入所述联邦学习时间预测模型,得到所述被测客户端异构设备在当前迭代训练的所述客户端联邦学习耗时预测结果;

51、异构算力的联邦学习耗时预测方法还包括:

52、获取所述被测客户端异构设备在当前迭代训练中的实际训练耗时结果;利用所述实际训练耗时结果和所述客户端联邦学习耗时预测结果更新所述联邦学习时间预测模型的模型参数。

53、在一些实施中,所述利用所述实际训练耗时结果和所述客户端联邦学习耗时预测结果更新所述联邦学习时间预测模型的模型参数,包括:

54、利用预设迭代次数的所述实际训练耗时结果和所述客户端联邦学习耗时预测结果以及所述被测客户端异构设备的客户端异构设备信息和客户端训练任务信息构建优化数据集;

55、利用所述优化数据集更新所述联邦学习时间预测模型的模型参数。

56、在一些实施中,所述采集联邦学习系统中各客户端异构设备的客户端异构设备信息、客户端训练任务信息以及对应的实际训练耗时测量结果和理论训练耗时计算结果,包括:

57、采集所述联邦学习系统中各所述客户端异构设备的客户端异构设备信息、客户端训练任务信息以及对应的所述实际训练耗时测量结果;

58、根据所述客户端异构设备所执行的客户端训练任务的计算复杂度与所述客户端异构设备的峰值算力的比值计算得到所述客户端异构设备训练本地客户端模型的第一理论耗时;

59、根据所述客户端异构设备向所述联邦学习系统中的聚合节点上传模型参数的理论上传耗时与所述客户端异构设备自所述联邦学习系统中的聚合节点下载模型参数的理论下载耗时计算得到所述客户端异构设备与所述联邦学习系统中的聚合节点之间传输模型权重的第二理论耗时;

60、根据所述第一理论耗时和所述第二理论耗时计算得到所述理论训练耗时计算结果;

61、所述利用所述预测数据集训练得到联邦学习时间预测模型,并在训练中根据所述实际训练耗时测量结果和所述理论训练耗时计算结果构建损失函数,包括:

62、根据训练中的所述联邦学习时间预测模型输出的耗时预测结果和对应的所述实际训练耗时测量结果构建第一损失函数;

63、根据训练中的所述联邦学习时间预测模型输出的耗时预测结果和对应的所述理论训练耗时计算结果构建第二损失函数;

64、根据所述第一损失函数和所述第二损失函数构建所述损失函数;

65、其中,所述第一损失函数,具体通过下式表示:

66、l1=||h(x,z)-t||2;

67、所述第二损失函数,具体通过下式表示:

68、l2=d(h(x,z)),t(x,z))=max(||h(x,z))-t(x,z)||2-m,0);

69、其中,l1为所述第一损失函数,l2为所述第二损失函数,h(x,z)为训练中的所述联邦学习时间预测模型输出的耗时预测结果,x为客户端异构设备信息,z为客户端训练任务信息,t为对应的所述实际训练耗时测量结果,t(x,z)为对应的所述理论训练耗时计算结果,m为误差约束阈值,d()为度量损失函数,max()为取最大值计算;

70、所述理论上传耗时为所述客户端异构设备执行聚合任务时所需上传模型参数的数据量与所述客户端异构设备至所述联邦学习系统中的聚合节点的理论上行速率的比值;所述理论下载耗时为所述客户端异构设备执行聚合任务时所需下载模型参数的数据量与所述联邦学习系统中的聚合节点至所述客户端异构设备的理论下行速率的比值。

71、为解决上述技术问题,本发明还提供一种异构算力的联邦学习耗时预测系统,包括:监控节点和被测联邦学习系统;

72、所述被测联邦学习系统包括聚合节点和多个被测客户端异构设备;

73、所述监控节点用于采集联邦学习系统中各客户端异构设备的客户端异构设备信息、客户端训练任务信息以及对应的实际训练耗时测量结果和理论训练耗时计算结果,构建预测数据集;利用所述预测数据集训练得到联邦学习时间预测模型,并在训练中根据所述实际训练耗时测量结果和所述理论训练耗时计算结果构建损失函数;采集所述被测联邦学习系统中各所述被测客户端异构设备的客户端异构设备信息和客户端训练任务信息;将所述被测客户端异构设备的客户端异构设备信息和客户端训练任务信息输入所述联邦学习时间预测模型,得到与所述被测客户端异构设备对应的客户端联邦学习耗时预测结果;将所述客户端联邦学习耗时预测结果更新至所述被测联邦学习系统中的聚合节点以得到所述被测联邦学习系统的联邦学习耗时预测结果。

74、为解决上述技术问题,本发明还提供一种异构算力的联邦学习耗时预测装置,包括:

75、第一采集单元,用于采集联邦学习系统中各客户端异构设备的客户端异构设备信息、客户端训练任务信息以及对应的实际训练耗时测量结果和理论训练耗时计算结果,构建预测数据集;

76、训练单元,用于利用所述预测数据集训练得到联邦学习时间预测模型,并在训练中根据所述实际训练耗时测量结果和所述理论训练耗时计算结果构建损失函数;

77、第二采集单元,用于采集被测联邦学习系统中各被测客户端异构设备的客户端异构设备信息和客户端训练任务信息;

78、预测单元,用于将所述被测客户端异构设备的客户端异构设备信息和客户端训练任务信息输入所述联邦学习时间预测模型,得到与所述被测客户端异构设备对应的客户端联邦学习耗时预测结果;

79、更新单元,用于将所述客户端联邦学习耗时预测结果更新至所述被测联邦学习系统中的聚合节点以得到所述被测联邦学习系统的联邦学习耗时预测结果。

80、为解决上述技术问题,本发明还提供一种异构算力的联邦学习耗时预测设备,包括:

81、存储器,用于存储计算机程序;

82、处理器,用于执行所述计算机程序,所述计算机程序被所述处理器执行时实现如上述任意一项所述异构算力的联邦学习耗时预测方法的步骤。

83、为解决上述技术问题,本发明还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任意一项所述异构算力的联邦学习耗时预测方法的步骤。

84、本发明所提供的异构算力的联邦学习耗时预测方法,通过采集联邦学习系统中各客户端异构设备的客户端异构设备信息、客户端训练任务信息以及对应的实际训练耗时测量结果和理论训练耗时计算结果构建的预测数据集来训练联邦学习时间预测模型,在训练中除了实际训练耗时测量结果外将理论训练耗时计算结果引入损失函数,来提高模型预测联邦学习耗时的泛化能力,由此利用得到的联邦学习时间预测模型来预测被测联邦学习系统中各被测客户端异构设备的客户端联邦学习耗时预测结果,可以实现更为准确的预测,而后将客户端联邦学习耗时预测结果更新至被测联邦学习系统中的聚合节点以得到被测联邦学习系统的联邦学习耗时预测结果,实现了在异构算力下的联邦学习耗时预测,可以通过提供准确的耗时预测结果来优化联邦学习系统的算力调度。

85、本发明所提供的异构算力的联邦学习耗时预测方法,通过从客户端异构设备训练本地客户端模型的耗时以及客户端异构设备与聚合节点之间传输模型参数的耗时两个角度计算得到联邦学习系统重客户端异构设备执行联邦学习任务的理论训练耗时计算结果,实现理想情况下客户端异构设备执行联邦学习任务的耗时,以加入联邦学习时间预测模型的训练中增强模型预测的准确性。

86、本发明所提供的异构算力的联邦学习耗时预测方法,通过设计根据联邦学习时间预测模型输出的耗时预测结果、客户端异构设备的实际训练耗时测量结果及理论训练耗时计算结果的联合约束损失函数,进一步增强联邦学习时间预测模型的泛化能力及预测异构算力下的联邦学习耗时的准确性。

87、本发明还提供异构算力的联邦学习耗时预测装置、设备、系统、计算机可读存储介质,具有上述有益效果,在此不再赘述。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1