基于多方的隐私数据联合训练模型的方法和装置与流程

文档序号:23590758发布日期:2021-01-08 14:27阅读:179来源:国知局

本说明书一个或多个实施例涉及计算机领域,尤其涉及基于多方的隐私数据联合训练模型的方法和装置。



背景技术:

随着人工智能、机器学习的普遍进步,可以基于多方的隐私数据联合训练模型,利用训练后的模型执行相应的预测任务。数据在建模中占有极其重要的地位,更多维、更丰富的数据有利于建立更准确、效果更好的模型。数据分布于多方,存在一定隐私安全问题,多方之间无法获取其他方的隐私数据。由于隐私保护及数据壁垒等问题,很难在保护各方的隐私数据的前提下,安全、全面的利用多方的隐私数据联合训练模型,因此训练后得到的模型的预测准确率不佳。

因此,希望能有改进的方案,能够安全、全面的利用多方的隐私数据联合训练模型,提高训练后得到的模型的预测准确率。



技术实现要素:

本说明书一个或多个实施例描述了一种基于多方的隐私数据联合训练模型的方法和装置,能够安全、全面的利用多方的隐私数据联合训练模型,提高训练后得到的模型的预测准确率。

第一方面,提供了一种基于多方的隐私数据联合训练模型的方法,所述多方包括第二方和多个第一方,所述多个第一方分别具有各自不同的第一对象集合中各对象的相同的第一特征项的第一隐私数据,以及相应的第一类别标签,所述多个第一方分别具有各自的第一子模型;所述第二方具有第二对象集合中各对象的第二特征项的第二隐私数据,以及相应的第二类别标签,所述第二对象集合与任一所述第一对象集合互相重叠,所述第二方具有第二子模型,所述方法由所述多个第一方中的任一第一方执行,方法包括:

利用本地第一对象集合中各对象的第一隐私数据和相应的第一类别标签,以及所述多个第一方中的其他第一方的第一隐私数据和相应的第一类别标签,基于横向联邦学习的方式,对本地的所述第一子模型进行第一阶段的训练,得到所述第一子模型对应的所述多个第一方共享的第一参数集合;

确定本地的第一对象集合与所述第二方具有的第二对象集合互相重叠的共同对象;

利用本地的所述共同对象分别对应的第一隐私数据,以及所述第二方的第二隐私数据和相应的第二类别标签,基于纵向联邦学习的方式,对本地的所述第一子模型进行第二阶段的训练,更新本地的所述第一子模型对应的第一参数集合;所述第二方得到其具有的第二子模型对应的第二参数集合。

在一种可能的实施方式中,所述多个第一方的业务覆盖范围分别属于不同地域,且提供相同的业务类型;

所述第一方和所述第二方的业务覆盖范围包括同一地域,且提供不同的业务类型。

在一种可能的实施方式中,所述第一类别标签和/或所述第二类别标签用于标识对象是否具有信用风险。

在一种可能的实施方式中,所述对象为用户。

在一种可能的实施方式中,所述基于横向联邦学习的方式,对本地的所述第一子模型进行第一阶段的训练,包括:

将本地第一对象集合中各对象的第一隐私数据作为所述第一子模型的输入,通过所述第一子模型输出第一预测类别;

根据各对象的第一预测类别和相应的第一类别标签,计算所述第一子模型的梯度;

将梯度进行加密,将加密后的梯度传输给服务器;以使所述服务器对从所述多个第一方分别接收到的加密后的梯度,通过安全聚合技术进行梯度聚合,得到聚合后的加密聚合梯度,再将加密聚合梯度分发给各个第一方;

从所述服务器接收所述加密聚合梯度,对所述加密聚合梯度解密,得到解密聚合梯度;

根据所述解密聚合梯度,确定所述第一子模型对应的所述多个第一方共享的第一参数集合。

进一步地,所述基于横向联邦学习的方式,对本地的所述第一子模型进行第一阶段的训练,还包括:

