CN117077811A - 联邦学习优化方法及相关装置 - Google Patents
联邦学习优化方法及相关装置 Download PDFInfo
- Publication number
- CN117077811A CN117077811A CN202311129329.3A CN202311129329A CN117077811A CN 117077811 A CN117077811 A CN 117077811A CN 202311129329 A CN202311129329 A CN 202311129329A CN 117077811 A CN117077811 A CN 117077811A
- Authority
- CN
- China
- Prior art keywords
- global
- model parameter
- model
- parameter vector
- local
- 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.)
- Pending
Links
- 238000005457 optimization Methods 0.000 title claims abstract description 78
- 238000000034 method Methods 0.000 title claims abstract description 57
- 239000013598 vector Substances 0.000 claims abstract description 170
- 230000006870 function Effects 0.000 claims abstract description 62
- 238000012549 training Methods 0.000 claims abstract description 32
- 238000004891 communication Methods 0.000 claims abstract description 27
- 230000002776 aggregation Effects 0.000 claims abstract description 8
- 238000004220 aggregation Methods 0.000 claims abstract description 8
- 238000012545 processing Methods 0.000 claims description 29
- 238000003860 storage Methods 0.000 claims description 10
- 238000013459 approach Methods 0.000 claims description 9
- 230000004931 aggregating effect Effects 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 abstract description 10
- 230000009286 beneficial effect Effects 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 12
- 238000011478 gradient descent method Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 230000001360 synchronised effect Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 2
- 238000006731 degradation reaction Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000013398 bayesian method Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000002068 genetic effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000009827 uniform distribution Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请实施例公开了一种联邦学习优化方法及相关装置,方法包括服务器初始化生成全局预测模型的第一模型参数向量;多个本地设备接收来自服务器的第一模型参数向量;并分别获取关联全局预测模型的多个目标函数和样本数据;以计算得到与多个目标函数一一对应的多个局部梯度;从而根据多个局部梯度确定可让多个目标函数能够趋近于同一方向优化的全局更新梯度;本地设备可根据全局更新梯度更新第一模型参数向量,并向服务器发送更新得到的第二模型参数向量,服务器可聚合多个第二模型参数向量,并在未收敛时向多个本地设备发送聚合结果,以重复上述训练步骤,直至服务器确定全局预测模型收敛。本申请有利于降低通信成本和计算成本。
Description
技术领域
本申请涉及金融科技(Fintech)的人工智能技术领域,具体涉及一种联邦学习优化方法及相关装置。
背景技术
随着计算机技术的发展,传统金融业正在逐步向金融科技(Fintech)转变。目前,银行等金融机构在联邦学习模型的训练及应用中存在多目标优化的需求,例如,需要达到提高效用、保护隐私、降低通信开销、公平等多个目标,但在提高模型准确率的同时,难以防止更多的隐私泄露和更高的通信开销,在保证各个参与方公平的同时,又难以防止模型效用的降低。在单目标优化的模型训练情况下,由于对应只有一个目标,其基于梯度下降法进行优化时,任何两个解都可以根据单一的目标比较确定出两者的优劣,便于得出没有争议的最优解。而多目标优化的概念是在某个情景中需要达到多个目标,而由于容易存在多个目标间的内在冲突,针对单目标优化的梯度下降法对多目标优化中的其中一个目标进行优化时,需要以其他目标劣化为代价,因此很难确定得到唯一最优解。目前在联邦学习中广泛使用的优化方法是基于遗传算法和贝叶斯法的多目标优化方法,其在进行多目标优化的模型训练过程中需要遍历模型参数所有可能的解,致使模型收敛速度较慢,需要进行大量轮次的数据交互,而每个轮次又伴随着通信的传输与处理等待时间,使得目前联邦学习所需要的通信量高,耗费网络带宽大,计算成本高。
发明内容
本申请实施例提供了一种联邦学习优化方法及相关装置,以期提高模型训练收敛速度,降低通信成本和计算成本。
第一方面,本申请实施例提供了一种联邦学习优化方法,应用于联邦学习系统中的第一本地设备,所述联邦学习系统包括多个本地设备和服务器,所述第一本地设备为所述多个本地设备中的任一设备,所述方法包括:
接收来自所述服务器的第一模型参数向量,所述第一模型参数向量为全局预测模型的全局参数向量;
获取与所述全局预测模型关联的多个目标函数和样本数据;
根据所述第一模型参数向量和所述样本数据,确定与所述多个目标函数一一对应的多个局部梯度;
根据所述多个局部梯度确定全局更新梯度,所述多个目标函数能够趋近于所述全局更新梯度方向优化;
根据所述全局更新梯度更新所述第一模型参数向量,得到第二模型参数向量;
向所述服务器发送所述第二模型参数向量,所述第二模型参数向量关联所述全局预测模型收敛时得到的目标全局模型。
第二方面,本申请实施例提供了一种联邦学习优化方法,应用于联邦学习系统中的服务器,所述联邦学习系统包括所述服务器和多个本地设备,所述方法包括:
初始化所述初始预测模型的参数,得到第一模型参数向量;
向多个所述本地设备发送所述第一模型参数向量;
接收多个所述本地设备训练更新后的第二模型参数向量,所述第二模型参数向量为通过全局更新梯度更新所述第一模型参数向量得到的数据,所述全局更新梯度是指能够让全局预测模型关联的多个目标函数趋近于朝同一个方向优化的全局预测模型的参数更新梯度;
对接收的多个第二模型参数向量进行聚合,得到第三模型参数向量;
确定所述预测模型是否收敛;
若收敛,则处理结束,得到目标全局模型;
若未收敛,则向多个所述本地设备发送所述第三模型参数向量。
第三方面,本申请实施例提供了一种联邦学习优化装置,应用于联邦学习系统中的第一本地设备,所述联邦学习系统包括多个本地设备和服务器,所述第一本地设备为所述多个本地设备中的任一设备,所述装置包括:
第一接收获取单元,用于接收来自所述服务器的第一模型参数向量,所述第一模型参数向量为全局预测模型的全局参数向量;
所述第一接收获取单元还用于获取与所述全局预测模型关联的多个目标函数和样本数据;
训练单元,用于根据所述第一模型参数向量和所述样本数据,确定与所述多个目标函数一一对应的多个局部梯度;
所述训练单元还用于根据所述多个局部梯度确定全局更新梯度,所述多个目标函数能够趋近于所述全局更新梯度方向优化;
所述训练单元还用于根据所述全局更新梯度更新所述第一模型参数向量,得到第二模型参数向量;
第一发送单元,用于向所述服务器发送所述第二模型参数向量,所述第二模型参数向量关联所述全局预测模型收敛时得到的目标全局模型。
第四方面,本申请实施例提供了一种联邦学习优化装置,应用于联邦学习系统中的服务器,所述联邦学习系统包括所述服务器和多个本地设备,所述装置包括:
初始化单元,用于初始化所述初始预测模型的参数,得到第一模型参数向量;
第二发送单元,用于向多个所述本地设备发送所述第一模型参数向量;
第二接收获取单元,用于接收多个所述本地设备训练更新后的第二模型参数向量,所述第二模型参数向量为通过全局更新梯度更新所述第一模型参数向量得到的数据,所述全局更新梯度是指能够让全局预测模型关联的多个目标函数趋近于朝同一个方向优化的全局预测模型的参数更新梯度;
聚合处理单元,用于对接收的多个第二模型参数向量进行聚合,得到第三模型参数向量;
判断单元,用于根据所述第三模型参数向量确定所述预测模型是否收敛;
若收敛,则处理结束,得到目标全局模型;
若未收敛,则向多个所述本地设备发送所述第三模型参数向量。
第五方面,本申请实施例提供了一种服务器,包括处理器、存储器、通信接口,以及一个或多个程序,所述一个或多个程序被存储在所述存储器中,并且被配置由所述处理器执行,所述程序包括用于执行本申请实施例第一方面中的步骤的指令。
第六方面,本申请实施例提供了一种计算机存储介质,存储用于电子数据交换的计算机程序,其中,所述计算机程序使得计算机执行如本实施例第一方面中所描述的部分或全部步骤。
可以看出,本实施例中,通过服务器初始化生成全局预测模型的第一模型参数向量;多个本地设备接收来自服务器的第一模型参数向量;并分别获取关联全局预测模型的多个目标函数和样本数据;以计算得到与多个目标函数一一对应的多个局部梯度;从而根据多个局部梯度确定可让多个目标函数能够趋近于同一方向优化的全局更新梯度;本地设备可根据全局更新梯度更新第一模型参数向量,并向服务器发送更新得到的第二模型参数向量,服务器可聚合多个第二模型参数向量,并在未收敛时向多个本地设备发送聚合结果,以重复上述训练步骤,直至服务器确定全局预测模型收敛。本申请通过梯度下降法优化全局预测模型对多目标进行优化时,通过在梯度优化更新时选择一个能够使多个目标函数趋近于同一个方向下降的方向更新,可以避免多目标优化时多个目标的内在冲突问题导致的部分目标劣化问题。同时,通过梯度下降法优化全局预测模型可使本地设备进行模型训练时一直按照优选方向进行迭代,从而大幅度减少训练迭代次数,提高模型收敛效率,有利于降低通信成本和计算成本。此外,通过在本地侧计算全局更新梯度,以在本地设备侧实现下降方向的选择进行,还能够降低数据传输量,从而进一步减少通信时间,提高全局预测模型的收敛效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1a是本申请实施例提供的一种示例联邦学习优化系统的架构示意图;
图1b是本申请实施例提供的一种电子设备的组成示例图;
图2是本申请实施例提供的一种联邦学习优化方法的流程示意图;
图3是本申请实施例提供的另一种联邦学习优化方法的流程示意图;
图4是本申请实施例提供的又一种联邦学习优化方法的流程示意图;
图5a是本申请实施例提供的一种联邦学习优化装置的功能单元组成框图;
图5b是本申请实施例提供的另一种联邦学习优化装置的功能单元组成框图;
图6a是本申请实施例提供的又一种联邦学习优化装置的功能单元组成框图;
图6b是本申请实施例提供的再一种联邦学习优化装置的功能单元组成框图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,
显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
下面结合附图对本申请实施例进行说明。
本申请的技术方案可以应用于如图1a所示的示例联邦学习优化系统10,该示例联邦学习优化系统10包括服务器100和多个本地设备200。
请参见图1a,图1a是本申请实施例提供的一种数据处理系统的结构示意图。如图1a所示,该数据处理系统可以包括服务器100和本地设备集群。该本地设备集群可以包括多个本地设备,这里将不对本地设备的数量进行限制。如图1a所示,具体可以包括本地设备200a、本地设备200b、本地设备200c、…、本地设备200n,第一本地设备为上述本地设备中任意一个。如图1a所示,本地设备200a、本地设备200b、本地设备200c、…、本地设备200n可以分别与上述服务器100进行网络连接,以便于每个本地设备可以通过该网络连接与服务器100进行数据交互。
其中,本地设备集群中的每个本地设备均可以包括:本地服务器、智能手机、平板电脑、笔记本电脑、台式计算机、智能语音交互设备、智能家电(例如,智能电视)、可穿戴设备、车载终端等具有数据处理功能的智能终端。其中,服务器100可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。
本申请中的电子设备的组成结构可以如图1b所示,电子设备可以为服务器100或者本地设备200,服务器100或者本地设备200可以包括处理器110、存储器120、通信接口130以及一个或多个程序121,其中,所述一个或多个程序121被存储在上述存储器120中,且被配置由上述处理器110执行,所述一个或多个程序121包括用于执行上述方法实施例中任一步骤的指令。
其中,通信接口130用于支持服务器100或者本地设备200与其他设备的通信。处理器110例如可以是中央处理器(Central Processing Unit,CPU),通用处理器,数字信号处理器(Digital Signal Processor,DSP),专用集成电路(Application-SpecificIntegrated Circuit,ASIC),现场可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请实施例公开内容所描述的各种示例性的逻辑方框,单元和电路。所述处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等等。
存储器120可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的随机存取存储器(random access memory,RAM)可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(doubledata rateSDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(directrambus RAM,DR RAM)。
具体实现中,所述处理器110用于执行下述方法实施例中由服务器或者本地设备执行的任一步骤,且在执行诸如发送等数据传输时,可选择的调用所述通信接口130来完成相应操作。
需要注意的是,上述电子设备的结构示意图仅为示例,具体包含的器件可以更多或更少,此处不做唯一限定。
请参阅图2,图2是本申请实施例提供的一种联邦学习优化方法的流程示意图,该方法可以应用在如图1a所示的联邦学习优化系统中。如图2所示,该联邦学习优化方法包括:
步骤S201,服务器初始化全局预测模型的参数,得到第一模型参数向量。
其中,第一模型参数向量包括至少一个。
其中,第一模型参数向量包含两部分,一部分是神经网络参数,常使用Pytorch中nn.module类随机生成;另一部分是非神经网络参数,可以在其定义域内根据连续均匀分布生成随机数。
具体实现中,服务器可以在定义域内生成至少一个随机数作为第一模型参数向量。
步骤S202,服务器向多个本地设备发送所述第一模型参数向量。
具体地,当第一模型参数向量有一个时,服务器向每个本地设备发送这个第一模型参数向量;当有多个时,服务器向每个本地设备发送第一模型参数向量。
步骤S203,本地设备接收来自所述服务器的第一模型参数向量。
具体实现中,多个本地设备接收到来自服务器的第一模型参数向量后,会根据该第一模型参数向量和自身的样本数据进行模型训练。具体地,本地设备通过执行下述步骤S204至S207来进行本地模型训练。
步骤S204,本地设备获取与全局预测模型关联的多个目标函数和样本数据。
其中,目标函数为根据全局预测模型对应的全局函数分解得到的与单个待优化目标对应的函数,全局预测模型对应的全局函数对应关联多个待优化目标,目标函数的数量与全局预测模型的待优化目标的数量对应。待优化目标是指全局预测模型所对应的待解决问题所关联的目标指标。
其中,样本数据为本地设备自身的数据,如此可保证模型训练的私密性。
步骤S205,本地设备根据所述第一模型参数向量和所述样本数据,确定与所述多个目标函数一一对应的多个局部梯度。
其中,局部梯度用于表示在第一模型参数向量附近目标函数的函数值的变化率。
具体实现中,可以使用数值方法(如有限差分)来计算梯度;或者,在目标函数的解析梯度可用时,可以使用解析方法来计算梯度。在此不做进一步限制。
步骤S206,本地设备根据所述多个局部梯度确定全局更新梯度。
其中,全局更新梯度可以使所述多个目标函数趋近于与全局更新梯度相同的方向进行优化,从而解决在多目标优化过程中多个目标的冲突问题。
具体实现中,在根据所述多个局部梯度确定全局更新梯度时,可以根据下述公式(1),计算全局更新梯度。
其中,g*(x)为全局更新梯度,g为全局更新梯度参数,Rd为全局更新梯度参数预设定义域,i表示第i个目标函数对应的待优化目标,m为目标函数对应的待优化目标的数量。
参见图3,在一个可能的示例中,根据所述多个局部梯度确定全局更新梯度,包括如下步骤,也即根据上述公式(1),计算全局更新梯度的步骤如下:
步骤S21,获取所述全局预测模型的全局更新梯度参数。
其中,所述全局更新梯度参数约束在预设定义域内,所述预设定义域用于约束全局更新梯度参数的取值范围。
步骤S22,计算所述全局更新梯度参数与所述多个目标函数对应的每个局部梯度的内积,得到多个内积结果。
具体地,全局更新梯度参数会与每个局部梯度进行内积,并得到一个内积结果。
步骤S23,将多个所述内积结果的最小值确定为最小内积结果。
步骤S24,最大化所述最小内积结果,得到最大化结果。
具体地,最大化所述最小内积结果是指在预设定义域内寻找一个全局更新梯度参数的值,以该值能够让与根据全局更新梯度参数计算得到的内积结果最大化。
步骤S25,将所述最大化结果对应的全局更新梯度参数确定为所述全局更新梯度。
可见,在本示例中,通过最大化最小内积结果可以使全局更新梯度与最小内积结果对应的局部更新梯度越平行相似,从而保证下降方向的一致性。同时,最小内积结果对应的局部更新梯度都与全局更新梯度越平行相似,那么比最小内积结果大的其他内积结果对应的局部更新梯度也会与全局更新梯度平行相似,如此,全局更新梯度对应的优化方向可与每个目标优化模型的优化方向相同或相似,从而保证全局预测模型中的多个待优化目标可以朝近似一个方向进行优化,从而避免多个待优化目标产生优化冲突。
参见图4,在一个可能的示例中,还可以通过如下步骤根据多个局部梯度计算得到全局更新梯度,步骤包括:
步骤S31,获取所述全局预测模型的全局更新梯度参数。
其中,所述全局更新梯度参数约束在预设定义域内。
步骤S32,计算所述全局更新梯度参数与所述多个目标函数对应的每个局部梯度的欧氏距离,得到多个距离计算结果。
步骤S33,将多个所述距离计算结果的最大值确定为最大距离计算结果。
步骤S34,最小化所述距离计算结果,得到最大小化结果。
步骤S35,将所述最小化结果对应的全局更新梯度参数确定为所述全局更新梯度。
在本示例中,最大距离计算结果表示所有梯度中与全局更新梯度参数相似度最差的梯度,将其最小化可以使全局更新梯度与该梯度平行相似,由此可见,此时其他梯度与全局更新梯度的平行相似度会高于该梯度,因此,该全局更新梯度可使所有多个待优化目标可以朝近似一个方向进行优化,从而避免多个待优化目标产生优化冲突。
在一个可能的示例中,所述预设定义域为所述全局更新梯度参数的模长小于等于1。
具体实现中,上述公式1中的全局更新梯度参数约束在预设定义域||g||≤1内。
可见,在本示例中,通过将全局更新梯度参数的模长约束在小于等于1的定义域内,可以减小梯度更新的幅度,从而避免在训练中全局模型的梯度快速产生方向上变更。
步骤S207,本地设备根据所述全局更新梯度更新所述第一模型参数向量,得到第二模型参数向量。
具体地,可根据下述公式(2)更新全局预测模型的模型参数。
x′←x-∈g*(x) 公式(2);
其中,∈为步长,x对应第一模型参数向量,x′对应第二模型参数向量。
步骤S208,本地设备向所述服务器发送所述第二模型参数向量。
具体实现中,每个本地设备在训练得到对应的第二模型参数向量后,均需要上送至服务器。
步骤S209,服务器接收多个所述本地设备训练更新后的第二模型参数向量。
步骤S210,服务器对接收的多个第二模型参数向量进行聚合,得到第三模型参数向量。
具体地,服务器可以对应每个第一模型参数向量,对多个本地设备对应更新得到的多个第二模型参数向量进行聚合,也保证聚合后的第三模型参数向量更能平衡全局优化模型对应的多个待优化目标之间的关系。
具体实现中,可使用平均值等方法聚合,对这各个本地设备上传的第二模型参数向量取平均值。
步骤S211,服务器确定所述全局预测模型是否收敛;若收敛,则处理结束,得到目标全局模型;若未收敛,则向多个所述本地设备发送所述第三模型参数向量。
具体地,服务器可以使用预定义的停止准则来确定全局预测模型是否收敛。例如,预定义的停止准则可以为达到最大迭代次数,或者,全局预测模型的模型参数变化的不显著性等。
具体实现中,若服务器确定预测模型收敛,则可以将第三模型参数向量作为全局预测模型的模型参数优化的最优解,以得到目标全局模型。若服务器确定预测模型为收敛,服务器则可将第三模型参数向量等同于上述第一模型参数向量发送至多个本地设备,在多个本地设备重复执行步骤S205至步骤S208,直至服务器确定全局预测模型收敛。
步骤S212,本地设备接收来自所述服务器的第三模型参数向量,并将所述第三模型参数向量作为第一模型参数向量,重复执行步骤S205至步骤S208。
具体地,本地设备在接受到第三模型参数向量后,可以将第三模型参数向量等同于第一模型参数向量以进行模型训练。具体地,多个本地设备可分别执行以下步骤:
步骤S205’,根据所述第三模型参数向量和所述样本数据,计算与所述多个目标函数一一对应的多个第二局部梯度。
步骤S206’,本地设备根据所述多个第二局部梯度确定第二全局更新梯度。
步骤S207’,本地设备根据所述第二全局更新梯度更新所述第三模型参数向量,得到第四模型参数向量。
步骤S208’,本地设备向所述服务器发送所述第四模型参数向量。
具体地,在步骤S208’之后,服务器侧可以重复执行上述步骤S209至步骤S212,以确定全局预测模型是否收敛,并根据结果执行相应的步骤。
可以看出,本实施例中,通过服务器初始化生成全局预测模型的第一模型参数向量;多个本地设备接收来自服务器的第一模型参数向量;并分别获取关联全局预测模型的多个目标函数和样本数据;以计算得到与多个目标函数一一对应的多个局部梯度;从而根据多个局部梯度确定可让多个目标函数能够趋近于同一方向优化的全局更新梯度;本地设备可根据全局更新梯度更新第一模型参数向量,并向服务器发送更新得到的第二模型参数向量,服务器可聚合多个第二模型参数向量,并在未收敛时向多个本地设备发送聚合结果,以重复上述训练步骤,直至服务器确定全局预测模型收敛。本申请通过梯度下降法优化全局预测模型对多目标进行优化时,通过在梯度优化更新时选择一个能够使多个目标函数趋近于同一个方向下降的方向更新,可以避免多目标优化时多个目标的内在冲突问题导致的部分目标劣化问题。同时,通过梯度下降法优化全局预测模型可使本地设备进行模型训练时一直按照优选方向进行迭代,从而大幅度减少训练迭代次数,提高模型收敛效率,有利于降低通信成本和计算成本。此外,通过在本地侧计算全局更新梯度,以在本地设备侧实现下降方向的选择进行,还能够降低数据传输量,从而进一步减少通信时间,提高全局预测模型的收敛效率。
在一个可能的示例中,所述第一模型参数向量有多个,所述根据所述第一模型参数向量和所述样本数据,确定与所述多个目标函数一一对应的多个局部梯度,包括:对每个所述第一模型参数向量执行以下步骤:根据单个所述第一模型参数向量和所述样本数据,确定与所述多个目标函数一一对应的多个局部梯度。
其中,一个第一模型参数向量对应于对应全局预测模型的一个待优化目标偏好,第一模型参数向量的数量与全局预测模型的待优化目标数量对应。例如,若有两个目标:最小化生产成本和最大化生产效率,那么该组解中有两个第一模型参数向量,其中一个第一模型参数向量倾向于最小化生产成本,另一个第一模型参数向量倾向于最大化生产率。
具体地,服务器初始化生成有一组与全局预测模型对应的解向量集合,该解向量集合中包括多个第一模型参数向量。联邦学习系统在进行全局预测模型优化时,服务器和多个本地设备分别对每个第一模型参数向量执行上述步骤S202至步骤S212,以得到与每个第一模型参数向量对应的最优解。
可见,在本示例中,通过初始化生成多个第一模型参数向量,并根据每个第一模型参数向量进行训练可以得到倾向不同待优化目标的最优解,如此可以进一步保证多个待优化目标之间的平衡性,避免仅倾向某个待优化目标进行局部优化。
本申请可以根据上述方法示例对服务器进行功能单元的划分,例如,可以对应各个功能划分各个功能单元,也可以将两个或两个以上的功能集成在一个处理单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。需要说明的是,本申请实施例中对单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
图5a是本申请实施例提供的一种联邦学习优化装置的功能单元组成框图。该联邦学习优化装置30可以应用在如图1a所示的联邦学习优化系统中的本地设备200上,该联邦学习优化装置30包括:
第一接收获取单元310,用于接收来自所述服务器的第一模型参数向量,所述第一模型参数向量为全局预测模型的全局参数向量;
所述第一接收获取单元310还用于获取与所述全局预测模型关联的多个目标函数和样本数据;
训练单元320,用于根据所述第一模型参数向量和所述样本数据,确定与所述多个目标函数一一对应的多个局部梯度;
所述训练单元320还用于根据所述多个局部梯度确定全局更新梯度,所述多个目标函数能够趋近于所述全局更新梯度方向优化;
所述训练单元320还用于根据所述全局更新梯度更新所述第一模型参数向量,得到第二模型参数向量;
第一发送单元330,用于向所述服务器发送所述第二模型参数向量,所述第二模型参数向量关联所述全局预测模型收敛时得到的目标全局模型。
在一个可能的示例中,在根据所述多个局部梯度确定全局更新梯度方面,所述训练单元还用于获取所述全局预测模型的全局更新梯度参数,所述全局更新梯度参数约束在预设定义域内;计算所述全局更新梯度参数与所述多个目标函数对应的每个局部梯度的内积,得到多个内积结果;将多个所述内积结果的最小值确定为最小内积结果;最大化所述最小内积结果,得到最大化结果;将所述最大化结果对应的全局更新梯度参数确定为所述全局更新梯度。
在一个可能的示例中,所述预设定义域为所述全局更新梯度参数的模长小于等于1。
在一个可能的示例中,在所述向所述服务器发送所述第二模型参数向量之后,若所述全局预测模型收敛,则处理结束,得到目标全局模型;若所述全局预测模型未收敛,则,所述第一接收获取单元还用于:接收来自所述服务器的第三模型参数向量,所述第三模型参数向量为根据所述多个本地设备分别上传至服务器的第二模型参数向量聚合生成的数据。
在一个可能的示例中,所述第一模型参数向量有多个,在所述根据所述第一模型参数向量和所述样本数据,确定与所述多个目标函数一一对应的多个局部梯度方面,所述训练单元具体用于对每个所述第一模型参数向量执行以下步骤:根据单个所述第一模型参数向量和所述样本数据,确定与所述多个目标函数一一对应的多个局部梯度。
在采用集成的单元的情况下,本申请实施例提供的联邦学习优化装置的功能单元组成框图如图5b所示。在图5b中,联邦学习优化装置40包括:第一处理模块420和第一通信模块410。第一处理模块420用于对联邦学习优化装置的动作进行控制管理,例如,第一接收获取单元310、所述训练单元320、第一发送单元330执行的步骤,和/或用于执行本文所描述的技术的其它过程。第一通信模块410用于支持联邦学习优化装置40与其他设备之间的交互。如图5b所示,联邦学习优化装置40还可以包括第一存储模块430,第一存储模块430用于存储联邦学习优化装置40的程序代码和数据。
其中,第一处理模块420可以是处理器或控制器,例如可以是中央处理器(CentralProcessing Unit,CPU),通用处理器,数字信号处理器(Digital Signal Processor,DSP),ASIC,FPGA或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请实施例公开内容所描述的各种示例性的逻辑方框,模块和电路。所述处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等等。第一通信模块410可以是收发器、RF电路或通信接口等。第一存储模块430可以是存储器。
其中,上述方法实施例涉及的各场景的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。上述联邦学习优化装置均可执行上述图2所示的联邦学习优化方法中本地设备所执行的步骤。
图6a是本申请实施例提供的一种联邦学习优化装置的功能单元组成框图。该联邦学习优化装置50可以应用在如图1a所示的联邦学习优化系统中的服务器100上,该联邦学习优化装置50包括:
初始化单元510,用于初始化所述初始预测模型的参数,得到第一模型参数向量;
第二发送单元520,用于向多个所述本地设备发送所述第一模型参数向量;
第二接收获取单元530,用于接收多个所述本地设备训练更新后的第二模型参数向量,所述第二模型参数向量为通过全局更新梯度更新所述第一模型参数向量得到的数据,所述全局更新梯度是指能够让全局预测模型关联的多个目标函数趋近于朝同一个方向优化的全局预测模型的参数更新梯度;
聚合处理单元540,用于对接收的多个第二模型参数向量进行聚合,得到第三模型参数向量;
判断单元550,用于根据所述第三模型参数向量确定所述预测模型是否收敛;
若收敛,则处理结束,得到目标全局模型;
若未收敛,则向多个所述本地设备发送所述第三模型参数向量。
在采用集成的单元的情况下,本申请实施例提供的联邦学习优化装置的功能单元组成框图如图6b所示。在图6b中,联邦学习优化装置60包括:第二处理模块620和第二通信模块610。第二处理模块620用于对联邦学习优化装置的动作进行控制管理,例如,初始化单元510、第二发送单元520、第二接收获取单元530、聚合处理单元540、判断单元550执行的步骤,和/或用于执行本文所描述的技术的其它过程。第二通信模块610用于支持联邦学习优化装置60与其他设备之间的交互。如图6b所示,联邦学习优化装置60还可以包括第二存储模块630,第二存储模块630用于存储联邦学习优化装置60的程序代码和数据。
其中,第二处理模块620可以是处理器或控制器,例如可以是中央处理器(CentralProcessing Unit,CPU),通用处理器,数字信号处理器(Digital Signal Processor,DSP),ASIC,FPGA或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请实施例公开内容所描述的各种示例性的逻辑方框,模块和电路。所述处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等等。第二通信模块610可以是收发器、RF电路或通信接口等。第二存储模块630可以是存储器。
其中,上述方法实施例涉及的各场景的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。上述联邦学习优化装置均可执行上述图2所示的联邦学习优化方法中服务器所执行的步骤。
本申请实施例还提供一种计算机存储介质,其中,该计算机存储介质存储用于电子数据交换的计算机程序,该计算机程序使得计算机执行如上述方法实施例中记载的任一方法的部分或全部步骤,上述计算机包括服务器。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储器中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例上述方法的全部或部分步骤。而前述的存储器包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储器中,存储器可以包括:闪存盘、只读存储器(英文:Read-Only Memory,简称:ROM)、随机存取器(英文:Random Access Memory,简称:RAM)、磁盘或光盘等。
以上对本申请实施例进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (10)
1.一种联邦学习优化方法,其特征在于,应用于联邦学习系统中的第一本地设备,所述联邦学习系统包括多个本地设备和服务器,所述第一本地设备为所述多个本地设备中的任一设备,所述方法包括:
接收来自所述服务器的第一模型参数向量,所述第一模型参数向量为全局预测模型的全局参数向量;
获取与所述全局预测模型关联的多个目标函数和样本数据;
根据所述第一模型参数向量和所述样本数据,确定与所述多个目标函数一一对应的多个局部梯度;
根据所述多个局部梯度确定全局更新梯度,所述多个目标函数能够趋近于所述全局更新梯度方向优化;
根据所述全局更新梯度更新所述第一模型参数向量,得到第二模型参数向量;
向所述服务器发送所述第二模型参数向量,所述第二模型参数向量关联所述全局预测模型收敛时得到的目标全局模型。
2.如权利要求1所述的方法,其特征在于,根据所述多个局部梯度确定全局更新梯度,包括:
获取所述全局预测模型的全局更新梯度参数,所述全局更新梯度参数约束在预设定义域内;
计算所述全局更新梯度参数与所述多个目标函数对应的每个局部梯度的内积,得到多个内积结果;
将多个所述内积结果的最小值确定为最小内积结果;
最大化所述最小内积结果,得到最大化结果;
将所述最大化结果对应的全局更新梯度参数确定为所述全局更新梯度。
3.如权利要求2所述的方法,其特征在于,所述预设定义域为所述全局更新梯度参数的模长小于等于1。
4.如权利要求1所述的方法,其特征在于,所述向所述服务器发送所述第二模型参数向量之后,所述方法还包括:
若所述全局预测模型收敛,则处理结束,得到目标全局模型;
若所述全局预测模型未收敛,则接收来自所述服务器的第三模型参数向量,所述第三模型参数向量为根据所述多个本地设备分别上传至服务器的第二模型参数向量聚合生成的数据。
5.如权利要求1所述的方法,其特征在于,所述第一模型参数向量有多个,所述根据所述第一模型参数向量和所述样本数据,确定与所述多个目标函数一一对应的多个局部梯度,包括:
对每个所述第一模型参数向量执行以下步骤:
根据单个所述第一模型参数向量和所述样本数据,确定与所述多个目标函数一一对应的多个局部梯度。
6.一种联邦学习优化方法,其特征在于,应用于联邦学习系统中的服务器,所述联邦学习系统包括所述服务器和多个本地设备,所述方法包括:
初始化初始预测模型的参数,得到第一模型参数向量;
向多个所述本地设备发送所述第一模型参数向量;
接收多个所述本地设备训练更新后的第二模型参数向量,所述第二模型参数向量为通过全局更新梯度更新所述第一模型参数向量得到的数据,所述全局更新梯度是指能够让全局预测模型关联的多个目标函数趋近于朝同一个方向优化的全局预测模型的参数更新梯度;
对接收的多个所述第二模型参数向量进行聚合,得到第三模型参数向量;
确定所述预测模型是否收敛;
若收敛,则处理结束,得到目标全局模型;
若未收敛,则向多个所述本地设备发送所述第三模型参数向量。
7.一种联邦学习优化装置,其特征在于,应用于联邦学习系统中的第一本地设备,所述联邦学习系统包括多个本地设备和服务器,所述第一本地设备为所述多个本地设备中的任一设备,所述装置包括:
第一接收获取单元,用于接收来自所述服务器的第一模型参数向量,所述第一模型参数向量为全局预测模型的全局参数向量;
所述第一接收获取单元还用于获取与所述全局预测模型关联的多个目标函数和样本数据;
训练单元,用于根据所述第一模型参数向量和所述样本数据,确定与所述多个目标函数一一对应的多个局部梯度;
所述训练单元还用于根据所述多个局部梯度确定全局更新梯度,所述多个目标函数能够趋近于所述全局更新梯度方向优化;
所述训练单元还用于根据所述全局更新梯度更新所述第一模型参数向量,得到第二模型参数向量;
第一发送单元,用于向所述服务器发送所述第二模型参数向量,所述第二模型参数向量关联所述全局预测模型收敛时得到的目标全局模型。
8.一种联邦学习优化装置,其特征在于,应用于联邦学习系统中的服务器,所述联邦学习系统包括所述服务器和多个本地设备,所述装置包括:
初始化单元,用于初始化所述初始预测模型的参数,得到第一模型参数向量;
第二发送单元,用于向多个所述本地设备发送所述第一模型参数向量;
第二接收获取单元,用于接收多个所述本地设备训练更新后的第二模型参数向量,所述第二模型参数向量为通过全局更新梯度更新所述第一模型参数向量得到的数据,所述全局更新梯度是指能够让全局预测模型关联的多个目标函数趋近于朝同一个方向优化的全局预测模型的参数更新梯度;
聚合处理单元,用于对接收的多个第二模型参数向量进行聚合,得到第三模型参数向量;
判断单元,用于根据所述第三模型参数向量确定所述预测模型是否收敛;
若收敛,则处理结束,得到目标全局模型;
若未收敛,则向多个所述本地设备发送所述第三模型参数向量。
9.一种电子设备,其特征在于,包括处理器、存储器、通信接口,以及一个或多个程序,所述一个或多个程序被存储在所述存储器中,并且被配置由所述处理器执行,所述程序包括用于执行如权利要求1-6任一项所述的方法中的步骤的指令。
10.一种计算机可读存储介质,其特征在于,存储用于电子数据交换的计算机程序,其中,所述计算机程序使得计算机执行如权利要求1-6任一项所述的方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311129329.3A CN117077811A (zh) | 2023-08-31 | 2023-08-31 | 联邦学习优化方法及相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311129329.3A CN117077811A (zh) | 2023-08-31 | 2023-08-31 | 联邦学习优化方法及相关装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117077811A true CN117077811A (zh) | 2023-11-17 |
Family
ID=88716968
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311129329.3A Pending CN117077811A (zh) | 2023-08-31 | 2023-08-31 | 联邦学习优化方法及相关装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117077811A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117473331A (zh) * | 2023-12-27 | 2024-01-30 | 苏州元脑智能科技有限公司 | 流数据处理方法、装置、设备及存储介质 |
CN117474127A (zh) * | 2023-12-27 | 2024-01-30 | 苏州元脑智能科技有限公司 | 分布式机器学习模型训练系统、方法、装置及电子设备 |
CN117992834A (zh) * | 2024-04-03 | 2024-05-07 | 广东力创信息技术有限公司 | 一种数据分析方法以及相关装置 |
-
2023
- 2023-08-31 CN CN202311129329.3A patent/CN117077811A/zh active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117473331A (zh) * | 2023-12-27 | 2024-01-30 | 苏州元脑智能科技有限公司 | 流数据处理方法、装置、设备及存储介质 |
CN117474127A (zh) * | 2023-12-27 | 2024-01-30 | 苏州元脑智能科技有限公司 | 分布式机器学习模型训练系统、方法、装置及电子设备 |
CN117473331B (zh) * | 2023-12-27 | 2024-03-08 | 苏州元脑智能科技有限公司 | 流数据处理方法、装置、设备及存储介质 |
CN117474127B (zh) * | 2023-12-27 | 2024-03-26 | 苏州元脑智能科技有限公司 | 分布式机器学习模型训练系统、方法、装置及电子设备 |
CN117992834A (zh) * | 2024-04-03 | 2024-05-07 | 广东力创信息技术有限公司 | 一种数据分析方法以及相关装置 |
CN117992834B (zh) * | 2024-04-03 | 2024-06-25 | 广东力创信息技术有限公司 | 一种数据分析方法以及相关装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN117077811A (zh) | 联邦学习优化方法及相关装置 | |
Zhong et al. | A deep reinforcement learning-based framework for content caching | |
He et al. | QoE-driven content-centric caching with deep reinforcement learning in edge-enabled IoT | |
CN111027736A (zh) | 多目标优化下的微服务组合部署与调度方法 | |
CN108520303A (zh) | 一种推荐系统构建方法及装置 | |
CN108667653B (zh) | 超密集网络中基于聚类的缓存配置方法及装置 | |
CN113364854B (zh) | 移动边缘计算网络中基于分布式强化学习的隐私保护动态边缘缓存设计方法 | |
CN114741611A (zh) | 联邦推荐模型训练方法以及系统 | |
Zhang et al. | Two time-scale caching placement and user association in dynamic cellular networks | |
Zhou et al. | Sacc: A size adaptive content caching algorithm in fog/edge computing using deep reinforcement learning | |
WO2024088134A1 (zh) | 信道预测方法及装置 | |
CN108289115B (zh) | 一种信息处理方法及系统 | |
CN111261170A (zh) | 基于声纹库的声纹识别方法、主控节点及计算节点 | |
WO2022001887A1 (zh) | 用于训练物品编码模型的方法和装置 | |
CN113962163A (zh) | 一种实现无源微波器件高效设计的优化方法、装置和设备 | |
CN111465057B (zh) | 一种基于强化学习的边缘缓存方法、装置及电子设备 | |
Zhou et al. | Content placement with unknown popularity in fog radio access networks | |
Nguyen et al. | Online learning-based clustering approach for news recommendation systems | |
CN108809728B (zh) | 内容分发网络数据转发方法和内容分发网络数据转发系统 | |
CN113297152B (zh) | 一种电力物联网边缘服务器缓存更新的方法及装置 | |
CN114217933A (zh) | 多任务调度方法、装置、设备以及存储介质 | |
CN111935781B (zh) | 数据分享网络的控制方法、网络系统及相关装置 | |
Mishra et al. | Efficient proactive caching in storage constrained 5g small cells | |
CN114116052A (zh) | 一种边缘计算方法及装置 | |
Yong | Novel global harmony search algorithm for least absolute deviation |
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 |