基于联邦学习的模型参数训练方法及装置与流程

文档序号:18798769发布日期:2019-09-29 20:17阅读:450来源:国知局
基于联邦学习的模型参数训练方法及装置与流程

本申请涉及数据处理技术领域,尤其涉及一种基于联邦学习的模型参数训练方法及装置。



背景技术:

在人工智能领域,传统的数据处理模式往往是一方收集数据,再转移到另一方进行处理、清洗并建模,最后把模型卖给第三方。但随着法规完善和监控愈加严格,如果数据离开收集方或者用户不清楚模型的具体用途,运营者可能会触犯法律。数据是以孤岛的形式存在的,解决孤岛的直接方案就是把数据整合到一方进行处理。但由于法律不允许运营者粗暴地进行数据聚合,故为解决此困境,人们研究提出了“联邦学习”。

联邦学习利用技术算法加密建造的模型,联邦双方在不用给出己方数据的情况下,也可进行模型训练得到模型参数,联邦学习通过加密机制下的参数交换方式保护用户数据隐私,而数据和模型本身不会进行传输,也不能反向破解对方数据,因此在数据层面不存在泄露的可能,能够在较高程度保持数据完整性的同时,保障数据隐私。

传统的联邦学习在联邦a,b双方进行模型训练时,为了保证训练过程中数据的保密性,需要借助第三方的协作者c进行加密训练。

然而,发明人发现传统的联邦学习都需要先找寻可信的协作者c,若没有协作者c,则传统的联邦学习的使用将被限制,降低了用户体验。



技术实现要素:

本申请实施例提供一种基于联邦学习的模型参数训练方法及装置,解决了传统的联邦学习的使用将被限制的问题,提高了用户体验。

第一方面,提供了一种基于联邦学习的模型参数训练方法,该方法可以包括:

第一终端接收第二终端发送第一加密映射模型,所述第一加密映射模型是所述第二终端在根据第一样本数据与第二样本数据的交集特征以及所述第二样本数据训练得到第一映射模型后,对所述第一映射模型采用第一秘密共享算法进行加密得到的,其中,所述第一样本数据为所述第一终端运行产生的数据,所述第二样本数据为第二终端运行产生的数据;

根据所述第一加密映射模型对所述第一样本数据缺失的特征进行预测,获取第一加密补全样本数据,所述第一加密补全样本数据为所述第一样本数据相对于第二样本数据缺失的且经过加密处理的特征数据;

根据当前加密模型参数、所述第一样本数据和所述第一加密补全样本数据,训练联邦学习模型,并对所述联邦学习模型,采用预设损失值算法和预设梯度值算法,获取所述联邦学习模型的第一秘密共享损失值和第一秘密共享梯度值,所述第一秘密共享损失值用于表征所述联邦学习模型的收敛程度,所述第一秘密共享梯度值用于表征所述第一秘密共享损失值的变化趋势;

若根据所述第一秘密共享损失值,检测出所述联邦学习模型处于收敛状态,则根据所述第一秘密共享梯度值和所述当前加密模型参数,采用预设模型参数算法,获取所述第一秘密共享梯度值对应的更新后的第一秘密共享模型参数;

根据所述第一秘密共享模型参数和所述第二终端发送的第二秘密共享模型参数,获取所述联邦学习模型的目标模型参数,所述第二秘密共享模型参数为所述第二终端的联邦学习模型处于收敛状态时的秘密共享模型参数。

在一个可选的实现中,接收第二终端发送第一加密映射模型之前,所述方法还包括:

基于所述第一样本数据与所述第二样本数据的交集特征,对所述第一样本数据进行训练,得到第二映射模型;

采用第二秘密共享算法,对所述第二映射模型进行加密,获取第二加密映射模型;

向所述第二终端发送所述第二加密映射模型,以供所述第二终端根据所述第二加密映射模型对所述第二样本数据缺失的特征进行预测得到第二加密补全样本数据。

在一个可选的实现中,基于所述第一样本数据与所述第二样本数据的交集特征,训练所述第一样本数据,得到第二映射模型,包括:

采用预设映射训练算法,对所述交集特征和所述第一样本数据中的非交集特征进行训练,得到所述交集特征与所述第一样本数据中非交集特征间的第二映射模型。

在一个可选的实现中,当所述第二秘密共享模型参数为所述第二终端根据所述当前加密模型参数、所述第二样本数据和第二加密补全样本数据得到的第二秘密共享梯度值对应的模型参数时,根据所述第一秘密共享模型参数和所述第二秘密共享模型参数,获取所述联邦学习模型的目标模型参数,包括:

根据所述第一秘密共享模型参数和所述第二秘密共享模型参数,获取非秘密共享的模型参数,所述非秘密共享的模型参数的维度与所述第一样本数据的维度不同;

根据所述第二映射模型,对所述非秘密共享的模型参数进行映射,获取所述联邦学习模型的目标模型参数,所述目标模型参数的维度与所述第一样本数据的维度相同。

在一个可选的实现中,当所述第二秘密共享模型参数为所述第二终端根据所述第一映射模型对第三秘密共享模型参数进行映射得到的模型参数时,其中,所述第三秘密共享模型参数为所述第二终端根据所述当前加密模型参数、所述第二样本数据和第二加密补全样本数据得到的第二秘密共享梯度值对应的模型参数,根据所述第一秘密共享模型参数和所述第二秘密共享模型参数,获取所述联邦学习模型的目标模型参数,包括:

