CN114418095A - 联邦神经网络的训练方法、装置及电子设备 - Google Patents

联邦神经网络的训练方法、装置及电子设备 Download PDF

Info

Publication number
CN114418095A
CN114418095A CN202210071149.3A CN202210071149A CN114418095A CN 114418095 A CN114418095 A CN 114418095A CN 202210071149 A CN202210071149 A CN 202210071149A CN 114418095 A CN114418095 A CN 114418095A
Authority
CN
China
Prior art keywords
covariance matrix
noise data
data
reverse partial
distribution
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
Application number
CN202210071149.3A
Other languages
English (en)
Inventor
符芳诚
蒋杰
刘煜宏
陈鹏
陶阳宇
薛焕然
崔斌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Peking University
Tencent Technology Shenzhen Co Ltd
Original Assignee
Peking University
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Peking University, Tencent Technology Shenzhen Co Ltd filed Critical Peking University
Priority to CN202210071149.3A priority Critical patent/CN114418095A/zh
Publication of CN114418095A publication Critical patent/CN114418095A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Molecular Biology (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • Biomedical Technology (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Complex Calculations (AREA)

Abstract

本申请实施例提供了一种联邦神经网络的训练方法、装置、电子设备及计算机可读存储介质,涉及人工智能领域。该方法包括:确定顶层模型输出的批量的第一参与方数据的反向偏导,根据正样本和负样本的反向偏导的分布情况以及扰动程度确定噪声数据的分布范围;针对每个反向偏导从分布范围中随机采样噪声数据,对反向偏导添加噪声数据,获得扰动后的反向偏导;将扰动后的反向偏导输入底层模型,以使得底层模型根据扰动后的反向偏导更新底层模型的参数。本申请实施例不需要像现有技术进行迭代或长时间的复杂计算,相对于相关技术效率更高,当效率提高后,可提供更低的最大可接受距离指标,从而提高对标签的保护能力。

Description

联邦神经网络的训练方法、装置及电子设备
技术领域
本申请涉及人工智能技术领域,具体而言,本申请涉及一种联邦神经网络的训练方法、装置及电子设备。
背景技术
联邦学习(FL,Federated Learning)可以在不需要数据出域的情况下利用多方数据源训练深度学习模型(即人工神经网络模型ANN),以及提供模型预测(modelprediction)服务。联邦学习在保证用户隐私和数据安全的前提下,充分利用多方数据合作来提升深度学习模型的性能。
目前已有的纵向联邦神经网络训练方法,要么存在反向偏导(Backwardderivatives)泄漏标签信息的风险,要么为了保护标签信息而导致效率低下。
发明内容
本申请实施例提供了一种联邦神经网络的训练方法、装置、电子设备、计算机可读存储介质及计算机程序产品,可以解决现有技术的上述问题。技术方案如下:
根据本申请实施例的一个方面,提供了一种联邦神经网络模型至少包括第一参与方的底层模型和第二参与方的顶层模型,训练方法包括:
在反向传播过程中,确定顶层模型输出的批量的第一参与方数据的反向偏导;
根据第二参与方针对第一参与方数据设置的标签信息,确定第一参与方数据中的正样本和负样本,并根据正样本和负样本的反向偏导的分布情况以及预设的扰动程度确定噪声数据的分布范围;
针对每个反向偏导从分布范围中随机采样噪声数据,对反向偏导添加噪声数据,获得扰动后的反向偏导;
将扰动后的反向偏导输入底层模型,以使得底层模型根据扰动后的反向偏导更新底层模型的参数。
作为一种可选的实施例,根据正样本和负样本的反向偏导的分布情况以及预设的扰动程度确定噪声数据的分布范围,包括:确定第一期望以及第二期望间的差异;
根据差异以及预设的扰动程度,获得第一参考方数据的反向偏导扰动后的协方差矩阵;
根据扰动后的协方差矩阵、第一协方差矩阵和第二协方差矩阵,获得噪声数据分布的协方差矩阵;
根据噪声数据分布的协方差矩阵以及预设的第三期望进行建模,获得噪声数据的分布范围;
其中,第一期望和第一协方差矩阵分别为根据正样本的反向偏导建模的第一多元高斯分布的期望和协方差矩阵,第二期望和第二协方差矩阵分别为根据负样本的反向偏导建模的第二多元高斯分布的期望和协方差矩阵。
作为一种可选的实施例,差异包括第一期望和第二期望在底层模型的各隐层维度的子差异;
根据差异以及预先确定的扰动程度,获得扰动后的协方差矩阵,包括:
对差异中的每个子差异取平方后求和,根据求和后的结果、单位矩阵以及扰动程度,获得扰动后的协方差矩阵。
作为一种可选的实施例,根据求和后的结果、单位矩阵以及扰动程度,获得扰动后的协方差矩阵,包括:
计算求和后的结果与所处扰动程度间的商值,将商值与单位矩阵的乘积,作为扰动后的协方差矩阵。
作为一种可选的实施例,根据扰动后的协方差矩阵、第一多元高斯分布的第一协方差矩阵和第二多元高斯分布的第二协方差矩阵,获得噪声数据分布的协方差矩阵,包括:
分别计算扰动后的协方差矩阵与第一协方差矩阵和第二协方差矩阵间的差值,获得针对正样本的噪声数据分布的第三协方差矩阵和针对负样本的噪声数据分布的第四协方差矩阵。
作为一种可选的实施例,根据噪声数据分布的协方差矩阵以及预设的期望进行建模,获得噪声数据的分布范围,包括:
根据第三协方差矩阵和预设期望建模,获得针对正样本的噪声数据的第一分布范围;
根据第四协方差矩阵和预设期望建模,获得针对负样本的噪声数据的第二分布范围。
作为一种可选的实施例,对反向偏导添加噪声数据,获得扰动后的反向偏导,包括:
从第一分布范围随机采样第一噪声数据,从第二分布范围随机采样第二噪声数据;
对第一噪声数据和第二噪声数据进行加权求和,获得扰动数据;
对反向偏导添加扰动数据,获得扰动后的反向偏导。
作为一种可选的实施例,对第一噪声数据和第二噪声数据进行加权求和,包括:
若反向偏导对应的第一参与方数据为正样本,则设置第一噪声数据对应的权重为第一数值,第二噪声数据对应的权重为第二数值;
若反向偏导对应的第一参与方数据为负样本,则设置第一噪声数据对应的权重为第二数值,第二噪声数据对应的权重为第一数值;
其中,第一数值大于第二数值。
作为一种可选的实施例,第一期望和第二期望均为维度为d的向量;第一协方差矩阵和第二协方差矩阵均为d×d的对角矩阵;其中,d为底层模型的隐层维度。
根据本申请实施例的另一个方面,提供了一种联邦神经网络的训练装置,联邦神经网络模型至少包括第一参与方的底层模型和第二参与方的顶层模型,该装置包括:
数据获取模块,用于确定顶层模型输出的批量的第一参与方数据的反向偏导;
噪声范围确定模块,用于根据第二参与方针对第一参与方数据设置的标签信息,确定第一参与方数据中的正样本和负样本,并根据正样本和负样本的反向偏导的分布情况以及预设的扰动程度确定噪声数据的分布范围;
噪声添加模块,用于针对每个反向偏导从分布范围中随机采样噪声数据,对反向偏导添加噪声数据,获得扰动后的反向偏导;
参数更新模块,用于将扰动后的反向偏导输入底层模型,以使得底层模型根据扰动后的反向偏导更新底层模型的参数;
作为一种可选的实施例,噪声范围确定模块包括:
差异计算子模块,用于确定第一期望以及第二期望间的差异;
扰动后协方差子模块,用于根据差异以及预先确定的扰动程度,获得批量的第一参考方数据的反向偏导扰动后的协方差矩阵;
噪声协方差子模块,用于根据扰动后的协方差矩阵、第一协方差矩阵和第二协方差矩阵,获得噪声数据分布的协方差矩阵;
扰动分布子模块,用于根据噪声数据分布的协方差矩阵以及预设的第三期望进行建模,获得噪声数据的分布范围;
其中,第一期望和第一协方差矩阵分别为根据正样本的反向偏导建模的第一多元高斯分布的期望和协方差矩阵,第二期望和第二协方差矩阵分别为根据负样本的反向偏导建模的第二多元高斯分布的期望和协方差矩阵。
作为一种可选的实施例,差异包括第一期望和第二期望在底层模型的各隐层维度的子差异;
扰动后协方差子模块,具体用于对差异中的每个子差异取平方后求和,根据求和后的结果、单位矩阵以及扰动程度,获得扰动后的协方差矩阵。
作为一种可选的实施例,扰动后协方差子模块具体用于:计算求和后的结果与所处扰动程度间的商值,将商值与单位矩阵的乘积,作为扰动后的协方差矩阵。
作为一种可选的实施例,噪声协方差子模块具体用于:分别计算扰动后的协方差矩阵与第一协方差矩阵和第二协方差矩阵间的差值,获得针对正样本的噪声数据分布的第三协方差矩阵和针对负样本的噪声数据分布的第四协方差矩阵。
作为一种可选的实施例,扰动分布子模块包括:
正样本噪声分布单元,用于根据第三协方差矩阵和预设期望建模,获得针对正样本的噪声数据的第一分布范围;
负样本噪声分布单元,用于根据第四协方差矩阵和预设期望建模,获得针对负样本的噪声数据的第二分布范围。
作为一种可选的实施例,噪声添加模块包括:
噪声数据采样子模块,用于从第一分布范围随机采样第一噪声数据,从第二分布范围随机采样第二噪声数据;
加权子模块,用于对第一噪声数据和第二噪声数据进行加权求和,获得扰动数据;
扰动添加子模块,用于对反向偏导添加扰动数据,获得扰动后的反向偏导。
作为一种可选的实施例,加权子模块具体用于:
若反向偏导对应的第一参与方数据为正样本,则设置第一噪声数据对应的权重为第一数值,第二噪声数据对应的权重为第二数值;
若反向偏导对应的第一参与方数据为负样本,则设置第一噪声数据对应的权重为第二数值,第二噪声数据对应的权重为第一数值;
其中,第一数值大于第二数值。
作为一种可选的实施例,第一期望和第二期望均为维度为d的向量;第一协方差矩阵和第二协方差矩阵均为d×d的对角矩阵;其中,d为底层模型的隐层维度。
根据本申请实施例的另一个方面,提供了一种电子设备,该电子设备包括存储器、处理器及存储在存储器上的计算机程序,处理器执行计算机程序以实现第一方面联邦神经网络的训练方法的步骤
根据本申请实施例的再一个方面,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现第一方面联邦神经网络的训练方法的步骤。
根据本申请实施例的一个方面,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现第一方面联邦神经网络的训练方法的步骤。
本申请实施例提供的技术方案带来的有益效果是:
在反向传播过程中,通过确定顶层模型输出的第一参与方数据的反向偏导,根据第二参与方针对第一参与方数据设置的标签信息,在确定小批量的正负样本后,可以快速根据所述正样本和负样本的反向偏导的分布情况以及预设的扰动程度确定噪声数据的分布范围,每次对反向偏导增加扰动时,可以从分布范围内随机取样获得噪声数据进行加扰,不需要像现有技术进行迭代或长时间的复杂计算,相对于相关技术效率更高。进一步的,当效率提高后,可以提供更低的最大可接受距离指标,从而提高对标签的保护能力。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对本申请实施例描述中所需要使用的附图作简单地介绍。
图1为相关技术中纵向联邦神经网络训练的流程示意图;
图2为本申请实施例提供的联邦神经网络模型的训练系统的架构示意图;
图3为本申请实施例提供的联邦神经网络的训练方法的流程示意图;
图4为本申请实施例提供的一种确定噪声数据的分布范围的流程示意图;
图5为本申请实施例提供的一种对正、负样本的反向偏导建模的多元高斯分布的示意图;
图6为本申请实施例提供的一种对正、负样本的反向偏导添加扰动前后的多元高斯分布的示意图;
图7为本申请实施例提供的一种获得扰动数据的流程示意图;
图8为本申请另一个实施例提供的联邦神经网络的训练方法的流程示意图;
图9为本申请实施例提供的一种联邦神经网络的训练装置的结构示意图;
图10为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面结合本申请中的附图描述本申请的实施例。应理解,下面结合附图所阐述的实施方式,是用于解释本申请实施例的技术方案的示例性描述,对本申请实施例的技术方案不构成限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”和“该”也可包括复数形式。应该进一步理解的是,本申请实施例所使用的术语“包括”以及“包含”是指相应特征可以实现为所呈现的特征、信息、数据、步骤、操作、元件和/或组件,但不排除实现为本技术领域所支持其他特征、信息、数据、步骤、操作、元件、组件和/或它们的组合等。应该理解,当我们称一个元件被“连接”或“耦接”到另一元件时,该一个元件可以直接连接或耦接到另一元件,也可以指该一个元件和另一元件通过中间元件建立连接关系。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的术语“和/或”指示该术语所限定的项目中的至少一个,例如“A和/或B”可以实现为“A”,或者实现为“B”,或者实现为“A和B”。
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
首先对本申请涉及的几个名词进行介绍和解释:
Forward Activations,前向激活,即前向传播计算的中间结果。
Backward Derivatives,反向偏导,即损失函数对于前向激活的梯度。
联邦学习与普通机器学习任务的核心区别之一在于训练参与方从一方变为了两方甚至多方。联邦学习通过多方一起参与同一个模型训练任务,在数据不出库和保护数据隐私的前提下,完成模型训练任务,打破“数据孤岛”。因此一个核心问题就在于如何协调两方或者多方一起完成一个模型训练任务的同时,保护双方的数据安全,不让任何一方得知另外一方的数据。然而,对于机器学习中最常见的二分类任务,目前已有的纵向联邦神经网络训练方法,要么存在反向偏导(Backward derivatives)泄漏标签信息的风险,要么为了保护标签信息而导致效率低下。
请参见图1,其示例性地示出了相关技术中纵向联邦神经网络训练的流程示意图,如图所示,在前向传播(Forward propagation)中,参与方运行流程如下:
各参与方将己方的特征数据作为输入,进行己方的底层模型(Bottom model)的前向传播计算,得到前向激活(Forward activations),即ZA和ZB
参与方A将己方的前向激活,即ZA,发送至参与方B;
参与方B将接收到的前向激活ZA,以及己方的前向激活ZB,作为输入,进行顶层模型(Top model)的前向传播计算,得到模型预测值y’;
对于模型训练,参与方B需要使用预测值与真实标签,根据损失函数(如Logistic损失函数)计算模型损失。
为了迭代训练模型,需要执行反向传播(Backward propagation)进行模型梯度的计算以及模型更新,具体操作如下:
参与方B根据模型损失,计算顶层模型的反向传播计算,计算出顶层模型的梯度,以及ZA和ZB对应的反向偏导(Backward derivatives),即
Figure BDA0003482232080000091
Figure BDA0003482232080000092
参与方B将
Figure BDA0003482232080000093
发送至参与方A;
各参与方根据己方的反向偏导,对己方的底层模型(Bottom model)的反向传播计算,得到底层模型的梯度;
各参与方根据模型梯度(包括底层与顶层的模型梯度),更新模型。
由于参与方A的反向偏导是
Figure BDA0003482232080000094
是通过反向传播计算得到的,已有研究表明,对于二分类任务,
Figure BDA0003482232080000095
中隐含了标签的信息,即,参与方A可以通过
Figure BDA0003482232080000096
推到出部分或全部训练样本的标签。为了解决这个问题,需要让参与方B在发送
Figure BDA0003482232080000097
之前,对
Figure BDA0003482232080000098
添加噪声进行扰动得到
Figure BDA0003482232080000099
然后,参与方B将
Figure BDA00034822320800000910
发送至参与方A(
Figure BDA00034822320800000911
将不会被发送至参与方A),参与方A使用
Figure BDA00034822320800000912
进行底层模型的反向传播计算。然而,如何进行扰动是一个关键的问题,一个好的扰动算法应当满足两个条件:
(1)参与方A无法从
Figure BDA00034822320800000913
中反推出标签信息;
(2)扰动对训练得到的模型精度影响较小。
相关技术提供了一种迭代式的扰动算法,称为Marvell。该工作首先定义了一种距离指标,即KL散度之和(sumKL),该距离指标近似地描述了参与方A可以从
Figure BDA00034822320800000914
中反推出标签信息的概率,定义了一个数学优化问题:给定扰动的额度(budget),在该程度下进行扰动后,计算KL散度之和(sumKL)可以达到的最小值。
Marvell算法的伪代码可表示为:
Procedure(初始扰动额度init_budget,最大可容忍的指标max_sumKL):
|budget=int_budget
|计算在当前budget下,可达到的最小sumKL;
||whilesumKL>max_sumKL
||增加在当前budget下,可达到的最小sumKL;
|return在当前budget下达到最小sumKL时所使用的扰动。
如上方的伪代码所示,Marvell需提供两个参数,分别为初始的扰动额度以及最大可接受的距离指标,然后该算法迭代式地增加额度,并返回第一次达到满足条件时对应的扰动。
现有技术方案存在两个主要问题:
(i)每次给定budget后,对应的最小sumKL计算不存在闭合解(closed-formsolution),每次计算最小sumKL需要较长的时间;
(ii)需要迭代式地提高扰动额度,直到满足条件为止,无法在给定最大可接受的距离指标后,直接计算出对应的扰动。由于存在这两个问题,该算法需要很长的时间计算扰动,造成模型训练的效率低下。
本申请提供的联邦神经网络的训练方法、装置、电子设备、计算机可读存储介质以及计算机程序产品,旨在解决现有技术的如上技术问题。
本申请实施例的发明构思为:
由于正、负样本的反向偏导各自呈现一定的规律,因此首先对正、负样本的反向偏导分别进行多元高斯分布建模,为了对反向偏导进行扰动,需要为正、负样本的反向偏导计算噪声数据分布,基于噪声数据分布使得添加扰动后的反向偏导的分布难以区分,因此噪声数据分布需满足两个目标:1)扰动后分布的协方差矩阵为各向同性的对角矩阵,2)扰动后期望与协方差矩阵的相对比例为满足扰动程度;基于两个目标可构建出可一次性计算出噪声数据分布的协方差矩阵,利用该协方差矩阵可进一步获得噪声数据的取值范围,从该取值范围中随机获取采样噪声,将采样噪声施加至第一参与方的反向偏导,获得添加噪声的反向偏导,第一参与方根据添加噪声的反向偏导完成底层模型的反向传播。
本申请实施例可一次性对反向偏导添加扰动,相比迭代式方法,大幅提高了添加扰动的效率,可以在客户给定标签保护程度(也即扰动程度)的情况下,快速地计算出满足保护,且对模型训练影响最小的扰动,提高纵向联邦神经网络模型训练的隐私性和可用性。
下面通过对几个示例性实施方式的描述,对本申请实施例的技术方案以及本申请的技术方案产生的技术效果进行说明。需要指出的是,下述实施方式之间可以相互参考、借鉴或结合,对于不同实施方式中相同的术语、相似的特征以及相似的实施步骤等,不再重复描述。
下面说明本申请实施例的联邦神经网络模型的训练设备的示例性应用,在一种实现方式中,本申请实施例提供的联邦神经网络模型的训练设备可以实施为笔记本电脑,平板电脑,台式计算机,移动设备(例如,移动电话,便携式音乐播放器,个人数字助理,专用消息设备,便携式游戏设备)、智能机器人、车载终端等任意的终端,在另一种实现方式中,本申请实施例提供的联邦神经网络模型的训练设备还可以实施为服务器。下面,将说明联邦神经网络模型的训练设备实施为服务器时的示例性应用。
请参见图2,其示例性地示出了本申请实施例提供的联邦神经网络模型的训练系统的一个可选的架构示意图。本申请实施例以两方纵向联邦神经网络模型为待训练的网络模型为例进行说明,为实现对联邦神经网络模型的训练,本申请实施例提供的联邦神经网络模型的训练系统10中包括第一终端100-1、第二终端100-2、网络200和服务器300,其中,第一终端100-1是第一参与方的终端,第二终端100-2是第二参与方的终端,第一参与方A(例如,某广告公司)与第二参与方B(例如,某社交网络平台)合作完成对联邦神经网络模型的训练,即联合训练一个或多个基于深度学习的个性化推荐模型。
第一参与方A拥有部分数据特征,例如,(X1,X2,…,X40),共40维数据特征;而第二参与方B可以拥有数据特征,也可以不提供数据特征,例如,在一个实施例中,第二参与方B拥有(X41,X42,…,X100),共60维数据特征。第一参与方A和第二参与方B联合起来,就拥有了100维数据特征,所以显著扩展了训练数据的特征维度。对于有监督深度学习,第一参与方A和/或第二参与方B还拥有训练数据的标签信息Y,在本申请实施例,仅第二参与方B用于标签信息,(在二分类中,称标签为1的样本为正样本,标签不为1的样本为负样本)。
在模型训练之前,第一参与方A通过第一终端100-1将第一部分样本数据通过网络200发送给服务器300,第二参与方B通过第二终端100-2将第二部分样本数据通过网络200发送给服务器300,服务器在获取到样本数据之后开始进行模型训练,服务器将样本数据输入至联邦神经网络模型中,各参与方将己方的特征数据作为输入,进入己方的底层模型进行前向激活,第一参与方A将己方的前向激活发送至交互层,以各参与方的前向激活作为第二参与方的顶层模型输入,进行顶层模型的前向传播计算,得到模型预测值,使用预测值与真实标签,根据损失函数计算模型损失,第二参与方B根据模型损失,计算顶层模型的反向传播计算,计算出顶层模型的梯度,以及各参与方对应的反向偏导,从预先确定的分布范围中随机采样噪声数据,对反向偏导添加噪声数据,获得扰动后的反向偏导,将扰动后的反向偏导输入第一参与方的底层模型,以对第一参与方的底层模型反向传播计算,得到底层模型的梯度,根据模型梯度(包括底层与顶层的模型梯度),更新模型,完成对联邦神经网络模型的训练,得到训练后的联邦神经网络模型。
本申请实施例提供的联邦神经网络模型的训练方法还涉及人工智能技术领域,通过人工智能技术实现对联邦神经网络模型的训练,或者通过人工智能技术实现基于所训练的联邦神经网络模型进行信息推荐。本申请实施例中,至少可以通过人工智能技术中的机器学习和自然语言处理技术来实现。其中,机器学习(ML,Machine Learning)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。本申请实施例中,通过机器学习技术实现对网络结构搜索请求的响应,以自动搜索到目标网络结构,以及,实现对控制器和分值模型的训练和模型优化。自然语言处理(NLP,Nature Language processing)是计算机科学领域与人工智能领域中的一个重要方向,它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系。自然语言处理技术通常包括文本处理、语义理解、机器翻译、机器人问答、知识图谱等技术
本申请实施例所提供的联邦神经网络模型的训练方法还可以基于云平台并通过云技术来实现,例如,上述服务器300可以是云端服务器。
云技术(Cloud technology)是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。云技术基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。技术网络系统的后台服务需要大量的计算、存储资源,如视频网站、图片类网站和更多的门户网站。伴随着互联网行业的高度发展和应用,将来每个物品都有可能存在自己的识别标志,都需要传输到后台系统进行逻辑处理,不同程度级别的数据将会分开处理,各类行业数据皆需要强大的系统后盾支撑,只能通过云计算来实现。
本申请实施例还可以通过云技术中的云存储技术来实现,例如,在对联邦神经网络模型进行训练时,可以将更新得到的交互层模型参数存储于云端存储器中,或者将训练好的联邦神经网络模型存储于云端存储器中。这样,在后续使用该联邦神经网络模型时,可以从云端存储器直接获取到模型来使用以进行数据处理,无需对联邦神经网络模型进行再次训练,提高了数据处理的效率。
这里需要说明的是,云存储(cloud storage)是在云计算概念上延伸和发展出来的一个新的概念,分布式云存储系统(以下简称存储系统)是指通过集群应用、网格技术以及分布存储文件系统等功能,将网络中大量各种不同类型的存储设备(存储设备也称之为存储节点)通过应用软件或应用接口集合起来协同工作,共同对外提供数据存储和业务访问功能的一个存储系统。
本申请实施例中提供了一种联邦神经网络的训练方法,联邦神经网络模型至少包括第一参与方的底层模型、交互层和第二参与方的顶层模型,如图3所示,该训练方法包括:
S101、将顶层模型输出的批量的第一参与方数据的反向偏导。
可以理解的是,步骤S101和S102发生在反向传播过程中,由上述实施例可知,本申请实施例在步骤S101之前还包括正向传播过程,也即第一参与方(为了便于描述,本申请实施例中第二参与方没有拥有特征数据,因此第二参与方没有对应的底层模型)将自己的特征数据(也即第一参与方数据)输入至底层模型中进行前向传播计算,得到前向激活。
本申请实施例的第一参与方的个数为不小于1的整数,每个第一参与方均具有对应的底层模型。
第一参与方的前向激活输入至交互层,由交互层输入至第二参与方的顶层模型进行前向传播计算,获得模型预测值,进一步通过第二参与方的损失函数,对模型预测值以及第二参与方设置的标签,计算模型损失。
在反向传播过程中,首先通过顶层模型根据模型损失,获得顶层模型的梯度以及第一参与方数据的反向偏导。
S102、根据第二参与方针对所述第一参与方数据设置的标签信息,确定第一参与方数据中的正样本和负样本,并根据正样本和负样本的反向偏导的分布情况以及预设的扰动程度确定噪声数据的分布范围。
由上述实施例可知,第二参与方具有第一参与方数据对应的标签,因此可根据标签确定每个第一参与方数据为正样本或者负样本,例如可以将标签为1的第一参与方数据作为正样本,将标签为0的第一参与方数据作为负样本,本申请实施例的分布范围是基于正、负样本分布范围以及预设的扰动程度获得的,该分布范围具体可以通过反向偏导拟合出的高斯分布来表征,本申请实施例的扰动程度可以由用户,也即第二参与方进行设置,扰动程度越大,意味着扰动后的正、负样本间反向偏导的差异越不明显。本申请实施例的扰动程度类似于Marvell算法中的距离指标sumKL。
由于正、负样本会呈现一定的规律性,因此本申请实施例综合了正、负样本的分布信息,结合扰动程度获得了噪声数据的分布范围,对于任意一个样本数据,只需要从该分布范围中随机采样,即可获得满足给定的扰动程度的噪声数据,相比迭代的方式获得噪声数据的方式,极大地提升了效率。
S103、针对每个反向偏导从分布范围中随机采样噪声数据,对反向偏导添加噪声数据,获得扰动后的反向偏导。
本申请实施例通过对批量的反向偏导中的每个反向偏导,从预先确定的分布范围中随机采样噪声数据,也即每个反向偏导所增加的扰动都是随机的,而不是对同一批的多个反向偏导增加相同的扰动,这样处理能进一步增加第一参与方推测标签信息的难度。
S104、将交互层输出的扰动后的反向偏导输入底层模型,以使得底层模型根据扰动后的反向偏导更新底层模型的参数。
将扰动后的反向偏导输入第一参与方的底层模型,对底层模型进行反向传播计算,得到底层模型的梯度,进一步根据梯度更新底层模型以及顶层模型的参数。
本申请实施例的联邦神经网络的训练方法,其中联邦神经网络模型包括第一参与方的底层模型以及第二参与方的顶层模型,在反向传播过程中,确定顶层模型输出的第一参与方数据的反向偏导,根据第二参与方针对第一参与方数据设置的标签信息,在确定小批量的正负样本后,可以快速根据所述正样本和负样本的反向偏导的分布情况以及预设的扰动程度确定噪声数据的分布范围,每次对反向偏导增加扰动时,可以从分布范围内随机取样获得噪声数据进行加扰,不需要像现有技术进行迭代或长时间的复杂计算,相对于相关技术效率更高。进一步的,当效率提高后,可以提供更低的最大可接受距离指标,从而提高对标签的保护能力。
在上述各实施例的基础上,作为一种可选实施例,请参见图4,其示例性地示出了本申请实施例确定噪声数据的分布范围的流程示意图,包括:
S201、确定第一期望以及第二期望间的差异;
通过对小批量采样的多个正样本和负样本的反向偏导分别进行建模,即可获得正样本的反向偏导的第一多元高斯分布和负样本的反向偏导的第二多元高斯分布。
图5为本申请实施例对正、负样本的反向偏导建模的多元高斯分布的示意图,如图所示,该图中底层模型的隐层维度为2,因此图中的坐标系为二维坐标系,其中正样本的反向偏导分布在第二象限,而负样本的反向偏导分布在第一象限和第四象限,正、负样本的反向偏导的分布具有明显的差异,通过分别构建对应多元高斯分布,可以发现两个多元高斯分布只存在少部分的重叠。
本申请实施例的第一多元高斯分布P1可表示为:P1~N(μ1,∑1),负样本的反向偏导的第二多元高斯分布P0表示为::P1~N(μ1,∑1),其中,第二μ0和第一期望μ1是大小为d的向量。若使用完整的协方差矩阵,会使得后续的计算较为复杂,因此本申请实施例中的第一协方差矩阵∑1和第二协方差矩阵∑0是大小为d×d的对角矩阵,d表示反向偏导的隐层维度。
在实际运行过程中,μ01,∑1,∑0可以根据每个小批量样本(mini-batch)的反向偏导进行估计,比如,通过计算所有正样本的反向偏导的平均值得到μ1,计算所有正样本的反向偏导的方差得到∑1,同理,计算所有负样本的反向偏导的平均值得到μ0,计算所有负样本的反向偏导的方差得到∑0
值得注意的是,相关技术中的Marvell算法不但假设协方差矩阵是对角矩阵,还作了各向同性的假设,即对角线上的元素相同(∑1=δ1Id×d,∑0=δ0Id×d,其中,δ10为常数,Id×d为单位矩阵)。而本申请实施例所提出的算法不需要各向同性的假设,更符合实际情况。
S202、根据差异以及预设的扰动程度,获得第一参考方数据的反向偏导扰动后的协方差矩阵。
为了对反向偏导进行扰动,本申请实施例需要为正样本和负样本的反向偏导分别计算一个噪声数据的分布范围,即
Figure BDA0003482232080000171
请参见图6,其示例性地示出了本申请实施例对正、负样本的反向偏导添加扰动前后的多元高斯分布的示意图,从图中可以看出,添加扰动后,正、负样本的多元高斯分布(y1和y0分别表示正样本的多元高斯分布和负样本的多元高斯分布)间的差异明显不再显著,两个多元高斯分布存在很大的重合。本申请实施例希望添加扰动后的两个分布
Figure BDA0003482232080000172
难以区分,从而达到保护标签的目标。
为了使扰动后的正、负样本的反向偏导的分布难以区分,本申请实施例需要噪声数据的分布满足以下两个目标:
1)正样本的添加扰动后的多元高斯分布的协方差矩阵,应等于负样本的添加扰动后的多元高斯分布的协方差矩阵,还等于预设系数与单位矩阵间的乘积,该预设系数即添加扰动后的多元高斯分布的协方差矩阵的对角线上的值。第一目标也即扰动后分布的协方差矩阵为各向同性的对角矩阵,使其不可区分。
2)第一期望和第二期望间的差异与扰动后分布的协方差矩阵间的比例应当用预先确定的扰动程度衡量。
因此基于第二目标,本申请实施例可以通过差异和预先确定的扰动关系,获得扰动后的协方差矩阵。
S203、根据扰动后的协方差矩阵、第一协方差矩阵和第二协方差矩阵,获得噪声数据分布的协方差矩阵。
在获得扰动后的协方差矩阵后,基于第一目标,通过计算溶洞后洗的协方差矩阵分别与第一协方差矩阵、第二协方差矩阵的的差值,即可获得噪声数据分布的协方差矩阵。
S204、根据噪声数据分布的协方差矩阵以及预设的第三期望进行建模,获得噪声数据的分布范围。
应当理解的是,描述高斯分布需要两个参量:期望和方差,本申请实施例的第一期望和第二期望是分别针对正样本和负样本的反向偏导的期望,第三期望是噪声数据的分布范围的期望,本申请实施例对于第三期望的大小不作具体的限制。
在上述各实施例的基础上,作为一种可选实施例,第一期望和第二期望的差异包括第一期望和第二期望在反向偏导的各隐层维度的子差异。
根据差异以及预先确定的扰动程度,获得扰动后的协方差矩阵,包括:
对差异中的每个子差异取平方后求和,根据求和后的结果、单位矩阵以及扰动程度,获得扰动后的协方差矩阵。
本申请对所有差异中的每个子差异取平方后求和的计算公式可表示为:
Figure BDA0003482232080000181
其中,mi表示第一期望和第二期望在反向偏导的第i个隐层维度的子差异。
对于噪声数据分布需满足的第二个目标,即扰动后的反向偏导的期望与协方差矩阵的相对比例,满足:预先确定的扰动程度
Figure BDA0003482232080000182
进一步地,根据求和后的结果、单位矩阵以及扰动程度,获得扰动后的协方差矩阵,包括:计算求和后的结果与所处扰动程度间的商值,将商值与单位矩阵的乘积,作为扰动后的协方差矩阵
当设定可接受的最大扰动程度D*后,带入上述公式,即可获得扰动后的协方差矩阵的对角线上的值
Figure BDA0003482232080000183
Figure BDA0003482232080000184
将其与单位矩阵相乘,即可获得扰动后的协方差矩阵:
Figure BDA0003482232080000185
在上述各实施例的基础上,作为一种可选实施例,根据扰动后的协方差矩阵、第一多元高斯分布的第一协方差矩阵和第二多元高斯分布的第二协方差矩阵,获得噪声数据分布的协方差矩阵,包括:
由噪声数据分布需满足的第一个目标可知:噪声数据分布的协方差矩阵
Figure BDA0003482232080000186
满足
Figure BDA0003482232080000187
即扰动后分布的协方差矩阵为各向同性的对角矩阵,使其不可区分,因此,在获得扰动后的协方差矩阵后,通过将扰动后的协方差矩阵分别与第一协方差矩阵和第二协方差矩阵求差,即可获得对于正样本的噪声数据的协方差矩阵
Figure BDA0003482232080000191
(第三协方差矩阵)以及对于负样本的噪声数据的协方差矩阵
Figure BDA0003482232080000192
(第四协方差矩阵),具体可参见以下公式:
Figure BDA0003482232080000193
其中
Figure BDA0003482232080000194
在上述各实施例的基础上,作为一种可选实施例,根据噪声数据分布的协方差矩阵以及预设的期望进行建模,获得噪声数据的分布范围,包括:
根据第三协方差矩阵和预设期望建模,获得噪声数据的第一分布范围,根据第三协方差矩阵和预设期望建模,获得噪声数据的第二分布范围。
具体的,本申请实施例的第三期望可以为0,也即噪声数据的分布范围包括:
Figure BDA0003482232080000195
Figure BDA0003482232080000196
其中,η1表示针对正样本的噪声数据的第一分布范围,η0表示针对负样本的噪声数据的第二分布范围。
在上述各实施例的基础上,作为一种可选实施例,对反向偏导添加噪声数据,获得扰动后的反向偏导,包括:
S301、从第一分布范围随机采样第一噪声数据,从第二分布范围随机采样第二噪声数据;
S302、对第一噪声数据和第二噪声数据进行加权求和,获得扰动数据;
S303、对反向偏导添加扰动数据,获得扰动后的反向偏导。
具体的,可用以下公式表示扰动后的反向偏导:
Figure BDA0003482232080000197
其中,
Figure BDA0003482232080000198
表示第j个第一参与方数据的反向偏导;α1和α0分别表示对第一噪声
Figure BDA0003482232080000199
和第二噪声
Figure BDA00034822320800001910
设置的权重,从该公式也可以看出,本申请实施例会对每个第一参与方数据的反向偏导单独采样噪声数据,并基于噪声数据添加扰动,而不是采样同一份噪声后使用与多个样本上。
在上述各实施例的基础上,作为一种可选实施例,若反向偏导对应的第一参与方数据为正样本,则设置第一噪声数据对应的权重为第一数值,第二噪声数据对应的权重为第二数值;
若反向偏导对应的第一参与方数据为负样本,则设置第一噪声数据对应的权重为第二数值,第二噪声数据对应的权重为第一数值;
第一数值大于第二数值。
例如,第一数值可以为1,第二数值为0,本申请实施例对于第一数值和第二数值的具体大小不作进一步的限定。
请参见图7,其示例性地示出了本申请实施例获得扰动数据的流程示意图,如图所示,包括:
根据批量的第一参与方数据的标签,确定第一参与方数据中的正样本和负样本;
分别对正样本的反向偏导和负样本的反向偏导进行拟合,获得第一多元高斯分布和第二多元高斯分布;
确定第一多元高斯分布的第一期望和第二多元高斯分布的第二期望间,在底层模型的每个隐层维度的子差异;
对差异中的每个子差异取平方后求和,根据求和后的结果、单位矩阵以及扰动程度,获得扰动后的协方差矩阵;
分别计算扰动后的协方差矩阵与第一协方差矩阵和第二协方差矩阵间的差值,获得针对正样本的噪声数据分布的第三协方差矩阵和针对负样本的噪声数据分布的第四协方差矩阵;
根据第三协方差矩阵和预设期望建模,获得针对正样本的噪声数据的第一分布范围;根据第四协方差矩阵和预设期望建模,获得针对负样本的噪声数据的第二分布范围;
从第一分布范围随机采样第一噪声数据,从第二分布范围随机采样第二噪声数据;
根据反向偏导对应的第一参与方数据属于正样本或者负样本,分别确定第一噪声数据和第二噪声数据对应的第一权重和第二权重;
根据第一权重和第二权重对第一噪声数据和第二噪声数据进行加权求和,获得扰动数据。
请参见图8,其示例性地示出了本申请另一个实施例的联邦神经网络的训练方法的流程示意图,本申请实施例的联邦神经网络还进一步包括交互层,由交互层对第一参与方数据的反向偏导进行加扰,使得加扰流程更独立,也方便其他第一参与方的调用。如图所示,包括:
S401、第一参与方A将己方的特征数据作为输入,进行己方的底层模型的前向传播计算,得到前向激活即ZA
S402、第一参与方A将己方的前向激活ZA,发送至交互层;
S403、交互层将接收到的前向激活ZA作为输入,发送至第二参与方B的顶层模型的前向传播计算,得到模型预测值y’;
S404、第二参与方B使用模型预测值y’与真实标签,根据损失函数计算模型损失,根据模型损失计算顶层模型的反向传播计算,计算出顶层模型的梯度,以及ZA对应的反向偏导
Figure BDA0003482232080000211
S405、第二参与方B将批量的第一参与方数据的反向偏导输入至交互层,交互层根据第二参与方B设置的批量的第一参与方数据的标签,确定其中的正样本和负样本;
S406、对正样本和负样本的反向偏导分别拟合,建模得到第一多元高斯分布:P1~N(μ1,∑1)和第二多元高斯分布:P1~N(μ1,∑1);
S407、计算第一期望和第二期望间在每个隐层维度的差异m,并对每个隐层维度的差异取平方后求和,获得
Figure BDA0003482232080000212
S408、确定第二参与方B设置的扰动程度,也即可接受的最大扰动程度D*,结合
Figure BDA0003482232080000213
获得扰动后的协方差矩阵的对角线上的值
Figure BDA0003482232080000214
Figure BDA0003482232080000215
S409、将
Figure BDA0003482232080000216
与单位矩阵Id×d相乘,获得扰动后的协方差矩阵;
S410、根据公式:
Figure BDA0003482232080000217
获得对于正样本的噪声数据的协方差矩阵
Figure BDA0003482232080000218
(第三协方差矩阵)以及对于负样本的噪声数据的协方差矩阵
Figure BDA0003482232080000219
(第四协方差矩阵);
S411、获得噪声数据的两种分布范围:
Figure BDA00034822320800002110
Figure BDA00034822320800002111
其中,η1表示针对正样本的噪声数据的第一分布范围,η0表示针对负样本的噪声数据的第二分布范围;
S412、对于第i个第一参与方数据的反向偏导,从η1和η0中随机采样获得噪声数据
Figure BDA00034822320800002112
Figure BDA00034822320800002113
分别对两个噪声数据进行加权,将加权结果添加至反向偏导上,即可获得扰动后的反向偏导
Figure BDA0003482232080000221
Figure BDA0003482232080000222
Figure BDA0003482232080000223
S413、将扰动后的反向偏导
Figure BDA0003482232080000224
发送至第一参与方A的底层模型进行反向传播计算,得到底层模型的梯度,根据模型梯度(包括底层与顶层的模型梯度),更新模型参数。
本申请实施例提供了一种联邦神经网络的训练装置,如图9所示,联邦神经网络模型至少包括第一参与方的底层模型和第二参与方的顶层模型,该训练装置可以包括:数据获取模块901、噪声范围确定模块902、噪声添加模块903以及参数更新模块904,其中,
扰动模块901,用于确定顶层模型输出的批量的第一参与方数据的反向偏导输入交互层;
噪声范围确定模块902,用于根据第二参与方针对第一参与方数据设置的标签信息,确定第一参与方数据中的正样本和负样本,并根据正样本和负样本的反向偏导的分布情况以及预设的扰动程度确定噪声数据的分布范围;
噪声添加模块903,针对每个反向偏导从分布范围中随机采样噪声数据,对反向偏导添加噪声数据,获得扰动后的反向偏导;
参数更新模块904,用于将交互层输出的扰动后的反向偏导输入底层模型,以使得底层模型根据扰动后的反向偏导更新底层模型的参数。
本申请实施例的装置可执行本申请实施例所提供的方法,其实现原理相类似,本申请各实施例的装置中的各模块所执行的动作是与本申请各实施例的方法中的步骤相对应的,对于装置的各模块的详细功能描述具体可以参见前文中所示的对应方法中的描述,此处不再赘述。
与相关技术相比可实现:
通过确定顶层模型输出的第一参与方数据的反向偏导,根据第二参与方针对第一参与方数据设置的标签信息,在确定小批量的正负样本后,可以快速根据所述正样本和负样本的反向偏导的分布情况以及预设的扰动程度确定噪声数据的分布范围,每次对反向偏导增加扰动时,可以从分布范围内随机取样获得噪声数据进行加扰,不需要像现有技术进行迭代或长时间的复杂计算,相对于相关技术效率更高。进一步的,当效率提高后,可以提供更低的最大可接受距离指标,从而提高对标签的保护能力。
作为一种可选的实施例,噪声范围确定模块包括:
差异计算子模块,用于确定第一期望以及第二期望间的差异;
扰动后协方差子模块,用于根据差异以及预先确定的扰动程度,获得批量的第一参考方数据的反向偏导扰动后的协方差矩阵;
噪声协方差子模块,用于根据扰动后的协方差矩阵、第一协方差矩阵和第二协方差矩阵,获得噪声数据分布的协方差矩阵;
扰动分布子模块,用于根据噪声数据分布的协方差矩阵以及预设的第三期望进行建模,获得噪声数据的分布范围;
其中,第一期望和第一协方差矩阵分别为根据正样本的反向偏导建模的第一多元高斯分布的期望和协方差矩阵,第二期望和第二协方差矩阵分别为根据负样本的反向偏导建模的第二多元高斯分布的期望和协方差矩阵。
作为一种可选的实施例,差异包括第一期望和第二期望在底层模型的各隐层维度的子差异;
扰动后协方差子模块,具体用于对差异中的每个子差异取平方后求和,根据求和后的结果、单位矩阵以及扰动程度,获得扰动后的协方差矩阵。
作为一种可选的实施例,扰动后协方差子模块具体用于:计算求和后的结果与所处扰动程度间的商值,将商值与单位矩阵的乘积,作为扰动后的协方差矩阵。
作为一种可选的实施例,噪声协方差子模块具体用于:分别计算扰动后的协方差矩阵与第一协方差矩阵和第二协方差矩阵间的差值,获得针对正样本的噪声数据分布的第三协方差矩阵和针对负样本的噪声数据分布的第四协方差矩阵。
作为一种可选的实施例,扰动分布子模块包括:
正样本噪声分布单元,用于根据第三协方差矩阵和预设期望建模,获得针对正样本的噪声数据的第一分布范围;
负样本噪声分布单元,用于根据第四协方差矩阵和预设期望建模,获得针对负样本的噪声数据的第二分布范围。
作为一种可选的实施例,噪声添加模块包括:
噪声数据采样子模块,用于从第一分布范围随机采样第一噪声数据,从第二分布范围随机采样第二噪声数据;
加权子模块,用于对第一噪声数据和第二噪声数据进行加权求和,获得扰动数据;
扰动添加子模块,用于对反向偏导添加扰动数据,获得扰动后的反向偏导。
作为一种可选的实施例,加权子模块具体用于:
若反向偏导对应的第一参与方数据为正样本,则设置第一噪声数据对应的权重为第一数值,第二噪声数据对应的权重为第二数值;
若反向偏导对应的第一参与方数据为负样本,则设置第一噪声数据对应的权重为第二数值,第二噪声数据对应的权重为第一数值;
其中,第一数值大于第二数值。
作为一种可选的实施例,第一期望和第二期望均为维度为d的向量;第一协方差矩阵和第二协方差矩阵均为d×d的对角矩阵;其中,d为底层模型的隐层维度。
本申请实施例中提供了一种电子设备,包括存储器、处理器及存储在存储器上的计算机程序,该处理器执行上述计算机程序以实现联邦神经网络的训练方法的步骤,与相关技术相比可实现:
通过确定顶层模型输出的第一参与方数据的反向偏导,根据第二参与方针对第一参与方数据设置的标签信息,在确定小批量的正负样本后,可以快速根据所述正样本和负样本的反向偏导的分布情况以及预设的扰动程度确定噪声数据的分布范围,每次对反向偏导增加扰动时,可以从分布范围内随机取样获得噪声数据进行加扰,不需要像现有技术进行迭代或长时间的复杂计算,相对于相关技术效率更高。进一步的,当效率提高后,可以提供更低的最大可接受距离指标,从而提高对标签的保护能力。
在一个可选实施例中提供了一种电子设备,如图10所示,图10所示的电子设备4000包括:处理器4001和存储器4003。其中,处理器4001和存储器4003相连,如通过总线4002相连。可选地,电子设备4000还可以包括收发器4004,收发器4004可以用于该电子设备与其他电子设备之间的数据交互,如数据的发送和/或数据的接收等。需要说明的是,实际应用中收发器4004不限于一个,该电子设备4000的结构并不构成对本申请实施例的限定。
处理器4001可以是CPU(Central Processing Unit,中央处理器),通用处理器,DSP(Digital Signal Processor,数据信号处理器),ASIC(Application SpecificIntegrated Circuit,专用集成电路),FPGA(Field Programmable Gate Array,现场可编程门阵列)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器4001也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等。
总线4002可包括一通路,在上述组件之间传送信息。总线4002可以是PCI(Peripheral Component Interconnect,外设部件互连标准)总线或EISA(ExtendedIndustry Standard Architecture,扩展工业标准结构)总线等。总线4002可以分为地址总线、数据总线、控制总线等。为便于表示,图10中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器4003可以是ROM(Read Only Memory,只读存储器)或可存储静态信息和指令的其他类型的静态存储设备,RAM(Random Access Memory,随机存取存储器)或者可存储信息和指令的其他类型的动态存储设备,也可以是EEPROM(Electrically ErasableProgrammable Read Only Memory,电可擦可编程只读存储器)、CD-ROM(Compact DiscRead Only Memory,只读光盘)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质、其他磁存储设备、或者能够用于携带或存储计算机程序并能够由计算机读取的任何其他介质,在此不做限定。
存储器4003用于存储执行本申请实施例的计算机程序,并由处理器4001来控制执行。处理器4001用于执行存储器4003中存储的计算机程序,以实现前述方法实施例所示的步骤。
本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时可实现前述方法实施例的步骤及相应内容。与相关技术相比可实现:
通过确定顶层模型输出的第一参与方数据的反向偏导,根据第二参与方针对第一参与方数据设置的标签信息,在确定小批量的正负样本后,可以快速根据所述正样本和负样本的反向偏导的分布情况以及预设的扰动程度确定噪声数据的分布范围,每次对反向偏导增加扰动时,可以从分布范围内随机取样获得噪声数据进行加扰,不需要像现有技术进行迭代或长时间的复杂计算,相对于相关技术效率更高。进一步的,当效率提高后,可以提供更低的最大可接受距离指标,从而提高对标签的保护能力。
本申请实施例还提供了一种计算机程序产品,包括计算机程序,计算机程序被处理器执行时可实现前述方法实施例的步骤及相应内容。与相关技术相比可实现:通过确定顶层模型输出的第一参与方数据的反向偏导,根据第二参与方针对第一参与方数据设置的标签信息,在确定小批量的正负样本后,可以快速根据所述正样本和负样本的反向偏导的分布情况以及预设的扰动程度确定噪声数据的分布范围,每次对反向偏导增加扰动时,可以从分布范围内随机取样获得噪声数据进行加扰,不需要像现有技术进行迭代或长时间的复杂计算,相对于相关技术效率更高。进一步的,当效率提高后,可以提供更低的最大可接受距离指标,从而提高对标签的保护能力。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”、“1”、“2”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除图示或文字描述以外的顺序实施。
应该理解的是,虽然本申请实施例的流程图中通过箭头指示各个操作步骤,但是这些步骤的实施顺序并不受限于箭头所指示的顺序。除非本文中有明确的说明,否则在本申请实施例的一些实施场景中,各流程图中的实施步骤可以按照需求以其他的顺序执行。此外,各流程图中的部分或全部步骤基于实际的实施场景,可以包括多个子步骤或者多个阶段。这些子步骤或者阶段中的部分或全部可以在同一时刻被执行,这些子步骤或者阶段中的每个子步骤或者阶段也可以分别在不同的时刻被执行。在执行时刻不同的场景下,这些子步骤或者阶段的执行顺序可以根据需求灵活配置,本申请实施例对此不限制。
以上仅是本申请部分实施场景的可选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请的方案技术构思的前提下,采用基于本申请技术思想的其他类似实施手段,同样属于本申请实施例的保护范畴。