根据各对象的第一预测类别和相应的第一类别标签,确定第一预测损失;

当所述第一预测损失小于第一预设损失时,向所述服务器发送第一通知消息;

从所述服务器接收第二通知消息,所述第二通知消息用于通知所述多个第一方针对各自的第一子模型进行第一阶段的训练后的第一预测损失均小于第一预设损失;

确定第一阶段的训练完成。

在一种可能的实施方式中,所述确定本地的第一对象集合与所述第二方具有的第二对象集合互相重叠的共同对象,包括:

利用本地的第一对象集合,以及所述第二方具有的第二对象集合,基于加密的实体关联技术,建立所述第一对象集合中的对象与所述第二对象集合中的对象的关联关系;

根据所述关联关系,确定所述互相重叠的共同对象。

在一种可能的实施方式中,所述基于纵向联邦学习的方式,对本地的所述第一子模型进行第二阶段的训练,包括:

从合作方接收第一公钥,所述合作方还具有所述第一公钥对应的第一私钥;

将本地的所述共有对象分别对应的第一隐私数据输入所述第一子模型,通过所述第一子模型输出第一中间结果,对所述第一中间结果利用所述第一公钥进行加密后得到第一加密中间结果;

向所述第二方发送所述第一加密中间结果;以使所述第二方根据各共有对象的第一加密中间结果、第二加密中间结果和相应的第二类别标签确定第二加密预测损失;所述第二加密中间结果为所述第二方将本地的所述共有对象分别对应的第二隐私数据输入所述第二子模型,通过所述第二子模型输出第二中间结果,对所述第二中间结果利用所述第一公钥进行加密后得到的;

从所述第二方接收所述第二加密预测损失;根据所述第二加密预测损失,确定所述第一子模型的第一加密梯度;

将所述第一加密梯度发送给所述合作方,以使所述合作方利用所述第一私钥对所述第一加密梯度进行解密,得到第一解密梯度;

从所述合作方接收所述第一解密梯度,根据所述第一解密梯度,更新本地的所述第一子模型对应的第一参数集合。

进一步地,所述基于纵向联邦学习的方式,对本地的所述第一子模型进行第二阶段的训练,还包括:

从所述合作方接收第三通知消息,所述第三通知消息用于通知所述多个第一方针对各自的第一子模型进行第二阶段的训练后的第二预测损失均小于第二预设损失;所述第二预测损失为所述合作方从所述第二方接收所述第二加密预测损失,利用所述第一私钥对所述第二加密预测损失进行解密得到的;

确定第二阶段的训练完成。

第二方面,提供了一种基于多方的隐私数据联合训练模型的装置,所述多方包括第二方和多个第一方,所述多个第一方分别具有各自不同的第一对象集合中各对象的相同的第一特征项的第一隐私数据,以及相应的第一类别标签,所述多个第一方分别具有各自的第一子模型;所述第二方具有第二对象集合中各对象的第二特征项的第二隐私数据,以及相应的第二类别标签,所述第二对象集合与任一所述第一对象集合互相重叠,所述第二方具有第二子模型,所述装置设置于所述多个第一方中的任一第一方,装置包括:

第一训练单元,用于利用本地第一对象集合中各对象的第一隐私数据和相应的第一类别标签,以及所述多个第一方中的其他第一方的第一隐私数据和相应的第一类别标签,基于横向联邦学习的方式,对本地的所述第一子模型进行第一阶段的训练,得到所述第一子模型对应的所述多个第一方共享的第一参数集合;

对象确定单元,用于确定本地的第一对象集合与所述第二方具有的第二对象集合互相重叠的共同对象;

第二训练单元,用于利用本地的所述对象确定单元确定的共同对象分别对应的第一隐私数据,以及所述第二方的第二隐私数据和相应的第二类别标签,基于纵向联邦学习的方式,对本地的所述第一子模型进行第二阶段的训练,更新本地的所述第一训练单元得到的所述第一子模型对应的第一参数集合;所述第二方得到其具有的第二子模型对应的第二参数集合。