根据所述第二映射模型,对所述第一秘密共享模型参数进行映射,获取第四秘密共享模型参数,所述第四秘密共享模型参数的维度与所述第一样本数据的维度相同;

根据所述第四秘密共享模型参数和所述第二秘密共享模型参数,获取所述联邦学习模型的目标模型参数。

在一个可选的实现中,所述方法还包括:

若根据所述第一秘密共享损失值,检测出所述联邦学习模型未处于收敛状态,则将所述第一秘密共享梯度值对应的更新后的第一秘密共享参数确定为新的当前加密模型参数;

根据当前加密模型参数、所述第一样本数据和所述第一加密补全样本数据,训练联邦学习模型,并对所述联邦学习模型,采用预设损失值算法和预设梯度值算法,获取所述联邦学习模型的第一秘密共享损失值和第一秘密共享梯度值,包括:

根据所述新的当前加密模型参数、所述第一样本数据和所述第一加密补全样本数据,训练新的联邦学习模型,并对所述新的联邦学习模型,采用预设损失值算法和预设梯度值算法,获取新的第一秘密共享损失值和新的第一秘密共享梯度值。

在一个可选的实现中,获取所述联邦学习模型的非秘密共享的模型参数之后,所述方法还包括:

根据所述第一样本数据和所述目标模型参数,采用预设测试算法,获取所述第一样本数据的样本数据预测分数。

第二方面,提供了一种基于联邦学习的模型参数训练装置,该装置可以包括:训练单元、获取单元和接收单元;

所述接收单元,用于接收第二终端发送第一加密映射模型,所述第一加密映射模型是所述第二终端在根据第一样本数据与第二样本数据的交集特征以及所述第二样本数据训练得到第一映射模型后,对所述第一映射模型采用第一秘密共享算法进行加密得到的,其中,所述第一样本数据为所述第一终端运行产生的数据,所述第二样本数据为第二终端运行产生的数据;

所述获取单元,用于根据所述第一加密映射模型对所述第一样本数据缺失的特征进行预测,获取第一加密补全样本数据,所述第一加密补全样本数据为所述第一样本数据相对于第二样本数据缺失的且经过加密处理的特征数据;

所述训练单元,用于根据当前加密模型参数、所述第一样本数据和所述第一加密补全样本数据,训练联邦学习模型;

所述获取单元,还用于对所述联邦学习模型,采用预设损失值算法和预设梯度值算法,获取所述联邦学习模型的第一秘密共享损失值和第一秘密共享梯度值,所述第一秘密共享损失值用于表征所述联邦学习模型的收敛程度,所述第一秘密共享梯度值用于表征所述第一秘密共享损失值的变化趋势;

所述获取单元,还用于若根据所述第一秘密共享损失值,检测出所述联邦学习模型处于收敛状态,则根据所述第一秘密共享梯度值和所述当前加密模型参数,采用预设模型参数算法,获取所述第一秘密共享梯度值对应的更新后的第一秘密共享模型参数;

根据所述第一秘密共享模型参数和所述第二终端发送的第二秘密共享模型参数,获取所述联邦学习模型的目标模型参数,所述第二秘密共享模型参数为所述第二终端的联邦学习模型处于收敛状态时的秘密共享模型参数。

在一个可选的实现中,所述装置还包括发送单元;

所述训练单元,还用于基于所述第一样本数据与所述第二样本数据的交集特征,对所述第一样本数据进行训练,得到第二映射模型;

所述获取单元,还用于采用第二秘密共享算法,对所述第二映射模型进行加密,获取第二加密映射模型;

所述发送单元,还用于向所述第二终端发送所述第二加密映射模型,以供所述第二终端根据所述第二加密映射模型对所述第二样本数据缺失的特征进行预测得到第二加密补全样本数据。

在一个可选的实现中,所述训练单元,还用于采用预设映射训练算法,对所述交集特征和所述第一样本数据中的非交集特征进行训练,得到所述交集特征与所述第一样本数据中非交集特征间的第二映射模型。

在一个可选的实现中,当所述第二秘密共享模型参数为所述第二终端根据所述当前加密模型参数、所述第二样本数据和第二加密补全样本数据得到的第二秘密共享梯度值对应的模型参数时,所述获取单元,还用于根据所述第一秘密共享模型参数和所述第二秘密共享模型参数,获取非秘密共享的模型参数,所述非秘密共享的模型参数的维度与所述第一样本数据的维度不同;

根据所述第二映射模型,对所述非秘密共享的模型参数进行映射,获取所述联邦学习模型的目标模型参数,所述目标模型参数的维度与所述第一样本数据的维度相同。

在一个可选的实现中,当所述第二秘密共享模型参数为所述第二终端根据所述第一映射模型对第三秘密共享模型参数进行映射得到的模型参数时,其中,所述第三秘密共享模型参数为所述第二终端根据所述当前加密模型参数、所述第二样本数据和第二加密补全样本数据得到的第二秘密共享梯度值对应的模型参数,所述获取单元,还用于根据所述第二映射模型,对所述第一秘密共享模型参数进行映射,获取第四秘密共享模型参数,所述第四秘密共享模型参数的维度与所述第一样本数据的维度相同;