Claims (13)

1.一种联邦神经网络的训练方法,其特征在于,所述联邦神经网络模型至少包括第一参与方的底层模型和第二参与方的顶层模型,所述训练方法包括:
确定所述顶层模型输出的批量的第一参与方数据的反向偏导;
根据所述第二参与方针对所述第一参与方数据设置的标签信息,确定所述第一参与方数据中的正样本和负样本,并根据所述正样本和负样本的反向偏导的分布情况以及预设的扰动程度确定噪声数据的分布范围;
针对每个反向偏导从所述分布范围中随机采样噪声数据,对所述反向偏导添加噪声数据,获得扰动后的反向偏导;
将所述扰动后的反向偏导输入所述底层模型,以使得所述底层模型根据所述扰动后的反向偏导更新所述底层模型的参数。
2.根据权利要求1所述的训练方法,其特征在于,所述根据所述正样本和负样本的反向偏导的分布情况以及预设的扰动程度确定噪声数据的分布范围,包括:
确定第一期望以及第二期望间的差异;
根据所述差异以及预设的扰动程度,获得所述第一参考方数据的反向偏导扰动后的协方差矩阵;
根据所述扰动后的协方差矩阵、第一协方差矩阵和第二协方差矩阵,获得所述噪声数据分布的协方差矩阵;
根据所述噪声数据分布的协方差矩阵以及预设的第三期望进行建模,获得所述噪声数据的分布范围;
其中,所述第一期望和所述第一协方差矩阵分别为根据所述正样本的反向偏导建模的第一多元高斯分布的期望和协方差矩阵,所述第二期望和第二协方差矩阵分别为根据所述负样本的反向偏导建模的第二多元高斯分布的期望和协方差矩阵。
3.根据权利要求2所述的训练方法,其特征在于,所述差异包括所述第一期望和所述第二期望在底层模型的各隐层维度的子差异;
所述根据所述差异以及预先确定的扰动程度,获得扰动后的协方差矩阵,包括:
对所述差异中的每个子差异取平方后求和,根据求和后的结果、单位矩阵以及所述扰动程度,获得所述扰动后的协方差矩阵。
4.根据权利要求3所述的训练方法,其特征在于,所述根据求和后的结果、单位矩阵以及所述扰动程度,获得所述扰动后的协方差矩阵,包括:
计算所述求和后的结果与所处扰动程度间的商值,将所述商值与所述单位矩阵的乘积,作为所述扰动后的协方差矩阵。
5.根据权利要求2所述的训练方法,其特征在于,所述根据所述扰动后的协方差矩阵、所述第一多元高斯分布的第一协方差矩阵和所述第二多元高斯分布的第二协方差矩阵,获得所述噪声数据分布的协方差矩阵,包括:
分别计算所述扰动后的协方差矩阵与所述第一协方差矩阵和第二协方差矩阵间的差值,获得针对正样本的噪声数据分布的第三协方差矩阵和针对负样本的噪声数据分布的第四协方差矩阵。
6.根据权利要求5所述的训练方法,其特征在于,根据所述噪声数据分布的协方差矩阵以及预设的期望进行建模,获得所述噪声数据的所述分布范围,包括:
根据所述第三协方差矩阵和预设期望建模,获得针对正样本的噪声数据的第一分布范围;
根据所述第四协方差矩阵和预设期望建模,获得针对负样本的噪声数据的第二分布范围。
7.根据权利要求6所述的训练方法,其特征在于,对所述反向偏导添加噪声数据,获得扰动后的反向偏导,包括:
从所述第一分布范围随机采样第一噪声数据,从所述第二分布范围随机采样第二噪声数据;
对所述第一噪声数据和第二噪声数据进行加权求和,获得扰动数据;
对所述反向偏导添加所述扰动数据,获得扰动后的反向偏导。
8.根据权利要求7所述训练方法,其特征在于,所述对所述第一噪声数据和第二噪声数据进行加权求和,包括:
若所述反向偏导对应的第一参与方数据为正样本,则设置所述第一噪声数据对应的权重为第一数值,所述第二噪声数据对应的权重为第二数值;
若所述反向偏导对应的第一参与方数据为负样本,则设置所述第一噪声数据对应的权重为第二数值,所述第二噪声数据对应的权重为第一数值;
其中,所述第一数值大于所述第二数值。
9.根据权利要求2所述的训练方法,其特征在于,所述第一期望和第二期望均为维度为d的向量;所述第一协方差矩阵和第二协方差矩阵均为d×d的对角矩阵;其中,d为所述底层模型的隐层维度。
10.一种联邦神经网络的训练装置,其特征在于,所述联邦神经网络模型至少包括第一参与方的底层模型和第二参与方的顶层模型,所述训练装置包括:
数据获取模块,用于将所述顶层模型输出的批量的第一参与方数据的反向偏导;
噪声范围确定模块,用于根据所述第二参与方针对所述第一参与方数据设置的标签信息,确定所述第一参与方数据中的正样本和负样本,并根据所述正样本和负样本的反向偏导的分布情况以及预设的扰动程度确定噪声数据的分布范围;
噪声添加模块,用于针对每个反向偏导从所述分布范围中随机采样噪声数据,对所述反向偏导添加噪声数据,获得扰动后的反向偏导;
参数更新模块,用于将所述扰动后的反向偏导输入所述底层模型,以使得所述底层模型根据所述扰动后的反向偏导更新所述底层模型的参数。
11.一种电子设备,包括存储器、处理器及存储在存储器上的计算机程序,其特征在于,所述处理器执行所述计算机程序以实现权利要求1-9任一项所述联邦神经网络的训练方法的步骤。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-9任一项所述联邦神经网络的训练方法的步骤。
13.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-9任一项所述联邦神经网络的训练方法的步骤。
CN202210071149.3A 2022-01-21 2022-01-21 联邦神经网络的训练方法、装置及电子设备 Pending CN114418095A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210071149.3A CN114418095A (zh) 2022-01-21 2022-01-21 联邦神经网络的训练方法、装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210071149.3A CN114418095A (zh) 2022-01-21 2022-01-21 联邦神经网络的训练方法、装置及电子设备