第三方面,提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行第一方面的方法。

第四方面,提供了一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现第一方面的方法。

通过本说明书实施例提供的方法和装置,多个第一方分别具有各自不同的第一对象集合中各对象的相同的第一特征项的第一隐私数据,以及相应的第一类别标签,所述多个第一方分别具有各自的第一子模型;所述第二方具有第二对象集合中各对象的第二特征项的第二隐私数据,以及相应的第二类别标签,所述第二对象集合与任一所述第一对象集合互相重叠,所述第二方具有第二子模型,所述多个第一方中的任一第一方首先利用本地第一对象集合中各对象的第一隐私数据和相应的第一类别标签,以及所述多个第一方中的其他第一方的第一隐私数据和相应的第一类别标签,基于横向联邦学习的方式,对本地的所述第一子模型进行第一阶段的训练,得到所述第一子模型对应的所述多个第一方共享的第一参数集合;然后确定本地的第一对象集合与所述第二方具有的第二对象集合互相重叠的共同对象;最后利用本地的所述共同对象分别对应的第一隐私数据,以及所述第二方的第二隐私数据和相应的第二类别标签,基于纵向联邦学习的方式,对本地的所述第一子模型进行第二阶段的训练,更新本地的所述第一子模型对应的第一参数集合;所述第二方得到其具有的第二子模型对应的第二参数集合。由上可见,本说明书实施例,不同于已有的仅利用横向联邦学习或纵向联邦学习训练模型的方法,将两者结合能够充分利用不同方、不同特征项或不同对象的数据,在保证数据不出域的情况下,可以多方进行联合建模,解决了数据孤岛的问题,提升模型的预测能力,能够安全、全面的利用多方的隐私数据联合训练模型,提高训练后得到的模型的预测准确率。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。

图1为本说明书披露的一个实施例的实施场景示意图;

图2示出根据一个实施例的基于多方的隐私数据联合训练模型的方法流程图;

图3示出根据一个实施例的基于多方的隐私数据联合训练模型的装置的示意性框图。

具体实施方式

下面结合附图,对本说明书提供的方案进行描述。

图1为本说明书披露的一个实施例的实施场景示意图。该实施场景涉及基于多方的隐私数据联合训练模型。参照图1,所述多方包括第二方和多个第一方,例如,第一方为a1、a2……或an,第二方为b,所述多个第一方分别具有各自不同的第一对象集合中各对象的相同的第一特征项的第一隐私数据,以及相应的第一类别标签,所述多个第一方分别具有各自的第一子模型,例如模型a;所述第二方具有第二对象集合中各对象的第二特征项的第二隐私数据,以及相应的第二类别标签,所述第二对象集合与任一所述第一对象集合互相重叠,所述第二方具有第二子模型,例如模型b。

本说明书实施例中,可以根据不同机构的业务类型来确定该机构为第一方或第二方。可以理解的是,机构所提供的业务类型,决定了该机构所拥有的对象的哪些特征项的隐私数据。多个第一方具有各自不同的第一对象集合,通常地,对象与地域相关联,也就是说,不同的第一方通常对应不同的地域,第二方具有的第二对象集合与任一所述第一对象集合互相重叠,也就是说,第二方对应的地域通常相对于任一第一方范围更广。

在一个示例中,所述多个第一方的业务覆盖范围分别属于不同地域,且提供相同的业务类型;所述第一方和所述第二方的业务覆盖范围包括同一地域,且提供不同的业务类型。

在一个示例中,所述第一类别标签和/或所述第二类别标签用于标识对象是否具有信用风险。

在一个示例中,所述对象为用户。

本说明书实施例中,先结合多个第一方的第一隐私数据和相应地第一类别标签,对第一子模型进行第一阶段的训练,在此基础上,确定任一第一方与第二方的共同对象,结合二者的共同对象的第一隐私数据、第二隐私数据和相应地第二类别标签,对第一子模型和第二子模型进行第二阶段的训练。在两个阶段的训练过程中,能够安全、全面的利用多方的隐私数据,提高训练后得到的模型的预测准确率。

本说明书实施例中,可以利用训练后的模型执行预测任务,在针对目标对象进行预测时,先要确定该目标对象对应的归属第一方,也就是说,确定多个第一方中拥有该目标对象的第一隐私数据的第一方,将该第一方作为目标对象的归属第一方,然后利用归属第一方的第一子模型和第二方的第二子模型,共同确定该目标对象的预测类别。

其中,比较典型的预测任务为预测用户是否具有信用风险,第一方a1……an代表拥有类似业务或相似数据结构的机构,例如不同地区的银行,每个第一方都存有不同用户标识以及对应的信用风险相关的数据特征。第二方b代表与第一方a1……an具有不同业务类型,但会与任一第一方有重复用户标识的机构,例如互联网金融机构,第二方中同样存有一定用户标识以及对应的个体相关特征,但这些特征的维度可能与第一方是不同维度的。同时在整个模型训练流程中还需要服务器c参与第一阶段的训练,以及合作方d参与第二阶段的训练,二者的作用均需要一定安全性及可靠性,能够保证数据的安全传入与传出,并且在内部不会泄漏或对加密后的数据做任何处理操作。

图2示出根据一个实施例的基于多方的隐私数据联合训练模型的方法流程图,所述多方包括第二方和多个第一方,所述多个第一方分别具有各自不同的第一对象集合中各对象的相同的第一特征项的第一隐私数据,以及相应的第一类别标签,所述多个第一方分别具有各自的第一子模型;所述第二方具有第二对象集合中各对象的第二特征项的第二隐私数据,以及相应的第二类别标签,所述第二对象集合与任一所述第一对象集合互相重叠,所述第二方具有第二子模型,所述方法由所述多个第一方中的任一第一方执行,该方法可以基于图1所示的实施场景。如图2所示,该实施例中基于多方的隐私数据联合训练模型的方法包括以下步骤:步骤21,利用本地第一对象集合中各对象的第一隐私数据和相应的第一类别标签,以及所述多个第一方中的其他第一方的第一隐私数据和相应的第一类别标签,基于横向联邦学习的方式,对本地的所述第一子模型进行第一阶段的训练,得到所述第一子模型对应的所述多个第一方共享的第一参数集合;步骤22,确定本地的第一对象集合与所述第二方具有的第二对象集合互相重叠的共同对象;步骤23,利用本地的所述共同对象分别对应的第一隐私数据,以及所述第二方的第二隐私数据和相应的第二类别标签,基于纵向联邦学习的方式,对本地的所述第一子模型进行第二阶段的训练,更新本地的所述第一子模型对应的第一参数集合;所述第二方得到其具有的第二子模型对应的第二参数集合。下面描述以上各个步骤的具体执行方式。

首先在步骤21,利用本地第一对象集合中各对象的第一隐私数据和相应的第一类别标签,以及所述多个第一方中的其他第一方的第一隐私数据和相应的第一类别标签,基于横向联邦学习的方式,对本地的所述第一子模型进行第一阶段的训练,得到所述第一子模型对应的所述多个第一方共享的第一参数集合。可以理解的是,多个第一方具有不同的第一对象集合,基于横向联邦学习的方式,有利于充分利用不同对象的第一隐私数据和相应的第一类别标签。

联邦学习又名联邦机器学习,联合学习,联盟学习。联邦机器学习是一个机器学习框架,能有效帮助多个机构在满足用户隐私保护、数据安全和政府法规的要求下,进行数据使用和机器学习建模。

其中,基于横向联邦学习的方式,也可以称为“特征对齐的联邦学习方式”。该方式主要用于各参与者的数据特征重叠较多,而样本标识重叠较少的情况。例如,利用两家不同地区的银行数据分别训练模型,最终进行训练参数共享。不同地区的银行虽然用户群体不同,但往往业务是类似的,因此在数据特征方面,存在很多共性,利用特征对齐的方法进行信用风险模型的训练与评估预测。

在一个示例中,所述基于横向联邦学习的方式,对本地的所述第一子模型进行第一阶段的训练,包括:

将本地第一对象集合中各对象的第一隐私数据作为所述第一子模型的输入,通过所述第一子模型输出第一预测类别;

根据各对象的第一预测类别和相应的第一类别标签,计算所述第一子模型的梯度;

将梯度进行加密,将加密后的梯度传输给服务器;以使所述服务器对从所述多个第一方分别接收到的加密后的梯度,通过安全聚合技术进行梯度聚合,得到聚合后的加密聚合梯度,再将加密聚合梯度分发给各个第一方;

从所述服务器接收所述加密聚合梯度,对所述加密聚合梯度解密,得到解密聚合梯度;

根据所述解密聚合梯度,确定所述第一子模型对应的所述多个第一方共享的第一参数集合。

其中,为了保证模型训练的梯度参数在聚合(包括求和或平均)时数据不会直接泄漏,可以使用加密后的梯度参数进行安全聚合,安全聚合技术目前有很多种,本说明书实施例对此不做限定。

进一步地,所述基于横向联邦学习的方式,对本地的所述第一子模型进行第一阶段的训练,还包括:

根据各对象的第一预测类别和相应的第一类别标签,确定第一预测损失;

当所述第一预测损失小于第一预设损失时,向所述服务器发送第一通知消息;

从所述服务器接收第二通知消息,所述第二通知消息用于通知所述多个第一方针对各自的第一子模型进行第一阶段的训练后的第一预测损失均小于第一预设损失;

确定第一阶段的训练完成。

可以理解的是,上述过程用于确定多个第一方分别具有的第一子模型的残差收敛,以完成第一阶段的训练。这个训练过程不需要依赖特定的模型结构,第一子模型可以采用任何机器学习模型或深度学习模型的模型结构。

然后在步骤22,确定本地的第一对象集合与所述第二方具有的第二对象集合互相重叠的共同对象。可以理解的是,第一对象集合和第二对象集合互相重叠,意味着第一对象集合和第二对象集合存在非空的交集,例如,第一对象集合包括对象e、f、g、h,第二对象集合包括对象e、f、j、k,则二者互相重叠的共同对象为e、f。

在一个示例中,所述确定本地的第一对象集合与所述第二方具有的第二对象集合互相重叠的共同对象,包括:

利用本地的第一对象集合,以及所述第二方具有的第二对象集合,基于加密的实体关联技术,建立所述第一对象集合中的对象与所述第二对象集合中的对象的关联关系;

根据所述关联关系,确定所述互相重叠的共同对象。

其中,加密的实体关联技术,可以通过将对象标识采用同一种加密方法加密后,再对加密后的对象标识进行查询,以建立所述第一对象集合中的对象与所述第二对象集合中的对象的关联关系。

最后在步骤23,利用本地的所述共同对象分别对应的第一隐私数据,以及所述第二方的第二隐私数据和相应的第二类别标签,基于纵向联邦学习的方式,对本地的所述第一子模型进行第二阶段的训练,更新本地的所述第一子模型对应的第一参数集合;所述第二方得到其具有的第二子模型对应的第二参数集合。可以理解的是,对于第一子模型的模型参数,使用第一阶段的训练结果作为第二阶段的初始结果,对于第二子模型需要进行模型参数的初始化。

其中,基于纵向联邦学习的方式,也可以称为“样本对齐的联邦学习方式”。该方式普遍用于样本之间重叠的用户标识较多,而数据特征重叠较少的情况。例如,同一地区的银行及互联网公司,其用户群体往往有很大交集,但由于业务范畴的不同,几乎很少有重叠的数据特征。