根据所述第四秘密共享模型参数和所述第二秘密共享模型参数,获取所述联邦学习模型的目标模型参数。

在一个可选的实现中,所述装置还包括确定单元;

所述确定单元,还用于若根据所述第一秘密共享损失值,检测出所述联邦学习模型未处于收敛状态,则将所述第一秘密共享梯度值对应的更新后的第一秘密共享参数确定为新的当前加密模型参数;

所述训练单元,还用于根据所述新的当前加密模型参数、所述第一样本数据和所述第一加密补全样本数据,训练新的联邦学习模型;

所述获取单元,还用于对所述新的联邦学习模型,采用预设损失值算法和预设梯度值算法,获取新的第一秘密共享损失值和新的第一秘密共享梯度值。

在一个可选的实现中,所述获取单元,还用于根据所述第一样本数据和所述目标模型参数,采用预设测试算法,获取所述第一样本数据的样本数据预测分数。

第三方面,提供了一种电子设备,该电子设备包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;

存储器,用于存放计算机程序;

处理器,用于执行存储器上所存放的程序时,实现上述第一方面中任一所述的方法步骤。

第四方面,提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面中任一所述的方法步骤。

本发明上述实施例提供的基于联邦学习的模型参数训练方法中第一终端接收第二终端发送第一加密映射模型,第一加密映射模型是第二终端在根据第一终端中第一样本数据与第二终端中第二样本数据的交集特征和第二样本数据训练得到第一映射模型后,对第一映射模型采用第一秘密共享算法进行加密得到的;根据第一加密映射模型对第一样本数据缺失的特征进行预测,获取第一加密补全样本数据;根据当前加密模型参数、第一样本数据和第一加密补全样本数据,训练联邦学习模型,并根据联邦学习模型,采用预设损失值算法和预设梯度值算法,获取第一秘密共享损失值和第一秘密共享梯度值,若根据第一秘密共享损失值,检测出联邦学习模型处于收敛状态,则根据第一秘密共享梯度值和当前加密模型参数,采用预设模型参数算法,获取第一秘密共享梯度值对应的更新后的第一秘密共享模型参数;根据第一秘密共享模型参数和第二终端发送的第二秘密共享模型参数,获取联邦学习模型的目标模型参数。与现有技术相比,该方法采用秘密共享的方式不仅使训练联邦学习模型的过程不需要第三方的协作者的协助,而且有效的保护了自身的隐私数据,提高了用户体验。

附图说明

图1为本发明实施例提供的基于联邦学习的模型参数训练方法应用的系统构架示意图;

图2为本发明实施例提供的一种样本数据示意图;

图3为本发明实施例提供的一种基于联邦学习的模型参数训练方法的流程示意图;

图4为本发明实施例提供的另一种样本数据示意图;

图5为本发明实施例提供的一种基于联邦学习的模型参数训练装置的结构示意图;

图6为本发明实施例提供的一种电子设备的结构示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,并不是全部的实施例。基于本申请实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

“机器学习”是人工智能的核心研究领域之一,而如何在保护数据隐私、满足合法合规要求的前提下继续进行机器学习,是机器学习领域现在关注的一个趋势,在此背景下,人们研究提出了“联邦学习”的概念。联邦学习利用技术算法加密建造的模型,联邦双方在不用给出己方数据的情况下,也可进行模型训练得到模型参数,联邦学习通过加密机制下的参数交换方式保护用户数据隐私,数据和模型本身不会进行传输,也不能反猜对方数据,因此在数据层面不存在泄露的可能,也不违反更严格的数据保护法案如《通用数据保护条例》(generaldataprotectionregulation,gdpr)等,能够在较高程度保持数据完整性的同时,保障数据隐私。但,目前现有的横向联邦方法只能应用在联邦双方,如a方与b方的样本数据均有标注,且双方样本数据的特征维度相同的情况,而对于a,b双方样本数据的特征维度不同的情况不适用。为了解决这一问题,提出本发明基于联邦学习的模型参数训练方法的各个实施例。

本发明基于横向联邦学习,横向联邦学习是指在两个数据集(即可以是本发明实施例中所述的第一样本数据和第二样本数据)的用户特征重叠较多,而用户重叠较少的情况下,把数据集按照横向(即用户维度)进行切分,并取出双方用户的样本数据的特征相同,而用户不完全相同的部分样本数据进行训练。比如有两家不同地区的银行,它们的用户群体分别来自各自所在的地区,相互的交集很小。但是,它们的业务很相似,因此,记录的用户特征是相同的。

本发明实施例提供的基于联邦学习的模型参数训练方法可以应用在图1所示的系统构架中,该系统可以包括至少一个终端,每个终端为一个数据拥有方。至少一个终端间通过建立联邦学习模型,训练模型参数。

终端可以是移动电话、智能电话、笔记本电脑、数字广播接收器、个人数字助理(pda)、平板电脑(pad)等用户设备(userequipment,ue)、手持设备、车载设备、可穿戴设备、计算设备或连接到无线调制解调器的其它处理设备、移动台(mobilestation,ms)等。

其中,每个数据拥有方各自所持有的样本数据,且每个数据拥有方持有的样本数据为各自的业务系统运行产生的数据,其可以用一个矩阵来表示。矩阵的每一行代表一个样本数据,每一列代表一种样本数据的特征。同时,某些样本数据可能还包含标签数据。如果要对用户行为建立预测模型,就必须要有标签数据。设用户的特征数据为x,用户的标签数据为y。例如,在金融领域,标签数据y是用户的信用;在营销领域,标签数据y是用户的购买愿望;在教育领域,标签数据y是学生掌握知识的程度。用户特征x加标签数据y构成了完整的训练数据(x,y)(或称“标注数据”)。

下面以该系统包含两个数据拥有方,第一终端a和第二终端b为例进行模型参数的训练。其中,第一终端a的第一样本数据和第二终端b的第二样本数据的样本数据维度不同,特征维度有部分重叠,第一样本数据为第一终端运行产生的数据,第二样本数据为第二终端运行产生的数据。如图2所示,横轴(x轴)方向表示第一终端a和第二终端b的特征维度,纵轴(y轴)方向表示第一终端a和第二终端b的样本数据维度,第一终端a有少量标注数据(xa,ya),其包括标签数据ya、特征数据x1a和特征数据x2a,第二终端b有标注数据(xb,yb),其包括标签数据yb、特征数据x2b和特征数据x3b,且第一终端a和第二终端b的特征有部分重叠,即x2a和x2b为交集特征。

图3为本发明实施例提供的一种基于联邦学习的模型参数训练方法的流程示意图。如图3所示,该方法可以包括:

步骤310、第一终端a接收第二终端b发送第一加密映射模型。

在执行该步骤之前,第一终端a与第二终端b建立通信连接。

第一终端a与第二终端b分别根据第一样本数据的特征与第二样本数据的特征,确定第一样本数据与第二样本数据的交集特征;

第二终端b基于确定第一样本数据与第二样本数据的交集特征后,可以根据采用该预设映射训练算法,对交集特征和第二样本数据中的非交集特征进行映射训练,得到第一映射模型。具体的,第二终端b基于该重叠部分的交集,将第二样本数据的非交集特征与交集特征进行训练得到从交集特征到非交集特征的函数映射模型,即第一映射模型。

例如,结合图2,第二终端b定义为m个特征的集合,可以表示为:

对每一个特征训练一个从交集特征到非交集特征的函数映射模型,其可以表示为:

相应的,第一终端a可以采用预设映射训练算法,对交集特征和第一样本数据中的非交集特征进行映射训练,得到第二映射模型。具体的,第一终端a基于该重叠部分的交集特征,将第一样本数据的非交集特征与交集特征进行训练,得到从交集特征到非交集特征的函数映射模型,即第二映射模型。

例如,结合图2,第一终端a定义为n个特征的集合,可以表示为:

对每一个特征训练一个从交集特征到非交集特征的函数映射模型,其可以表示为:

回到步骤310,第二终端b对第一映射模型采用第一秘密共享算法,得到第一加密映射模型,并向第一终端a发送第一加密映射模型。

为了进一步提高数据的安全性,本发明实施例采用秘密共享方案对终端的数据进行安全保护。在秘密共享方案中,将需共享的秘密分成若干秘密份额,也称子密钥或碎片等,并安全地分发给若干参与者掌管。常用的秘密共享方案为(k,n)门限秘密共享方案,(k,n)门限秘密共享方案是把一个秘密分成若干秘密份额分给n个参与者掌管,这些参与者中k个或k个以上的参与者所构成的子集可以合作重构这个秘密,少于k个参与者所构成的子集无法重构这个秘密,k为门限值。

第二终端b采用第一秘密共享算法,将需共享的秘密分成两部分的子秘密份额,用其中的一部分子秘密份额对第一映射模型进行加密,得到第一加密映射模型。如第一加密映射模型可以表示为:函数y=<n>*x,x是输入的样本数据,<n>是第一加密映射模型的秘密共享模型参数。其中,由于<n>是加密的,故输出的y也是加密的。

可选地,第一终端a也可以对第二映射模型采用第二秘密共享算法,得到第二加密映射模型。其中,第一秘密共享算法与第二秘密共享算法是不同的秘密共享算法。

步骤320、第一终端a向第二终端b发送第二加密映射模型。

需要说明的是,步骤310和步骤320的序号表示二者是不同的执行过程,不表示二者的执行顺序,即步骤310和步骤320可以同时执行,也可以先后执行。

步骤330、第一终端a根据第一加密映射模型对第一样本数据缺失的特征进行预测得到第一加密补全样本数据。

其中,第一加密补全样本数据为第一样本数据相对于第二样本数据缺失的且经过加密处理的特征数据。

第一终端a在接收到该第一加密映射模型后,利用该第一加密映射模型对第一样本数据缺失的特征部分进行预测,得到第一加密补全样本数据。第一加密补全样本数据为图4中的x3a

可选地,第二终端b也可以根据第二加密映射模型对第二样本数据缺失的特征进行预测得到第二加密补全样本数据。

第二终端b在接收到第一终端发送的该第二加密映射模型后,利用该第二加密映射模型对第二样本数据缺失的特征部分进行预测,得到第二加密补全样本数据。第二加密补全样本数据为图4中的x1b

此时,第二加密补全样本数据与第二样本数据组成的特征维度与第一加密补全样本数据与第一样本数据组成的特征维度相同。

步骤340、第一终端a根据当前加密模型参数、第一样本数据和第一加密补全样本数据,训练联邦学习模型,并获取联邦学习模型处于收敛状态下的第一秘密共享参数。

其中,在初次训练联邦学习模型时,加密模型参数为预设模型参数。

第一终端a根据当前加密模型参数、第一样本数据和第一加密补全样本数据,训练出联邦学习模型后,对该联邦学习模型采用预设梯度值算法和预设损失值算法,获取该联邦学习模型的第一秘密共享损失值和第一秘密共享梯度值。其中,第一秘密共享损失值用于表征联邦学习模型的收敛程度,第一秘密共享梯度值用于表征第一秘密共享损失值的变化趋势。第一秘密共享损失值为加密的损失值,第一秘密共享梯度值为加密的梯度值。

预设损失值算法的公式可以表示为:

其中,l表示损失函数,θ表示当前模型参数,γ表示正则式参数,f表示平方和。

由于梯度值为损失值求导后的值,故第一终端a根据上述公式可得到第一秘密共享梯度值和第一秘密共享梯度值对应的第一秘密共享梯度值。

进一步的,第一终端a可以根据第一秘密共享损失值,检测联邦学习模型是否处于收敛状态。

具体的,采用迭代方式检测联邦学习模型是否处于收敛状态。在迭代过程中,若当前获取的第一秘密共享损失值与前一次获取的第一秘密共享损失值的差不大于预设损失阈值,则确定联邦学习模型处于收敛状态;若当前获取的第一秘密共享损失值与前一次获取的第一秘密共享损失值的差大于预设损失阈值,则确定联邦学习模型未处于收敛状态。其中,在当前获取的第一秘密共享损失值为首个第一秘密共享损失值时,前一次获取的第一秘密共享损失值为预设的第一秘密共享损失值,如0。

或者,若当前获取第一秘密共享损失值的次数已达到最大迭代次数,则确定联邦学习模型处于收敛状态。用户或者运维人员可根据需要设置预设损失阈值的大小,本发明实施例不做限制。

在联邦学习模型处于收敛状态时,第一终端a采用预设模型参数算法,获取第一秘密共享梯度值对应的更新后的第一秘密共享参数。

预设模型参数算法可以表示为:

θn+1=θn-η*g;

其中,g为梯度值,θn+1为梯度值g对应的更新后的模型参数,θn为当前模型参数,η为预设学习率,其大小可根据实际情况进行设置。

在联邦学习模型未处于收敛状态时,第一终端a将第一秘密共享梯度值对应的更新后的第一秘密共享参数确定为新的当前加密模型参数,并根据新的当前加密模型参数、第一样本数据和第一加密补全样本数据,训练新的联邦学习模型,并获取新的第一秘密共享损失值和新的第一秘密共享梯度值;

之后,根据迭代次数和新的第一秘密共享损失值,再次检测新的联邦学习模型是否处于收敛状态,以获取新的第一秘密共享损失值和新的第一秘密共享梯度值和收敛状态下新的第一秘密共享梯度值对应的更新后的第一秘密共享模型参数。

其中,结合图4,第一秘密共享模型参数的特征维度与第一终端a原有的特征维度不同。由于第一秘密共享模型参数包括特征数据x1a的模型参数、特征数据x2a的模型参数和第一加密补全样本数据x3a的模型参数,第一样本数据包括特征数据x1a的模型参数和特征数据x2a的模型参数,故第一秘密共享模型参数的特征维度与第一样本数据的特征维度不同。

可选地,为了将第一秘密共享模型参数的特征维度与第一样本数据的特征维度保持相同,第一终端a可以根据第二映射模型,对第一秘密共享模型参数进行映射,获取第四秘密共享模型参数,第四秘密共享模型参数的维度与第一样本数据的维度相同。

例如,以w代表模型参数为例,第一终端根据第二映射模型,将第一秘密共享模型参数中的秘密共享模型参数wt映射到秘密共享模型参数wc上,由此可以得到第四秘密共享模型参数其中,θ为映射模型的模型参数。

步骤350、第一终端a接收第二终端b发送的第二秘密共享模型参数。

在执行该步骤之前,第二终端可以根据当前加密模型参数、第二样本数据和第二加密补全样本数据,训练得到联邦学习模型,并获取该联邦学习模型的第二秘密共享损失值和第二秘密共享梯度值,以及获取该联邦学习模型在收敛状态下的第二秘密共享梯度值对应的第三秘密共享模型参数。

预设损失值算法的公式可以表示为:

其中,l表示损失函数,θ表示当前模型参数,γ表示正则式参数,f表示平方和。

第二终端b向第一终端发送该第二秘密共享模型参数。

进一步的,第二秘密共享模型参数的特征维度可以与第一终端a原有的特征维度相同或不同。

当第二秘密共享模型参数的特征维度与第一终端a原有的特征维度不同时,第二秘密共享模型参数是第二终端根据当前加密模型参数、第二样本数据和第二加密补全样本数据得到的。

此时,第二秘密共享模型参数的特征维度与第一终端a原有的特征维度不同。

由于第二秘密共享模型参数包括特征数据x2b的模型参数、特征数据x3b的模型参数和第二加密补全样本数据x1b的模型参数,第一样本数据包括特征数据x1a的模型参数和特征数据x2a的模型参数,故第二秘密共享模型参数的特征维度与第一样本数据的特征维度不同。

当第二秘密共享模型参数的特征维度与第一终端a原有的特征维度相同时,为了将第二秘密共享模型参数的特征维度与第一样本数据的特征维度保持相同,第二终端根据当前加密模型参数、第二样本数据和第二加密补全样本数据得到第三秘密共享模型参数,并根据第一映射模型,对第三秘密共享模型参数进行映射得到第二秘密共享模型参数,此时的第二秘密共享模型参数的特征维度与第一样本数据的特征维度相同。

步骤360、第一终端a根据第一秘密共享模型参数和第二秘密共享模型参数,获取联邦学习模型的目标模型参数。

当第二秘密共享模型参数为第二终端根据加密模型参数、第二样本数据和第二加密补全样本数据得到的第二秘密共享梯度值对应的第三秘密共享模型参数,即第二秘密共享模型参数的特征维度与第一终端a原有的特征维度不同时,第一终端根据第一秘密共享模型参数和第二秘密共享模型参数,获取非秘密共享的模型参数,非秘密共享的模型参数的维度与第一样本数据的维度不同;

根据第二映射模型,对非秘密共享的模型参数进行映射,获取联邦学习模型的目标模型参数,目标模型参数的维度与第一样本数据的维度相同。目标模型参数为非秘密共享的模型参数。

当第二秘密共享模型参数为第二终端b根据第二映射模型对第三秘密共享模型参数进行映射得到的模型参数,即第二秘密共享模型参数的特征维度与第一终端a原有的特征维度相同时,第一终端a根据第二映射模型,对第一秘密共享模型参数进行映射,获取第四秘密共享模型参数,第四秘密共享模型参数的维度与第一样本数据的维度相同;

之后,第一终端a根据第四秘密共享模型参数和第二秘密共享模型参数,获取联邦学习模型的目标模型参数。

可选地,第一终端a可以根据第一样本数据和目标模型参数,采用预设测试算法,获取第一样本数据的样本数据预测分数。

其中,预设测试算法的公式可以表示为:

θ表示目标模型参数;

可以理解的是,第二终端b也可以接收第一终端a发送的第一秘密共享模型参数,从而使第二终端b获取第二样本数据的样本数据预测分数,其具体过程可以参考第一终端a获取样本数据预测分数的执行过程,本发明实施例再次不再赘述。

本发明上述实施例提供的基于联邦学习的模型参数训练方法中第一终端接收第二终端发送第一加密映射模型,第一加密映射模型是第二终端在根据第一样本数据与第二样本数据的交集特征以及第二样本数据训练得到第一映射模型后,对第一映射模型采用第一秘密共享算法进行加密得到的;根据第一加密映射模型对第一样本数据缺失的特征进行预测,获取第一加密补全样本数据;根据当前加密模型参数、第一样本数据和第一加密补全样本数据,训练联邦学习模型,并对联邦学习模型,采用预设损失值算法和预设梯度值算法,获取第一秘密共享损失值和第一秘密共享梯度值,若根据第一秘密共享损失值,检测出联邦学习模型处于收敛状态,则根据第一秘密共享梯度值和当前加密模型参数,采用预设模型参数算法,获取第一秘密共享梯度值对应的更新后的第一秘密共享模型参数;根据第一秘密共享模型参数和第二终端发送的第二秘密共享模型参数,获取联邦学习模型的目标模型参数。与现有技术相比,该方法采用秘密共享的方式不仅使训练联邦学习模型的过程不需要第三方的协作者的协助,而且有效的保护了自身的隐私数据,提高了用户体验。

与上述方法对应的,本发明实施例还提供一种基于联邦学习的模型参数训练装置,如图5所示,该装置包括:接收单元510、获取单元520和训练单元530;

接收单元510,用于接收第二终端发送第一加密映射模型,所述第一加密映射模型是所述第二终端在根据第一样本数据与第二样本数据的交集特征以及所述第二样本数据训练得到第一映射模型后,对所述第一映射模型采用第一秘密共享算法进行加密得到的,其中,所述第一样本数据为所述第一终端运行产生的数据,所述第二样本数据为第二终端运行产生的数据;

获取单元520,用于根据所述第一加密映射模型对所述第一样本数据缺失的特征进行预测,获取第一加密补全样本数据,所述第一加密补全样本数据为所述第一样本数据相对于第二样本数据缺失的且经过加密处理的特征数据;

训练单元530,用于根据当前加密模型参数、所述第一样本数据和所述第一加密补全样本数据,训练联邦学习模型;

获取单元520,还用于对所述联邦学习模型,采用预设损失值算法和预设梯度值算法,获取所述联邦学习模型的第一秘密共享损失值和第一秘密共享梯度值,所述第一秘密共享损失值用于表征所述联邦学习模型的收敛程度,所述第一秘密共享梯度值用于表征所述第一秘密共享损失值的变化趋势;

获取单元520,还用于若根据所述第一秘密共享损失值,检测出所述联邦学习模型处于收敛状态,则根据所述第一秘密共享梯度值和所述当前加密模型参数,采用预设模型参数算法,获取所述第一秘密共享梯度值对应的更新后的第一秘密共享模型参数;

根据所述第一秘密共享模型参数和所述第二终端发送的第二秘密共享模型参数,获取所述联邦学习模型的目标模型参数,所述第二秘密共享模型参数为所述第二终端的联邦学习模型处于收敛状态时的秘密共享模型参数。

在一个可选的实现中,所述装置还包括发送单元540;

训练单元530,还用于基于所述第一样本数据与所述第二样本数据的交集特征,对所述第一样本数据进行训练,得到第二映射模型;

获取单元520,还用于采用第二秘密共享算法,对所述第二映射模型进行加密,获取第二加密映射模型;

发送单元540,还用于向所述第二终端发送所述第二加密映射模型,以供所述第二终端根据所述第二加密映射模型对所述第二样本数据缺失的特征进行预测得到第二加密补全样本数据。

在一个可选的实现中,训练单元530,还用于采用预设映射训练算法,对所述交集特征和所述第一样本数据中的非交集特征进行训练,得到所述交集特征与所述第一样本数据中非交集特征间的第二映射模型。

在一个可选的实现中,当所述第二秘密共享模型参数为所述第二终端根据所述当前加密模型参数、所述第二样本数据和第二加密补全样本数据得到的第二秘密共享梯度值对应的模型参数时,获取单元520,还用于根据所述第一秘密共享模型参数和所述第二秘密共享模型参数,获取非秘密共享的模型参数,所述非秘密共享的模型参数的维度与所述第一样本数据的维度不同;

根据所述第二映射模型,对所述非秘密共享的模型参数进行映射,获取所述联邦学习模型的目标模型参数,所述目标模型参数的维度与所述第一样本数据的维度相同。

在一个可选的实现中,当所述第二秘密共享模型参数为所述第二终端根据所述第一映射模型对第三秘密共享模型参数进行映射得到的模型参数时,其中,所述第三秘密共享模型参数为所述第二终端根据所述当前加密模型参数、所述第二样本数据和第二加密补全样本数据得到的第二秘密共享梯度值对应的模型参数,获取单元520,还用于根据所述第二映射模型,对所述第一秘密共享模型参数进行映射,获取第四秘密共享模型参数,所述第四秘密共享模型参数的维度与所述第一样本数据的维度相同;

根据所述第四秘密共享模型参数和所述第二秘密共享模型参数,获取所述联邦学习模型的目标模型参数。

在一个可选的实现中,所述装置还包括确定单元550;

确定单元550,还用于若根据所述第一秘密共享损失值,检测出所述联邦学习模型未处于收敛状态,则将所述第一秘密共享梯度值对应的更新后的第一秘密共享参数确定为新的当前加密模型参数;

训练单元530,还用于根据所述新的当前加密模型参数、所述第一样本数据和所述第一加密补全样本数据,训练新的联邦学习模型;

获取单元520,还用于对所述新的联邦学习模型,采用预设损失值算法和预设梯度值算法,获取新的第一秘密共享损失值和新的第一秘密共享梯度值。

在一个可选的实现中,获取单元520,还用于根据所述第一样本数据和所述目标模型参数,采用预设测试算法,获取所述第一样本数据的样本数据预测分数。

本发明上述实施例提供的基于联邦学习的模型参数训练装置的各功能单元的功能,可以通过上述各方法步骤来实现,因此,本发明实施例提供的基于联邦学习的模型参数训练装置中的各个单元的具体工作过程和有益效果,在此不复赘述。

本发明实施例还提供了一种电子设备,如图6所示,包括处理器610、通信接口620、存储器630和通信总线640,其中,处理器610,通信接口620,存储器630通过通信总线640完成相互间的通信。

存储器630,用于存放计算机程序;

处理器610,用于执行存储器630上所存放的程序时,实现如下步骤:

接收第二终端发送第一加密映射模型,所述第一加密映射模型是所述第二终端在根据第一样本数据与第二样本数据的交集特征以及所述第二样本数据训练得到第一映射模型后,对所述第一映射模型采用第一秘密共享算法进行加密得到的,其中,所述第一样本数据为所述第一终端运行产生的数据,所述第二样本数据为第二终端运行产生的数据;

根据所述第一加密映射模型对所述第一样本数据缺失的特征进行预测,获取第一加密补全样本数据,所述第一加密补全样本数据为所述第一样本数据相对于第二样本数据缺失的且经过加密处理的特征数据;

根据当前加密模型参数、所述第一样本数据和所述第一加密补全样本数据,训练联邦学习模型,并根据所述联邦学习模型,采用预设损失值算法和预设梯度值算法,获取所述联邦学习模型的第一秘密共享损失值和第一秘密共享梯度值,所述第一秘密共享损失值用于表征所述联邦学习模型的收敛程度,所述第一秘密共享梯度值用于表征所述第一秘密共享损失值的变化趋势;

