CN117454185B - 联邦模型训练方法、装置、计算机设备和存储介质 - Google Patents
联邦模型训练方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN117454185B CN117454185B CN202311775339.4A CN202311775339A CN117454185B CN 117454185 B CN117454185 B CN 117454185B CN 202311775339 A CN202311775339 A CN 202311775339A CN 117454185 B CN117454185 B CN 117454185B
- Authority
- CN
- China
- Prior art keywords
- interaction
- gradient
- parameter
- feature
- updating
- 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
- 238000012549 training Methods 0.000 title claims abstract description 205
- 238000000034 method Methods 0.000 title claims abstract description 50
- 230000003993 interaction Effects 0.000 claims abstract description 365
- 230000004927 fusion Effects 0.000 claims abstract description 102
- 125000004122 cyclic group Chemical group 0.000 claims abstract description 11
- 238000000605 extraction Methods 0.000 claims description 93
- 230000017105 transposition Effects 0.000 claims description 39
- 238000004364 calculation method Methods 0.000 claims description 27
- 238000004590 computer program Methods 0.000 claims description 27
- 238000004422 calculation algorithm Methods 0.000 description 14
- 238000010586 diagram Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 10
- 238000013528 artificial neural network Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 8
- 238000010801 machine learning Methods 0.000 description 5
- 230000004913 activation Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 210000002569 neuron Anatomy 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 229940050561 matrix product Drugs 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/213—Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/25—Fusion techniques
- G06F18/253—Fusion techniques of extracted features
-
- 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/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- 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
- G06N3/084—Backpropagation, e.g. using gradient descent
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Bioethics (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请涉及一种联邦模型训练方法、装置、计算机设备和存储介质。该方法包括:提取第一对齐样本对应的第一样本特征,并获取第二设备发送的第二样本特征;基于第一样本特征、第二样本特征、第一交互参数和第二交互参数进行特征融合,并将融合特征发送第二设备;获取第二设备返回的目标梯度和参数更新梯度;按照参数更新梯度对第二交互参数进行更新,得到第二更新参数,按照第二交互参数对目标梯度进行更新,得到第二交互梯度,将第二交互梯度返回第二设备;按照第一交互参数对目标梯度进行更新,得到第一交互梯度,按照第一交互梯度进行反向传播并进行循环迭代,直到达到训练完成条件时,得到目标联邦模型。采用本方法能够提高训练的安全性。
Description
技术领域
本申请涉及人工智能技术领域,特别是涉及一种联邦模型训练方法、装置、计算机设备、存储介质和计算机程序产品。
背景技术
随着人工智能技术的发展,出现了联邦机器学习技术,联邦机器学习是一个机器学习框架,能有效帮助多个机构在满足用户隐私保护、数据安全和政府法规的要求下,进行数据使用和机器学习建模。目前,联邦机器学习的实现方案通常是纵向联邦实现方案,纵向联邦实现方案通常需要无标签参与方将底层模型的输出加密传递给有标签参与方来进行联邦模型的训练。然而,无标签的参与方将底层模型的输出传递给有标签的参与方,即无标签参与方的模型神经元会暴露给有标签参与方,会存在信息泄露的风险,导致训练的安全性降低。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高训练安全性的联邦模型训练方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
第一方面,本申请提供了一种联邦模型训练方法,应用于第一设备,第一设备中包括第一对齐样本,包括:
提取第一对齐样本对应的第一样本特征,并获取第二设备发送的第二样本特征,第二样本特征是第二设备对第二对齐样本进行特征提取并进行同态加密得到的,第二设备中包括第二对齐样本和训练标签;
基于第一样本特征、第二样本特征、第一交互参数和第二交互参数进行特征融合,得到融合特征,并将融合特征发送第二设备,第一交互参数和第二交互参数是初始化得到的;
获取第二设备返回的目标梯度和参数更新梯度,目标梯度是第二设备按照融合特征进行前向传播并按照训练标签进行反向传播计算得到的,参数更新梯度是第二设备基于目标梯度和第二样本特征进行梯度计算得到的;
按照参数更新梯度对第二交互参数进行更新,得到第二更新参数,按照第二交互参数对目标梯度进行更新,得到第二交互梯度,将第二交互梯度返回第二设备,第二设备按照第二交互梯度进行反向传播;
按照第一交互参数对目标梯度进行更新,得到第一交互梯度,按照第一交互梯度进行反向传播并进行循环迭代,直到达到训练完成条件时,得到目标联邦模型。
第二方面,本申请还提供了一种联邦模型训练装置,应用于第一设备,第一设备中包括第一对齐样本,包括:
特征提取模块,用于提取第一对齐样本对应的第一样本特征,并获取第二设备发送的第二样本特征,第二样本特征是第二设备对第二对齐样本进行特征提取并进行同态加密得到的,第二设备中包括第二对齐样本和训练标签;
特征融合模块,用于基于第一样本特征、第二样本特征、第一交互参数和第二交互参数进行特征融合,得到融合特征,并将融合特征发送第二设备,第一交互参数和第二交互参数是初始化得到的;
梯度获取模块,用于获取第二设备返回的目标梯度和参数更新梯度,目标梯度是第二设备按照融合特征进行前向传播并按照训练标签进行反向传播计算得到的,参数更新梯度是第二设备基于目标梯度和第二样本特征进行梯度计算得到的;
更新模块,用于按照参数更新梯度对第二交互参数进行更新,得到第二更新参数,按照第二交互参数对目标梯度进行更新,得到第二交互梯度,将第二交互梯度返回第二设备,第二设备按照第二交互梯度进行反向传播;
迭代模块,用于按照第一交互参数对目标梯度进行更新,得到第一交互梯度,按照第一交互梯度进行反向传播并进行循环迭代,直到达到训练完成条件时,得到目标联邦模型。
第三方面,本申请还提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
提取第一对齐样本对应的第一样本特征,并获取第二设备发送的第二样本特征,第二样本特征是第二设备对第二对齐样本进行特征提取并进行同态加密得到的,第二设备中包括第二对齐样本和训练标签;
基于第一样本特征、第二样本特征、第一交互参数和第二交互参数进行特征融合,得到融合特征,并将融合特征发送第二设备,第一交互参数和第二交互参数是初始化得到的;
获取第二设备返回的目标梯度和参数更新梯度,目标梯度是第二设备按照融合特征进行前向传播并按照训练标签进行反向传播计算得到的,参数更新梯度是第二设备基于目标梯度和第二样本特征进行梯度计算得到的;
按照参数更新梯度对第二交互参数进行更新,得到第二更新参数,按照第二交互参数对目标梯度进行更新,得到第二交互梯度,将第二交互梯度返回第二设备,第二设备按照第二交互梯度进行反向传播;
按照第一交互参数对目标梯度进行更新,得到第一交互梯度,按照第一交互梯度进行反向传播并进行循环迭代,直到达到训练完成条件时,得到目标联邦模型。
第四方面,本申请还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
提取第一对齐样本对应的第一样本特征,并获取第二设备发送的第二样本特征,第二样本特征是第二设备对第二对齐样本进行特征提取并进行同态加密得到的,第二设备中包括第二对齐样本和训练标签;
基于第一样本特征、第二样本特征、第一交互参数和第二交互参数进行特征融合,得到融合特征,并将融合特征发送第二设备,第一交互参数和第二交互参数是初始化得到的;
获取第二设备返回的目标梯度和参数更新梯度,目标梯度是第二设备按照融合特征进行前向传播并按照训练标签进行反向传播计算得到的,参数更新梯度是第二设备基于目标梯度和第二样本特征进行梯度计算得到的;
按照参数更新梯度对第二交互参数进行更新,得到第二更新参数,按照第二交互参数对目标梯度进行更新,得到第二交互梯度,将第二交互梯度返回第二设备,第二设备按照第二交互梯度进行反向传播;
按照第一交互参数对目标梯度进行更新,得到第一交互梯度,按照第一交互梯度进行反向传播并进行循环迭代,直到达到训练完成条件时,得到目标联邦模型。
第五方面,本申请还提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
提取第一对齐样本对应的第一样本特征,并获取第二设备发送的第二样本特征,第二样本特征是第二设备对第二对齐样本进行特征提取并进行同态加密得到的,第二设备中包括第二对齐样本和训练标签;
基于第一样本特征、第二样本特征、第一交互参数和第二交互参数进行特征融合,得到融合特征,并将融合特征发送第二设备,第一交互参数和第二交互参数是初始化得到的;
获取第二设备返回的目标梯度和参数更新梯度,目标梯度是第二设备按照融合特征进行前向传播并按照训练标签进行反向传播计算得到的,参数更新梯度是第二设备基于目标梯度和第二样本特征进行梯度计算得到的;
按照参数更新梯度对第二交互参数进行更新,得到第二更新参数,按照第二交互参数对目标梯度进行更新,得到第二交互梯度,将第二交互梯度返回第二设备,第二设备按照第二交互梯度进行反向传播;
按照第一交互参数对目标梯度进行更新,得到第一交互梯度,按照第一交互梯度进行反向传播并进行循环迭代,直到达到训练完成条件时,得到目标联邦模型。
上述联邦模型训练方法、装置、计算机设备、存储介质和计算机程序产品,通过在第一设备中提取第一对齐样本对应的第一样本特征,并获取第二设备发送的第二样本特征,然后基于第一样本特征、第二样本特征、第一交互参数和第二交互参数进行特征融合,得到融合特征,并将融合特征发送第二设备。然后第一设备获取第二设备返回的目标梯度和参数更新梯度,并按照参数更新梯度对第二交互参数进行更新,得到第二更新参数,按照第二交互参数对目标梯度进行更新,得到第二交互梯度,将第二交互梯度返回第二设备。最后给第一设备按照第一交互参数对目标梯度进行更新,得到第一交互梯度,按照第一交互梯度进行反向传播并进行循环迭代,直到达到训练完成条件时,得到目标联邦模型。即通过在无训练标签的第一设备中进行特征融合,避免暴露模型神经元给有训练标签的第二设备,并且,在训练过程中第二设备无法获取到第一交互参数和第二交互参数,从而无法反推出第一设备中的任何信息,从而避免了信息泄露,提高了训练的安全性。
附图说明
为了更清楚地说明本申请实施例或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为一个实施例中联邦模型训练方法的应用环境图;
图2为一个实施例中联邦模型训练方法的流程示意图;
图3为一个具体实施例中联邦模型训练前向传播的流程示意图;
图4为一个具体实施例中联邦模型训练反向传播的流程示意图;
图5为一个具体实施例中联邦模型训练方法的流程示意图;
图6为一个具体实施例中联邦模型训练的架构示意图;
图7为一个实施例中联邦模型训练装置的结构框图;
图8为一个实施例中计算机设备的内部结构图;
图9为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的联邦模型训练方法,可以应用于如图1所示的应用环境中。其中,第一设备102通过网络与第二设备104进行通信。第一设备102中包括第一对齐样本。第一设备102提取第一对齐样本对应的第一样本特征,并获取第二设备104发送的第二样本特征,第二样本特征是第二设备对第二对齐样本进行特征提取并进行同态加密得到的,第二设备104中包括第二对齐样本和训练标签;第一设备102基于第一样本特征、第二样本特征、第一交互参数和第二交互参数进行特征融合,得到融合特征,并将融合特征发送第二设备104,第一交互参数和第二交互参数是初始化得到的;第一设备102获取第二设备返回的目标梯度和参数更新梯度,目标梯度是第二设备按照融合特征进行前向传播并按照训练标签进行反向传播计算得到的,参数更新梯度是第二设备基于目标梯度和第二样本特征进行梯度计算得到的;第一设备102按照参数更新梯度对第二交互参数进行更新,得到第二更新参数,按照第二交互参数对目标梯度进行更新,得到第二交互梯度,将第二交互梯度返回第二设备104,第二设备104按照第二交互梯度进行反向传播;第一设备102按照第一交互参数对目标梯度进行更新,得到第一交互梯度,按照第一交互梯度进行反向传播并进行循环迭代,直到达到训练完成条件时,得到目标联邦模型。第一设备102和第二设备104可以是计算机设备,该计算机设备可以是终端,也可以是服务器。其中,终端可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器可以用独立的服务器或者是多个服务器组成的服务器集群来实现,服务器也可以使用云服务器来实现。
在一个示例性的实施例中,如图2所示,提供了一种联邦模型训练方法,以该方法应用于图1中的第一设备为例进行说明,该第一设备中包括第一对齐样本,包括以下步骤:
S202,提取第一对齐样本对应的第一样本特征,并获取第二设备发送的第二样本特征,第二样本特征是第二设备对第二对齐样本进行特征提取并进行同态加密得到的,第二设备中包括第二对齐样本和训练标签。
其中,第一设备是未存在训练标签,只包括有训练样本的设备,该第一设备可以包括有多个,比如,两个以上。第二设备是指包括有训练样本以及对应的训练标签的设备。第一对齐样本是指第一设备中与第二设备进行数据对齐后得到的训练样本。第二对齐样本是指第二设备中与第一设备进行数据对齐后得到的训练样本。第一设备和第二设备通过数据对齐可以确定在训练过程中使用的公共样本集合,然后从公共样本集合中获取对齐样本。其中,可以通过数据对齐算法来进行数据对象,该数据对齐算法可以是基于姚氏电路的算法、朴素哈希算法、全同态加密算法以及RSA(一种非对称密钥加密算法)盲签名协议算法等,优选的,使用RSA盲签名协议来确定公共样本集合。第二样本特征可以是第二设备对第二对齐样本进行特征提取得到,然后第二设备对第二样本特征进行同态加密,将同态加密后的第二样本特征发送第一设备,第一设备获取到的第二样本特征可以是同态加密后的第二样本特征。
具体地,第一设备和第二设备在进行联邦训练之前,先进行数据对齐,确定公共样本集合,然后第一设备从公共样本集合中获取第一对齐样本,并通过要训练的联邦模型来提取第一对齐样本对应的第一样本特征。然后第一设备获取第二设备发送的第二样本特征,该第二设备从公共样本集合中获取第二对齐样本。并通过要训练的联邦模型来提取第二对齐样本对应的第二样本特征。在一个实施例中,第二样本特征可以是第二设备对第二对齐样本进行特征提取得到,然后第二设备对第二样本特征进行同态加密,将同态加密后的第二样本特征发送第一设备,第一设备获取到的第二样本特征可以是同态加密后的第二样本特征。其中,第一设备和第二设备在获取到训练样本时,可以先进行特征离散化,标准化,补全等特征工程操作,然后再进行数据对齐,确定公共样本集合。
S204,基于第一样本特征、第二样本特征、第一交互参数和第二交互参数进行特征融合,得到融合特征,并将融合特征发送第二设备,第一交互参数和第二交互参数是初始化得到的。
其中,第一交互参数是指第一设备对应的联邦训练过程中进行特征融合的参数。第二交互参数是指第二设备对应的联邦训练过程中进行特征融合的参数。融合特征是指融合第一样本特征中信息和第二样本特征中信息得到的特征,该融合特征是经过同态加密的第二样本特征进行特征融合后得到的同态加密的特征。
具体地,第一设备可以进行参数初始化,得到第一交互参数和第二交互参数。然后按照第一交互参数对第一样本特征进行加权,并按照第二交互参数对第一样本特征进行加权,然后计算加权后的特征和,从而得到融合特征。此时,第二设备可以将融合特征发送第二设备。
S206,获取第二设备返回的目标梯度和参数更新梯度,目标梯度是第二设备按照融合特征进行前向传播并按照训练标签进行反向传播计算得到的,参数更新梯度是第二设备基于目标梯度和第二样本特征进行梯度计算得到的。
其中,目标梯度是指第二设备进行反向传播时计算的梯度,是对联邦模型中任务预测时使用的参数进行反向更新得到的梯度。参数更新梯度是对第二交互参数进行更新的梯度。
具体地,第二设备获取到融合特征时,先对融合特征进行解密,得到解密后的融合特征,然后使用解密后的融合特征进行前向传播,即将解密后的融合特征输入到要训练的联邦模型中任务预测部分进行前向传播,得到预测结果,然后计算预测结果和训练标签之间的损失,并使用梯度下降算法来计算目标梯度,该目标梯度可以是多任务预测模型中第一个神经网络层的梯度。然后使用未进行同态加密的第二样本特征对目标梯度进行更新得到参数更新梯度。第二设备还可以将目标梯度以及参数更新梯度在经过对称加密后发送第一设备。然后第一设备获取第二设备返回的对称加密的目标梯度和参数更新梯度,并进行解密,从而得到目标梯度和参数更新梯度。
S208,按照参数更新梯度对第二交互参数进行更新,得到第二更新参数,按照第二交互参数对目标梯度进行更新,得到第二交互梯度,将第二交互梯度返回第二设备,第二设备按照第二交互梯度进行反向传播。
其中,第二交互梯度是指第二设备中对特征提取时使用的参数进行更新的梯度。
具体地,第一设备需要对第二交互参数和第一交互参数进行更新。此时,第一设备按照参数更新梯度对第二交互参数进行更新,得到第二更新参数,并且按照目标梯度对第一交互参数进行更新,得到第一更新参数,该第一更新参数和第二更新参数在下一次计算融合特征时使用。并且,第一设备还需要计算对第二设备中的联邦模型进行更新的梯度。即按照第二交互参数对目标梯度进行更新,得到第二交互梯度,将第二交互梯度返回第二设备。第二设备获取到第一设备发送的第二交互梯度,然后使用第二交互梯度对要训练的联邦模型中的特征提取参数进行反向更新,得到更新后的联邦模型,并进行下一次的迭代。
S210,按照第一交互参数对目标梯度进行更新,得到第一交互梯度,按照第一交互梯度进行反向传播并进行循环迭代,直到达到训练完成条件时,得到目标联邦模型。
其中,第一交互梯度是指第一设备中对特征提取时使用的参数进行更新的梯度。
具体地,第一设备计算对特征提取时使用的参数进行更新的梯度,即按照第一交互参数对目标梯度进行更新,得到第一交互梯度。此时,第一设备按照第一交互梯度对要训练的联邦模型中特征提取时使用的参数进行反向更新,并按照目标梯度对要训练的联邦模型中任务预测时使用的参数进行反向更新,并进行循环迭代,即返回到提取第一对齐样本对应的第一样本特征,并获取第二设备发送的第二样本特征的步骤迭代执行。然后第一设备判断达到训练完成条件时,训练完成条件可以是第二设备检测的训练损失信息达到预先设置好的阈值,可以是训练的模型参数不再发送变化,也可以是训练达到最大迭代此时等等。最后第二设备将训练完成的联邦模型作为目标联邦模型。
上述联邦模型训练方法,通过在第一设备中提取第一对齐样本对应的第一样本特征,并获取第二设备发送的第二样本特征,然后基于第一样本特征、第二样本特征、第一交互参数和第二交互参数进行特征融合,得到融合特征,并将融合特征发送第二设备。然后第一设备获取第二设备返回的目标梯度和参数更新梯度,并按照参数更新梯度对第二交互参数进行更新,得到第二更新参数,按照第二交互参数对目标梯度进行更新,得到第二交互梯度,将第二交互梯度返回第二设备。最后给第一设备按照第一交互参数对目标梯度进行更新,得到第一交互梯度,按照第一交互梯度进行反向传播并进行循环迭代,直到达到训练完成条件时,得到目标联邦模型。即通过在无训练标签的第一设备中进行特征融合,避免暴露模型神经元给有训练标签的第二设备,并且,在训练过程中第二设备无法获取到第一交互参数和第二交互参数,从而无法反推出第一设备中的任何信息,从而避免了信息泄露,提高了训练的安全性。
在一个实施例中,S204,即基于第一样本特征、第二样本特征、第一交互参数和第二交互参数进行特征融合,得到融合特征,并将融合特征发送第二设备,包括步骤:
按照第一交互参数对第一样本特征进行加权,得到第一加权特征,并按照第二交互参数对第二样本特征进行加权,得到第二加权特征;计算第一加权特征与第二加权特征的特征和,得到融合特征;将融合特征发送第二设备。
具体地,第一设备计算第一交互参数与第一样本特征的乘积,得到第一加权特征,该第一交互参数和第一样本特征可以是矩阵,即进行矩阵乘积运算,得到第一加权特征。同时第一设备计算第二交互参数对第二样本特征的乘积,得到第二加权特征,该第二交互参数和第二样本特征也可以是矩阵,即进行矩阵乘积运算。此时,第一设备计算第一加权特征与第二加权特征的矩阵和,从而得到融合特征。最后,第一设备将融合特征发送第二设备。
在一个具体的实施例中,如图3所示,为联邦模型在训练过程中前向传播的流程示意图,具体来说:联邦模型包括底层、交互层和上层,底层用于进行特征提取,交互层用于进行参数交互,上层用于进行任务预测。
第一设备接收到输入的第一对齐样本,通过底层生成第一样本特征embedding_A。第二设备接收到输入的第二对齐样本,通过底层生成第二样本特征embedding_B。然后第二设备使用同态加密技术加密embedding_B,得到加密后的第二样本特征[embedding_B],并发送给第一设备。同时第二设备生成初始化累计噪声参数noise_acc,该初始化累计噪声参数可以为0。第一设备获取第一交互参数W_A 和第二交互参数W_B`,该第二交互参数W_B`可以是初始化的第二交互参数W_B减去初始化累计噪声参数得到的,即W_B`=W_B-noise_acc。然后第一设备计算添加了初始化累计噪声参数的融合加密特征[Z`]= embedding_A @W_A+ [embedding_B] @ W_B`,其中,@是指矩阵乘法运算。然后第一设备将融合加密特征[Z`]发送第二设备。第二设备获取到添加了初始化累计噪声参数的融合加密特征[Z`]进行解密,得到添加了初始化累计噪声参数的融合特征Z`,然后计算去掉累计噪声参数的融合特征Z=Z` + embedding_B @noise_acc。最后第二设备将融合特征Z传输给上层,得到任务预测结果,然后使用任务预测结果和训练标签计算得到损失信息,再使用损失信息计算得到目标梯度。第二设备还可以将融合特征Z使用激活函数进行激活,得到激活特征g(Z),最后将激活特征按照任务数量和专家数量进行切分,得到gate part(门控部分) 和expertpart(专家部分),并传输给MMoE(Multi-gate Mixture-of-Experts,多门控多专家多任务)模型的上层部分,得到任务预测结果。
在上述实施例中,通过将融合加密特征发送第二设备,可以避免第二设备获取到交互参数,避免第二设备反推出第一设备的信息,提高了联邦训练的安全性。
在一个实施例中,S206,即获取第二设备返回的目标梯度和参数更新梯度,包括步骤:
获取第二设备返回的目标梯度、参数更新梯度和累计噪声参数;
目标梯度是第二设备按照融合特征进行前向传播,得到训练输出结果,计算训练输出结果与训练标签之间的损失,得到训练损失信息,并按照训练损失信息进行反向传播计算得到的,
参数更新梯度是第二设备计算第二样本特征的转置,得到转置特征,按照转置特征对目标梯度进行更新,得到初始更新梯度,并获取训练调整参数和当前噪声参数,按照训练调整参数和当前噪声参数对初始更新梯度进行调整得到的;
累计噪声参数是第二设备基于当前噪声参数对历史累计噪声参数进行累计得到的。
其中,累计噪声参数是指累计得到的噪声参数,用于构建动态噪声机制,提供更强力的保护。当前噪声参数是指第二设备当前生成的噪声参数,该当前噪声参数可以是随机数,可以是第二设备使用随机数生成器生成的。历史累计噪声参数是指上一次的累计噪声参数,起始训练时,历史累计噪声参数是初始化累计噪声参数,该初始化累计噪声参数可以为0。训练调整参数是用于控制训练收敛速度的参数,该训练调整参数可以是学习率。
具体地,第二设备对融合特征进行解密,然后使用解密后的融合特征进行前向传播,得到输出的训练输出结果。然后使用预先设置好的损失函数计算训练输出结果与训练标签之间的误差,得到训练损失信息。然后按照训练损失信息使用梯度下降算法进行反向传播计算得到目标梯度,该梯度下降算法可以是随机梯度下降算法或者小批量梯度下降算法。此时,第二设备获取到未同态加密的第二样本特征,然后计算第二样本特征的转置,得到转置特征,再计算转置特征与目标梯度的乘积,得到初始更新梯度,并获取训练调整参数和当前噪声参数,然后计算初始更新梯度与训练调整参数的乘积,得到调整梯度,然后计算调整梯度与当前噪声参数的和,得到参数更新梯度。最后第二设备计算当前噪声参数和历史累计噪声参数的和,得到累计噪声参数。然后第二设备将目标梯度、参数更新梯度和累计噪声参数发送第一设备。第一设备获取到第二设备返回的目标梯度、参数更新梯度和累计噪声参数。第二设备也可以将目标梯度、参数更新梯度和累计噪声参数进行同态加密,将同态加密后的目标梯度、同态加密后的参数更新梯度以及同态加密的累计噪声参数发送第一设备,第一设备获取到第二设备返回的加密的目标梯度、加密的参数更新梯度和加密的累计噪声参数。
在上述实施例中,第一设备通过获取第二设备返回的目标梯度、参数更新梯度和累计噪声参数,即通过累计噪声参数建立动态变化的噪声机制,可以进一步减少信息泄露风险,从而进一步提高了训练的安全性。
在一个实施例中,S208,按照参数更新梯度对第二交互参数进行更新,得到第二更新参数,按照第二交互参数对目标梯度进行更新,得到第二交互梯度,将第二交互梯度返回第二设备,包括:
计算第二交互参数与参数更新梯度之间的差异,得到第二更新参数;
计算第二交互参数与累计噪声参数的和,得到第二去噪参数,并计算第二去噪参数的转置,得到第二转置参数,并按照第二转置参数对目标梯度进行更新,得到第二交互梯度;
将第二交互梯度返回第二设备,第二设备对第二交互梯度进行解密,得到解密的第二交互梯度,按照解密的第二交互梯度进行反向传播。第二去噪参数是指从第二交互参数中去掉噪声后得到的参数,由于累计累计噪声参数是同态加密的,则第二去噪参数也是同态加密的,则得到的第二交互梯度也是同态加密的。
具体地,第一设备计算第二交互参数与参数更新梯度之间的差,得到第二更新参数。第一设备计算第二交互参数与累计噪声参数的和,得到第二去噪参数,并计算第二去噪参数的转置,得到第二转置参数,最后计算第二转置参数与目标梯度的乘积,得到第二交互梯度,计算第二交互梯度的过程是在同态密文上的运算,该参数更新梯度是同态加密的。将第二交互梯度返回第二设备,第二设备对第二交互梯度进行解密,得到解密的第二交互梯度,并按照解密的第二交互梯度反向更新特征提取时的参数,得到更新的特征提取时参数。
在上述实施例中,通过在第一设备中计算第二更新参数,然后计算第二交互参数与累计噪声参数的和,得到第二去噪参数,并计算第二去噪参数的转置,得到第二转置参数,并按照第二转置参数对目标梯度进行更新,得到第二交互梯度,将第二交互梯度返回第二设备,通过累计噪声参数对第二交互参数进行去噪,可以保证第二设备得到准确的第二交互梯度,提高联邦训练的准确性,并且在第一设备计算得到第二交互梯度,避免的了第一设备中信息泄露的风险,提高了联邦信息的安全性。
在一个实施例中,S210,即按照第一交互参数对目标梯度进行更新,得到第一交互梯度,按照第一交互梯度进行反向传播并进行循环迭代,直到达到训练完成条件时,得到目标联邦模型,包括步骤:
计算第一交互参数的转置,得到第一转置参数,并按照第一转置参数对目标梯度进行更新,得到第一交互梯度;按照第一交互梯度进行反向传播并进行循环迭代,直到达到训练完成条件时,得到目标联邦模型。
具体地,第一设备计算第一交互参数的转置,得到第一转置参数,然后计算第一转置参数和目标梯度的乘积,得到第一交互梯度。然后第一设备按照第一交互梯度对特征提取时的参数进行更新,得到更新的特征提取时的参数,然后第一设备还使用目标梯度对第一交互参数进行更新,可以计算目标梯度与训练调整参数的乘积,得到第一参数更新梯度,然后计算第一交互参数与第一参数更新梯度的差,得到更新后的第一交互参数。然后进行迭代训练,直到达到训练完成条件时,得到目标联邦模型。
在上述实施例中,通过计算得到第一交互梯度,然后使用第一交互梯度进行反向传播并进行循环迭代,直到达到训练完成条件时,得到目标联邦模型,从而保证了联邦训练的准确性。
在一个实施例中,如图4所示,为联邦模型在训练过程中反向传播的流程示意图,具体来说:
第二设备计算联邦模型中上层的反向传播梯度。即使用上层的任务预测结果与训练标签计算得到对上层中第一层的目标梯度grad_top。然后第二设备生成当前噪声参数noise。此时,第二设备使用对称加密算法对目标梯度进行加密。得到加密的目标梯度[grad_top]。然后计算对于第二交互参数的梯度gard_W_B,可以使用gard_W_B =embedding_B.T @ grad_top计算得到,该embedding_B.T是指计算第二样本特征的转置。然后获取到学习率lr,使用学习率和当前噪声参数对第二交互参数的梯度进行调整,得到参数更新梯度delta_W_B,可以使用delta_W_B= gard_W_B * lr + noise计算得到参数更新梯度,此时,使用对称加密算法对参数更新梯度进行加密,得到加密的参数更新梯度。第二设备将当前噪声参数累加得到历史累计噪声参数中,得到累计噪声参数noise_acc,即noise_acc +=noise。此时,也可以使用对称加密算法对累计噪声参数进行加密,得到加密的累计噪声参数[noise_acc]。然后第二设备将加密的目标梯度、加密的参数更新梯度和加密的参数更新梯度发送第一设备。
第一设备接收到第二设备发送的将加密的目标梯度、加密的参数更新梯度和加密的累计噪声参数,并使用对称密钥对加密的目标梯度进行解密,得到目标梯度。使用加密的参数更新梯度更新第二交互参数得到第二更新参数W_B`= W_B`-delta_W_B。同时使用目标梯度和学习率更新第一交互参数得到第一更新参数W_A=(W_A-grad_top)*lr,其中,通过目标梯度计算第一交互参数的梯度,然后用计算得到的梯度值乘以学习率lr来更新第一交互参数。此时,第一设备同时使用第二交互参数和加密的累计噪声参数计算得到加密的第二交互梯度[grad_bottom_B] =grad_top @ ( [noise_acc] + W_B`).T。最后第一设备将加密的第二交互梯度发送第二设备,同时第一设备使用目标梯度和第一交互参数计算得到第一交互梯度grad_bottom_A =grad_top @W_A.T,然后使用grad_bottom_A反向更新联邦模型的底层参数。并且第二设备接收到加密的第二交互梯度时,对加密的第二交互梯度[grad_bottom_B]进行解密,得到第二交互梯度grad_bottom_B,使用第二交互梯度来更新自己的底层参数。然后不断循环迭代,直到达到训练完成条件时,得到目标联邦模型。
在上述实施例中,第一设备只能得到加了noise的W_B`的梯度信息,以及grad_top,没有完整的W_B信息,不能由此反推出B的任何信息,同时,第二设备依然得不到第一设备的任何信息,从而可以确保整个训练过程的安全性。
在一个实施例中,第一设备中包括第一特征提取层和交互层,第二设备中包括第二特征提取层和第二推荐任务层;联邦训练方法,还包括:
将第一对齐样本输入到第一特征提取层中进行特征提取,得到第一样本特征;
通过交互层获取第二设备发送的第二样本特征,并将第一样本特征、第二样本特征、第一交互参数和第二交互参数进行特征融合,得到融合特征,并将融合特征发送第二设备;
通过交互层获取第二设备返回的目标梯度和参数更新梯度;
通过交互层将第二交互梯度返回第二设备,第二设备按照第二交互梯度反向更新第二特征提取层;
通过第一交互梯度反向更新第一特征提取层,通过目标梯度更新第一交互参数并进行循环迭代,直到达到训练完成条件时,基于训练完成的第一特征提取层、训练完成的交互层、训练完成的第二特征提取层以及训练完成的第二推荐任务层,得到目标联邦模型。
其中,联邦模型包括第一特征提取层、交互层、第二特征提取层和第二推荐任务层,其中,第一设备中包括第一特征提取层和交互层,第二设备中包括第二特征提取层和第二推荐任务层。第一特征提取层是第一设备中用于进行特征提取的神经网络层。第二特征提取层是第二设备中用于进行特征提取的神经网络层。交互层是指第一设备中用于进行对加密的参数进行交互的神经网络层。第二推荐任务层是指第二设备中用于进行推荐任务预测的神经网络层。该第二推荐任务层也可以是其他类型任务的神经网络层,比如,可以是图像识别任务的神经网络层、语音识别的神经网络层等等。
具体地,第一设备和第二设备参与联邦训练,即在第一设备中建立要训练的联邦模型中的第一特征提取层和交互层,并且在第二设备中建立要训练的联邦模型中的第二特征提取层和第二推荐任务层。该建立的联邦模型中的模型参数都是初始化的参数。然后在进行数据对齐后开始进行联邦训练。此时,第一设备通过第一特征提取层对训练样本进行特征提取,并通过交互层进行联邦训练过程中的前向交互。第二设备通过第二特征提取层对训练样本进行特征提取,并通过第二推荐任务层进行推荐结果预测,然后使用推荐预测结果与训练标签进行目标梯度的计算,然后进行联邦训练的反向传播,从而完成第一特征提取层和交互层中参数的更新,以及第二特征提取层和第二推荐任务层中参数的更新,并不断进行迭代训练,直到达到训练完成条件时,得到目标联邦模型。即通过第一设备中包括的第一特征提取层和交互层以及第二设备中包括第二特征提取层和第二推荐任务层可以实现上述任意一实施例中联邦训练方法的步骤来得到训练完成的目标联邦模型。
在上述实施例中,通过在第一设备中建立交互层,可以避免第二设备反推出第一设备中的数据信息,同时也可以避免第一设备反推出第二设备中的数据信息,减少了信息泄露风险,提高了联邦训练的安全性。
在一个实施例中,在通过第一交互梯度反向更新第一特征提取层,通过目标梯度更新第一交互参数并进行循环迭代,直到达到训练完成条件时,基于训练完成的第一特征提取层、训练完成的交互层、训练完成的第二特征提取层以及训练完成的第二推荐任务层,得到目标联邦模型之后,还包括:
将待推荐数据输入到目标联邦模型中的第一特征提取层进行特征提取,得到第一待推荐特征,并获取第二设备发送的通过目标联邦模型中第二特征提取层提取的第二待推荐特征;
将第一待推荐特征和第二待推荐特征输入到目标联邦模型中的交互层中使用第一交互参数和第二交互参数进行特征融合,得到待推荐融合特征,并将待推荐融合特征发送第二设备,第二设备将待推荐融合特征输入到目标联邦模型中的第二推荐任务层中进行推荐预测,得到待推荐数据对应的推荐可能性;
获取第二设备返回的待推荐数据对应的推荐可能性。
其中,待推荐数据是指需要判断是否进行推荐的数据,该数据可以是文本数据、图像数据以及语音数据等等。推荐可能性用于表征待推荐数据的推荐可能程度,推荐可能性越高,待推荐数据就越可能进行推荐。
具体地,第一设备当需要判断待推荐数据是否可以向用户进行推荐时,将待推荐数据输入到目标联邦模型,通过目标联邦模型中的第一特征提取层、交互层、第二特征提取层以及第二推荐任务层进行推荐预测,从而得到待推荐数据对应的推荐可能性。即通过目标联邦模型可以实现上述任意一实施例中联邦训练过程中前向传播过程的步骤来得到待推荐数据对应的推荐可能性。
在上述实施例中,通过将待推荐数据使用目标联邦模型进行推荐预测,可以避免待推荐数据的信息泄露,保证了推荐预测的安全性,并且可以结合第二设备的第二待推荐特征来获取对应的推荐可能性,从而提高了得到的推荐可能性的准确性。
在一个具体的实施例中,如图5所示,提供一种联邦训练的流程示意图,应用于第一设备中,第一设备中包括第一特征提取层和交互层,第二设备中包括第二特征提取层和第二推荐任务层,具体包括以下步骤:
S502,通过第一特征提取层提取第一对齐样本对应的第一样本特征,并获取第二设备发送的第二样本特征,第二样本特征是第二设备通过第二特征提取层对第二对齐样本进行特征提取并进行同态加密后得到的,第二设备中包括第二对齐样本和训练标签;
S504,按照第一交互参数对第一样本特征进行加权,得到第一加权特征,并按照第二交互参数对第二样本特征进行加权,得到第二加权特征;计算第一加权特征与第二加权特征的特征和,得到融合特征,通过交互层将融合特征发送第二设备,第一交互参数和第二交互参数是初始化得到的;
S506,通过交互层获取第二设备返回的加密的目标梯度、加密的参数更新梯度和加密的累计噪声参数,目标梯度是第二设备按照融合特征进行前向传播,得到训练输出结果,计算训练输出结果与训练标签之间的损失,得到训练损失信息,按照训练损失信息对第二推荐任务层进行反向传播计算并进行加密得到的,参数更新梯度是第二设备计算第二样本特征的转置,得到转置特征,按照转置特征对目标梯度进行更新,得到初始更新梯度,并获取训练调整参数和当前噪声参数,按照训练调整参数和当前噪声参数对初始更新梯度进行调整并进行加密得到的;累计噪声参数是第二设备基于当前噪声参数对历史累计噪声参数进行累计并进行加密得到的。
S508,计算第二交互参数与加密的参数更新梯度之间的差异,得到第二更新参数,计算第二交互参数与加密的累计噪声参数的和,得到第二去噪参数,并计算第二去噪参数的转置,得到第二转置参数,并按照第二转置参数对目标梯度进行更新,得到第二交互梯度,通过交互层将第二交互梯度返回第二设备,第二设备对第二交互梯度进行解密,得到解密的第二交互梯度,按照解密的第二交互梯度对第二特征提取层进行反向更新;
S510,计算第一交互参数的转置,得到第一转置参数,按照第一转置参数对目标梯度进行更新,得到第一交互梯度,计算第一交互参数与目标梯度的差异,并按照训练调整参数进行调整,得到第一更新参数,按照第一交互梯度对第一特征提取层进行更新并进行循环迭代,直到达到训练完成条件时,得到目标联邦模型。
在一个具体的实施例中,如图6所示,提供一种联邦训练的架构示意图,具体来说:该联邦训练使用一种新的纵向联邦学习神经网络框架,可以包括多个无训练标签的参与方A以及有标签的参与方B。该联邦模型包括参与方A中的底层和交互层以及参与方B中的底层和上层。该联邦模型中也可以包括多个参与方A。然后底层复制接收输入的样本数据,并生成对应的特征,比如,参与方A输入A通过底层生成特征A,参与方B输入B通过底层生成特征B,交互层接收到参与方B通过同态加密传输的特征B,结合特征A进行特征融合,上层是MMOE(Multi-gateMixture-of-Experts,多任务学习)结构,也可以是其他多目标模型结构,该上层接收交互层的输出作为输入,并且切分为门控(gate)部分和专家(expert)部分进行上层的任务预测,并且最终计算损失信息。即通过该联邦训练的架构来实现上述任意实施例中联邦训练方法的步骤。即在参与方A中设置交互层,训练时由于参与方B没有任何交互层的参数,无法反推出参与方A的任何信息,对参与方 A的特征提供更强的保护的同时,减少了计算开销。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的联邦模型训练方法的联邦模型训练装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个联邦模型训练装置实施例中的具体限定可以参见上文中对于联邦模型训练方法的限定,在此不再赘述。
在一个示例性的实施例中,如图7所示,提供了一种联邦模型训练装置700,包括:特征提取模块702、特征融合模块704、梯度获取模块706、更新模块708和迭代模块710,其中:
特征提取模块702,用于提取第一对齐样本对应的第一样本特征,并获取第二设备发送的第二样本特征,第二样本特征是第二设备对第二对齐样本进行特征提取并进行同态加密得到的,第二设备中包括第二对齐样本和训练标签;
特征融合模块704,用于基于第一样本特征、第二样本特征、第一交互参数和第二交互参数进行特征融合,得到融合特征,并将融合特征发送第二设备,第一交互参数和第二交互参数是初始化得到的;
梯度获取模块706,用于获取第二设备返回的目标梯度和参数更新梯度,目标梯度是第二设备按照融合特征进行前向传播并按照训练标签进行反向传播计算得到的,参数更新梯度是第二设备基于目标梯度和第二样本特征进行梯度计算得到的;
更新模块708,用于按照参数更新梯度对第二交互参数进行更新,得到第二更新参数,按照第二交互参数对目标梯度进行更新,得到第二交互梯度,将第二交互梯度返回第二设备,第二设备按照第二交互梯度进行反向传播;
迭代模块710,用于按照第一交互参数对目标梯度进行更新,得到第一交互梯度,按照第一交互梯度进行反向传播并进行循环迭代,直到达到训练完成条件时,得到目标联邦模型。
在一个实施例中,特征融合模块704还用于按照第一交互参数对第一样本特征进行加权,得到第一加权特征,并按照第二交互参数对第二样本特征进行加权,得到第二加权特征;计算第一加权特征与第二加权特征的特征和,得到融合特征;将融合特征发送第二设备。
在一个实施例中,梯度获取模块706还用于获取第二设备返回的目标梯度、参数更新梯度和累计噪声参数;目标梯度是第二设备按照融合特征进行前向传播,得到训练输出结果,计算训练输出结果与训练标签之间的损失,得到训练损失信息,并按照训练损失信息进行反向传播计算得到的,参数更新梯度是第二设备计算第二样本特征的转置,得到转置特征,按照转置特征对目标梯度进行更新,得到初始更新梯度,并获取训练调整参数和当前噪声参数,按照训练调整参数和当前噪声参数对初始更新梯度进行调整得到的;累计噪声参数是第二设备基于当前噪声参数对历史累计噪声参数进行累计得到的。
在一个实施例中,更新模块708还用于计算第二交互参数与参数更新梯度之间的差异,得到第二更新参数;计算第二交互参数与累计噪声参数的和,得到第二去噪参数,并计算第二去噪参数的转置,得到第二转置参数,并按照第二转置参数对目标梯度进行更新,得到第二交互梯度;将第二交互梯度返回第二设备,第二设备对第二交互梯度进行解密,得到解密的第二交互梯度,按照解密的第二交互梯度进行反向传播。
在一个实施例中,迭代模块710还用于计算第一交互参数的转置,得到第一转置参数,并按照第一转置参数对目标梯度进行更新,得到第一交互梯度;按照第一交互梯度进行反向传播并进行循环迭代,直到达到训练完成条件时,得到目标联邦模型。
在一个实施例中,第一设备中包括第一特征提取层和交互层,第二设备中包括第二特征提取层和第二推荐任务层;联邦模型训练装置700,还包括:
层提取模块,用于将第一对齐样本输入到第一特征提取层中进行特征提取,得到第一样本特征;
层交互模块,用于通过交互层获取第二设备发送的第二样本特征,并将第一样本特征、第二样本特征、第一交互参数和第二交互参数进行特征融合,得到融合特征,并将融合特征发送第二设备;通过交互层获取第二设备返回的目标梯度和参数更新梯度;通过交互层将第二交互梯度返回第二设备,第二设备按照第二交互梯度反向更新第二特征提取层;
层更新模块,用于通过第一交互梯度反向更新第一特征提取层,通过目标梯度更新第一交互参数并进行循环迭代,直到达到训练完成条件时,基于训练完成的第一特征提取层、训练完成的交互层、训练完成的第二特征提取层以及训练完成的第二推荐任务层,得到目标联邦模型。
在一个实施例中,联邦模型训练装置700,还包括:
模型推荐模块,用于将待推荐数据输入到目标联邦模型中的第一特征提取层进行特征提取,得到第一待推荐特征,并获取第二设备发送的通过目标联邦模型中第二特征提取层提取的第二待推荐特征;将第一待推荐特征和第二待推荐特征输入到目标联邦模型中的交互层中使用第一交互参数和第二交互参数进行特征融合,得到待推荐融合特征,并将待推荐融合特征发送第二设备,第二设备将待推荐融合特征输入到目标联邦模型中的第二推荐任务层中进行推荐预测,得到待推荐数据对应的推荐可能性;获取第二设备返回的待推荐数据对应的推荐可能性。
上述联邦模型训练装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个示例性的实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图8所示。该计算机设备包括处理器、存储器、输入/输出接口(Input/Output,简称I/O)和通信接口。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储训练样本数据和待推荐数据。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种联邦模型训练方法。
在一个示例性的实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图9所示。该计算机设备包括处理器、存储器、输入/输出接口、通信接口、显示单元和输入装置。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口、显示单元和输入装置通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种联邦模型训练方法。该计算机设备的显示单元用于形成视觉可见的画面,可以是显示屏、投影装置或虚拟现实成像装置。显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图8或图9中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,且相关数据的收集、使用和处理需要符合相关规定。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric RandomAccess Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccessMemory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (10)
1.一种联邦模型训练方法,其特征在于,应用于第一设备,所述第一设备中包括第一对齐样本、第一特征提取层和交互层,第二设备中包括第二特征提取层和第二推荐任务层,所述方法包括:
通过所述第一特征提取层提取所述第一对齐样本对应的第一样本特征,并通过所述交互层获取第二设备发送的第二样本特征,所述第二样本特征是所述第二设备通过所述第二特征提取层对第二对齐样本进行特征提取并进行同态加密得到的,所述第二设备中包括所述第二对齐样本和训练标签;
通过所述交互层将所述第一样本特征、所述第二样本特征、第一交互参数和第二交互参数进行特征融合,得到融合特征,并将所述融合特征发送所述第二设备,所述第一交互参数和所述第二交互参数是初始化得到的;
通过所述交互层获取所述第二设备返回的目标梯度和参数更新梯度,所述目标梯度是所述第二设备按照所述融合特征进行前向传播并按照所述训练标签进行反向传播计算得到的,所述参数更新梯度是所述第二设备基于所述目标梯度和所述第二样本特征进行梯度计算得到的;
按照所述参数更新梯度对所述第二交互参数进行更新,得到第二更新参数,按照所述第二交互参数对所述目标梯度进行更新,得到第二交互梯度,通过所述交互层将所述第二交互梯度返回所述第二设备,所述第二设备按照所述第二交互梯度进行反向更新所述第二特征提取层;
按照所述第一交互参数对所述目标梯度进行更新,得到第一交互梯度,按照所述第一交互梯度反向更新所述第一特征提取层,通过所述目标梯度更新所述第一交互参数并进行循环迭代,直到达到训练完成条件时,基于训练完成的第一特征提取层、训练完成的交互层、训练完成的第二特征提取层以及训练完成的第二推荐任务层,得到目标联邦模型;
将待推荐数据输入到所述目标联邦模型中的第一特征提取层进行特征提取,得到第一待推荐特征,并获取所述第二设备发送的通过所述目标联邦模型中第二特征提取层提取的第二待推荐特征,所述待推荐数据包括文本数据、图像数据或语音数据;
将所述第一待推荐特征和第二待推荐特征输入到所述目标联邦模型中的交互层中使用第一交互参数和第二交互参数进行特征融合,得到待推荐融合特征,并将待推荐融合特征发送所述第二设备,所述第二设备将所述待推荐融合特征输入到所述目标联邦模型中的第二推荐任务层中进行推荐预测,得到所述待推荐数据对应的推荐可能性;
获取所述第二设备返回的所述待推荐数据对应的推荐可能性。
2.根据权利要求1所述的方法,其特征在于,所述基于所述第一样本特征、所述第二样本特征、第一交互参数和第二交互参数进行特征融合,得到融合特征,并将所述融合特征发送所述第二设备,包括:
按照所述第一交互参数对所述第一样本特征进行加权,得到第一加权特征,并按照所述第二交互参数对所述第二样本特征进行加权,得到第二加权特征;
计算所述第一加权特征与所述第二加权特征的特征和,得到所述融合特征;
将所述融合特征发送所述第二设备。
3.根据权利要求1所述的方法,其特征在于,所述获取所述第二设备返回的目标梯度和参数更新梯度,包括:
获取所述第二设备返回的所述目标梯度、所述参数更新梯度和累计噪声参数;
所述目标梯度是所述第二设备按照所述融合特征进行前向传播,得到训练输出结果,计算所述训练输出结果与所述训练标签之间的损失,得到训练损失信息,并按照所述训练损失信息进行反向传播计算得到的,
所述参数更新梯度是所述第二设备计算所述第二样本特征的转置,得到转置特征,按照所述转置特征对所述目标梯度进行更新,得到初始更新梯度,并获取训练调整参数和当前噪声参数,按照所述训练调整参数和所述当前噪声参数对所述初始更新梯度进行调整得到的;
所述累计噪声参数是所述第二设备基于所述当前噪声参数对历史累计噪声参数进行累计得到的。
4.根据权利要求3所述的方法,其特征在于,所述按照所述参数更新梯度对所述第二交互参数进行更新,得到第二更新参数,按照所述第二交互参数对所述目标梯度进行更新,得到第二交互梯度,将所述第二交互梯度返回所述第二设备,包括:
计算所述第二交互参数与所述参数更新梯度之间的差异,得到所述第二更新参数;
计算所述第二交互参数与所述累计噪声参数的和,得到第二去噪参数,并计算所述第二去噪参数的转置,得到第二转置参数,并按照所述第二转置参数对所述目标梯度进行更新,得到所述第二交互梯度;
将所述第二交互梯度返回所述第二设备,所述第二设备对所述第二交互梯度进行解密,得到解密的第二交互梯度,按照所述解密的第二交互梯度进行反向传播。
5.根据权利要求1所述的方法,其特征在于,所述按照所述第一交互参数对所述目标梯度进行更新,得到第一交互梯度,按照所述第一交互梯度进行反向传播并进行循环迭代,直到达到训练完成条件时,得到目标联邦模型,包括:
计算所述第一交互参数的转置,得到第一转置参数,并按照所述第一转置参数对所述目标梯度进行更新,得到第一交互梯度;
按照所述第一交互梯度进行反向传播并进行循环迭代,直到达到训练完成条件时,得到所述目标联邦模型。
6.一种联邦模型训练装置,其特征在于,应用于第一设备,所述第一设备包括第一对齐样本、第一特征提取层和交互层,第二设备中包括第二特征提取层和第二推荐任务层,所述装置包括:
特征提取模块,用于通过所述第一特征提取层提取所述第一对齐样本对应的第一样本特征,并通过所述交互层获取第二设备发送的第二样本特征,所述第二样本特征是所述第二设备通过所述第二特征提取层对第二对齐样本进行特征提取并进行同态加密得到的,所述第二设备包括所述第二对齐样本和训练标签;
特征融合模块,用于通过所述交互层将所述第一样本特征、所述第二样本特征、第一交互参数和第二交互参数进行特征融合,得到融合特征,并将所述融合特征发送所述第二设备,所述第一交互参数和所述第二交互参数是初始化得到的;
梯度获取模块,用于通过所述交互层获取所述第二设备返回的目标梯度和参数更新梯度,所述目标梯度是所述第二设备按照所述融合特征进行前向传播并按照所述训练标签进行反向传播计算得到的,所述参数更新梯度是所述第二设备基于所述目标梯度和所述第二样本特征进行梯度计算得到的;
更新模块,用于按照所述参数更新梯度对所述第二交互参数进行更新,得到第二更新参数,按照所述第二交互参数对所述目标梯度进行更新,得到第二交互梯度,通过所述交互层将所述第二交互梯度返回所述第二设备,所述第二设备按照所述第二交互梯度进行反向更新所述第二特征提取层;
迭代模块,用于按照所述第一交互参数对所述目标梯度进行更新,得到第一交互梯度,按照所述第一交互梯度进行反向更新所述第一特征提取层,通过所述目标梯度更新所述第一交互参数并进行循环迭代,直到达到训练完成条件时,基于训练完成的第一特征提取层、训练完成的交互层、训练完成的第二特征提取层以及训练完成的第二推荐任务层,得到目标联邦模型;
模型推荐模块,用于将待推荐数据输入到所述目标联邦模型中的第一特征提取层进行特征提取,得到第一待推荐特征,并获取所述第二设备发送的通过所述目标联邦模型中第二特征提取层提取的第二待推荐特征,所述待推荐数据包括文本数据、图像数据或语音数据;将所述第一待推荐特征和第二待推荐特征输入到所述目标联邦模型中的交互层中使用第一交互参数和第二交互参数进行特征融合,得到待推荐融合特征,并将待推荐融合特征发送所述第二设备,所述第二设备将所述待推荐融合特征输入到所述目标联邦模型中的第二推荐任务层中进行推荐预测,得到所述待推荐数据对应的推荐可能性;获取所述第二设备返回的所述待推荐数据对应的推荐可能性。
7.根据权利要求6所述的装置,其特征在于,所述特征融合模块还用于按照所述第一交互参数对所述第一样本特征进行加权,得到第一加权特征,并按照所述第二交互参数对所述第二样本特征进行加权,得到第二加权特征;计算所述第一加权特征与所述第二加权特征的特征和,得到所述融合特征;将所述融合特征发送所述第二设备。
8.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至5中任一项所述的方法的步骤。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至5中任一项所述的方法的步骤。
10.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至5中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311775339.4A CN117454185B (zh) | 2023-12-22 | 2023-12-22 | 联邦模型训练方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311775339.4A CN117454185B (zh) | 2023-12-22 | 2023-12-22 | 联邦模型训练方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117454185A CN117454185A (zh) | 2024-01-26 |
CN117454185B true CN117454185B (zh) | 2024-03-12 |
Family
ID=89580210
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311775339.4A Active CN117454185B (zh) | 2023-12-22 | 2023-12-22 | 联邦模型训练方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117454185B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111079022A (zh) * | 2019-12-20 | 2020-04-28 | 深圳前海微众银行股份有限公司 | 基于联邦学习的个性化推荐方法、装置、设备及介质 |
CN111553470A (zh) * | 2020-07-10 | 2020-08-18 | 成都数联铭品科技有限公司 | 适用于联邦学习的信息交互系统及方法 |
CN113505882A (zh) * | 2021-05-14 | 2021-10-15 | 深圳市腾讯计算机系统有限公司 | 基于联邦神经网络模型的数据处理方法、相关设备及介质 |
WO2022016964A1 (zh) * | 2020-07-23 | 2022-01-27 | 深圳前海微众银行股份有限公司 | 纵向联邦建模优化方法、设备及可读存储介质 |
CN114564641A (zh) * | 2022-02-18 | 2022-05-31 | 华东师范大学 | 个性化多视图联邦推荐系统 |
CN114595835A (zh) * | 2022-05-07 | 2022-06-07 | 腾讯科技(深圳)有限公司 | 基于联邦学习的模型训练方法及装置、设备、存储介质 |
CN114723067A (zh) * | 2022-04-12 | 2022-07-08 | 华南理工大学 | 一种基于用户隐私保护的联邦混合过滤推荐方法 |
CN115130880A (zh) * | 2022-07-05 | 2022-09-30 | 徽商银行股份有限公司 | 非对称场景下基于联邦学习金融电力数据融合方法及介质 |
-
2023
- 2023-12-22 CN CN202311775339.4A patent/CN117454185B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111079022A (zh) * | 2019-12-20 | 2020-04-28 | 深圳前海微众银行股份有限公司 | 基于联邦学习的个性化推荐方法、装置、设备及介质 |
CN111553470A (zh) * | 2020-07-10 | 2020-08-18 | 成都数联铭品科技有限公司 | 适用于联邦学习的信息交互系统及方法 |
WO2022016964A1 (zh) * | 2020-07-23 | 2022-01-27 | 深圳前海微众银行股份有限公司 | 纵向联邦建模优化方法、设备及可读存储介质 |
CN113505882A (zh) * | 2021-05-14 | 2021-10-15 | 深圳市腾讯计算机系统有限公司 | 基于联邦神经网络模型的数据处理方法、相关设备及介质 |
CN114564641A (zh) * | 2022-02-18 | 2022-05-31 | 华东师范大学 | 个性化多视图联邦推荐系统 |
CN114723067A (zh) * | 2022-04-12 | 2022-07-08 | 华南理工大学 | 一种基于用户隐私保护的联邦混合过滤推荐方法 |
CN114595835A (zh) * | 2022-05-07 | 2022-06-07 | 腾讯科技(深圳)有限公司 | 基于联邦学习的模型训练方法及装置、设备、存储介质 |
CN115130880A (zh) * | 2022-07-05 | 2022-09-30 | 徽商银行股份有限公司 | 非对称场景下基于联邦学习金融电力数据融合方法及介质 |
Non-Patent Citations (1)
Title |
---|
面向大数据隐私保护的联邦学习算法航空应用模型研究;陈涛 等;信息安全与通信保密;20200930(第9期);第75-84页 * |
Also Published As
Publication number | Publication date |
---|---|
CN117454185A (zh) | 2024-01-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109165725B (zh) | 基于迁移学习的神经网络联邦建模方法、设备及存储介质 | |
CN110189192B (zh) | 一种信息推荐模型的生成方法及装置 | |
US20230078061A1 (en) | Model training method and apparatus for federated learning, device, and storage medium | |
CN111723404B (zh) | 联合训练业务模型的方法及装置 | |
CN113505882B (zh) | 基于联邦神经网络模型的数据处理方法、相关设备及介质 | |
CN111062487B (zh) | 基于数据隐私保护的机器学习模型特征筛选方法及装置 | |
CN113542228B (zh) | 基于联邦学习的数据传输方法、装置以及可读存储介质 | |
CN111523673B (zh) | 模型训练方法、装置及系统 | |
CN111079939B (zh) | 基于数据隐私保护的机器学习模型特征筛选方法及装置 | |
CN112989399B (zh) | 数据处理系统及方法 | |
CN114448598B (zh) | 密文压缩方法、密文解压缩方法、装置、设备和存储介质 | |
CN114611720A (zh) | 联邦学习模型训练方法、电子设备及存储介质 | |
CN114186256A (zh) | 神经网络模型的训练方法、装置、设备和存储介质 | |
CN112016698B (zh) | 因子分解机模型构建方法、设备及可读存储介质 | |
CN111368983A (zh) | 业务模型训练方法、装置及业务模型训练系统 | |
CN112000987A (zh) | 因子分解机分类模型构建方法、设备及可读存储介质 | |
CN111523674A (zh) | 模型训练方法、装置及系统 | |
CN117454185B (zh) | 联邦模型训练方法、装置、计算机设备和存储介质 | |
CN114998814B (zh) | 目标视频生成方法、装置、计算机设备和存储介质 | |
CN117217303A (zh) | 知识图谱处理方法、装置、计算机设备和存储介质 | |
CN116311425A (zh) | 人脸识别模型训练方法、装置、计算机设备和存储介质 | |
CN114463063A (zh) | 数据处理方法及相关装置 | |
CN114764724A (zh) | 用户属性预测方法、装置、计算机设备和存储介质 | |
CN112183566B (zh) | 模型训练方法、装置及系统 | |
CN116881575B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |