CN111355739B - 横向联邦学习的数据传输方法、装置、终端设备及介质 - Google Patents
横向联邦学习的数据传输方法、装置、终端设备及介质 Download PDFInfo
- Publication number
- CN111355739B CN111355739B CN202010156092.8A CN202010156092A CN111355739B CN 111355739 B CN111355739 B CN 111355739B CN 202010156092 A CN202010156092 A CN 202010156092A CN 111355739 B CN111355739 B CN 111355739B
- Authority
- CN
- China
- Prior art keywords
- model
- trained
- pooling
- residual
- federal learning
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/04—Protocols for data compression, e.g. ROHC
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Computer And Data Communications (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种横向联邦学习的数据传输方法、装置、终端设备及计算机可读存储介质,通过接收横向联邦学习中各客户端上传的残差池化模型,其中,各所述客户端根据从所述服务端处接收到的聚合结果,和初始待训练模型确定横向联邦学习中的待训练模型,利用本地训练数据对所述待训练模型进行本地的模型训练并计算残差,对所述残差进行池化压缩得到所述残差池化模型;对接收到的所述残差池化模型进行预设聚合运算得到聚合结果;将所述聚合结果下发至各所述客户端,以供各所述客户端根据所述聚合结果进行新一轮的模型训练。本发明减少了客户端与服务端之间的数据传输量,避免了通过裁剪模型进行中间传输带来的实现过程繁复和损失模型精度的问题。
Description
技术领域
本发明涉及横向联邦学习技术领域,尤其涉及一种横向联邦学习的数据传输方法、装置、终端设备及计算机可读存储介质。
背景技术
目前,当参与横向联邦学习的客户端数量较多时,各客户端同时上传模型更新等数据将导致横向联邦学习的服务端运行压力非常大,并且,基于机器学习模型十分复杂,各客户端所上传模型的结构通常比较大,如此需要各客户端与服务端长时间建立通信连接,鉴于联邦学习通信网络环境的不稳定性,各客户端与服务端之间的数据传输很容易中断。
现有为了减小横向联邦学习中服务端的运行压力、提高客户端与服务端之间进行数据传输的成功率,通常采用的是对横向联邦学习中迭代训练的模型进行优化处理,如采用模型剪枝、参数共享等传统压缩手段对模型进行压缩之后,再在客户端与服务端之间进行传输。
然而,采用模型剪枝、参数共享等压缩手段对模型进行压缩,需要在每一轮模型训练完毕之后,先对模型的参数进行评估以确定进行模型裁剪的权重,整个中间传输的实现过程比较繁复,且对模型进行裁剪也造成训练模型的精度的损失,不利于整个横向联邦学习的稳定和良好效果。
发明内容
本发明的主要目的在于提供一种横向联邦学习的数据传输方法、装置、终端设备及计算机可读存储介质,旨在解决现有对横向联邦学习中的训练模型进行裁剪压缩后传输的方式,实现过程繁复且会造成训练模型精度损失的技术问题。
为实现上述目的,本发明提供一种横向联邦学习的数据传输方法,所述横向联邦学习的数据传输方法应用于所述横向联邦学习中的服务端,所述横向联邦学习的数据传输方法包括:
接收横向联邦学习中各客户端上传的残差池化模型,其中,各所述客户端根据从所述服务端处接收到的聚合结果,和初始待训练模型确定横向联邦学习中的待训练模型,利用本地训练数据对所述待训练模型进行本地的模型训练并计算残差,对所述残差进行池化压缩得到所述残差池化模型;
对接收到的所述残差池化模型进行预设聚合运算得到聚合结果;
将所述聚合结果下发至各所述客户端,以供各所述客户端根据所述聚合结果进行新一轮的模型训练。
进一步地,所述对接收到的所述残差池化模型进行预设聚合运算得到聚合结果的步骤,包括:
接收各所述客户端在本轮模型训练中上传的所述残差池化模型;
计算各所述残差池化模型的平均模型参数,将所述平均模型参数对应的残差池化模型确定为本轮模型训练的聚合结果。
进一步地,在所述接收横向联邦学习中各客户端上传的残差池化模型的步骤之前,还包括:
获取预设的待训练模型,对所述待训练模型进行池化压缩得到初始残差池化模型,将所述待训练模型和所述初始残差池化模型下发至各所述客户端,以供各所述客户端开始进行本地的模型训练。
进一步地,所述将所述待训练模型和所述初始残差池化模型下发至各所述客户端的步骤,包括:
初始化所述待训练模型得到初始待训练模型,将所述初始待训练模型下发至各所述客户端;
归零初始化所述初始残差池化模型得到值为零的初始残差池化模型,将所述值为零的初始残差池化模型下发至各所述客户端。
进一步地,在所述对接收到的所述残差池化模型进行预设聚合运算得到聚合结果的步骤之后,还包括:
叠加所述聚合结果得到聚合结果总和;
所述将所述聚合结果下发至各所述客户端,以供各所述客户端根据所述聚合结果进行新一轮的模型训练的步骤,包括:
将所述聚合结果总和下发至各所述客户端,以供各所述客户端根据所述聚合结果总和确定新的待训练模型,并使用所述新的待训练模型进行新一轮的模型训练。
此外,为实现上述目的,本发明还提供一种横向联邦学习的数据传输方法,所述横向联邦学习的数据传输方法应用于所述横向联邦学习中的各客户端,所述横向联邦学习的数据传输方法包括:
根据预设的初始待训练模型和横向联邦学习中的服务端下发的聚合结果确定横向联邦学习中的待训练模型;
利用本地训练数据对所述待训练模型进行模型训练,并依据进行模型训练得到的模型更新和所述待训练模型计算得到残差;
对所述残差进行池化压缩得到残差池化模型,并将所述残差池化模型上传至所述服务端,以供所述服务端进行预设聚合运算得到新一轮的聚合结果。
进一步地,所述对所述残差进行池化压缩得到残差池化模型的步骤,包括:
从所述残差的网络层中的确定目标网络层;
对所述目标网络层的数据进行池化压缩,以得到所述残差的残差池化模型。
进一步地,在所述将所述残差池化模型上传至所述服务端,以供所述服务端进行预设聚合运算得到所述聚合结果的步骤之后,还包括:
接收所述服务端下发的基于进行预设聚合运算得到的所述聚合结果,根据所述聚合结果确定新的待训练模型,并使用所述新的待训练模型进行新一轮的模型训练。
进一步地,所述根据所述聚合结果确定新的待训练模型,并使用所述新的待训练模型进行新一轮的模型训练的步骤,包括:
叠加所述服务端下发的所述聚合结果得到聚合结果总和;
将所述初始待训练模型与所述聚合结果总和相加得到新的待训练模型,并利用所述本地训练数据对所述新的待训练模型进行新一轮的模型训练。
进一步地,在所述将所述残差池化模型上传至所述服务端,以供所述服务端进行预设聚合运算得到新一轮的聚合结果的步骤之后,还包括:
接收所述服务端下发的基于叠加所述聚合结果得到的聚合结果总和,根据所述聚合结果总和确定新的待训练模型,并使用所述新的待训练模型进行新一轮的模型训练。
此外,为实现上述目的,本发明还提供一种横向联邦学习的数据传输装置,所述横向联邦学习的数据传输装置应用于横向联邦学习中的服务端,所述横向联邦学习的数据传输装置包括:
接收模块,用于接收横向联邦学习中各客户端上传的残差池化模型,其中,所述残差池化模型为各所述客户端对根据对本地的模型训练计算的残差进行池化压缩得到的;
计算模块,用于对接收到的所述残差池化模型进行预设聚合运算得到聚合结果;
下发模块,用于将所述聚合结果下发至各所述客户端,以供各所述客户端根据所述聚合结果进行新一轮的模型训练。
本发明横向联邦学习的数据传输装置的各功能模块在运行时实现如上述中的横向联邦学习的数据传输方法的步骤。
此外,为实现上述目的,本发明还提供一种横向联邦学习的数据传输装置,所述横向联邦学习的数据传输装置应用于横向联邦学习中的各客户端,所述横向联邦学习的数据传输装置包括:
确定模块,用于根据预设的初始待训练模型和横向联邦学习中的服务端下发的聚合结果确定横向联邦学习中的待训练模型;
训练模块,用于利用本地训练数据对所述待训练模型进行模型训练,并依据进行模型训练得到的模型更新和所述待训练模型计算得到残差;
上传模块,用于对所述残差进行池化压缩得到残差池化模型,并将所述残差池化模型上传至所述服务端,以供所述服务端进行预设聚合运算得到新一轮的聚合结果。
本发明横向联邦学习的数据传输装置的各功能模块在运行时实现如上述中的横向联邦学习的数据传输方法的步骤。
此外,为实现上述目的,本发明还提供一种终端设备,所述终端设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的横向联邦学习的数据传输程序,所述横向联邦学习的数据传输程序被所述处理器执行时实现如上述中的横向联邦学习的数据传输方法的步骤。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述的横向联邦学习的数据传输方法的步骤。
本发明提出的横向联邦学习的数据传输方法、装置、终端设备以及计算机可读存储介质,通过接收横向联邦学习中各客户端上传的残差池化模型,其中,各所述客户端根据从所述服务端处接收到的聚合结果,和初始待训练模型确定横向联邦学习中的待训练模型,利用本地训练数据对所述待训练模型进行本地的模型训练并计算残差,对所述残差进行池化压缩得到所述残差池化模型;对接收到的所述残差池化模型进行预设聚合运算得到聚合结果;将所述聚合结果下发至各所述客户端,以供各所述客户端根据所述聚合结果进行新一轮的模型训练。
本发明实现了,基于对横向联邦学习中各客户端上传的模型训练中间结果进行池化压缩得到残差池化模型,各客户端在向服务端上传数据时,仅传输该残差池化模型,服务端在向各客户端下发数据时,也仅传输对残差池化模型进行聚合运算的聚合结果,极大程度上减少了客户端与服务端之间的数据传输量,且避免了通过裁剪模型进行中间传输带来的实现过程繁复和损失模型精度的问题,确保了整个横向联邦学习的稳定和良好效果。
附图说明
图1是本发明实施例方案涉及的硬件运行的结构示意图;
图2是本发明一种横向联邦学习的数据传输方法第一实施例的流程示意图;
图3是本发明一种横向联邦学习的数据传输方法另一实施例的流程示意图;
图4是本发明一种横向联邦学习的数据传输方法一实施例中的应用场景示意图;
图5是本发明一种横向联邦学习的数据传输方法一实施例中的另一应用场景示意图;
图6是本发明一种横向联邦学习的数据传输装置的模块结构示意图;
图7是本发明一种横向联邦学习的数据传输装置的另一模块结构示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,图1是本发明实施例方案涉及的硬件运行环境的结构示意图。
需要说明的是,图1即可为终端设备的硬件运行环境的结构示意图。本发明实施例终端设备可以是PC,便携计算机等终端设备。
如图1所示,该终端设备可以包括:处理器1001,例如CPU,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的终端设备结构并不构成对终端设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及分布式任务的处理程序。其中,操作系统是管理和控制样本终端设备硬件和软件资源的程序,支持分布式任务的处理程序以及其它软件或程序的运行。
在图1所示的终端设备中,用户接口1003主要用于与各个终端进行数据通信;网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;而处理器1001可以用于调用存储器1005中存储的横向联邦学习的数据传输程序,并执行以下操作:
接收横向联邦学习中各客户端上传的残差池化模型,其中,各所述客户端根据从所述服务端处接收到的聚合结果,和初始待训练模型确定横向联邦学习中的待训练模型,利用本地训练数据对所述待训练模型进行本地的模型训练并计算残差,对所述残差进行池化压缩得到所述残差池化模型;
对接收到的所述残差池化模型进行预设聚合运算得到聚合结果;
将所述聚合结果下发至各所述客户端,以供各所述客户端根据所述聚合结果进行新一轮的模型训练。
进一步地,处理器1001可以调用存储器1005中存储的横向联邦学习的数据传输程序,还执行以下操作:
接收各所述客户端在本轮模型训练中上传的所述残差池化模型;
计算各所述残差池化模型的平均模型参数,将所述平均模型参数对应的残差池化模型确定为本轮模型训练的聚合结果。
进一步地,处理器1001可以调用存储器1005中存储的横向联邦学习的数据传输程序,在执行接收横向联邦学习中各客户端上传的残差池化模型之前,还执行以下操作:
获取预设的待训练模型,对所述待训练模型进行池化压缩得到初始残差池化模型,将所述待训练模型和所述初始残差池化模型下发至各所述客户端,以供各所述客户端开始进行本地的模型训练。
进一步地,处理器1001可以调用存储器1005中存储的横向联邦学习的数据传输程序,还执行以下操作:
初始化所述待训练模型得到初始待训练模型,将所述初始待训练模型下发至各所述客户端;
归零初始化所述初始残差池化模型得到值为零的初始残差池化模型,将所述值为零的初始残差池化模型下发至各所述客户端。
进一步地,处理器1001可以调用存储器1005中存储的横向联邦学习的数据传输程序,在执行对接收到的所述残差池化模型进行预设聚合运算得到聚合结果之后,还执行以下操作:
叠加所述聚合结果得到聚合结果总和。
进一步地,处理器1001可以调用存储器1005中存储的横向联邦学习的数据传输程序,还执行以下操作:
将所述聚合结果总和下发至各所述客户端,以供各所述客户端根据所述聚合结果总和确定新的待训练模型,并使用所述新的待训练模型进行新一轮的模型训练。
进一步地,处理器1001可以调用存储器1005中存储的横向联邦学习的数据传输程序,还执行以下操作:
根据预设的初始待训练模型和横向联邦学习中的服务端下发的聚合结果确定横向联邦学习中的待训练模型;
利用本地训练数据对所述待训练模型进行模型训练,并依据进行模型训练得到的模型更新和所述待训练模型计算得到残差;
对所述残差进行池化压缩得到残差池化模型,并将所述残差池化模型上传至所述服务端,以供所述服务端进行预设聚合运算得到新一轮的聚合结果。
进一步地,处理器1001可以调用存储器1005中存储的横向联邦学习的数据传输程序,还执行以下操作:
从所述残差的网络层中的确定目标网络层;
对所述目标网络层的数据进行池化压缩,以得到所述残差的残差池化模型。
进一步地,处理器1001可以调用存储器1005中存储的横向联邦学习的数据传输程序,在执行将所述残差池化模型上传至所述服务端,以供所述服务端进行预设聚合运算得到所述聚合结果之后,还执行以下操作:
接收所述服务端下发的基于进行预设聚合运算得到的所述聚合结果,根据所述聚合结果确定新的待训练模型,并使用所述新的待训练模型进行新一轮的模型训练。
进一步地,处理器1001可以调用存储器1005中存储的横向联邦学习的数据传输程序,还执行以下操作:
叠加所述服务端下发的所述聚合结果得到聚合结果总和;
将所述初始待训练模型与所述聚合结果总和相加得到新的待训练模型,并利用所述本地训练数据对所述新的待训练模型进行新一轮的模型训练。
进一步地,处理器1001可以调用存储器1005中存储的横向联邦学习的数据传输程序,在执行将所述残差池化模型上传至所述服务端,以供所述服务端进行预设聚合运算得到所述聚合结果之后,还执行以下操作:
接收所述服务端下发的基于叠加所述聚合结果得到的聚合结果总和,根据所述聚合结果总和确定新的待训练模型,并使用所述新的待训练模型进行新一轮的模型训练。
基于上述的结构,提出本发明横向联邦学习的数据传输方法的各个实施例。
请参照图2,图2为本发明横向联邦学习的数据传输方法第一实施例的流程示意图。
本发明实施例提供了横向联邦学习的数据传输方法的实施例,需要说明的是,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本发明实施例横向联邦学习的数据传输方法应用于上述终端设备,本发明实施例终端设备可以是PC,便携计算机等终端设备,在此不做具体限制。
本实施例横向联邦学习的数据传输方法应用于横向联邦学习中的服务端,本实施例横向联邦学习的数据传输方法包括:
步骤S100,接收横向联邦学习中各客户端上传的残差池化模型,其中,各所述客户端根据从所述服务端处接收到的聚合结果,和初始待训练模型确定横向联邦学习中的待训练模型,利用本地训练数据对所述待训练模型进行本地的模型训练并计算残差,对所述残差进行池化压缩得到所述残差池化模型。
需要说明的是,在本实施例中,参与横向联邦学习的各客户端在依据自身的训练数据进行本地的模型训练之后,根据当前轮次模型训练得到模型更新与前一轮次模型训练的模型更新计算当前轮次模型训练的残差,并对该计算得到的残差进行池化压缩得到残差池化模型,然后各客户端将得到的该残差池化模型上传至服务端。
横向联邦学习中的服务端在模型的迭代训练过程中,接收参与当前横向联邦学习的各客户端,在进行完每一轮次本地的模型训练之后上传的将依据训练得到的模型更新计算的残差,进行池化压缩得到的残差池化模型。
进一步地,在步骤S100之前,本发明横向联邦学习的数据传输方法,还包括:
步骤S400,获取预设的待训练模型,对所述待训练模型进行池化压缩得到初始残差池化模型,将所述待训练模型和所述初始残差池化模型下发至各所述客户端,以供各所述客户端开始进行本地的模型训练。
需要说明的是,本实施例中,预设的待训练模型具体可以由当前横向联邦学习的服务端自动生成,或者由其他第三方参与者提供用于当前横向联邦学习中客户端进行本地模型训练的神经网络模型,应当理解的是,本发明横向联邦学习的数据传输方法并不对服务端所获取的待训练模型进行限定。
横向联邦学习中的服务端在开始进行迭代时,获取服务端预先生成的用于当前横向联邦学习中各客户端进行本地模型训练的卷积神经网络模型,基于对该卷积神经网络模型中的网络层进行池化压缩得到初始残差池化模型,然后将获取到的该卷积神经网络模型,和基于池化压缩得到的初始残差池化模型,下发至参与当前横向联邦学习的各客户端,该各客户端接收该卷积神经网络模型和初始残差池化模型,并根据该卷积神经网络模型和初始残差池化模型,开始利用本地训练数据进行模型训练。
具体地,例如,在如图5所示的应用场景中“Round1”部分,横向联邦学习中的服务端预先生成一个卷积神经网络模型,作为参与当前横向联邦学习的各客户端利用本地训练数据进行训练的待训练模型M,服务端基于对该卷积神经网络模型各网络层中卷积层的各节点进行池化压缩得到初始残差池化模型R,然后服务端在对该卷积神经网络模型和初始残差池化模型R进行初始化操作之后,得到初始待训练模型M0和值为“零”的初始残差池化模型R,服务端将得到的初始待训练模型M0和值为“零”的初始残差池化模型R一并下发至各客户端,以供各客户端接收该初始待训练模型M0和值为“零”的初始残差池化模型R,并在恢复得到待训练模型M0(基于公式M=M0+R,由于R的值为“零”,因此M=M0+0=M0)之后,开始利用各自拥有的本地训练数据对该待训练模型M0进行模型训练,并计算当前轮次模型训练得到的模型更新M1,与待训练模型M0之间的残差R1(R1=M1—M0)。
进一步地,步骤S400中,将所述待训练模型和所述初始残差池化模型下发至各所述客户端,包括:
步骤S401,初始化所述待训练模型得到初始待训练模型,将所述初始待训练模型下发至各所述客户端;
横向联邦学习中的服务端对获取到的待训练模型中的各节点参数随机进行初始化操作,以得到初始待训练模型,并在初次为参与当前横向联邦学习的各客户端下发模型训练参数时,将该初始待训练模型下发至各客户端。
步骤S402,归零初始化所述初始残差池化模型得到值为零的初始残差池化模型,将所述值为零的初始残差池化模型下发至各所述客户端。
横向联邦学习中的服务端对基于池化压缩待训练模型得到的初始残差池化模型进行归零初始化操作,以将该初始残差池化模型的值初始化为“零”,然后将该值为“零”的初始残差池化模型下发至参与当前横向联邦学习的各客户端。
进一步地,在另一个实施例中,由于归零初始化操作之后的初始残差池化模型的值为“零”,因此,横向联邦学习中的服务端也可仅仅只向参与当前横向联邦学习的各客户端,下发经过随机初始化操作之后的待训练模型,并为各客户端指定初始残差池化模型的值为“零”,各客户端可直接以“零”替代该初始残差池化模型,并利用各自所拥有的训练数据开始对待训练模型进行本地的模型训练。
步骤S200,对接收到的所述残差池化模型进行预设聚合运算得到聚合结果。
横向联邦学习中的服务端在模型的迭代训练过程中,对接收到的参与当前横向联邦学习的各客户端,上传的将依据训练得到的模型更新计算的残差进行池化压缩得到的残差池化模型,进行预设聚合运算得到聚合结果。
进一步地,步骤S200,包括:
步骤S201,接收各所述客户端在本轮模型训练中上传的所述残差池化模型;
参与当前横向联邦学习的各客户端,在每一轮本地的模型训练结束之后,各自将经过残差池化压缩后得到的残差池化模型,上传至所接入当前横向联邦学习中的服务端,服务端随即接收该各残差池化模型。
具体地,例如,参照如图4所示的应用场景,参与当前横向联邦学习的各客户端,在利用各自拥有的本地训练数据对待训练模型Mt(t代表当前进行迭代训练的轮次)进行模型训练之后,根据当前轮次模型训练得到的模型更新Mt与待训练模型Mt-1,计算当前轮次模型训练产生的残差Rt(Rt=Mt—Mt-1),然后先对残差Rt的网络层中的卷积层参数(如图4最左边所示“3*3”的阵列图)进行池化(池化后卷积层参数如图4中间所示“3*3”的阵列图),然后压缩得到残差池化模型△Rt(经压缩后卷积层参数如图4最右边所示“1*1”的阵列图),各客户端在各自完成对残差Rt的池化压缩得到残差池化模型△Rt之后,将该残差池化模型△Rt上传至当前横向联邦学习的服务端。
步骤S202,计算各所述残差池化模型的平均模型参数,将所述平均模型参数对应的残差池化模型确定为本轮模型训练的聚合结果;
当前横向联邦学习的服务端在接收到各客户端上传的经过残差池化压缩后得到的各残差池化模型之后,按照预设聚合运算的公式,计算接收到的各残差池化模型的平均模型参数,从而将该计算得到的平均模型参数,作为各客户端在本轮的模训练中所得到各残差池化模型的聚合结果。
具体地,例如,服务端接收当前第t轮次迭代训练,各客户端所上传的各该残差池化模型△Rt,然后对各该残差池化模型△Rt进行聚合运算得到聚合结果服务端按照如下所示公式1对各该残差池化模型△Rt进行聚合运算。
需要说明的是,在本实施例中,同样可以采用其他计算各残差池化模型的平均模型参数的计算方式(如加权平均等),来计算平均模型参数作为各客户端在本轮的模训练中所得到各残差池化模型的聚合结果,应当理解的是,本发明横向联邦学习的数据传输方法并不对计算各残差池化模型的平均模型参数的计算方式进行限定。
步骤S300,将所述聚合结果下发至各所述客户端,以供各所述客户端根据所述聚合结果进行新一轮的模型训练。
横向联邦学习中的服务端在模型的迭代训练过程中,在将接收到的参与当前横向联邦学习的各客户端,上传的残差池化模型进行预设聚合运算得到聚合结果之后,将该聚合结果重新下发至各客户端,以供各客户端接收该聚合结果并根据该聚合结果和最开始接收到的服务端所下发的初始待训练模型,恢复新一轮模型训练待训练模型,并利用自身所拥有的训练数据进行该新一轮的模型训练。
具体地,例如,在如图5所示的应用场景中“Round2”部分,横向联邦学习中的服务端在接收到参与当前横向联邦学习的各客户端,上传的对基于利用本地训练数据对待训练模型M0进行第一轮训练产生的残差R1(R1=M1—M0),进行池化压缩得到的残差池化模型△R1,并对各残差池化模型△R1进行聚合运算得到聚合结果之后,将该/>连同服务端选择参与新一轮模型训练的各客户端的ID和新一轮模型训练的轮次(此处为“2”),再次下发至被选中的各个客户端。
各个客户端在接收到服务端下发的聚合结果之后,根据该聚合结果/>和最开始接收到的服务端所下发的待训练模型M0,恢复当前进行第二轮次模型更新时需要训练的待训练模型/>然后利用各自所拥有的本地数据,对恢复得到的该待训练模型M2进行新一轮的模型训练。
在本实施例中,通过横向联邦学习中的服务端在模型的迭代训练过程中,接收参与当前横向联邦学习的各客户端,在进行完每一轮次本地的模型训练之后上传的将依据训练得到的模型更新计算的残差,进行池化压缩得到的残差池化模型;横向联邦学习中的服务端在模型的迭代训练过程中,对接收到的参与当前横向联邦学习的各客户端,上传的将依据训练得到的模型更新计算的残差进行池化压缩得到的残差池化模型,进行预设聚合运算得到聚合结果;在将接收到的参与当前横向联邦学习的各客户端,上传的残差池化模型进行预设聚合运算得到聚合结果之后,将该聚合结果重新下发至各客户端,以供各客户端接收该聚合结果并根据该聚合结果和最开始接收到的服务端所下发的初始待训练模型,恢复新一轮模型训练待训练模型,并利用自身所拥有的训练数据进行该新一轮的模型训练。
实现了,通过横向联邦学习中的服务端在模型训练过程中,接收参与当前横向联邦学习的各客户端上传的在各客户端本地,对模型训练的中间结果经过池化压缩所得到的残差池化模型,对接收到的各残差池化模型进行预设聚合运算得到聚合结果,并将聚合结果重新下发至各客户端,各客户端接收该聚合结果再次恢复模型进行新一轮的模型迭代训练。从而,基于对横向联邦学习中各客户端上传的模型训练中间结果进行池化压缩得到残差池化模型,各客户端在向服务端上传数据时,仅传输该残差池化模型,服务端在向各客户端下发数据时,也仅传输对残差池化模型进行聚合运算的聚合结果,极大程度上减少了客户端与服务端之间的数据传输量,且避免了通过裁剪模型进行中间传输带来的实现过程繁复和损失模型精度的问题,确保了整个横向联邦学习的稳定和良好效果。
进一步地,基于上述横向联邦学习的数据传输方法第一实施例,提出本发明横向联邦学习的数据传输方法的第二实施例。
在本发明横向联邦学习的数据传输方法的第二实施例中,在上述步骤S200,对接收到的所述残差池化模型进行预设聚合运算得到聚合结果之后,本发明横向联邦学习的数据传输方法,还包括:
步骤S500,叠加所述聚合结果得到聚合结果总和。
横向联邦学习中的服务端在模型的迭代训练过程中,叠加服务端在每一轮模型训练过程中,对接收到的参与当前横向联邦学习的各客户端,上传的将依据训练得到的模型更新计算的残差进行池化压缩得到的残差池化模型,进行预设聚合运算得到的聚合结果得到聚合结果总和。
具体地,例如,横向联邦学习中的服务端在模型的迭代训练过程中,在当前第t轮次,叠加服务端在当前第t轮次和前面第t-1每一轮次,对参与当前横向联邦学习的各客户端,上传的差池化模型△R进行聚合运算得到的t个聚合结果得到聚合结果总和/>服务端按照如下所示公式3叠加各聚合结果/>得到聚合结果总和/>
进一步地,上述步骤S300,将所述聚合结果下发至各所述客户端,以供各所述客户端根据所述聚合结果进行新一轮的模型训练,包括:
步骤S301,将所述聚合结果总和下发至各所述客户端,以供各所述客户端根据所述聚合结果总和确定新的待训练模型,并使用所述新的待训练模型进行新一轮的模型训练。
横向联邦学习中的服务端在模型的迭代训练过程中,在叠加聚合结果得到聚合结果总和之后,将该聚合结果总和下发至各客户端,以供各客户端接收该聚合结果总和并直接根据该聚合结果总和和最开始接收到的服务端所下发的初始待训练模型,确定新一轮模型训练待训练模型,并利用自身所拥有的训练数据进行该新一轮的模型训练。
具体地,例如,在横向联邦学习中的服务端在模型的迭代训练过程中,在当前第t轮次,叠加服务端在当前第t轮次和前面第t-1每一轮次,对参与当前横向联邦学习的各客户端,上传的差池化模型△R进行聚合运算得到的t个聚合结果得到聚合结果总和/>服务端按照如下所示公式3叠加各聚合结果/>得到聚合结果总和/>之后,将该聚合结果总和/>下发至被选中参与当前第t+1轮次模型训练的各个客户端。
各个客户端在接收到服务端下发的聚合结果总和之后,根据该聚合结果总和和最开始接收到的服务端所下发的待训练模型M0,恢复当前进行第t+1轮次模型更新时需要训练的待训练模型/>然后利用各自所拥有的本地数据,对恢复得到的该待训练模型Mt+1进行新一轮的模型训练。
本实施例中,通过横向联邦学习中的服务端在模型的迭代训练过程中,叠加服务端在每一轮模型训练过程中,对接收到的参与当前横向联邦学习的各客户端,上传的将依据训练得到的模型更新计算的残差进行池化压缩得到的残差池化模型,进行预设聚合运算得到的聚合结果得到聚合结果总和;将该聚合结果总和下发至各客户端,以供各客户端接收该聚合结果总和并直接根据该聚合结果总和最开始接收到的服务端所下发的初始待训练模型,恢复新一轮模型训练待训练模型,并利用自身所拥有的训练数据进行该新一轮的模型训练。实现了,在服务端或者客户端对聚合结果进行叠加得到聚合结果总和,以便于各客户端恢复待训练模型,在保证减少客户端与服务端之间的数据传输量的同时,提高了叠加聚合结果以便恢复待训练模型时,选择服务端叠加或者客户端自主叠加的灵活性。
进一步地,基于上述的结构,提出本发明横向联邦学习的数据传输方法的第三实施例。
请参照图3,图3为本发明横向联邦学习的数据传输方法第三实施例的流程示意图。
本发明实施例提供了横向联邦学习的数据传输方法的实施例,需要说明的是,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本发明实施例横向联邦学习的数据传输方法应用于上述终端设备,本发明实施例终端设备可以是PC,便携计算机等终端设备,在此不做具体限制。
本实施例横向联邦学习的数据传输方法应用于横向联邦学习中的各客户端,本实施例横向联邦学习的数据传输方法包括:
步骤A,根据预设的初始待训练模型和横向联邦学习中的服务端下发的聚合结果确定横向联邦学习中的待训练模型。
参与横向联邦学习的各客户端根据预设的初始训练模型,和接收到的当前横向联邦学习中的服务端所下发的聚合结果,确定当前横向联邦学习中当前轮次各客户端在本地进行模型训练的待训练模型。
需要说明的是,预设的待训练模型具体可以为当前横向联邦学习中的服务端自动生成,或者由其他第三方参与者提供的用于的神经网络模型,应当理解的是,本发明横向联邦学习的数据传输方法并不对服务端所获取的待训练模型进行限定。
具体地,例如,横向联邦学习中的服务端预先生成一个卷积神经网络模型,作为参与当前横向联邦学习的各客户端利用本地训练数据进行训练的待训练模型M,然后服务端在对该卷积神经网络模型进行初始化操作之后,得到初始待训练模型M0,服务端将得到的初始待训练模型M0下发至各客户端,各客户端接收该初始待训练模型M0,并根据服务端下发的对各客户端上一轮次迭代训练中所上传残差池化模型△R进行聚合运算得到的聚合结果恢复计算当前轮次(如第t轮)进行模型训练的训练模型/>
步骤B,利用本地训练数据对所述待训练模型进行模型训练,并依据进行模型训练得到的模型更新和所述待训练模型计算得到残差。
参与横向联邦学习的各客户端利用各自所拥有的本地训练数据,对恢复的当前轮次进行训练的待训练模型,在本地进行模型训练,并依据训练得到的模型更新和恢复的当前轮次进行训练的待训练模型,计算当前轮次模型训练所产生的残差。
具体地,例如,参与当前横向联邦学习的各客户端在恢复得到进行当前第t轮次模型训练的待训练模型Mt之后,开始利用各自拥有的本地训练数据对该待训练模型Mt进行模型训练,并计算当前第t轮次模型训练得到的模型更新Mt,与上一轮次进行模型训练的待训练模型Mt-1之间的残差Rt(Rt=Mt—Mt-1)。
步骤C,对所述残差进行池化压缩得到残差池化模型,并将所述残差池化模型上传至所述服务端,以供所述服务端进行预设聚合运算得到新一轮的聚合结果。
参与横向联邦学习的各客户端在计算得到当前轮次模型训练所产生的残差之后,对该残差进行池化压缩以得到残差池化模型,然后将该残差池化模型上传至当前横向联邦学习的服务端,以供服务端对该残差池化模型进行预设聚合运算得到聚合结果。
具体地,例如,参与当前横向联邦学习的各客户端在计算得到当前第t轮次模型训练得到的模型更新Mt,与上一轮次进行模型训练的待训练模型Mt-1之间的残差Rt(Rt=Mt—Mt-1)之后,先对残差Rt的网络层中的卷积层参数进行池化,然后压缩得到残差池化模型△Rt,各客户端在各自完成对残差Rt的池化压缩得到残差池化模型△Rt之后,将该残差池化模型△Rt上传至当前横向联邦学习的服务端,服务端接收当前第t轮次迭代训练,各客户端所上传的各该残差池化模型△Rt,然后对各该残差池化模型△Rt进行聚合运算得到聚合结果服务端按照如下所示公式对各该残差池化模型△Rt进行聚合运算。
进一步地,步骤C中,对所述残差进行池化压缩得到残差池化模型的步骤,包括:
步骤C1,从所述残差的网络层中的确定目标网络层;
参与当前横向联邦的各客户端,在计算得出各自本轮的模型训练所产生的残差之后,从该残差中的各网络层中,确定一个或者多个进行池化压缩操作的目标网络层。
步骤C2,对所述目标网络层的数据进行池化压缩,以得到所述残差的残差池化模型。
在各客户端从该残差中的各网络层中,确定目标网络层之后,读取该目标网络层的网络层参数,并对读取出的网络层参数进行池化压缩操作,从而得到该残差的残差池化模型。
具体地,例如,参照如图4所示的应用场景,参与当前横向联邦学习的客户端,在根据当前轮次模型训练得到的模型更新Mt与待训练模型Mt-1,计算当前轮次模型训练产生的残差Rt(Rt=Mt—Mt-1)之后,从该残差Rt的各网络层中确定卷积层为进行池化压缩的目标网络层,从而,客户端读取该残差Rt的卷积层参数,并对该卷积层参数(如图4最左边所示“3*3”的阵列图)进行池化(池化后卷积层参数如图4中间所示“3*3”的阵列图),然后压缩,从而得到当前客户端在本轮的模型训练所产生残差Rt的残差池化模型△Rt(经压缩后卷积层参数如图4最右边所示“1*1”的阵列图)。
本实施例中,参与横向联邦学习的各客户端根据预设的初始训练模型,和接收到的当前横向联邦学习中的服务端所下发的聚合结果,恢复当前横向联邦学习中当前轮次各客户端在本地进行模型训练的待训练模型;参与横向联邦学习的各客户端利用各自所拥有的本地训练数据,对恢复的当前轮次进行训练的待训练模型,在本地进行模型训练,并依据训练得到的模型更新计算当前轮次模型训练所产生的残差;对该残差进行池化压缩以得到残差池化模型,然后将该残差池化模型上传至当前横向联邦学习的服务端,以供服务端对该残差池化模型进行预设聚合运算得到聚合结果。
实现了,通过横向联邦学习中的服务端在模型训练过程中,接收参与当前横向联邦学习的各客户端上传的在各客户端本地,对模型训练的中间结果经过池化压缩所得到的残差池化模型,对接收到的各残差池化模型进行预设聚合运算得到聚合结果,并将聚合结果重新下发至各客户端,各客户端接收该聚合结果再次恢复模型进行新一轮的模型迭代训练。从而,基于对横向联邦学习中各客户端上传的模型训练中间结果进行池化压缩得到残差池化模型,各客户端在向服务端上传数据时,仅传输该残差池化模型,服务端在向各客户端下发数据时,也仅传输对残差池化模型进行聚合运算的聚合结果,极大程度上减少了客户端与服务端之间的数据传输量,且避免了通过裁剪模型进行中间传输带来的实现过程繁复和损失模型精度的问题,确保了整个横向联邦学习的稳定和良好效果。
进一步地,基于上述横向联邦学习的数据传输方法第三实施例,提出本发明横向联邦学习的数据传输方法的第四实施例。
在本发明横向联邦学习的数据传输方法的第四实施例中,在上述步骤C中的“将所述残差池化模型上传至所述服务端,以供所述服务端进行预设聚合运算得到新一轮的聚合结果”之后,本发明横向联邦学习的数据传输方法,还包括:
步骤D,接收所述服务端下发的基于进行预设聚合运算得到的所述聚合结果,根据所述聚合结果确定新的待训练模型,并使用所述新的待训练模型进行新一轮的模型训练。
参与横向联邦学习的各客户端,接收当前横向联邦学习中的服务端所下发的对残差池化模型进行预设聚合运算得到的聚合结果,然后基于对该聚合结果和各客户端在本地所保存的当前轮次以前服务端所下发的各聚合结果,恢复当前次进行模型训练的新的待训练模型,然后利用各自所拥有的本地训练数据对该新的待训练模型进行模型训练。
进一步地,步骤D中,根据所述聚合结果确定新的待训练模型,并使用所述新的待训练模型进行新一轮的模型训练,包括:
步骤D1,叠加所述服务端下发的所述聚合结果得到聚合结果总和;
步骤D2,将所述初始待训练模型与所述聚合结果总和相加得到新的待训练模型,并利用所述本地训练数据对所述新的待训练模型进行新一轮的模型训练。
具体地,例如,参与当前横向联邦学习的各客户端按照如下所示公式(其中,M0为各客户端最开始接收到的服务端所下发的待训练模型),在当前第t+1轮次模型训练中,基于接收到的服务端下发的聚合结果和各客户端在本地所保存的服务端于前t轮次模型训练过程中下发的t个聚合结果/>(其中,i∈1-t),恢复当前进行第t+1轮次模型更新时需要训练的新的待训练模型Mt+1。
然后,参与当前横向联邦学习的各客户端利用各自所拥有的本地训练数据对恢复得到的该新的待训练模型Mt+1,进行当前横向联邦学习的第t+1轮次模型训练。
进一步地,在另一个实施例中,在上述步骤C中的“将所述残差池化模型上传至所述服务端,以供所述服务端进行预设聚合运算得到新一轮的聚合结果”之后,本发明横向联邦学习的数据传输方法,还包括:
步骤E,接收所述服务端下发的基于叠加所述聚合结果得到的聚合结果总和,根据所述聚合结果总和确定新的待训练模型,并使用所述新的待训练模型进行新一轮的模型训练。
参与横向联邦学习的各客户端,接收当前横向联邦学习中的服务端所下发的叠加对残差池化模型进行预设聚合运算得到的聚合结果所得到的聚合结果总和,然后基于对该聚合结果总和最开始接收到的服务端所下发的待训练模型,直接恢复当前轮次进行模型训练的新的待训练模型,然后利用各自所拥有的本地训练数据对该新的待训练模型进行模型训练。
具体地,例如,横向联邦学习中的服务端在模型的迭代训练过程中,在当前第t轮次,叠加服务端在当前第t轮次和前面第t-1每一轮次,对参与当前横向联邦学习的各客户端,上传的差池化模型△R进行聚合运算得到的t个聚合结果得到聚合结果总和/>服务端按照如下所示公式叠加各聚合结果/>得到聚合结果总和/>
服务端将叠加得到的聚合结果总和下发至选中参与当前新一轮次(第t轮)横向联邦学习的各客户端,各个客户端在接收到服务端下发的聚合结果总和/>之后,根据该聚合结果总和/>和最开始接收到的服务端所下发的待训练模型M0,恢复当前进行第t+1轮次模型更新时需要训练的待训练模型/> 然后利用各自所拥有的本地数据,对恢复得到的该待训练模型Mt+1进行新一轮的模型训练。
本实施例中,参与横向联邦学习的各客户端,接收当前横向联邦学习中的服务端所下发的对残差池化模型进行预设聚合运算得到的聚合结果,然后基于对该聚合结果和各客户端在本地所保存的当前轮次以前服务端所下发的各聚合结果,恢复当前次进行模型训练的新的待训练模型,然后利用各自所拥有的本地训练数据对该新的待训练模型进行模型训练,或者,横向联邦学习的服务端直接叠加对残差池化模型进行预设聚合运算得到的聚合结果,得到聚合结果总和并下发至各客户端,各客户端接收当前横向联邦学习中的服务端所下发的叠加对残差池化模型进行预设聚合运算得到的聚合结果所得到的聚合结果总和,然后基于对该聚合结果总和最开始接收到的服务端所下发的待训练模型,直接恢复当前轮次进行模型训练的新的待训练模型,然后利用各自所拥有的本地训练数据对该新的待训练模型进行模型训练。
实现了,在服务端或者客户端对聚合结果进行叠加得到聚合结果总和,以便于各客户端恢复待训练模型,从而在保证减少客户端与服务端之间的数据传输量的同时,提高了叠加聚合结果以便恢复待训练模型时,选择服务端叠加或者客户端自主叠加的灵活性。
此外,请参照图6,本发明实施例还提出一种横向联邦学习的数据传输装置,该横向联邦学习的数据传输装置应用于横向联邦学习的服务端,本发明横向联邦学习的数据传输装置,包括:
接收模块,用于接收横向联邦学习中各客户端上传的残差池化模型,其中,各所述客户端根据从所述服务端处接收到的聚合结果,和初始待训练模型确定横向联邦学习中的待训练模型,利用本地训练数据对所述待训练模型进行本地的模型训练并计算残差,对所述残差进行池化压缩得到所述残差池化模型;
计算模块,用于对接收到的所述残差池化模型进行预设聚合运算得到聚合结果;
下发模块,用于将所述聚合结果下发至各所述客户端,以供各所述客户端根据所述聚合结果进行新一轮的模型训练。
优选地,计算模块,包括:
接收单元,用于接收各所述客户端在本轮模型训练中上传的所述残差池化模型;
计算单元,用以逐一对各所述残差池化模型进行预设聚合运算,得到本轮模型训练的聚合结果。
优选地,本发明横向联邦学习的数据传输装置,还包括:
获取模块,用于获取预设的待训练模型,对所述待训练模型进行池化压缩得到初始残差池化模型,将所述待训练模型和所述初始残差池化模型下发至各所述客户端,以供各所述客户端开始进行本地的模型训练。
优选地,获取模块,包括:
第一初始单元,用于初始化所述待训练模型得到初始待训练模型,将所述初始待训练模型下发至各所述客户端;
第二初始单元,用于归零初始化所述初始残差池化模型得到值为零的初始残差池化模型,将所述值为零的初始残差池化模型下发至各所述客户端。
优选地,本发明横向联邦学习的数据传输装置的计算模块,还用于叠加所述聚合结果得到聚合结果总和;
所述下发模块,还用于将所述聚合结果总和下发至各所述客户端,以供各所述客户端根据所述聚合结果总和确定新的待训练模型,并使用所述新的待训练模型进行新一轮的模型训练。
其中,本发明横向联邦学习的数据传输装置的各功能模块在运行时所实现的步骤,可参照上述本发明横向联邦学习的数据传输装置方法的第一实施例和第二实施例,此处不再赘述。
此外,请参照图7,本发明实施例还提出一种横向联邦学习的数据传输装置,该横向联邦学习的数据传输装置应用于横向联邦学习的各客户端,本发明横向联邦学习的数据传输装置,包括:
确定模块,用于根据预设的初始待训练模型和横向联邦学习中的服务端下发的聚合结果确定横向联邦学习中的待训练模型;
训练模块,用于利用本地训练数据对所述待训练模型进行模型训练,并依据进行模型训练得到的模型更新和所述待训练模型计算得到残差;
上传模块,用于对所述残差进行池化压缩得到残差池化模型,并将所述残差池化模型上传至所述服务端,以供所述服务端进行预设聚合运算得到新一轮的聚合结果。
优选地,上传模块,包括:
第一确定单元,用于从所述残差的网络层中的确定目标网络层;
压缩单元,用于对所述目标网络层的数据进行池化压缩,以得到所述残差的残差池化模型。
优选地,本发明横向联邦学习的数据传输装置的确定模块,还用于接收所述服务端下发的基于进行预设聚合运算得到的所述聚合结果,根据所述聚合结果确定新的待训练模型,并使用所述新的待训练模型进行新一轮的模型训练。
优选地,确定模块,包括:
叠加单元,用于叠加所述服务端下发的所述聚合结果得到聚合结果总和;
第二确定单元,用于将所述初始待训练模型与所述聚合结果总和相加得到新的待训练模型,并利用所述本地训练数据对所述新的待训练模型进行新一轮的模型训练。
优选地,本发明横向联邦学习的数据传输装置的确定模块,还用于接收所述服务端下发的基于叠加所述聚合结果得到的聚合结果总和,根据所述聚合结果总和确定新的待训练模型,并使用所述新的待训练模型进行新一轮的模型训练。
其中,本发明横向联邦学习的数据传输装置的各功能模块在运行时所实现的步骤,可参照上述本发明横向联邦学习的数据传输装置方法的第三实施例和第四实施例,此处不再赘述。
此外,本发明实施例还提出一种终端设备,该终端设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的横向联邦学习的数据传输程序,该横向联邦学习的数据传输程序被所述处理器执行时实现如上述中的横向联邦学习的数据传输方法的步骤。
其中,在所述处理器上运行的横向联邦学习的数据传输程序被执行时所实现的步骤可参照本发明横向联邦学习的数据传输方法的各个实施例,此处不再赘述。
此外,本发明实施例还提出一种计算机可读存储介质,应用于计算机,该计算机可读存储介质可以为非易失性计算机可读存储介质,该计算机可读存储介质上存储有横向联邦学习的数据传输程序,所述横向联邦学习的数据传输程序被处理器执行时实现如上所述的横向联邦学习的数据传输方法的步骤。
其中,在所述处理器上运行的横向联邦学习的数据传输程序被执行时所实现的步骤可参照本发明横向联邦学习的数据传输方法的各个实施例,此处不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (15)
1.一种横向联邦学习的数据传输方法,其特征在于,所述横向联邦学习的数据传输方法应用于所述横向联邦学习中的服务端,所述横向联邦学习的数据传输方法包括:
接收横向联邦学习中各客户端上传的残差池化模型,其中,各所述客户端根据从所述服务端处接收到的聚合结果,和初始待训练模型确定横向联邦学习中的待训练模型,利用本地训练数据对所述待训练模型进行本地的模型训练并计算残差,对所述残差进行池化压缩得到所述残差池化模型;
对接收到的所述残差池化模型进行预设聚合运算得到聚合结果;
将所述聚合结果下发至各所述客户端,以供各所述客户端根据所述聚合结果进行新一轮的模型训练。
2.如权利要求1所述的横向联邦学习的数据传输方法,其特征在于,所述对接收到的所述残差池化模型进行预设聚合运算得到聚合结果的步骤,包括:
接收各所述客户端在本轮模型训练中上传的所述残差池化模型;
计算各所述残差池化模型的平均模型参数,将所述平均模型参数对应的残差池化模型确定为本轮模型训练的聚合结果。
3.如权利要求1所述的横向联邦学习的数据传输方法,其特征在于,在所述接收横向联邦学习中各客户端上传的残差池化模型的步骤之前,还包括:
获取预设的待训练模型,对所述待训练模型进行池化压缩得到初始残差池化模型,将所述待训练模型和所述初始残差池化模型下发至各所述客户端,以供各所述客户端开始进行本地的模型训练。
4.如权利要求3所述的横向联邦学习的数据传输方法,其特征在于,所述将所述待训练模型和所述初始残差池化模型下发至各所述客户端的步骤,包括:
初始化所述待训练模型得到初始待训练模型,将所述初始待训练模型下发至各所述客户端;
归零初始化所述初始残差池化模型得到值为零的初始残差池化模型,将所述值为零的初始残差池化模型下发至各所述客户端。
5.如权利要求1所述的横向联邦学习的数据传输方法,其特征在于,在所述对接收到的所述残差池化模型进行预设聚合运算得到聚合结果的步骤之后,还包括:
叠加所述聚合结果得到聚合结果总和;
所述将所述聚合结果下发至各所述客户端,以供各所述客户端根据所述聚合结果进行新一轮的模型训练的步骤,包括:
将所述聚合结果总和下发至各所述客户端,以供各所述客户端根据所述聚合结果总和确定新的待训练模型,并使用所述新的待训练模型进行新一轮的模型训练。
6.一种横向联邦学习的数据传输方法,其特征在于,所述横向联邦学习的数据传输方法应用于所述横向联邦学习中的客户端,所述横向联邦学习的数据传输方法包括:
根据预设的初始待训练模型和横向联邦学习中的服务端下发的聚合结果确定横向联邦学习中的待训练模型;
利用本地训练数据对所述待训练模型进行模型训练得到模型更新,并依据所述模型更新和所述待训练模型计算得到残差;
对所述残差进行池化压缩得到残差池化模型,并将所述残差池化模型上传至所述服务端,以供所述服务端进行预设聚合运算得到新一轮的聚合结果。
7.如权利要求6所述的横向联邦学习的数据传输方法,其特征在于,所述对所述残差进行池化压缩得到残差池化模型的步骤,包括:
从所述残差的网络层中确定目标网络层;
对所述目标网络层的数据进行池化压缩,以得到所述残差的残差池化模型。
8.如权利要求6所述的横向联邦学习的数据传输方法,其特征在于,在所述将所述残差池化模型上传至所述服务端,以供所述服务端进行预设聚合运算得到新一轮的聚合结果的步骤之后,还包括:
接收所述服务端下发的基于进行预设聚合运算得到的所述聚合结果,根据所述聚合结果确定新的待训练模型,并使用所述新的待训练模型进行新一轮的模型训练。
9.如权利要求8所述的横向联邦学习的数据传输方法,其特征在于,所述根据所述聚合结果确定新的待训练模型,并使用所述新的待训练模型进行新一轮的模型训练的步骤,包括:
叠加所述服务端下发的所述聚合结果得到聚合结果总和;
将所述初始待训练模型与所述聚合结果总和相加得到新的待训练模型,并利用所述本地训练数据对所述新的待训练模型进行新一轮的模型训练。
10.如权利要求6所述的横向联邦学习的数据传输方法,其特征在于,在所述将所述残差池化模型上传至所述服务端,以供所述服务端进行预设聚合运算得到新一轮的聚合结果的步骤之后,还包括:
接收所述服务端下发的基于叠加所述聚合结果得到的聚合结果总和,根据所述聚合结果总和确定新的待训练模型,并使用所述新的待训练模型进行新一轮的模型训练。
11.一种横向联邦学习的数据传输装置,其特征在于,所述横向联邦学习的数据传输装置应用于横向联邦学习中的服务端,所述横向联邦学习的数据传输装置包括:
接收模块,用于接收横向联邦学习中各客户端上传的残差池化模型,其中,各所述客户端根据从所述服务端处接收到的聚合结果,和初始待训练模型确定横向联邦学习中的待训练模型,利用本地训练数据对所述待训练模型进行本地的模型训练并计算残差,对所述残差进行池化压缩得到所述残差池化模型;
计算模块,用于对接收到的所述残差池化模型进行预设聚合运算得到聚合结果;
下发模块,用于将所述聚合结果下发至各所述客户端,以供各所述客户端根据所述聚合结果进行新一轮的模型训练。
12.一种横向联邦学习的数据传输装置,其特征在于,所述横向联邦学习的数据传输装置应用于横向联邦学习中的各客户端,所述横向联邦学习的数据传输装置包括:
确定模块,用于根据预设的初始待训练模型和横向联邦学习中的服务端下发的聚合结果确定横向联邦学习中的待训练模型;
训练模块,用于利用本地训练数据对所述待训练模型进行模型训练得到模型更新,并依据所述模型更新和所述待训练模型计算得到残差;
上传模块,用于对所述残差进行池化压缩得到残差池化模型,并将所述残差池化模型上传至所述服务端,以供所述服务端进行预设聚合运算得到新一轮的聚合结果。
13.一种终端设备,其特征在于,所述终端设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的横向联邦学习的数据传输程序,所述横向联邦学习的数据传输程序被所述处理器执行时实现如权利要求1至5中任一项所述的横向联邦学习的数据传输方法的步骤。
14.一种终端设备,其特征在于,所述终端设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的横向联邦学习的数据传输程序,所述横向联邦学习的数据传输程序被所述处理器执行时实现如权利要求6至10中任一项所述的横向联邦学习的数据传输方法的步骤。
15.一种存储介质,其特征在于,所述存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至10中任一项所述的横向联邦学习的数据传输方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010156092.8A CN111355739B (zh) | 2020-03-06 | 2020-03-06 | 横向联邦学习的数据传输方法、装置、终端设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010156092.8A CN111355739B (zh) | 2020-03-06 | 2020-03-06 | 横向联邦学习的数据传输方法、装置、终端设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111355739A CN111355739A (zh) | 2020-06-30 |
CN111355739B true CN111355739B (zh) | 2023-03-28 |
Family
ID=71196004
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010156092.8A Active CN111355739B (zh) | 2020-03-06 | 2020-03-06 | 横向联邦学习的数据传输方法、装置、终端设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111355739B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111898768A (zh) * | 2020-08-06 | 2020-11-06 | 深圳前海微众银行股份有限公司 | 数据处理方法、装置、设备及介质 |
CN112001500B (zh) * | 2020-08-13 | 2021-08-03 | 星环信息科技(上海)股份有限公司 | 基于纵向联邦学习系统的模型训练方法、设备及存储介质 |
CN111865815B (zh) * | 2020-09-24 | 2020-11-24 | 中国人民解放军国防科技大学 | 一种基于联邦学习的流量分类方法及系统 |
WO2022088003A1 (zh) * | 2020-10-30 | 2022-05-05 | 华为技术有限公司 | 一种信息传输的方法、轻量化处理的方法以及相关通信装置 |
CN113515760B (zh) * | 2021-05-28 | 2024-03-15 | 平安国际智慧城市科技股份有限公司 | 横向联邦学习方法、装置、计算机设备和存储介质 |
CN113487041B (zh) * | 2021-07-15 | 2024-05-07 | 深圳市与飞科技有限公司 | 横向联邦学习方法、装置及存储介质 |
CN114077755B (zh) * | 2022-01-19 | 2022-05-31 | 南京邮电大学 | 保护隐私的可控轻量化联邦学习方法、系统和检测方法 |
CN114861790B (zh) * | 2022-04-29 | 2023-03-17 | 深圳大学 | 联邦学习压缩通信的优化方法、系统及装置 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10268684B1 (en) * | 2015-09-28 | 2019-04-23 | Amazon Technologies, Inc. | Optimized statistical machine translation system with rapid adaptation capability |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170243084A1 (en) * | 2015-11-06 | 2017-08-24 | The Regents Of The University Of California | Dsp-sift: domain-size pooling for image descriptors for image matching and other applications |
US11682074B2 (en) * | 2018-04-13 | 2023-06-20 | Gds Link Llc | Decision-making system and method based on supervised learning |
-
2020
- 2020-03-06 CN CN202010156092.8A patent/CN111355739B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10268684B1 (en) * | 2015-09-28 | 2019-04-23 | Amazon Technologies, Inc. | Optimized statistical machine translation system with rapid adaptation capability |
Also Published As
Publication number | Publication date |
---|---|
CN111355739A (zh) | 2020-06-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111355739B (zh) | 横向联邦学习的数据传输方法、装置、终端设备及介质 | |
CN110378488B (zh) | 客户端变化的联邦训练方法、装置、训练终端及存储介质 | |
CN104135713B (zh) | 用户信息推荐方法、装置、设备及系统 | |
CN109990790B (zh) | 一种无人机路径规划方法及装置 | |
WO2021121029A1 (zh) | 训练模型的更新方法、系统、智能体、服务器及计算机可读存储介质 | |
CN111582504A (zh) | 联邦建模方法、装置、设备及计算机可读存储介质 | |
CN110493710B (zh) | 轨迹重建方法、装置、计算机设备和存储介质 | |
CN111090688B (zh) | 一种时序数据的平滑处理方法和装置 | |
CN113238867A (zh) | 一种基于网络卸载的联邦学习方法 | |
CN109388662A (zh) | 一种基于共享数据的模型训练方法及装置 | |
CN106455056A (zh) | 定位方法和装置 | |
CN111028346B (zh) | 一种视频对象的重建方法和装置 | |
CN109344294B (zh) | 特征生成方法、装置、电子设备及计算机可读存储介质 | |
CN116489708A (zh) | 面向元宇宙的云边端协同的移动边缘计算任务卸载方法 | |
CN110795235A (zh) | 一种移动web深度学习协作的方法及系统 | |
CN114760308A (zh) | 边缘计算卸载方法及装置 | |
CN103914313B (zh) | 一种paxos实例更新方法、设备及系统 | |
CN109101329B (zh) | 通过多个移动终端采集数据的细粒度任务分配方法及系统 | |
CN111399394A (zh) | 一种通信卫星的操作训练系统、方法及装置 | |
CN113108785B (zh) | 一种面向同构imu的分布式协同互校准定位方法 | |
CN107479891A (zh) | 一种基于mvc模型数据处理系统及方法 | |
CN111327472B (zh) | 用于获取目标网络的方法及装置 | |
CN114528893A (zh) | 机器学习模型训练方法、电子设备及存储介质 | |
CN116050554A (zh) | 一种景区客流量预测方法、装置、计算设备和存储介质 | |
CN113988158A (zh) | 一种基于ftrl和学习率的纵向联邦逻辑回归训练方法及装置 |
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 |