在一个示例中,所述基于纵向联邦学习的方式,对本地的所述第一子模型进行第二阶段的训练,包括:

从合作方接收第一公钥,所述合作方还具有所述第一公钥对应的第一私钥;

将本地的所述共有对象分别对应的第一隐私数据输入所述第一子模型,通过所述第一子模型输出第一中间结果,对所述第一中间结果利用所述第一公钥进行加密后得到第一加密中间结果;

向所述第二方发送所述第一加密中间结果;以使所述第二方根据各共有对象的第一加密中间结果、第二加密中间结果和相应的第二类别标签确定第二加密预测损失;所述第二加密中间结果为所述第二方将本地的所述共有对象分别对应的第二隐私数据输入所述第二子模型,通过所述第二子模型输出第二中间结果,对所述第二中间结果利用所述第一公钥进行加密后得到的;

从所述第二方接收所述第二加密预测损失;根据所述第二加密预测损失,确定所述第一子模型的第一加密梯度;

将所述第一加密梯度发送给所述合作方,以使所述合作方利用所述第一私钥对所述第一加密梯度进行解密,得到第一解密梯度;

从所述合作方接收所述第一解密梯度,根据所述第一解密梯度,更新本地的所述第一子模型对应的第一参数集合。

可以理解的是,在第二阶段的训练过程中,第二方可以根据所述第二加密预测损失,确定所述第二子模型的第二加密梯度;将所述第二加密梯度发送给所述合作方,以使所述合作方利用所述第一私钥对所述第二加密梯度进行解密,得到第二解密梯度;从所述合作方接收所述第二解密梯度,根据所述第二解密梯度,更新本地的所述第二子模型对应的第二参数集合。

进一步地,所述基于纵向联邦学习的方式,对本地的所述第一子模型进行第二阶段的训练,还包括:

从所述合作方接收第三通知消息,所述第三通知消息用于通知所述多个第一方针对各自的第一子模型进行第二阶段的训练后的第二预测损失均小于第二预设损失;所述第二预测损失为所述合作方从所述第二方接收所述第二加密预测损失,利用所述第一私钥对所述第二加密预测损失进行解密得到的;

确定第二阶段的训练完成。

可以理解的是,上述过程用于确定多个第一方分别具有的第一子模型和第二具有的第二子模型的总的残差收敛,以完成第二阶段的训练。这个训练过程不需要依赖特定的模型结构,第一子模型和第二子模型可以采用任何机器学习模型或深度学习模型的模型结构。

通过本说明书实施例提供的方法,多个第一方分别具有各自不同的第一对象集合中各对象的相同的第一特征项的第一隐私数据,以及相应的第一类别标签,所述多个第一方分别具有各自的第一子模型;所述第二方具有第二对象集合中各对象的第二特征项的第二隐私数据,以及相应的第二类别标签,所述第二对象集合与任一所述第一对象集合互相重叠,所述第二方具有第二子模型,所述多个第一方中的任一第一方首先利用本地第一对象集合中各对象的第一隐私数据和相应的第一类别标签,以及所述多个第一方中的其他第一方的第一隐私数据和相应的第一类别标签,基于横向联邦学习的方式,对本地的所述第一子模型进行第一阶段的训练,得到所述第一子模型对应的所述多个第一方共享的第一参数集合;然后确定本地的第一对象集合与所述第二方具有的第二对象集合互相重叠的共同对象;最后利用本地的所述共同对象分别对应的第一隐私数据,以及所述第二方的第二隐私数据和相应的第二类别标签,基于纵向联邦学习的方式,对本地的所述第一子模型进行第二阶段的训练,更新本地的所述第一子模型对应的第一参数集合;所述第二方得到其具有的第二子模型对应的第二参数集合。由上可见,本说明书实施例,不同于已有的仅利用横向联邦学习或纵向联邦学习训练模型的方法,将两者结合能够充分利用不同方、不同特征项或不同对象的数据,在保证数据不出域的情况下,可以多方进行联合建模,解决了数据孤岛的问题,提升模型的预测能力,能够安全、全面的利用多方的隐私数据联合训练模型,提高训练后得到的模型的预测准确率。