Publications (1)

Publication Number Publication Date
CN114418095A true CN114418095A (zh) 2022-04-29

Family

ID=81275332

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210071149.3A Pending CN114418095A (zh) 2022-01-21 2022-01-21 联邦神经网络的训练方法、装置及电子设备

Country Status (1)

Country Link
CN (1) CN114418095A (zh)

Similar Documents

Publication Publication Date Title
CN112149171B (zh) 联邦神经网络模型的训练方法、装置、设备及存储介质
CN110998579B (zh) 隐私保护的分布式多方安全模型训练框架
CN110709863B (zh) 使用秘密共享的逻辑回归建模方法、存储介质及系统
Fujita Statistical estimation of the number of hidden units for feedforward neural networks
CN113239404B (zh) 一种基于差分隐私和混沌加密的联邦学习方法
US11176469B2 (en) Model training methods, apparatuses, and systems
US11341411B2 (en) Method, apparatus, and system for training neural network model
CN113221183B (zh) 实现隐私保护的多方协同更新模型的方法、装置及系统
Godfrey An evaluation of parametric activation functions for deep learning
Li et al. Hierarchical gaussian processes model for multi-task learning
CN114792359A (zh) 渲染网络训练和虚拟对象渲染方法、装置、设备及介质
CN114611128A (zh) 一种纵向联邦学习方法、装置、系统、设备及存储介质
CN112016698A (zh) 因子分解机模型构建方法、设备及可读存储介质
CN117253287B (zh) 基于域泛化的动作预测模型训练方法、相关方法及产品
CN111523674A (zh) 模型训练方法、装置及系统
Acharya et al. Effects of finite register length on fast ICA, bacterial foraging optimization based ICA and constrained genetic algorithm based ICA algorithm
CN114418095A (zh) 联邦神经网络的训练方法、装置及电子设备
CN112966809B (zh) 基于隐私保护的两方模型预测方法、装置及系统
CN114519209A (zh) 用于保护数据的方法、设备、装置和介质
Borowik et al. Computational Intelligence and Efficiency in Engineering Systems
CN112511361A (zh) 模型训练方法、装置和计算设备
Wollowski et al. Constructing mutual context in human-robot collaborative problem solving with multimodal input
CN113011459B (zh) 模型训练方法、装置和计算设备
CN116304644B (zh) 一种基于联邦学习的数据处理方法、装置、设备及介质
CN110598578B (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