CN112836829A - 一种个性化的隐私保护学习方法、装置以及设备 - Google Patents

一种个性化的隐私保护学习方法、装置以及设备 Download PDF

Info

Publication number
CN112836829A
CN112836829A CN202110104747.1A CN202110104747A CN112836829A CN 112836829 A CN112836829 A CN 112836829A CN 202110104747 A CN202110104747 A CN 202110104747A CN 112836829 A CN112836829 A CN 112836829A
Authority
CN
China
Prior art keywords
participating
participant
training
model
global model
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.)
Granted
Application number
CN202110104747.1A
Other languages
English (en)
Other versions
CN112836829B (zh
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.)
Alipay Hangzhou Information Technology Co Ltd
Original Assignee
Alipay Hangzhou Information Technology 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 Alipay Hangzhou Information Technology Co Ltd filed Critical Alipay Hangzhou Information Technology Co Ltd
Priority to CN202110104747.1A priority Critical patent/CN112836829B/zh
Publication of CN112836829A publication Critical patent/CN112836829A/zh
Application granted granted Critical
Publication of CN112836829B publication Critical patent/CN112836829B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本说明书实施例公开了一种个性化的隐私保护学习方法、装置以及设备。方案应用于第一参与端,包括:确定全局模型和第一参与端的局部模型;通过与多个第二参与端进行联邦学习,协同训练全局模型;根据协同训练后的全局模型,在多个第二参与端中选择第二参与端;与选择出的第二参与端协同训练第一参与端的局部模型。

Description

一种个性化的隐私保护学习方法、装置以及设备
技术领域
本说明书涉及机器学习技术领域,尤其涉及一种个性化的隐私保护学习方法、装置以及设备。
背景技术
联邦学习是近年来逐步被推广以及应用的一种隐私保护机器学习方案,其能有效帮助多个机构在满足用户隐私保护、数据安全和法律法规的要求下,进行数据使用和机器学习建模。
联邦学习在原始数据不出域的情况下,中间方(比如,各参与方共同的选择的可信机构)利用多参与方之间同步训练的中间结果以及梯度信息,实现联合进行模型训练以及预测的目的,训练好的模型会同步给有需要的参与方使用。
基于此,对于参与方而言,在联邦学习的场景下,需要更适用于自己的学习方案,
发明内容
本说明书一个或多个实施例提供个性化的隐私保护学习方法、装置、设备以及存储介质,用以解决如下技术问题:对于参与方而言,在联邦学习的场景下,需要更适用于自己的学习方案。
为解决上述技术问题,本说明书一个或多个实施例是这样实现的:
本说明书一个或多个实施例提供的一种个性化的隐私保护学习方法,应用于第一参与端,所述方法包括:
确定全局模型和所述第一参与端的局部模型;
通过与多个第二参与端进行联邦学习,协同训练所述全局模型;
根据所述协同训练后的全局模型,在所述多个第二参与端中选择第二参与端;
与所述选择出的第二参与端协同训练所述第一参与端的局部模型。
本说明书一个或多个实施例提供的一种个性化的隐私保护学习装置,应用于第一参与端,所述装置包括:
模型确定模块,确定全局模型和所述第一参与端的局部模型;
全局训练模块,通过与多个第二参与端进行联邦学习,协同训练所述全局模型;
参与端选择模块,根据所述协同训练后的全局模型,在所述多个第二参与端中选择第二参与端;
局部协同模块,与所述选择出的第二参与端协同训练所述第一参与端的局部模型。
本说明书一个或多个实施例提供的一种个性化的隐私保护学习设备,应用于第一参与端,所述设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
确定全局模型和所述第一参与端的局部模型;
通过与多个第二参与端进行联邦学习,协同训练所述全局模型;
根据所述协同训练后的全局模型,在所述多个第二参与端中选择第二参与端;
与所述选择出的第二参与端协同训练所述第一参与端的局部模型。
本说明书一个或多个实施例提供的一种非易失性计算机存储介质,应用于第一参与端,所述介质存储有计算机可执行指令,所述计算机可执行指令设置为:
确定全局模型和所述第一参与端的局部模型;
通过与多个第二参与端进行联邦学习,协同训练所述全局模型;
根据所述协同训练后的全局模型,在所述多个第二参与端中选择第二参与端;
与所述选择出的第二参与端协同训练所述第一参与端的局部模型。
本说明书一个或多个实施例采用的上述至少一个技术方案能够达到以下有益效果:使得参与方除了可以使用统一的全局模型以外,还可以根据全局的协同训练结果,个性化地动态选择一些其他参与方为自己协同训练个性化的局部模型,从而既得到了其他参与方的数据支持,又无需完全迁就于所有参与方的综合情况,有助于得到更适用于自己的模型,同时,又能够实现对自己数据的隐私保护。
附图说明
为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本说明书一个或多个实施例提供的一种个性化的隐私保护学习方法的流程示意图;
图2为本说明书一个或多个实施例提供的一种应用场景下,图1中方法的一种详细流程示意图;
图3为本说明书一个或多个实施例提供的一种个性化的隐私保护学习装置的结构示意图;
图4为本说明书一个或多个实施例提供的一种个性化的隐私保护学习设备的结构示意图。
具体实施方式
本说明书实施例提供个性化的隐私保护学习方法、装置、设备以及存储介质。
为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本说明书实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
联邦学习是隐私保护机器学习算法中的一种。比如,多个参与方使用联邦学习技术,协同训练某个模型。在学习模型时,所有的参与方都加入进来训练模型。但是,在实际应用中,在训练模型时,某一轮迭代,并非所有参与方都加入进来效果最好,反之,是当前迭代数据分布相近的那些参与方,协同更新当前的模型,才能取得更好的效果。在学习模型时,所有的参与方都加入进来训练模型,并没有实现个性化,从而也难以达到更优的效果。
在本说明书一个或多个实施例中,多个参与方提供自己的数据,协同训练全局模型,同时,其中的至少部分参与方又拥有自己的局部模型,在对全局模型迭代训练的过程中,该至少部分参与方也可以根据协同训练中间结果,动态选择一些自己认可的参与方(比如,迭代数据分布与自己相近的参与方等),帮助协同训练自己的局部模型,从而,训练后的全局模型具有针对全部参与方较均衡的预测能力,而相比于全局模型,训练后的局部模型针对其所属的参与方,具有更为适配实用的预测能力,相应可能得到更准确的预测结果。训练全局模型使用的联邦学习方式为参与方的数据提供了隐私保护,不仅如此,若有需求,对于协同训练局部模型,相应的参与方提供的数据也可以进行隐私保护后再使用。
下面基于这样的思路,具体进行说明。
图1为本说明书一个或多个实施例提供的一种个性化的隐私保护学习方法的流程示意图。每个参与方分别通过对应的软件和设备(称为参与端),提供自己的数据(比如,训练样本、梯度信息、业务场景信息等),进行协同训练,则该流程的执行主体包括需要训练其局部模型的参与端,将这其中的一个参与端称为第一参与端,将其他参与协同训练的参与端称为第二参与端,以作区分。除了参与方以外,通常还会有中间方,统筹各参与方提供的数据以实现协同训练,该流程的执行主体也可能包括中间方这端,中间方这端比如作为服务端、则各参与端作为客户端。
参与方的业务领域可以是多样的,比如,电子支付领域、电商领域、即时通讯领域、电子游戏领域、新闻门户网站领域等,参与方的业务领域并不影响方案的实施。
假定图1中的流程由第一参与端执行,该流程可以包括以下步骤:
S102:确定全局模型和所述第一参与端的局部模型。
在本说明书一个或多个实施例中,这里的“全局”可以包括全部参与端,全局模型将综合各参与端分别提供的数据进行训练,对于各参与端而言,全局模型是一致的。而“局部”可以指其中的某个参与端,全部参与端中的至少部分参与端分别具有自己的局部模型,局部模型作为其所属的参与端的个性化模型,将要进行个性化训练,对于各参与端而言,训练后的局部模型往往是不一致的。
需要说明的是,全局模型与局部模型初始时的结构未必一致。而在结构一致的情况下,便于训练时共享梯度信息,而无需适应于不同模型结构转换梯度信息再共享使用,有助于提高效率降低成本。
S104:通过与多个第二参与端进行联邦学习,协同训练所述全局模型。
在本说明书一个或多个实施例中,联邦学习通常以服务端加多客户端的架构实施,比如,上述的中间方这端作为服务端、第一参与端、各第二参与端分别作为一个客户端,全局模型至少保存于服务端,各客户端向服务端提供比如梯度信息等共享数据,服务端综合得到的数据,执行协同训练过程中对全局模型进行更新的步骤。
在本说明书一个或多个实施例中,若客户端上也保存有全局模型,则服务端可以将综合的梯度信息下发给客户端,由客户端自行更新本地的全局模型。从而有助于减轻服务端的压力,而且客户端能够更便利高效地使用全局模型。
S106:根据所述协同训练后的全局模型,在所述多个第二参与端中选择第二参与端。
在本说明书一个或多个实施例中,局部模型基于其所属的客户端进行训练,为了增加训练数据的范围,第一参与端在一些第二参与端的帮助下,协同训练自己的局部模型。不同的参与端自身的业务场景往往有区别,这种区别会影响到协同训练的效果,基于此,按照一定的策略,从全部第二参与端选择部分更有助于提高局部模型的训练效果的第二参与端。
除了以训练效果作为选择依据以外,根据实际需求,还有其他的选择依据,比如,以信用程度、共享的数据量、业务重要程度、协同成本等因素作为选择依据。
训练过程是迭代进行的,会多次更新模型,在这种情况下,对第二参与端的选择也更具灵活性,可以在训练迭代过程中,调整对第二参与端的选择,以动态地争取当前较优的选择。
在本说明书一个或多个实施例中,步骤S106也可以由服务端执行,执行后将选择结果发送给第一参与端。在这种情况下,由于服务端处汇集了各参与端的数据,了解全局情况,因此交互成本相对低,处理效率较高。
S108:与所述选择出的第二参与端协同训练所述第一参与端的局部模型。
在本说明书一个或多个实施例中,协同训练第一参与端的局部模型时,若第一参与端与第二参与端之间能够进行点对点通讯,则未必需要上述的服务端支持,可以使用点对点架构协同训练局部模型。
训练局部模型时也涉及多个不同的参与端,为了数据隐私安全,各参与端的数据同样也可以进行隐私保护,之后再提供给其他端使用。当然,若选择出的第二参与端对于第一参与端可信度较高(比如,两者之间是母公司与子公司之间的关系,或者两者之间是商业上的联盟密友关系等),则用于协同训练的数据可以有选择性地进行隐私保护,甚至不进行隐私保护,从而有助于提高训练效率,而且提高了所使用数据的易用性。
通过图1的方法,使得参与方除了可以使用统一的全局模型以外,还可以根据全局的协同训练结果,个性化地动态选择一些其他参与方为自己协同训练个性化的局部模型,从而既得到了其他参与方的数据支持,又无需完全迁就于所有参与方的综合情况,有助于得到更适用于自己的模型,同时,又能够实现对自己数据的隐私保护。
基于图1的方法,本说明书还提供了该方法的一些具体实施方案和扩展方案,下面继续进行说明。
在本说明书一个或多个实施例中,选择与第一参与端相似的第二参与端,用于协同训练所述第一参与端的局部模型,相似性比如表现在业务内容、用户群体、所共享数据的相似性等。
前面提到的迭代数据分布相近即能反映出所共享数据的相似性,可以直接利用参与端提供的数据或者协同训练后的全局模型,分析这种相似性。基于此,根据协同训练后的全局模型,确定第二参与端与第一参与端之间的相似性,根据相似性,在多个第二参与端中选择第二参与端,这种方式在全局模型与局部模型结构一致的情况下,尤其能够取得好的效果。
需要说明的是,除了分析相似性以外,协同训练后的全局模型还能够反映出更多的信息,这些信息也可以作为为第一参与端选择第二参与端的依据。比如,反映各参与端提供的数据量、将各参与端提供的数据用于训练时设置的权重等。
更具体地,比如,利用第一参与端与第二参与端分别使用的训练数据,在协同训练后的全局模型中进行预测,根据预测的结果,确定第一参与端与第二参与端之间的相似性。一般地,两方的预测结果越接近,实质上也表示两者的训练数据的分布和特征越接近,则可以认为第一参与端与第二参与端之间的相似性越高。当然,除了全局模型以外,利用其它的模型进行上述的预测以判定相似性也是可以的,用全局模型进行预测的优点还在于:一定程度上还能够反映两方当前对全局模型的贡献相似,据此得出的相似性对于相关的局部模型而言参考性较好。
计算相似度时,为了提高可靠性,对于第一参与端与第二参与端,采用各自的多个训练数据在全局模型进行预测,得到预测值,并据此生成第一参与端与第二参与端分别对应的预测向量(比如,将单个训练数据的预测值分别作为预测向量中的一个维度、或者将多个预测值融合处理为预测向量中的同一个维度,等等),再通过计算预测向量之间的内积,来度量第一参与端与第二参与端之间的相似性。为了进一步地提高可靠性,还可以预先度量第一参与端与第二参与端使用的训练样本的相似性,将相似性高于一定程度的训练样本剔除,用剩下的训练样本在全局模型中进行预测,在这种情况下,训练样本本身差异性相对大,有助于挖掘出第一参与端与第二参与端之间可能比较重要的一些隐含的相似之处。
在本说明书一个或多个实施例中,对于选定的第二参与端,未必要持续协同到第一参与端的局部模型训练完成(比如,训练达到预定的完成次数、模型成功收敛稳定等),而是可以动态地调整对第二参与端的选择结果。在全局模型经常训练更新的情况下,这样的动态选择方式有助于保持对第二参与端的择优,提高可靠性。
在本说明书一个或多个实施例中,根据对局部模型的阶段性训练结果,重新选择第二参与端。比如,利用已选择的第二参与端新提供的数据,在当前的局部模型上进行预测,淘汰预测结果与预期不符的第二参与端。
在实际应用中,往往会按照训练数据的批次(batch),多轮地迭代训练模型。基于此,以训练数据的批次或者轮次训练为准,相应地多次选择第二参与端。在这种方式下,每次依据的全局模型是训练告一段落相对稳定的,便于统筹管理,有助于抑制对全局模型训练过程的打扰。
例如,采用第一指定批次的训练数据,与多个采用第二指定批次的训练数据的第二参与端进行联邦学习,协同训练全局模型,再根据协同训练后的全局模型,以及第三指定批次的训练数据(比如,具体为第一指定批次的训练数据、第二指定批次的训练数据,或者下一批次的训练数据等),通过这些训练数据进行预测确定相似性(当然,此处采用下一批次的数据也是可以的),在多个第二参与端中选择第二参与端。这里提到的第一指定批次与第二指定批次比如是全局模型的同一轮训练所使用的训练数据,一轮训练中使用一个或者多个批次的训练数据。
在本说明书一个或多个实施例中,第一参与端与选择出的第二参与端通过点对点通信,协同训练局部模型,第二参与端以安全的方式,向第一参与端分享自己的训练样本、梯度信息甚至当前的模型参数等协同数据。
进一步地,为了提高第二参与端的隐私安全性,第二参与端也对其他的第二参与端进行选择,在第一参与端所选择的第二参与端中,若某个第二参与端未选中其中的一个或者多个第二参与端,则可以将未选中的这些第二参与端剔除,由剩余的第二参与端与第一参与端协同训练第一参与端的局部模型。另外,对于第一参与端已选择的第二参与端,其可以帮第一参与端选择其他的第二参与端以降低第一参与端的负担。
在本说明书一个或多个实施例中,第一参与端与其选择的多个第二参与端分别的局部模型的结构可以是不一致的,为了提高协同效率,从多个第二参与端的局部模型中分别抽取隐藏层中的不同层,然后,用抽取的层替换掉第一参与端的局部模型中对应的层,进而有助于快速得到该局部模型的协同训练结果。
在本说明书一个或多个实施例中,将第一参与端的局部模型分拆为多个层集合(比如,按照选择出的第二参与端的数量,分拆出对应数量的层集合),每个层集合中包含隐藏层中的至少一层,根据各个层集合生成对应的多个子模型,然后,利用选择出的第二参与端的局部模型协同训练对应的子模型,各子模型训练后,再重新组合为第一参与端的局部模型,如此,减少了选择出的第二参与端针对该局部模型协同训练的工作量,而且又平衡了这些第二参与端的工作量和对该局部模型的影响,有助于提高训练效率。还可以将所选择的第二参与端的局部模型也进行层集合拆分,然后,将第一参与端的局部模型的层集合,与所选择的各第二参与端的局部模型的层集合进行部分交换(比如,将第一参与端对应的前3层与选择的第一个第二参与端对应的前3层交换,将第一参与端对应的第4~6层与选择的第二个第二参与端对应的第4~6层交换,等等),如此,实现了快速地协同训练更新第一参与端的局部模型。
在本说明书一个或多个实施例中,第一参与端选择出多个第二参与端后,第一参与端和这多个第二参与端从当前的整个参与端集合(称为第一参与端集合,至少还包含了一些其他的第二参与端)中分离出来,构成一个新的参与端集合(称为第二参与端集合),在这种情况下,第一参与端可以转换为第二参与端集合对应的协同端(或者,为第二参与端集合指定一个其他的新的协同端,比如当前准确率最高的参与端),第一参与端的局部模型转换成为第二参与端集合的全局模型,第二参与端集合中的第二参与端也抛弃自己原来的全局模型,以该局部模型作为自己新的全局模型,后续该第一参与端的协同训练在第二参与端集合内部进行,而不再涉及外部。以此类推,最初的参与端集合(比如,第一参与端集合)能够随着协同训练的过程,逐步分解为多个更小的参与端集合,这些更小的参与端集合中的参与端更为相似,分解后的参与端集合相互之间不再协同,而是在自己内部协同,从而也能够减少干扰,更快地收敛,达到更好的个性化训练效果,在第一参与端可信有权威的情况下尤其高效,而且有利于隐私保护。
在本说明书一个或多个实施例中,在协同训练全局模型时,主动加入部分(比如,占总体样本的少量)错误标注的样本(故意用了错误的标签),但是在协同训练第一参与端的局部模型不会使用错误标注的样本,在这种情况下,错误标注的样本会使得全局模型更难收敛,而且会让全局模型学习到错误的知识,但是,确有助于第一参与端更准确地选择与自己相似的第二参与端,原因在于,第一,错误标注的样本抗拒模型收敛,使得第一参与端有更多轮动态选择第二参与端的机会,而且引入了更多的随机性,有助于跳出局部最优解,第二,相似的参与端不仅在正确预测方面有相似性,对于错误知识的反应(比如,被误导的程度等)可能也具有相似性,从而有助于增加选择角度,选择出与第一参与端相似性更全面的第二参与端。
根据上面的说明,本说明书一个或多个实施例提供的一种应用场景下,图1中方法的一种详细流程,如图2所示。在该应用场景下,采用服务端加作为客户端的N个参与端的架构,N个参与端协同训练机器学习模型。
图2中的流程可以包括以下步骤:
S202:服务端初始化一个全局模型。
S204:N个参与端分别为自己初始化一个局部模型。
S206:N个参与端分别选择自己的一个批次的数据,作为协同数据,通过联邦学习来协同更新全局模型。
S208:N个参与端分别利用自己当前批次的数据,使用当前的全局模型进行预测,得到包含多个预测值的预测向量。
S210:以参与端i为例(代表每个参与端),参与端i安全地计算它与其他N-1个参与端分别的预测向量的内积,得到N-1个值。
S212:参与端i根据预测向量的内积,从其他N-1个参与端中选择M个最相似的参与端,其中,M不大于N-1,M可以是动态变化的,而未必是固定值。若是通过设定相似度阈值的方式选择,则M可能等于N-1。
S214:参与端i与所选择的M个参与端协同更新自己的局部模型,更新过程比如包括:这些端分别根据自己的数据,计算局部模型的梯度信息,将这些端计算的梯度安全加和(比如,同态相加)求平均之后,汇总到参与端i,参与端i更新自己的局部模型。
S216:迭代更新全局模型,再根据更新结果继续迭代更新局部模型,直至模型收敛。
在图2的流程中,全局模型用于让参与端在每轮训练中,个性化地选择跟自己相似的其他参与端协同训练局部模型,局部模型是每个参与端相对更适用于自己的模型。
基于同样的思路,本说明书一个或多个实施例还提供了上述方法对应的装置和设备,如图3、图4所示。
图3为本说明书一个或多个实施例提供的一种个性化的隐私保护学习装置的结构示意图,虚线方框表示可选的模块,所述装置应用于第一参与端,所述装置包括:
模型确定模块302,确定全局模型和所述第一参与端的局部模型;
全局训练模块304,通过与多个第二参与端进行联邦学习,协同训练所述全局模型;
参与端选择模块306,根据所述协同训练后的全局模型,在所述多个第二参与端中选择第二参与端;
局部协同模块308,与所述选择出的第二参与端协同训练所述第一参与端的局部模型。
可选地,所述参与端选择模块306包括:
相似性确定子模块3062,根据所述协同训练后的全局模型,确定所述第一参与端与所述第二参与端之间的相似性;
选择子模块3064,根据所述相似性,在所述多个第二参与端中选择第二参与端。
可选地,所述相似性确定子模块3062,利用所述第一参与端与所述第二参与端分别使用的训练数据,在所述协同训练后的全局模型中进行预测;
根据所述预测的结果,确定所述第一参与端与所述第二参与端之间的相似性。
可选地,所述相似性确定子模块3062,通过所述预测,得到根据多个预测值生成的预测向量;
确定所述第一参与端与所述第二参与端分别对应的所述预测向量之间的内积;
根据所述内积,确定所述第一参与端与所述第二参与端之间的相似性。
可选地,所述全局训练模块304,采用第一指定批次的训练数据,与多个采用第二指定批次的训练数据的第二参与端进行联邦学习,协同训练所述全局模型;
所述选择子模块3064,根据所述协同训练后的全局模型,以及所述第一指定批次的训练数据、所述第二指定批次的训练数据,在所述多个第二参与端中选择第二参与端。
可选地,所述局部协同模块308,获取根据所述第二参与端的局部模型和训练数据生成的协同数据;
根据所述协同数据,以及所述第一参与端的训练数据,对所述第一参与端的局部模型进行协同训练。
可选地,所述协同数据包括进行隐私保护后的梯度信息。
图4为本说明书一个或多个实施例提供的一种个性化的隐私保护学习设备的结构示意图,所述设备应用于第一参与端,所述设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
确定全局模型和所述第一参与端的局部模型;
通过与多个第二参与端进行联邦学习,协同训练所述全局模型;
根据所述协同训练后的全局模型,在所述多个第二参与端中选择第二参与端;
与所述选择出的第二参与端协同训练所述第一参与端的局部模型。
处理器与存储器之间可以通过总线通信,设备还可以包括与其他设备通信的输入/输出接口。
基于同样的思路,本说明书一个或多个实施例提供了一种非易失性计算机存储介质,应用于第一参与端,所述介质存储有计算机可执行指令,所述计算机可执行指令设置为:
确定全局模型和所述第一参与端的局部模型;
通过与多个第二参与端进行联邦学习,协同训练所述全局模型;
根据所述协同训练后的全局模型,在所述多个第二参与端中选择第二参与端;
与所述选择出的第二参与端协同训练所述第一参与端的局部模型。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本说明书实施例可提供为方法、系统、或计算机程序产品。因此,本说明书实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本说明书实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书是参照根据本说明书实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本说明书可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、设备、非易失性计算机存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
以上所述仅为本说明书的一个或多个实施例而已,并不用于限制本说明书。对于本领域技术人员来说,本说明书的一个或多个实施例可以有各种更改和变化。凡在本说明书的一个或多个实施例的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书的权利要求范围之内。

Claims (15)

1.一种个性化的隐私保护学习方法,应用于第一参与端,所述方法包括:
确定全局模型和所述第一参与端的局部模型;
通过与多个第二参与端进行联邦学习,协同训练所述全局模型;
根据所述协同训练后的全局模型,在所述多个第二参与端中选择第二参与端;
与所述选择出的第二参与端协同训练所述第一参与端的局部模型。
2.如权利要求1所述的方法,所述根据所述协同训练后的全局模型,在所述多个第二参与端中选择第二参与端,具体包括:
根据所述协同训练后的全局模型,确定所述第一参与端与所述第二参与端之间的相似性;
根据所述相似性,在所述多个第二参与端中选择第二参与端。
3.如权利要求2所述的方法,所述根据所述协同训练后的全局模型,确定所述第一参与端与所述第二参与端之间的相似性,具体包括:
利用所述第一参与端与所述第二参与端分别使用的训练数据,在所述协同训练后的全局模型中进行预测;
根据所述预测的结果,确定所述第一参与端与所述第二参与端之间的相似性。
4.如权利要求3所述的方法,所述根据所述预测的结果,确定所述第一参与端与所述第二参与端之间的相似性,具体包括:
通过所述预测,得到根据多个预测值生成的预测向量;
确定所述第一参与端与所述第二参与端分别对应的所述预测向量之间的内积;
根据所述内积,确定所述第一参与端与所述第二参与端之间的相似性。
5.如权利要求2所述的方法,所述通过与多个第二参与端进行联邦学习,协同训练所述全局模型,具体包括:
采用第一指定批次的训练数据,与多个采用第二指定批次的训练数据的第二参与端进行联邦学习,协同训练所述全局模型;
所述根据所述协同训练后的全局模型,在所述多个第二参与端中选择第二参与端,具体包括:
根据所述协同训练后的全局模型,以及第三指定批次的训练数据,在所述多个第二参与端中选择第二参与端。
6.如权利要求1所述的方法,所述与所述选择出的第二参与端协同训练所述第一参与端的局部模型,具体包括:
获取根据所述第二参与端的局部模型和训练数据生成的协同数据;
根据所述协同数据,以及所述第一参与端的训练数据,对所述第一参与端的局部模型进行协同训练。
7.如权利要求6所述的方法,所述协同数据包括进行隐私保护后的梯度信息。
8.一种个性化的隐私保护学习装置,应用于第一参与端,所述装置包括:
模型确定模块,确定全局模型和所述第一参与端的局部模型;
全局训练模块,通过与多个第二参与端进行联邦学习,协同训练所述全局模型;
参与端选择模块,根据所述协同训练后的全局模型,在所述多个第二参与端中选择第二参与端;
局部协同模块,与所述选择出的第二参与端协同训练所述第一参与端的局部模型。
9.如权利要求8所述的装置,所述参与端选择模块包括:
相似性确定子模块,根据所述协同训练后的全局模型,确定所述第一参与端与所述第二参与端之间的相似性;
选择子模块,根据所述相似性,在所述多个第二参与端中选择第二参与端。
10.如权利要求9所述的装置,所述相似性确定子模块,利用所述第一参与端与所述第二参与端分别使用的训练数据,在所述协同训练后的全局模型中进行预测;
根据所述预测的结果,确定所述第一参与端与所述第二参与端之间的相似性。
11.如权利要求10所述的装置,所述相似性确定子模块,通过所述预测,得到根据多个预测值生成的预测向量;
确定所述第一参与端与所述第二参与端分别对应的所述预测向量之间的内积;
根据所述内积,确定所述第一参与端与所述第二参与端之间的相似性。
12.如权利要求9所述的装置,所述全局训练模块,采用第一指定批次的训练数据,与多个采用第二指定批次的训练数据的第二参与端进行联邦学习,协同训练所述全局模型;
所述选择子模块,根据所述协同训练后的全局模型,以及第三指定批次的训练数据,在所述多个第二参与端中选择第二参与端。
13.如权利要求8所述的装置,所述局部协同模块,获取根据所述第二参与端的局部模型和训练数据生成的协同数据;
根据所述协同数据,以及所述第一参与端的训练数据,对所述第一参与端的局部模型进行协同训练。
14.如权利要求13所述的装置,所述协同数据包括进行隐私保护后的梯度信息。
15.一种个性化的隐私保护学习设备,应用于第一参与端,所述设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
确定全局模型和所述第一参与端的局部模型;
通过与多个第二参与端进行联邦学习,协同训练所述全局模型;
根据所述协同训练后的全局模型,在所述多个第二参与端中选择第二参与端;
与所述选择出的第二参与端协同训练所述第一参与端的局部模型。
CN202110104747.1A 2021-01-26 2021-01-26 一种个性化的隐私保护学习方法、装置以及设备 Active CN112836829B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110104747.1A CN112836829B (zh) 2021-01-26 2021-01-26 一种个性化的隐私保护学习方法、装置以及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110104747.1A CN112836829B (zh) 2021-01-26 2021-01-26 一种个性化的隐私保护学习方法、装置以及设备

Publications (2)

Publication Number Publication Date
CN112836829A true CN112836829A (zh) 2021-05-25
CN112836829B CN112836829B (zh) 2022-08-02

Family

ID=75931597

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110104747.1A Active CN112836829B (zh) 2021-01-26 2021-01-26 一种个性化的隐私保护学习方法、装置以及设备

Country Status (1)

Country Link
CN (1) CN112836829B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115049011A (zh) * 2022-06-27 2022-09-13 支付宝(杭州)信息技术有限公司 确定联邦学习的训练成员模型贡献度的方法及装置
CN117476217A (zh) * 2023-12-26 2024-01-30 山东大学齐鲁医院 一种慢性心脏病病情发展趋势预测系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111190487A (zh) * 2019-12-30 2020-05-22 中国科学院计算技术研究所 一种建立数据分析模型的方法
CN111460443A (zh) * 2020-05-28 2020-07-28 南京大学 一种联邦学习中数据操纵攻击的安全防御方法
CN111678696A (zh) * 2020-06-17 2020-09-18 南昌航空大学 基于联邦学习的机械智能故障诊断方法
WO2020229684A1 (en) * 2019-05-16 2020-11-19 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Concepts for federated learning, client classification and training data similarity measurement
CN112100295A (zh) * 2020-10-12 2020-12-18 平安科技(深圳)有限公司 基于联邦学习的用户数据分类方法、装置、设备及介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020229684A1 (en) * 2019-05-16 2020-11-19 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Concepts for federated learning, client classification and training data similarity measurement
CN111190487A (zh) * 2019-12-30 2020-05-22 中国科学院计算技术研究所 一种建立数据分析模型的方法
CN111460443A (zh) * 2020-05-28 2020-07-28 南京大学 一种联邦学习中数据操纵攻击的安全防御方法
CN111678696A (zh) * 2020-06-17 2020-09-18 南昌航空大学 基于联邦学习的机械智能故障诊断方法
CN112100295A (zh) * 2020-10-12 2020-12-18 平安科技(深圳)有限公司 基于联邦学习的用户数据分类方法、装置、设备及介质

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115049011A (zh) * 2022-06-27 2022-09-13 支付宝(杭州)信息技术有限公司 确定联邦学习的训练成员模型贡献度的方法及装置
CN117476217A (zh) * 2023-12-26 2024-01-30 山东大学齐鲁医院 一种慢性心脏病病情发展趋势预测系统
CN117476217B (zh) * 2023-12-26 2024-03-26 山东大学齐鲁医院 一种慢性心脏病病情发展趋势预测系统