根据另一方面的实施例,还提供一种基于多方的隐私数据联合训练模型的装置,该装置用于执行本说明书实施例提供的基于多方的隐私数据联合训练模型的方法。图3示出根据一个实施例的基于多方的隐私数据联合训练模型的装置的示意性框图。如图3所示,该装置300包括:

第一训练单元31,用于利用本地第一对象集合中各对象的第一隐私数据和相应的第一类别标签,以及所述多个第一方中的其他第一方的第一隐私数据和相应的第一类别标签,基于横向联邦学习的方式,对本地的所述第一子模型进行第一阶段的训练,得到所述第一子模型对应的所述多个第一方共享的第一参数集合;

对象确定单元32,用于确定本地的第一对象集合与所述第二方具有的第二对象集合互相重叠的共同对象;

第二训练单元33,用于利用本地的所述对象确定单元32确定的共同对象分别对应的第一隐私数据,以及所述第二方的第二隐私数据和相应的第二类别标签,基于纵向联邦学习的方式,对本地的所述第一子模型进行第二阶段的训练,更新本地的所述第一训练单元31得到的所述第一子模型对应的第一参数集合;所述第二方得到其具有的第二子模型对应的第二参数集合。

可选地,作为一个实施例,所述多个第一方的业务覆盖范围分别属于不同地域,且提供相同的业务类型;

所述第一方和所述第二方的业务覆盖范围包括同一地域,且提供不同的业务类型。

可选地,作为一个实施例,所述第一类别标签和/或所述第二类别标签用于标识对象是否具有信用风险。

可选地,作为一个实施例,所述对象为用户。

可选地,作为一个实施例,所述第一训练单元31包括:

预测子单元,用于将本地第一对象集合中各对象的第一隐私数据作为所述第一子模型的输入,通过所述第一子模型输出第一预测类别;

梯度计算子单元,用于根据所述预测子单元得到的各对象的第一预测类别和相应的第一类别标签,计算所述第一子模型的梯度;

加密传输子单元,用于将所述梯度计算子单元得到的梯度进行加密,将加密后的梯度传输给服务器;以使所述服务器对从所述多个第一方分别接收到的加密后的梯度,通过安全聚合技术进行梯度聚合,得到聚合后的加密聚合梯度,再将加密聚合梯度分发给各个第一方;

解密接收子单元,用于从所述服务器接收所述加密聚合梯度,对所述加密聚合梯度解密,得到解密聚合梯度;

参数更新子单元,用于根据所述解密接收子单元得到的解密聚合梯度,确定所述第一子模型对应的所述多个第一方共享的第一参数集合。

进一步地,所述第一训练单元31还包括:

损失确定子单元,用于根据所述预测子单元得到的各对象的第一预测类别和相应的第一类别标签,确定第一预测损失;

第一发送子单元,用于当所述损失确定子单元确定的第一预测损失小于第一预设损失时,向所述服务器发送第一通知消息;

第一接收子单元,用于从所述服务器接收第二通知消息,所述第二通知消息用于通知所述多个第一方针对各自的第一子模型进行第一阶段的训练后的第一预测损失均小于第一预设损失;

第一完成确定子单元,用于确定第一阶段的训练完成。

可选地,作为一个实施例,所述对象确定单元32包括:

关联子单元,用于利用本地的第一对象集合,以及所述第二方具有的第二对象集合,基于加密的实体关联技术,建立所述第一对象集合中的对象与所述第二对象集合中的对象的关联关系;