若根据所述第一秘密共享损失值,检测出所述联邦学习模型处于收敛状态,则根据所述第一秘密共享梯度值和所述当前加密模型参数,采用预设模型参数算法,获取所述第一秘密共享梯度值对应的更新后的第一秘密共享模型参数;

根据所述第一秘密共享模型参数和所述第二终端发送的第二秘密共享模型参数,获取所述联邦学习模型的目标模型参数。

在一个可选的实现中,接收第二终端发送第一加密映射模型之前,所述方法还包括:

基于所述第一样本数据与所述第二样本数据的交集特征,对所述第一样本数据进行训练,得到第二映射模型;

采用第二秘密共享算法,对所述第二映射模型进行加密,获取第二加密映射模型;

向所述第二终端发送所述第二加密映射模型,以供所述第二终端根据所述第二加密映射模型对所述第二样本数据缺失的特征进行预测得到第二加密补全样本数据。

在一个可选的实现中,基于所述第一样本数据与所述第二样本数据的交集特征,训练所述第一样本数据,得到第二映射模型,包括:

采用预设映射训练算法,对所述交集特征和所述第一样本数据中的非交集特征进行训练,得到所述交集特征与所述第一样本数据中非交集特征间的第二映射模型。

在一个可选的实现中,当所述第二秘密共享模型参数为所述第二终端根据所述当前加密模型参数、所述第二样本数据和第二加密补全样本数据得到的第二秘密共享梯度值对应的模型参数时,根据所述第一秘密共享模型参数和所述第二秘密共享模型参数,获取所述联邦学习模型的目标模型参数,包括:

根据所述第一秘密共享模型参数和所述第二秘密共享模型参数,获取非秘密共享的模型参数,所述非秘密共享的模型参数的维度与所述第一样本数据的维度不同;

根据所述第二映射模型,对所述非秘密共享的模型参数进行映射,获取所述联邦学习模型的目标模型参数,所述目标模型参数的维度与所述第一样本数据的维度相同。

在一个可选的实现中,当所述第二秘密共享模型参数为所述第二终端根据所述第一映射模型对第三秘密共享模型参数进行映射得到的模型参数时,其中,所述第三秘密共享模型参数为所述第二终端根据所述当前加密模型参数、所述第二样本数据和第二加密补全样本数据得到的第二秘密共享梯度值对应的模型参数,根据所述第一秘密共享模型参数和所述第二秘密共享模型参数,获取所述联邦学习模型的目标模型参数,包括:

根据所述第二映射模型,对所述第一秘密共享模型参数进行映射,获取第四秘密共享模型参数,所述第四秘密共享模型参数的维度与所述第一样本数据的维度相同;

根据所述第四秘密共享模型参数和所述第二秘密共享模型参数,获取所述联邦学习模型的目标模型参数。

在一个可选的实现中,所述方法还包括:

若根据所述第一秘密共享损失值,检测出所述联邦学习模型未处于收敛状态,则将所述第一秘密共享梯度值对应的更新后的第一秘密共享参数确定为新的当前加密模型参数;

根据当前加密模型参数、所述第一样本数据和所述第一加密补全样本数据,训练联邦学习模型,并对所述联邦学习模型,采用预设损失值算法和预设梯度值算法,获取所述联邦学习模型的第一秘密共享损失值和第一秘密共享梯度值,包括:

根据所述新的当前加密模型参数、所述第一样本数据和所述第一加密补全样本数据,训练新的联邦学习模型,并对所述新的联邦学习模型,采用预设损失值算法和预设梯度值算法,获取新的第一秘密共享损失值和新的第一秘密共享梯度值。

在一个可选的实现中,获取所述联邦学习模型的非秘密共享的模型参数之后,所述方法还包括:

根据所述第一样本数据和所述目标模型参数,采用预设测试算法,获取所述第一样本数据的样本数据预测分数。

上述提到的通信总线可以是外设部件互连标准(peripheralcomponentinterconnect,pci)总线或扩展工业标准结构(extendedindustrystandardarchitecture,eisa)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

通信接口用于上述电子设备与其他设备之间的通信。

存储器可以包括随机存取存储器(randomaccessmemory,ram),也可以包括非易失性存储器(non-volatilememory,nvm),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。

上述的处理器可以是通用处理器,包括中央处理器(centralprocessingunit,cpu)、网络处理器(networkprocessor,np)等;还可以是数字信号处理器(digitalsignalprocessing,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现场可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。

由于上述实施例中电子设备的各器件解决问题的实施方式以及有益效果可以参见图3所示的实施例中的各步骤来实现,因此,本发明实施例提供的电子设备的具体工作过程和有益效果,在此不复赘述。

在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的基于联邦学习的模型参数训练方法。

在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的基于联邦学习的模型参数训练方法。

本领域内的技术人员应明白,本申请实施例中的实施例可提供为方法、系统、或计算机程序产品。因此,本申请实施例中可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例中可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本申请实施例中是参照根据本申请实施例中实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本申请实施例中的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请实施例中范围的所有变更和修改。

显然,本领域的技术人员可以对本申请实施例中实施例进行各种改动和变型而不脱离本申请实施例中实施例的精神和范围。这样,倘若本申请实施例中实施例的这些修改和变型属于本申请实施例中权利要求及其等同技术的范围之内,则本申请实施例中也意图包含这些改动和变型在内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1