CN114897186A - 联合学习训练方法及装置 - Google Patents
联合学习训练方法及装置 Download PDFInfo
- Publication number
- CN114897186A CN114897186A CN202210601632.8A CN202210601632A CN114897186A CN 114897186 A CN114897186 A CN 114897186A CN 202210601632 A CN202210601632 A CN 202210601632A CN 114897186 A CN114897186 A CN 114897186A
- Authority
- CN
- China
- Prior art keywords
- training
- network
- training data
- data samples
- sample
- 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
Images
Classifications
-
- 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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/32—User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/02—Banking, e.g. interest calculation or account maintenance
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Marketing (AREA)
- Artificial Intelligence (AREA)
- Technology Law (AREA)
- Strategic Management (AREA)
- Computer Hardware Design (AREA)
- Economics (AREA)
- Development Economics (AREA)
- General Business, Economics & Management (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Electrically Operated Instructional Devices (AREA)
Abstract
本公开涉及联合学习技术领域,提供了一种联合学习训练方法及装置。该方法包括:构建参与方的编码网络,以及服务方的解码网络;获取参与方的训练数据样本和服务方的基础数据样本,其中,训练数据样本参与方携带有训练数据样本的标识号,基础数据样本携带有基础数据样本的标识号和标签;根据训练数据样本的标识号,从基础数据样本中,为训练数据样本匹配训练数据样本对应的标签;基于训练数据样本和训练数据样本对应的标签,对解码网络和编码网络进行联合学习训练。
Description
技术领域
本公开涉及联合学习技术领域,尤其涉及一种联合学习训练方法及装置。
背景技术
目前在联合学习中,是通过聚合多个参与方的模型参数,得到联合学习模型。其中,在聚合多个参与方的模型参数之前,需要交互多个参与方的模型参数,模型参数是已经训练好的模型的参数,一旦泄露,会造成不必要的损失。同时,目前的联合学习,在训练之前需要单独对每个参与方的训练数据样本进行标注,这需要很大的工作量,存在效率低的问题。
在实现本公开构思的过程中,发明人发现相关技术中至少存在如下技术问题:联合学习训练中,存在数据安全隐患和模型训练效率低问题。
发明内容
有鉴于此,本公开实施例提供了一种联合学习训练方法、装置、电子设备及计算机可读存储介质,以解决现有技术中,联合学习训练中,存在数据安全隐患和模型训练效率低问题。
本公开实施例的第一方面,提供了一种联合学习训练方法,包括:构建参与方的编码网络,以及服务方的解码网络;获取参与方的训练数据样本和服务方的基础数据样本,其中,训练数据样本参与方携带有训练数据样本的标识号,基础数据样本携带有基础数据样本的标识号和标签;根据训练数据样本的标识号,从基础数据样本中,为训练数据样本匹配训练数据样本对应的标签;基于训练数据样本和训练数据样本对应的标签,对解码网络和编码网络进行联合学习训练。
本公开实施例的第二方面,提供了一种联合学习训练装置,包括:构建模块,被配置为构建参与方的编码网络,以及服务方的解码网络;获取模块,被配置为获取参与方的训练数据样本和服务方的基础数据样本,其中,训练数据样本参与方携带有训练数据样本的标识号,基础数据样本携带有基础数据样本的标识号和标签;匹配模块,被配置为根据训练数据样本的标识号,从基础数据样本中,为训练数据样本匹配训练数据样本对应的标签;训练模块,被配置为基于训练数据样本和训练数据样本对应的标签,对解码网络和编码网络进行联合学习训练。
本公开实施例的第三方面,提供了一种电子设备,包括存储器、处理器以及存储在存储器中并且可在处理器上运行的计算机程序,该处理器执行计算机程序时实现上述方法的步骤。
本公开实施例的第四方面,提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现上述方法的步骤。
本公开实施例与现有技术相比存在的有益效果是:构建参与方的编码网络,以及服务方的解码网络;获取参与方的训练数据样本和服务方的基础数据样本,其中,训练数据样本参与方携带有训练数据样本的标识号,基础数据样本携带有基础数据样本的标识号和标签;根据训练数据样本的标识号,从基础数据样本中,为训练数据样本匹配训练数据样本对应的标签;基于训练数据样本和训练数据样本对应的标签,对解码网络和编码网络进行联合学习训练。采用上述技术手段,可以解决现有技术中,联合学习训练中,存在数据安全隐患和模型训练效率低问题,进而提高数据安全和模型训练的效率。
附图说明
为了更清楚地说明本公开实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1是本公开实施例的一种联合学习的架构示意图;
图2是本公开实施例提供的一种联合学习训练方法的流程示意图;
图3是本公开实施例提供的一种联合学习训练装置的结构示意图;
图4是本公开实施例提供的一种电子设备的结构示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本公开实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本公开。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本公开的描述。
联合学习是指在确保数据安全及用户隐私的前提下,综合利用多种AI(Artificial Intelligence,人工智能)技术,联合多方合作共同挖掘数据价值,催生基于联合建模的新的智能业态和模式。联合学习至少具有以下特点:
(1)参与节点控制自有数据的弱中心化联合训练模式,确保共创智能过程中的数据隐私安全。
(2)在不同应用场景下,利用筛选和/或组合AI算法、隐私保护计算,建立多种模型聚合优化策略,以获取高层次、高质量的模型。
(3)在确保数据安全及用户隐私的前提下,基于多种模型聚合优化策略,获取提升联合学习引擎的效能方法,其中效能方法可以是通过解决包括计算架构并行、大规模跨域网络下的信息交互、智能感知、异常处理机制等,提升联合学习引擎的整体效能。
(4)获取各场景下多方用户的需求,通过互信机制,确定合理评估各联合参与方的真实贡献度,进行分配激励。
基于上述方式,可以建立基于联合学习的AI技术生态,充分发挥行业数据价值,推动垂直领域的场景落地。
下面将结合附图详细说明根据本公开实施例的一种联合学习训练方法和装置。
图1是本公开实施例的一种联合学习的架构示意图。如图1所示,联合学习的架构可以包括服务器(中心节点)101以及参与方102、参与方103和参与方104。
在联合学习过程中,基本模型可以通过服务器101建立,服务器101将该模型发送至与其建立通信连接的参与方102、参与方103和参与方104。基本模型还可以是任一参与方建立后上传至服务器101,服务器101将该模型发送至与其建立通信连接的其他参与方。参与方102、参与方103和参与方104根据下载的基本结构和模型参数构建模型,利用本地数据进行联合学习训练,获得更新的模型参数,并将更新的模型参数加密上传至服务器101。服务器101对参与方102、参与方103和参与方104发送的模型参数进行聚合,获得全局模型参数,并将全局模型参数传回至参与方102、参与方103和参与方104。参与方102、参与方103和参与方104根据接收的全局模型参数对各自的模型进行迭代,直到模型最终收敛,从而实现对模型的训练。在联合学习过程中,参与方102、参与方103和参与方104上传的数据为模型参数,本地数据并不会上传至服务器101,且所有参与方可以共享最终的模型参数,因此可以在保证数据隐私的基础上实现共同建模。需要说明的是,参与方的数量不限于如上的三个,而是可以根据需要进行设置,本公开实施例对此不作限制。
图2是本公开实施例提供的一种联合学习训练方法的流程示意图。图2的联合学习训练方法可以由图1的服务器执行。如图2所示,该联合学习训练方法包括:
S201,构建参与方的编码网络,以及服务方的解码网络;
S202,获取参与方的训练数据样本和服务方的基础数据样本,其中,训练数据样本携带有训练数据样本的标识号,基础数据样本携带有基础数据样本的标识号和标签;
S203,根据训练数据样本的标识号,从基础数据样本中,为训练数据样本匹配训练数据样本对应的标签;
S204,基于训练数据样本和训练数据样本对应的标签,对解码网络和编码网络进行联合学习训练。
上述参与方可以是多个,每个参与方都有各自的编码网络和训练数据样本。
参与方的编码网络和解码网络整体相当于一个基于神经网络模型的自编码器,参与方的编码网络相当于自编码器中的编码器部分,解码网络相当于自编码器中的解编码器部分。所以构建参与方的编码网络,以及服务方的解码网络,可以理解为在参与方和服务方构建一个自编码器。参与方是联合学习训练中参与训练的一方,提供训练数据样本;服务方相当于一个训练中心,可以提供基础数据样本;基础数据样本,可以为一个数据集,包括多个样本,每个样本携带有标识号和标签;参与方的训练数据样本,可以为一个数据集,包括多个样本,每个样本携带有标识号,参与方的训练数据样本可以没有标签。所以可以利用标识号找出基础数据样本和训练数据样本中一样的样本,同时也就给训练数据样本中的该样本匹配到了对应的标签(如果训练数据样本中含有基础数据样本没有的样本,此类样本可以不用匹配对应的标签,也就是训练中不使用)。本公开实施例可以理解为一个系统,该系统可以生成训练数据样本和基础数据样本中每个样本的标识号,一样的样本具有一样的标识号。
比如本公开实施例应用于银行下的人脸识别,一个银行为一个参与方(存在多个银行),一个银行的训练数据样本是该银行的客户的人脸信息,每个样本为一张人脸图片,一个人脸图片携带的标识号,标识号可以是客户的身份证,一张人脸图片对应的标签,可以是该人脸图片对应客户的会员类别等。服务方可以是银联系统,或者人民银行等具有大量数据的一方。
根据本公开实施例提供的技术方案,构建参与方的编码网络,以及服务方的解码网络,其中,所有参与方的编码网络的输出的格式是一样的;获取参与方的训练数据样本和服务方的基础数据样本,其中,参与方的训练数据样本和服务方的基础数据样本均包括多个样本,每个样本均携带有标识号,服务方的基础数据样本中的每个样本还携带有标签;根据参与方的训练数据样本中每个样本携带的标识号,从服务方的基础数据样本中,为参与方的训练数据样本中的每个样本匹配对应的标签;基于参与方的训练数据样本中的每个样本和每个样本对应的标签,对解码网络和参与方的编码网络进行联合学习训练。采用上述技术手段,可以解决现有技术中,联合学习训练中,存在数据安全隐患和模型训练效率低问题,进而提高数据安全和模型训练的效率。
在步骤S204中,基于训练数据样本和训练数据样本对应的标签,对解码网络和编码网络进行联合学习训练,包括:将训练数据样本输入编码网络,输出训练数据样本对应的编码值;基于训练数据样本对应的编码值和标签,通过解码网络,利用梯度下降算法计算训练数据样本对应的梯度;基于训练数据样本对应的梯度,更新解码网络和编码网络的网络参数。
参与方有多个,是基于每个参与方的训练数据样本和训练数据样本对应的标签,对解码网络和编码网络进行联合学习训练,输出每个参与方的训练数据样本对应的编码值。将训练数据样本输入编码网络,输出训练数据样本对应的编码值,就是将训练数据样本中的每个样本输入编码网络,输出训练数据样本中的每个样本对应的编码值。
每个参与方的编码网络和解码网络整体相当于一个基于神经网络模型的自编码器,对解码网络和每个参与方的编码网络进行联合学习训练,可以理解为对该神经网络模型的联合学习训练,不同于现有技术的是,本公开实施例中的多个参与方只用于该神经网络模型的部分网络,同时不需要交互多个参与方对应的网络参数,交互的是梯度,因为梯度相对于网络参数,梯度的隐私成分是更少的,所以可以提高数据安全。
基于训练数据样本对应的梯度,更新解码网络和编码网络的网络参数,包括:基于训练数据样本对应的梯度,利用梯度反向传播算法更新解码网络的网络参数;基于训练数据样本对应的梯度,利用梯度反向传播算法更新编码网络的网络参数。
因为利用梯度反向传播算法更新模型的网络参数属于现有技术,不再赘述。因为解码网络是所有参与方对应的自编码器的共有的解码器部分,所以需要利用所有参与方对应的梯度,更新解码网络的网络参数。实际上更新解码网络的网络参数和每个参与方的编码网络的网络参数,更应该理解为,将解码网络和每个参与方的编码网络作为一个自编码器,是利用每个参与方的训练数据中的每个样本和每个样本对应的标签更新自编码器的网络参数。
在步骤S204中,基于训练数据样本和训练数据样本对应的标签,对解码网络和编码网络进行联合学习训练,包括:确定联合学习训练对应的训练总轮次,其中,训练总轮次用于指示联合学习训练的总次数;循环执行如下步骤进行联合学习训练:将训练数据样本输入编码网络,输出训练数据样本对应的编码值;基于训练数据样本对应的编码值和标签,通过解码网络,利用梯度下降算法计算训练数据样本对应的梯度;基于训练数据样本对应的梯度,更新解码网络和编码网络的网络参数,同时训练轮次加一,其中,训练轮次用于表示当前联合学习训练的次数;当训练轮次等于训练总轮次,结束联合学习训练,当训练轮次小于训练总轮次,继续联合学习训练。
现有技术,往往是通过提前设置的模型的学习率来控制模型训练到第几轮次结束,因为在模型训练到一定的轮次,训练对于模型的提升不大,但是提前设置的模型的学习率有没有达到,只能继续低效率的训练,所以该方法存在效率低的问题。本公开实施例跳过了模型的学习率对于模型训练的桎梏,利用联合学习训练对应的训练轮次来控制模型训练。
比如训练总轮次为10,训练轮次为4,说明当前训练还没有10次,应该继续联合学习训练:将每个参与方的训练数据中的每个样本输入每个参与方的编码网络,输出每个参与方的训练数据中的每个样本对应的编码值……更新解码网络和每个参与方的编码网络的网络参数,同时训练轮次加一;当训练轮次等于训练总轮次,结束联合学习训练,当训练轮次小于训练总轮次,继续联合学习训练。
在步骤S204中,基于训练数据样本和训练数据样本对应的标签,对解码网络和编码网络进行联合学习训练,包括:确定联合学习训练对应的目标模型精度,其中,目标模型精度用于指示通过联合学习训练,解码网络和编码网络最终要达到的模型精度;循环执行如下步骤进行联合学习训练:将训练数据样本输入编码网络,输出训练数据样本对应的编码值;基于训练数据样本对应的编码值和标签,通过解码网络,利用梯度下降算法计算训练数据样本对应的梯度;基于训练数据样本对应的梯度,更新解码网络和编码网络的网络参数,同时计算解码网络和编码网络的当前模型精度,其中,当前模型精度用于表示当前联合学习训练对应的模型精度;在当前模型精度等于或大于目标模型精度时,结束联合学习训练,在当前模型精度小于目标模型精度时,继续联合学习训练。
本公开实施例跳过了模型的学习率对于模型训练的桎梏,利用联合学习训练对应的模型精度来控制模型训练。比如当前模型精度为0.7,目标模型精度为0.96,在当前模型精度小于目标模型精度时,继续联合学习训练:将每个参与方的训练数据中的每个样本输入每个参与方的编码网络,输出每个参与方的训练数据中的每个样本对应的编码值……基于每个参与方对应的梯度,更新解码网络和每个参与方的编码网络的网络参数,同时计算解码网络和每个参与方的编码网络的当前模型精度;在当前模型精度等于或大于目标模型精度时,结束联合学习训练,在当前模型精度小于目标模型精度时,继续联合学习训练。
在执行步骤S204之后,也就是基于训练数据样本和训练数据样本对应的标签,对解码网络和编码网络进行联合学习训练之后,方法还包括:当存在多个参与方时:从多个参与方中确定出目标参与方;利用解码网络和目标参与方的编码网络,为目标参与方提供预测服务。
目标参与方可以是所有参与方中需要预测服务的一方,当然也可以是所有参与方中与需要预测服务的一方非常相近的一方,需要预测服务的一方不属于所有参与方。
利用解码网络和目标参与方的编码网络,为目标参与方提供预测服务,包括:获取预测数据,其中,预测数据包括多个样本;将预测数据中的每个样本输入目标参与方的编码网络,输出预测数据中的每个样本对应的编码值;将预测数据中的每个样本对应的编码值输入解码网络,输出预测数据对应的预测结果。
可选地,无论是在预测时,将预测数据中的每个样本输入目标参与方的编码网络之前,还是在训练时,将每个参与方的训练数据中的每个样本输入每个参与方的编码网络之前,都可以先提取每个样本的样本特征,再将每个样本的样本特征输入目标参与方的编码网络或者每个参与方的编码网络。样本特征可以是常用的图片特征,比如方向梯度直方图特征。
在当前模型精度等于或大于目标模型精度时在当前模型精度等于或大于目标模型精度时在当前模型精度小于目标模型精度时在当前模型精度小于目标模型精度时在当前模型精度小于目标模型精度时在当前模型精度小于目标模型精度时在当前模型精度等于或大于目标模型精度时在当前模型精度等于或大于目标模型精度时在当前模型精度小于目标模型精度时在当前模型精度小于目标模型精度时上述所有可选技术方案,可以采用任意结合形成本申请的可选实施例,在此不再一一赘述。
下述为本公开装置实施例,可以用于执行本公开方法实施例。对于本公开装置实施例中未披露的细节,请参照本公开方法实施例。
图3是本公开实施例提供的一种联合学习训练装置的示意图。如图3所示,该联合学习训练装置包括:
构建模块301,被配置为构建参与方的编码网络,以及服务方的解码网络;
获取模块302,被配置为获取参与方的训练数据样本和服务方的基础数据样本,其中,训练数据样本参与方携带有训练数据样本的标识号,基础数据样本携带有基础数据样本的标识号和标签;
匹配模块303,被配置为根据训练数据样本的标识号,从基础数据样本中,为训练数据样本匹配训练数据样本对应的标签;
训练模块304,被配置为基于训练数据样本和训练数据样本对应的标签,对解码网络和编码网络进行联合学习训练。
上述参与方可以是多个,每个参与方都有各自的编码网络和训练数据样本。
参与方的编码网络和解码网络整体相当于一个基于神经网络模型的自编码器,参与方的编码网络相当于自编码器中的编码器部分,解码网络相当于自编码器中的解编码器部分。所以构建参与方的编码网络,以及服务方的解码网络,可以理解为在参与方和服务方构建一个自编码器。参与方是联合学习训练中参与训练的一方,提供训练数据样本;服务方相当于一个训练中心,可以提供基础数据样本;基础数据样本,可以为一个数据集,包括多个样本,每个样本携带有标识号和标签;参与方的训练数据样本,可以为一个数据集,包括多个样本,每个样本携带有标识号,参与方的训练数据样本可以没有标签。所以可以利用标识号找出基础数据样本和训练数据样本中一样的样本,同时也就给训练数据样本中的该样本匹配到了对应的标签(如果训练数据样本中含有基础数据样本没有的样本,此类样本可以不用匹配对应的标签,也就是训练中不使用)。本公开实施例可以理解为一个系统,该系统可以生成训练数据样本和基础数据样本中每个样本的标识号,一样的样本具有一样的标识号。
比如本公开实施例应用于银行下的人脸识别,一个银行为一个参与方(存在多个银行),一个银行的训练数据样本是该银行的客户的人脸信息,每个样本为一张人脸图片,一个人脸图片携带的标识号,标识号可以是客户的身份证,一张人脸图片对应的标签,可以是该人脸图片对应客户的会员类别等。服务方可以是银联系统,或者人民银行等具有大量数据的一方。
根据本公开实施例提供的技术方案,构建参与方的编码网络,以及服务方的解码网络,其中,所有参与方的编码网络的输出的格式是一样的;获取参与方的训练数据样本和服务方的基础数据样本,其中,参与方的训练数据样本和服务方的基础数据样本均包括多个样本,每个样本均携带有标识号,服务方的基础数据样本中的每个样本还携带有标签;根据参与方的训练数据样本中每个样本携带的标识号,从服务方的基础数据样本中,为参与方的训练数据样本中的每个样本匹配对应的标签;基于参与方的训练数据样本中的每个样本和每个样本对应的标签,对解码网络和参与方的编码网络进行联合学习训练。采用上述技术手段,可以解决现有技术中,联合学习训练中,存在数据安全隐患和模型训练效率低问题,进而提高数据安全和模型训练的效率。
可选地,训练模块304还被配置为将训练数据样本输入编码网络,输出训练数据样本对应的编码值;基于训练数据样本对应的编码值和标签,通过解码网络,利用梯度下降算法计算训练数据样本对应的梯度;基于训练数据样本对应的梯度,更新解码网络和编码网络的网络参数。
参与方有多个,是基于每个参与方的训练数据样本和训练数据样本对应的标签,对解码网络和编码网络进行联合学习训练,输出每个参与方的训练数据样本对应的编码值。将训练数据样本输入编码网络,输出训练数据样本对应的编码值,就是将训练数据样本中的每个样本输入编码网络,输出训练数据样本中的每个样本对应的编码值。
每个参与方的编码网络和解码网络整体相当于一个基于神经网络模型的自编码器,对解码网络和每个参与方的编码网络进行联合学习训练,可以理解为对该神经网络模型的联合学习训练,不同于现有技术的是,本公开实施例中的多个参与方只用于该神经网络模型的部分网络,同时不需要交互多个参与方对应的网络参数,交互的是梯度,因为梯度相对于网络参数,梯度的隐私成分是更少的,所以可以提高数据安全。
可选地,训练模块304还被配置为基于训练数据样本对应的梯度,利用梯度反向传播算法更新解码网络的网络参数;基于训练数据样本对应的梯度,利用梯度反向传播算法更新编码网络的网络参数。
因为利用梯度反向传播算法更新模型的网络参数属于现有技术,不再赘述。因为解码网络是所有参与方对应的自编码器的共有的解码器部分,所以需要利用所有参与方对应的梯度,更新解码网络的网络参数。实际上更新解码网络的网络参数和每个参与方的编码网络的网络参数,更应该理解为,将解码网络和每个参与方的编码网络作为一个自编码器,是利用每个参与方的训练数据中的每个样本和每个样本对应的标签更新自编码器的网络参数。
可选地,训练模块304还被配置为确定联合学习训练对应的训练总轮次,其中,训练总轮次用于指示联合学习训练的总次数;循环执行如下步骤进行联合学习训练:将训练数据样本输入编码网络,输出训练数据样本对应的编码值;基于训练数据样本对应的编码值和标签,通过解码网络,利用梯度下降算法计算训练数据样本对应的梯度;基于训练数据样本对应的梯度,更新解码网络和编码网络的网络参数,同时训练轮次加一,其中,训练轮次用于表示当前联合学习训练的次数;当训练轮次等于训练总轮次,结束联合学习训练,当训练轮次小于训练总轮次,继续联合学习训练。
现有技术,往往是通过提前设置的模型的学习率来控制模型训练到第几轮次结束,因为在模型训练到一定的轮次,训练对于模型的提升不大,但是提前设置的模型的学习率有没有达到,只能继续低效率的训练,所以该方法存在效率低的问题。本公开实施例跳过了模型的学习率对于模型训练的桎梏,利用联合学习训练对应的训练轮次来控制模型训练。
比如训练总轮次为10,训练轮次为4,说明当前训练还没有10次,应该继续联合学习训练:将每个参与方的训练数据中的每个样本输入每个参与方的编码网络,输出每个参与方的训练数据中的每个样本对应的编码值……更新解码网络和每个参与方的编码网络的网络参数,同时训练轮次加一;当训练轮次等于训练总轮次,结束联合学习训练,当训练轮次小于训练总轮次,继续联合学习训练。
可选地,训练模块304还被配置为确定联合学习训练对应的目标模型精度,其中,目标模型精度用于指示通过联合学习训练,解码网络和编码网络最终要达到的模型精度;循环执行如下步骤进行联合学习训练:将训练数据样本输入编码网络,输出训练数据样本对应的编码值;基于训练数据样本对应的编码值和标签,通过解码网络,利用梯度下降算法计算训练数据样本对应的梯度;基于训练数据样本对应的梯度,更新解码网络和编码网络的网络参数,同时计算解码网络和编码网络的当前模型精度,其中,当前模型精度用于表示当前联合学习训练对应的模型精度;在当前模型精度等于或大于目标模型精度时,结束联合学习训练,在当前模型精度小于目标模型精度时,继续联合学习训练。
本公开实施例跳过了模型的学习率对于模型训练的桎梏,利用联合学习训练对应的模型精度来控制模型训练。比如当前模型精度为0.7,目标模型精度为0.96,在当前模型精度小于目标模型精度时,继续联合学习训练:将每个参与方的训练数据中的每个样本输入每个参与方的编码网络,输出每个参与方的训练数据中的每个样本对应的编码值……基于每个参与方对应的梯度,更新解码网络和每个参与方的编码网络的网络参数,同时计算解码网络和每个参与方的编码网络的当前模型精度;在当前模型精度等于或大于目标模型精度时,结束联合学习训练,在当前模型精度小于目标模型精度时,继续联合学习训练。
可选地,训练模块304还被配置为当存在多个参与方时:从多个参与方中确定出目标参与方;利用解码网络和目标参与方的编码网络,为目标参与方提供预测服务。
目标参与方可以是所有参与方中需要预测服务的一方,当然也可以是所有参与方中与需要预测服务的一方非常相近的一方,需要预测服务的一方不属于所有参与方。
可选地,训练模块304还被配置为获取预测数据,其中,预测数据包括多个样本;将预测数据中的每个样本输入目标参与方的编码网络,输出预测数据中的每个样本对应的编码值;将预测数据中的每个样本对应的编码值输入解码网络,输出预测数据对应的预测结果。
可选地,无论是在预测时,将预测数据中的每个样本输入目标参与方的编码网络之前,还是在训练时,将每个参与方的训练数据中的每个样本输入每个参与方的编码网络之前,都可以先提取每个样本的样本特征,再将每个样本的样本特征输入目标参与方的编码网络或者每个参与方的编码网络。样本特征可以是常用的图片特征,比如方向梯度直方图特征。
在当前模型精度等于或大于目标模型精度时在当前模型精度等于或大于目标模型精度时在当前模型精度小于目标模型精度时在当前模型精度小于目标模型精度时在当前模型精度小于目标模型精度时在当前模型精度小于目标模型精度时在当前模型精度等于或大于目标模型精度时在当前模型精度等于或大于目标模型精度时在当前模型精度小于目标模型精度时在当前模型精度小于目标模型精度时应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本公开实施例的实施过程构成任何限定。
图4是本公开实施例提供的电子设备4的示意图。如图4所示,该实施例的电子设备4包括:处理器401、存储器402以及存储在该存储器402中并且可在处理器401上运行的计算机程序403。处理器401执行计算机程序403时实现上述各个方法实施例中的步骤。或者,处理器401执行计算机程序403时实现上述各装置实施例中各模块/单元的功能。
示例性地,计算机程序403可以被分割成一个或多个模块/单元,一个或多个模块/单元被存储在存储器402中,并由处理器401执行,以完成本公开。一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述计算机程序403在电子设备4中的执行过程。
电子设备4可以是桌上型计算机、笔记本、掌上电脑及云端服务器等电子设备。电子设备4可以包括但不仅限于处理器401和存储器402。本领域技术人员可以理解,图4仅仅是电子设备4的示例,并不构成对电子设备4的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如,电子设备还可以包括输入输出设备、网络接入设备、总线等。
处理器401可以是中央处理单元(Central Processing Unit,CPU),也可以是其它通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器402可以是电子设备4的内部存储单元,例如,电子设备4的硬盘或内存。存储器402也可以是电子设备4的外部存储设备,例如,电子设备4上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器402还可以既包括电子设备4的内部存储单元也包括外部存储设备。存储器402用于存储计算机程序以及电子设备所需的其它程序和数据。存储器402还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本公开的范围。
在本公开所提供的实施例中,应该理解到,所揭露的装置/电子设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/电子设备实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本公开实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,计算机程序可以存储在计算机可读存储介质中,该计算机程序在被处理器执行时,可以实现上述各个方法实施例的步骤。计算机程序可以包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读介质可以包括:能够携带计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、电载波信号、电信信号以及软件分发介质等。需要说明的是,计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如,在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
以上实施例仅用以说明本公开的技术方案,而非对其限制;尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本公开各实施例技术方案的精神和范围,均应包含在本公开的保护范围之内。
Claims (10)
1.一种联合学习训练方法,其特征在于,包括:
构建参与方的编码网络,以及服务方的解码网络;
获取所述参与方的训练数据样本和所述服务方的基础数据样本,其中,所述训练数据样本携带有所述训练数据样本的标识号,所述基础数据样本携带有所述基础数据样本的标识号和标签;
根据所述训练数据样本的标识号,从所述基础数据样本中,为所述训练数据样本匹配所述训练数据样本对应的标签;
基于所述训练数据样本和所述训练数据样本对应的标签,对所述解码网络和所述编码网络进行联合学习训练。
2.根据权利要求1所述的方法,其特征在于,所述基于所述训练数据样本和所述训练数据样本对应的标签,对所述解码网络和所述编码网络进行联合学习训练,包括:
将所述训练数据样本输入所述编码网络,输出所述训练数据样本对应的编码值;
基于所述训练数据样本对应的编码值和标签,通过所述解码网络,利用梯度下降算法计算所述训练数据样本对应的梯度;
基于所述训练数据样本对应的梯度,更新所述解码网络和所述编码网络的网络参数。
3.根据权利要求2所述的方法,其特征在于,所述基于所述训练数据样本对应的梯度,更新所述解码网络和所述编码网络的网络参数,包括:
基于所述训练数据样本对应的梯度,利用梯度反向传播算法更新所述解码网络的网络参数;
基于所述训练数据样本对应的梯度,利用所述梯度反向传播算法更新所述编码网络的网络参数。
4.根据权利要求1所述的方法,其特征在于,所述基于所述训练数据样本和所述训练数据样本对应的标签,对所述解码网络和所述编码网络进行联合学习训练,包括:
确定所述联合学习训练对应的训练总轮次,其中,所述训练总轮次用于指示所述联合学习训练的总次数;
循环执行如下步骤进行所述联合学习训练:
将所述训练数据样本输入所述编码网络,输出所述训练数据样本对应的编码值;
基于所述训练数据样本对应的编码值和标签,通过所述解码网络,利用梯度下降算法计算所述训练数据样本对应的梯度;
基于所述训练数据样本对应的梯度,更新所述解码网络和所述编码网络的网络参数,同时训练轮次加一,其中,训练轮次用于表示当前所述联合学习训练的次数;
当所述训练轮次等于所述训练总轮次,结束所述联合学习训练,当所述训练轮次小于所述训练总轮次,继续所述联合学习训练。
5.根据权利要求1所述的方法,其特征在于,所述基于所述训练数据样本和所述训练数据样本对应的标签,对所述解码网络和所述编码网络进行联合学习训练,包括:
确定所述联合学习训练对应的目标模型精度,其中,所述目标模型精度用于指示通过所述联合学习训练,所述解码网络和所述编码网络最终要达到的模型精度;
循环执行如下步骤进行所述联合学习训练:
将所述训练数据样本输入所述编码网络,输出所述训练数据样本对应的编码值;
基于所述训练数据样本对应的编码值和标签,通过所述解码网络,利用梯度下降算法计算所述训练数据样本对应的梯度;
基于所述训练数据样本对应的梯度,更新所述解码网络和所述编码网络的网络参数,同时计算所述解码网络和所述编码网络的当前模型精度,其中,当前模型精度用于表示当前所述联合学习训练对应的模型精度;
当所述当前模型精度等于或大于所述目标模型精度,结束所述联合学习训练,当所述当前模型精度小于所述目标模型精度,继续所述联合学习训练。
6.根据权利要求1所述的方法,其特征在于,所述基于所述训练数据样本和所述训练数据样本对应的标签,对所述解码网络和所述编码网络进行联合学习训练之后,所述方法还包括:
当存在多个所述参与方时:
从所述多个所述参与方中确定出目标参与方;
利用所述解码网络和所述目标参与方的编码网络,为所述目标参与方提供预测服务。
7.根据权利要求6所述的方法,其特征在于,所述利用所述解码网络和所述目标参与方的编码网络,为所述目标参与方提供预测服务,包括:
获取预测数据,其中,所述预测数据包括多个样本;
将所述预测数据中的每个样本输入所述目标参与方的编码网络,输出所述预测数据中的每个样本对应的编码值;
将所述预测数据中的每个样本对应的编码值输入所述解码网络,输出所述预测数据对应的预测结果。
8.一种联合学习训练装置,其特征在于,包括:
构建模块,被配置为构建参与方的编码网络,以及服务方的解码网络;
获取模块,被配置为获取所述参与方的训练数据样本和所述服务方的基础数据样本,其中,所述训练数据样本参与方携带有所述训练数据样本的标识号,所述基础数据样本携带有所述基础数据样本的标识号和标签;
匹配模块,被配置为根据所述训练数据样本的标识号,从所述基础数据样本中,为所述训练数据样本匹配所述训练数据样本对应的标签;
训练模块,被配置为基于所述训练数据样本和所述训练数据样本对应的标签,对所述解码网络和所述编码网络进行联合学习训练。
9.一种电子设备,包括存储器、处理器以及存储在所述存储器中并且可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210601632.8A CN114897186A (zh) | 2022-05-30 | 2022-05-30 | 联合学习训练方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210601632.8A CN114897186A (zh) | 2022-05-30 | 2022-05-30 | 联合学习训练方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114897186A true CN114897186A (zh) | 2022-08-12 |
Family
ID=82726245
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210601632.8A Pending CN114897186A (zh) | 2022-05-30 | 2022-05-30 | 联合学习训练方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114897186A (zh) |
-
2022
- 2022-05-30 CN CN202210601632.8A patent/CN114897186A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110084377B (zh) | 用于构建决策树的方法和装置 | |
CN113159327B (zh) | 基于联邦学习系统的模型训练方法、装置、电子设备 | |
CN111860865B (zh) | 模型构建和分析的方法、装置、电子设备和介质 | |
CN113988310A (zh) | 深度学习模型选择方法、装置、计算机设备和介质 | |
CN113987941A (zh) | 时间序列预测方法、装置、计算机设备和可读存储介质 | |
CN112307331A (zh) | 一种基于区块链高校毕业生智能招聘信息推送方法、系统及终端设备 | |
CN114547658A (zh) | 数据处理方法、装置、设备及计算机可读存储介质 | |
CN114154392A (zh) | 基于区块链和联邦学习的模型共建方法、装置及设备 | |
CN112598132A (zh) | 模型训练方法及装置、存储介质、电子装置 | |
CN116402366A (zh) | 基于联合学习的数据贡献评价方法及装置 | |
CN114897186A (zh) | 联合学习训练方法及装置 | |
CN117033997A (zh) | 数据切分方法、装置、电子设备和介质 | |
CN116340959A (zh) | 一种面向断点隐私保护的方法、装置、设备及介质 | |
CN114154415A (zh) | 设备寿命的预测方法及装置 | |
CN116384461A (zh) | 基于联合学习的模型优化训练方法及装置 | |
CN113887495A (zh) | 基于迁移学习的视频标注方法及装置 | |
CN116069767A (zh) | 设备数据清洗方法、装置、计算机设备及介质 | |
CN116050557A (zh) | 电力负荷预测方法、装置、计算机设备和介质 | |
CN114154714A (zh) | 时序数据预测方法、装置、计算机设备及介质 | |
CN115564055A (zh) | 异步联合学习训练方法、装置、计算机设备及存储介质 | |
CN116484707A (zh) | 联合学习模型的确定方法及装置 | |
CN117313831A (zh) | 基于模型蒸馏的联合学习训练方法及装置 | |
CN114897185A (zh) | 基于类别异构数据的联合学习训练方法及装置 | |
CN116070708A (zh) | 基于联合学习的模型训练方法及装置 | |
CN114925744B (zh) | 联合训练的方法及装置 |
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 |