对象确定子单元,用于根据所述关联子单元建立的关联关系,确定所述互相重叠的共同对象。

可选地,作为一个实施例,所述第二训练单元33包括:

第二接收子单元,用于从合作方接收第一公钥,所述合作方还具有所述第一公钥对应的第一私钥;

加密输出子单元,用于将本地的所述共有对象分别对应的第一隐私数据输入所述第一子模型,通过所述第一子模型输出第一中间结果,对所述第一中间结果利用所述第二接收子单元接收的第一公钥进行加密后得到第一加密中间结果;

第二发送子单元,用于向所述第二方发送所述加密输出子单元得到的第一加密中间结果;以使所述第二方根据各共有对象的第一加密中间结果、第二加密中间结果和相应的第二类别标签确定第二加密预测损失;所述第二加密中间结果为所述第二方将本地的所述共有对象分别对应的第二隐私数据输入所述第二子模型,通过所述第二子模型输出第二中间结果,对所述第二中间结果利用所述第一公钥进行加密后得到的;

所述第二接收子单元,还用于从所述第二方接收所述第二加密预测损失;根据所述第二加密预测损失,确定所述第一子模型的第一加密梯度;

所述第二发送子单元,还用于将所述第一加密梯度发送给所述合作方,以使所述合作方利用所述第一私钥对所述第一加密梯度进行解密,得到第一解密梯度;

所述第二接收子单元,还用于从所述合作方接收所述第一解密梯度,根据所述第一解密梯度,更新本地的所述第一子模型对应的第一参数集合。

进一步地,所述第二接收子单元,还用于从所述合作方接收第三通知消息,所述第三通知消息用于通知所述多个第一方针对各自的第一子模型进行第二阶段的训练后的第二预测损失均小于第二预设损失;所述第二预测损失为所述合作方从所述第二方接收所述第二加密预测损失,利用所述第一私钥对所述第二加密预测损失进行解密得到的;

所述第二训练单元33还包括:

第二完成确定子单元,用于确定第二阶段的训练完成。

通过本说明书实施例提供的装置,多个第一方分别具有各自不同的第一对象集合中各对象的相同的第一特征项的第一隐私数据,以及相应的第一类别标签,所述多个第一方分别具有各自的第一子模型;所述第二方具有第二对象集合中各对象的第二特征项的第二隐私数据,以及相应的第二类别标签,所述第二对象集合与任一所述第一对象集合互相重叠,所述第二方具有第二子模型,所述多个第一方中的任一第一方的第一训练单元31首先利用本地第一对象集合中各对象的第一隐私数据和相应的第一类别标签,以及所述多个第一方中的其他第一方的第一隐私数据和相应的第一类别标签,基于横向联邦学习的方式,对本地的所述第一子模型进行第一阶段的训练,得到所述第一子模型对应的所述多个第一方共享的第一参数集合;然后对象确定单元32确定本地的第一对象集合与所述第二方具有的第二对象集合互相重叠的共同对象;最后第二训练单元33利用本地的所述共同对象分别对应的第一隐私数据,以及所述第二方的第二隐私数据和相应的第二类别标签,基于纵向联邦学习的方式,对本地的所述第一子模型进行第二阶段的训练,更新本地的所述第一子模型对应的第一参数集合;所述第二方得到其具有的第二子模型对应的第二参数集合。由上可见,本说明书实施例,不同于已有的仅利用横向联邦学习或纵向联邦学习训练模型的方法,将两者结合能够充分利用不同方、不同特征项或不同对象的数据,在保证数据不出域的情况下,可以多方进行联合建模,解决了数据孤岛的问题,提升模型的预测能力,能够安全、全面的利用多方的隐私数据联合训练模型,提高训练后得到的模型的预测准确率。

根据另一方面的实施例,还提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行结合图2所描述的方法。

根据再一方面的实施例,还提供一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现结合图2所描述的方法。

本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。

以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。

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