Also Published As

Publication number Publication date
CN112836829B (zh) 2022-08-02

Similar Documents

Publication Publication Date Title
CN109936525B (zh) 一种基于图结构模型的异常账号防控方法、装置以及设备
CN113297396B (zh) 基于联邦学习的模型参数更新方法、装置及设备
CN112836829B (zh) 一种个性化的隐私保护学习方法、装置以及设备
CN110020427B (zh) 策略确定方法和装置
CN110688528A (zh) 生成视频的分类信息的方法、装置、电子设备和介质
CN113011483B (zh) 一种模型训练和业务处理的方法及装置
CN109214193B (zh) 数据加密、机器学习模型训练方法、装置以及电子设备
CN112381216A (zh) 混合图神经网络模型的训练、预测方法和装置
CN117173504A (zh) 一种文生图模型的训练方法、装置、设备及存储介质
CN111507726B (zh) 一种报文生成方法、装置及设备
CN114819614A (zh) 数据处理方法、装置、系统及设备
CN116049761A (zh) 数据处理方法、装置及设备
KR20210059845A (ko) 딥러닝 기반의 상황인지 컨텐츠 추천을 위한 장치 및 이를 위한 방법
CN112102015B (zh) 物品推荐方法、元网络处理方法、装置、存储介质和设备
CN116402108A (zh) 一种模型训练及图数据的处理方法、装置、介质及设备
CN114638998A (zh) 模型更新方法、装置、系统及设备
CN113343085B (zh) 一种信息推荐方法、装置、存储介质及电子设备
CN115496162A (zh) 一种模型的训练方法、装置以及设备
CN115600090A (zh) 一种模型的所有权验证方法、装置、存储介质及电子设备
CN111178925B (zh) 用户画像的属性预测方法、装置、服务器和计算机可读介质
CN112819177B (zh) 一种个性化的隐私保护学习方法、装置以及设备
CN110942306A (zh) 数据处理方法、装置及电子设备
CN113111254B (zh) 推荐模型的训练方法、拟合方法、装置和电子设备
CN117218474A (zh) 模型训练方法、装置、电子设备及存储介质
US20220358397A1 (en) Moving decision boundaries in machine learning models

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