一种基于同态加密的混合联邦逻辑回归方法与流程
未命名
09-22
阅读:85
评论:0

1.本发明涉及计算机技术领域,具体而言,涉及一种基于同态加密的混合联邦逻辑回归方法。
背景技术:
2.隐私计算英文全称为privacycompute,是指在保护数据本身不对外泄露的前提下实现数据分析计算的技术集合。与传统数据使用方式相比,隐私计算的加密机制能够增强对于数据的保护、降低数据泄露风险。因此,将其视为“数据最小化”的一种实现方式。同时,传统数据安全手段,比如数据脱敏或匿名化处理,都要以牺牲部分数据维度为代价,导致数据信息无法有效被利用,而隐私计算则提供了另一种解决思路,保证在安全的前提下尽可能使数据价值最大化。
3.多方安全计算英文全称为securemulti-partycomputation,一般缩写为mpc,指的是在保护数据安全隐私的前提下实现多方间数据融合计算。在网络环境中,某一任务的参与者分别拥有自己一方的数据,多个参与者通过通信协议分布式的计算某个功能函数从而完成计算任务。各个参与者为计算函数提供各自的输入,同时参与者得到函数的正确输出。同时这个过程实现对用户隐私数据的保护,也就是参与者除了可以获得自己应得的输出外,不能得到其他用户的任何输入信息。安全多方计算可以实现隐私保护下的用户数据共享,对于数据的有效利用具有重要意义。尤其信息安全相关的法律规定了严格的用户数据保护要求,传统的数据直接共享的方式已经不能满足要求。
4.传统的安全多方计算是通过复杂的交互式密码协议实现的。参与者将其拥有的输入数据加密后按照协议传递给其他参与者,参与者通过一系列对密文的计算与转换得到原始计算任务的输出。在此过程中,由于参与者不能直接对原始的数据做计算,其计算效率以及计算功能都会受到很大限制。通过传统安全多方计算协议实现的安全多方计算要在计算功能与计算效率直接做取舍。第一种是仅支持特定的相对简单的计算函数,不支持复杂的或者灵活的计算任务。第二种是支持通用的计算任务,但是由于效率较低仅支持少量数据的计算。
5.联邦学习英文全称为federatedlearning,简称fl),又名联邦机器学习。联邦学习是实现在本地原始数据不出库的情况下,通过对中间加密数据的流通与处理来完成多方联合的机器学习训练。根据参与计算的数据在数据方之间分布的情况不同,可以分为横向联邦学习、纵向联邦学习和联邦迁移学习。其中横向联邦学习,指不同参与方的数据有较大的特征的重叠,但数据样本,即特征所属的样本的重叠度不高。纵向联邦学习,指的是不同参与方的数据样本有较大的重叠,但样本特征的重叠度不高。目前横向联邦学习和纵向联邦学习已在众多场景下有落地得到一些应用。同时随着越来越多的应用场景应运而生,出现了需要同时使用横向联邦学习和纵向联邦学习才能满足需求的情况,基于目前的单向联邦学习,在面对数据混合切分场景时(数据即包含水平切分也包含垂直切分,例如a和b拥有相同样本不同特征,c和d拥有相同特征不同样本),需要通过多个阶段构建多个联邦学习模型
来分别实现横向联邦学习和纵向联邦学习才能满足需求。但这种方式下的操作步骤比较繁琐,数据交互量通常较大,需要占用较多的网络资源和计算资源,不仅耗时耗力,还影响效率。
技术实现要素:
6.本发明的目的在于提供一种基于同态加密的混合联邦逻辑回归方法,其能够借助隐私保护的分布式混合联邦机器学习技术,利用多家相同行业不同机构,不同行业不同机构的数据,有效突破单个机构内部和外部数据建模互通瓶颈,实现本地数据不出库,但能联合多方数据进行联邦学习模型训练,使各参与方对等并共同获益的联合建模,以提升联邦学习模型的准确率。
7.本发明的实施例是这样实现的:
8.第一方面,本技术实施例提供一种基于同态加密的混合联邦逻辑回归方法,其包括如下步骤:
9.对第一数据方的数据进行模块切分,得到第一数据分块和第二数据分块,并由第一数据分块和第二数据方组成数据data1,由第二数据分块和第三数据方组成数据data2;
10.对数据data1进行纵向联邦逻辑回归训练,合并参数得到w1、intercept1和loss1,对数据data2进行纵向联邦逻辑回归训练,合并参数得到w2、intercept2和loss2;
11.根据合并参数,分别对数据data1和数据data2进行横向联邦逻辑回归计算;
12.针对数据data1或数据data2,各参与方调用密钥交换协议,得到相同的随机数r,并用随机数r作为种子生成同态公私钥对;
13.根据聚合间隔参数,加密w1和intercept1,同时加密w2和intercept2,得到加密参数,并将加密参数发送给协作方进行安全聚合,得到聚合中间结果参数;
14.协作方将聚合中间结果参数发送至各参与方,各参与方解密聚合中间结果参数,并根据解密后的聚合中间结果参数进行下一轮参数迭代,直至满足要求,获得最终训练模型。
15.在本发明的一些实施例中,上述对数据data1进行纵向联邦逻辑回归训练的步骤包括:
16.基于同态加密算法,第一数据分块生成同态加密公钥,并将同态加密公钥发送给第二数据方,第二数据方接收同态加密公钥;
17.第一数据分块和第二数据方各自拟合参数初始值,其中,第一数据分块初始化权重wa1和偏置intercept1,第二数据方初始化权重wb;
18.第一数据分块计算特征和参数的点乘结果得到ua1,第二数据方计算特征和参数的点乘结果得到ub;
19.第二数据方将ub传给第一数据分块,第一数据分块接收ub,利用公式ue1=ua1+ub计算总的拟合值ue1,并基于总的拟合值ue1和真实值,利用损失函数计算总的损失loss1:
20.第一数据分块基于总的拟合值ue1和真实值计算出梯度因子gdf,并加密梯度因子gdf,得到加密gdf;
21.第一数据分块将加密gdf发送给第二数据方,第二数据方根据加密gdf计算出对应的加密梯度gdhb;
22.基于同态加密算法,第二数据方生成随机数rb并加密rb,得到加密rb,第二数据方将加密梯度gdhb和加密rb的求和发送给第一数据分块;
23.第一数据分块将求和解密为gdhd=gdhb+rb,并将gdhd发送给第二数据方;
24.第二数据方接收gdhd,同时根据公式gdhb=gdhd-rb计算梯度gdhb,并根据梯度gdhb更新权重wb;
25.第一数据分块通过特征和gdf矩阵相乘得到梯度gdha1,并根据梯度gdha1更新权重wa1和偏置intercept1。
26.在本发明的一些实施例中,上述第一数据分块基于总的拟合值ue1和真实值计算出梯度因子gdf的步骤包括:
27.利用公式gdf=xwt-y计算得到梯度因子gdf,其中,xwt表示拟合值,y表示真实值。
28.在本发明的一些实施例中,上述第二数据方根据加密gdf计算出对应的加密梯度gdhb的步骤包括:
29.根据公式加密梯度gdhb=梯度因子gdf*xb计算得到加密梯度gdhb,其中,xb表示特征列矩阵。
30.在本发明的一些实施例中,上述对数据data2进行纵向联邦逻辑回归训练的步骤包括:
31.基于同态加密算法,第二数据分块将同态加密公钥发送给第三数据方,第三数据方接收同态加密公钥;
32.第二数据分块和第三数据方各自拟合参数初始值,其中,第二数据分块初始化权重wa2和偏置intercept2,第三数据方初始化权重wc;
33.第二数据分块计算特征和参数的点乘结果得到ua2,第三数据方计算特征和参数的点乘结果得到uc;
34.第三数据方将uc传给第二数据分块,第二数据分块接收uc,利用公式ue2=ua2+uc计算总拟合值ue2,并基于总拟合值ue2和真实值,利用损失函数计算总损失loss2;
35.第二数据分块基于总拟合值ue2和真实值计算出梯度因子gdf,并加密梯度因子gdf,得到加密gdf;
36.第二数据分块将加密gdf发送给第三数据方,第三数据方根据加密gdf计算出加密梯度gdhc;
37.基于同态加密算法,第三数据方生成随机数rc并加密rc,得到加密rb,第三数据方将加密梯度gdhc和加密rc的求和发送给第二数据分块;
38.第二数据分块将加密梯度gdhc和加密rc的求和解密为gdhd=gdhc+rc,并将gdhd发送给第三数据方;
39.第三数据方接收并根据gdhd减去随机数rc更新权重wc;
40.第二数据分块通过特征和gdf矩阵相乘得到梯度gdha2,并根据梯度gdha2更新权重wa2和偏置intercept2。
41.第二方面,本技术实施例提供一种电子设备,其包括存储器,用于存储一个或多个程序;处理器。当一个或多个程序被处理器执行时,实现如上述第一方面中任一项的方法。
42.第三方面,本技术实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述第一方面中任一项的方法。
43.相对于现有技术,本发明的实施例至少具有如下优点或有益效果:
44.本发明提出了一种基于同态加密的混合联邦逻辑回归方法,其包括如下步骤:对第一数据方的数据进行模块切分,得到第一数据分块和第二数据分块,并由第一数据分块和第二数据方组成数据data1,由第二数据分块和第三数据方组成数据data2。对数据data1进行纵向联邦逻辑回归训练,合并参数得到w1、intercept1和loss1,对数据data2进行纵向联邦逻辑回归训练,合并参数得到w2、intercept2和loss2。根据合并参数,分别对数据data1和数据data2进行横向联邦逻辑回归计算。针对数据data1或数据data2,各参与方调用密钥交换协议,得到相同的随机数r,并用随机数r作为种子生成同态公私钥对。根据聚合间隔参数,加密w1和intercept1,同时加密w2和intercept2,得到加密参数,并将加密参数发送给协作方进行安全聚合,得到聚合中间结果参数。协作方将聚合中间结果参数发送至各参与方,各参与方解密聚合中间结果参数,并根据解密后的聚合中间结果参数进行下一轮参数迭代,直至满足要求,获得最终训练模型。实现了最终的混合数据切分场景下的混合联邦逻辑回归模型训练过程。解决了需要同时使用横向联邦学习和纵向联邦学习才能满足需求的场景,同时提高计算效率。简化操作步流程,避免数据交互量过大,减少网络资源和计算资源的使用。同时突破大量数据的现实场景计算局限,解决了各方在本地计算不出库,也可完成联邦学习模型训练,实现单个机构内部和外部数据建模任务。也就实现了对于任意计算函数的安全多方计算,突破传统机器学习中只能中心化本地建模界限,进行分布式联邦机器学习建模,当前的分布式混合联邦逻辑回归算法,主要应用于需要同时使用横向联邦学习和纵向联邦学习才能满足需求的数据混合切分场景。解决了在面对数据混合切分场景时,单向联邦学习需要通过多个阶段构建多个联邦学习模型来分别实现横向联邦学习和纵向联邦学习才能满足需求的问题。有效突破了单个机构内部和外部数据建模互通瓶颈,实现本地数据不出库,但能联合多方数据进行联邦学习模型训练,使各参与方对等并共同获益的联合建模,以提升联邦学习模型的准确率。
附图说明
45.为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
46.图1为本发明实施例提供的一种基于同态加密的混合联邦逻辑回归方法的流程图;
47.图2为本发明实施例提供的一种数据切分示意图;
48.图3为本发明实施例提供的一种第一数据分块和第二数据方的交互流程图;
49.图4为本发明实施例提供的一种第二数据分块和第三数据方的交互流程图;
50.图5为本发明实施例提供的一种横向联邦的流程图;
51.图6为本发明实施例提供的一种电子设备的示意性结构框图。
52.图标:101-存储器;102-处理器;103-通信接口。
具体实施方式
53.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本技术实施例的组件可以以各种不同的配置来布置和设计。
54.实施例
55.请参照图1,图1所示为本发明实施例提供的一种基于同态加密的混合联邦逻辑回归方法的流程图。本技术实施例提供一种基于同态加密的混合联邦逻辑回归方法,其包括如下步骤:
56.s110:对第一数据方的数据进行模块切分,得到第一数据分块和第二数据分块,并由第一数据分块和第二数据方组成数据data1,由第二数据分块和第三数据方组成数据data2;
57.示例性的,请参照图2,图2所示为本发明实施例提供的一种数据切分示意图。以a,b,c三方数据为例,a方包含标签,首先对数据进行模块切分,数据data1由a的数据分块a1和b组成,数据data2由a的数据分块a2和c组成。
58.s120:对数据data1进行纵向联邦逻辑回归训练,合并参数得到w1、intercept1和loss1,对数据data2进行纵向联邦逻辑回归训练,合并参数得到w2、intercept2和loss2;
59.示例性的,对数据data1和数据data2分别进行纵向联邦逻辑回归训练,即a1和b做纵向联邦,a2和c做纵向联邦。
60.s130:根据合并参数,分别对数据data1和数据data2进行横向联邦逻辑回归计算;
61.示例性的,请参照图5,图5所示为本发明实施例提供的一种横向联邦的流程图。参数合并,a1方和b方合并参数得到w1、intercept1、loss1。a2方和c方合并参数得到w2、intercept2、loss2。根据合并参数,对data1和data2进行横向联邦逻辑回归计算。
62.s140:针对数据data1或数据data2,各参与方调用密钥交换协议,得到相同的随机数r,并用随机数r作为种子生成同态公私钥对;
63.具体的,横向联邦部分以party1、party2、arbiter三方为例,各参与方调用密钥交换协议,得到相同的随机数r,并用随机数作为种子生成同态公私钥对。
64.s150:根据聚合间隔参数,加密w1和intercept1,同时加密w2和intercept2,得到加密参数,并将加密参数发送给协作方进行安全聚合,得到聚合中间结果参数;
65.具体的,各参与方根据聚合间隔参数,party1方加密[w1]和[intercept1],party2方加密[w2]和[intercept2],并将加密参数发送给协作方进行安全聚合。
[0066]
s160:协作方将聚合中间结果参数发送至各参与方,各参与方解密聚合中间结果参数,并根据解密后的聚合中间结果参数进行下一轮参数迭代,直至满足要求,获得最终训练模型。
[0067]
具体的,协作方将聚合后的中间结果[w]和[intercept]发送给各参与方,各参与方解密得到w和intercept,根据聚合解密后参数w和intercept进行下一轮参数迭代。直到满足要求即可获得最终训练模型。
[0068]
上述实现过程中,该方法使用同态加密(homomorphicencryption)进一步增加数据安全性,首先将数据切分成多个垂直分块,然后对垂直数据的多个分块进行纵向逻辑回
归模型训练,并对多个垂直数据进行横向联邦逻辑回归模型训练。实现最终的混合数据切分场景下的混合联邦逻辑回归模型训练过程。解决了需要同时使用横向联邦学习和纵向联邦学习才能满足需求的场景,同时提高计算效率。简化操作步流程,避免数据交互量过大,减少网络资源和计算资源的使用。同时突破大量数据的现实场景计算局限,解决了各方在本地计算不出库,也可完成联邦学习模型训练,实现单个机构内部和外部数据建模任务。也就实现了对于任意计算函数的安全多方计算,突破传统机器学习中只能中心化本地建模界限,进行分布式联邦机器学习建模,当前的分布式混合联邦逻辑回归算法,主要应用于需要同时使用横向联邦学习和纵向联邦学习才能满足需求的数据混合切分场景。解决了在面对数据混合切分场景时,单向联邦学习需要通过多个阶段构建多个联邦学习模型来分别实现横向联邦学习和纵向联邦学习才能满足需求的问题。有效突破了单个机构内部和外部数据建模互通瓶颈,实现本地数据不出库,但能联合多方数据进行联邦学习模型训练,使各参与方对等并共同获益的联合建模,以提升联邦学习模型的准确率。
[0069]
示例性的,该方法可以应用于运营商联和各商业银行解决通信+金融反欺诈场景下实现数据混合切分场景进行联邦模型训练提供可行性。各商业业务类型几乎重合,数据维度基本一致,如果仅仅使用一家银行的数据难免会造成样本分布比较单一,不能很好识别使用其他银行产品的欺诈行为。如果联合多家商业银行和电信运营商用户行为数据会很大程度上丰富用户群体,但是各商业银行的用户数据和电信运营商的通信数据都是属于用户的隐私数据,在没有得到用户及监管机构的允许下是没法直接流向第三方机构实现数据共享的。此时电信运营商拥有全量的样本以及部分特征,各商业银行等其他参与方拥有相同的特征(与运营商的特征不同),但是分别拥有部分样本,面对这种混合数据切分场景,此时如果采用本发明所提出的基于同态加密的混合联邦思想可以很方便地将各方数据利用起来,实现数据混合切分场景进行联邦模型训练。其中,各个平台节点相互授权,同时上传本地资源,创建任务方获取各参与节点的数据集资源、锁定选中资源,发起混合联邦逻辑回归算法计算任务,各节点协同计算,实现混合联邦逻辑回归算法的计算过程,从而实现多方数据的联合建模训练任务。
[0070]
在本实施例的一些实施方式中,上述对数据data1进行纵向联邦逻辑回归训练的步骤包括:
[0071]
基于同态加密算法,第一数据分块生成同态加密公钥,并将同态加密公钥发送给第二数据方,第二数据方接收同态加密公钥;
[0072]
第一数据分块和第二数据方各自拟合参数初始值,其中,第一数据分块初始化权重wa1和偏置intercept1,第二数据方初始化权重wb;
[0073]
第一数据分块计算特征和参数的点乘结果得到ua1,第二数据方计算特征和参数的点乘结果得到ub;
[0074]
第二数据方将ub传给第一数据分块,第一数据分块接收ub,利用公式ue1=ua1+ub计算总的拟合值ue1,并基于总的拟合值ue1和真实值,利用损失函数计算总的损失loss1:
[0075]
第一数据分块基于总的拟合值ue1和真实值计算出梯度因子gdf,并加密梯度因子gdf,得到加密gdf;
[0076]
第一数据分块将加密gdf发送给第二数据方,第二数据方根据加密gdf计算出对应的加密梯度gdhb;
[0077]
基于同态加密算法,第二数据方生成随机数rb并加密rb,得到加密rb,第二数据方将加密梯度gdhb和加密rb的求和发送给第一数据分块;
[0078]
第一数据分块将求和解密为gdhd=gdhd+rb,并将gdhd发送给第二数据方;
[0079]
第二数据方接收gdhd,同时根据公式gdhd=gdhd-rb计算梯度gdhb,并根据梯度gdhb更新权重wb;
[0080]
第一数据分块通过特征和gdf矩阵相乘得到梯度gdha1,并根据梯度gdha1更新权重wa1和偏置intercept1。
[0081]
示例性的,请参照图3,图3所示为本发明实施例提供的一种第一数据分块和第二数据方的交互流程图。a1和b做纵向联邦的具体过程如下:a1方将同态加密公钥发送给b方。a1和b各自拟合参数初始值,其中,a1方初始化权重wa1和偏置intercept1;b方初始化权重wb。a1和b各自计算特征和参数的点乘结果。b方将特征和参数的点乘结果ub传给a1方,a1方计算a1和b总的拟合值ue1。基于总的拟合值和真实值用损失函数计算总的损失:a1方同时基于总的拟合值和真实值计算出梯度因子:gdf=xwt-y=y`-y。a1方将加密[gdf]发送给b方,b方根据加密的[gdf]计算出b方的加密的梯度[gdhb],梯度=(特征列)矩阵乘(梯度因子)。b方通过生成随机数并加密[rb],然后b方将加密的梯度和加密的随机数求和[gdhb]+[rb]发送给a1方。a1方将加密的梯度与加密的随机数的和解密为gdhd=gdhb+rb,a1方将gdhd发送给b方。a1方通过特征和gdf矩阵相乘得到a1方的梯度gdha1,a1方根据gdha1更新a1方权重wa1和intercept1。b方根据gdhd减去添加的随机数rb更新b方权重wb,从而完成一轮纵向联邦参数更新。
[0082]
在本实施例的一些实施方式中,上述第一数据分块基于总的拟合值ue1和真实值计算出梯度因子gdf的步骤包括:
[0083]
利用公式gdf=xwt-y计算得到梯度因子gdf,其中,xwt表示拟合值,y表示真实值。
[0084]
在本实施例的一些实施方式中,上述第二数据方根据加密gdf计算出对应的加密梯度gdhb的步骤包括:
[0085]
根据公式加密梯度gdhb=梯度因子gdf*xb计算得到加密梯度gdhb,其中,xb表示特征列矩阵。
[0086]
在本实施例的一些实施方式中,上述对数据data2进行纵向联邦逻辑回归训练的步骤包括:
[0087]
基于同态加密算法,第二数据分块将同态加密公钥发送给第三数据方,第三数据方接收同态加密公钥;
[0088]
第二数据分块和第三数据方各自拟合参数初始值,其中,第二数据分块初始化权重wa2和偏置intercept2,第三数据方初始化权重wc;
[0089]
第二数据分块计算特征和参数的点乘结果得到ua2,第三数据方计算特征和参数的点乘结果得到uc;
[0090]
第三数据方将uc传给第二数据分块,第二数据分块接收uc,利用公式ue2=ua2+uc计算总拟合值ue2,并基于总拟合值ue2和真实值,利用损失函数计算总损失loss2;
processor,np)等;还可以是数字信号处理器(digital signal processing,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
[0101]
可以理解,图6所示的结构仅为示意,电子设备还可包括比图6中所示更多或者更少的组件,或者具有与图6所示不同的配置。图6中所示的各组件可以采用硬件、软件或其组合实现。
[0102]
在本技术所提供的实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本技术的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0103]
另外,在本技术各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
[0104]
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0105]
对于本领域技术人员而言,显然本技术不限于上述示范性实施例的细节,而且在不背离本技术的精神或基本特征的情况下,能够以其它的具体形式实现本技术。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本技术的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本技术内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。
技术特征:
1.一种基于同态加密的混合联邦逻辑回归方法,其特征在于,包括如下步骤:对第一数据方的数据进行模块切分,得到第一数据分块和第二数据分块,并由所述第一数据分块和第二数据方组成数据data1,由所述第二数据分块和第三数据方组成数据data2;对所述数据data1进行纵向联邦逻辑回归训练,合并参数得到w1、intercept1和loss1,对所述数据data2进行纵向联邦逻辑回归训练,合并参数得到w2、intercept2和loss2;根据合并参数,分别对数据data1和数据data2进行横向联邦逻辑回归计算;针对数据data1或数据data2,各参与方调用密钥交换协议,得到相同的随机数r,并用随机数r作为种子生成同态公私钥对;根据聚合间隔参数,加密w1和intercept1,同时加密w2和intercept2,得到加密参数,并将所述加密参数发送给协作方进行安全聚合,得到聚合中间结果参数;协作方将所述聚合中间结果参数发送至各参与方,各参与方解密所述聚合中间结果参数,并根据解密后的聚合中间结果参数进行下一轮参数迭代,直至满足要求,获得最终训练模型。2.根据权利要求1所述的基于同态加密的混合联邦逻辑回归方法,其特征在于,对所述数据data1进行纵向联邦逻辑回归训练的步骤包括:基于同态加密算法,所述第一数据分块生成同态加密公钥,并将所述同态加密公钥发送给第二数据方,所述第二数据方接收同态加密公钥;所述第一数据分块和所述第二数据方各自拟合参数初始值,其中,第一数据分块初始化权重wa1和偏置intercept1,第二数据方初始化权重wb;所述第一数据分块计算特征和参数的点乘结果得到ua1,所述第二数据方计算特征和参数的点乘结果得到ub;所述第二数据方将ub传给第一数据分块,所述第一数据分块接收ub,利用公式ue1=ua1+ub计算总的拟合值ue1,并基于总的拟合值ue1和真实值,利用损失函数计算总的损失loss1:所述第一数据分块基于总的拟合值ue1和真实值计算出梯度因子gdf,并加密梯度因子gdf,得到加密gdf;所述第一数据分块将加密gdf发送给第二数据方,所述第二数据方根据加密gdf计算出对应的加密梯度gdhb;基于同态加密算法,所述第二数据方生成随机数rb并加密rb,得到加密rb,所述第二数据方将加密梯度gdhb和加密rb的求和发送给第一数据分块;所述第一数据分块将所述求和解密为gdhd=gdhb+rb,并将gdhd发送给第二数据方;所述第二数据方接收gdhd,同时根据公式gdhb=gdhd-rb计算梯度gdhb,并根据所述梯度gdhb更新权重wb;所述第一数据分块通过特征和gdf矩阵相乘得到梯度gdha1,并根据梯度gdha1更新权重wa1和偏置intercept1。3.根据权利要求2所述的基于同态加密的混合联邦逻辑回归方法,其特征在于,所述第一数据分块基于总的拟合值ue1和真实值计算出梯度因子gdf的步骤包括:利用公式gdf=xwt-y计算得到梯度因子gdf,其中,xwt表示拟合值,y表示真实值。
4.根据权利要求2所述的基于同态加密的混合联邦逻辑回归方法,其特征在于,所述第二数据方根据加密gdf计算出对应的加密梯度gdhb的步骤包括:根据公式加密梯度gdhb=梯度因子gdf*xb计算得到加密梯度gdhb,其中,xb表示特征列矩阵。5.根据权利要求1所述的基于同态加密的混合联邦逻辑回归方法,其特征在于,对所述数据data2进行纵向联邦逻辑回归训练的步骤包括:基于同态加密算法,第二数据分块将同态加密公钥发送给第三数据方,所述第三数据方接收同态加密公钥;所述第二数据分块和所述第三数据方各自拟合参数初始值,其中,第二数据分块初始化权重wa2和偏置intercept2,第三数据方初始化权重wc;所述第二数据分块计算特征和参数的点乘结果得到ua2,所述第三数据方计算特征和参数的点乘结果得到uc;所述第三数据方将uc传给第二数据分块,所述第二数据分块接收uc,利用公式ue2=ua2+uc计算总拟合值ue2,并基于总拟合值ue2和真实值,利用损失函数计算总损失loss2;所述第二数据分块基于总拟合值ue2和真实值计算出梯度因子gdf,并加密梯度因子gdf,得到加密gdf;所述第二数据分块将加密gdf发送给第三数据方,所述第三数据方根据加密gdf计算出加密梯度gdhc;基于同态加密算法,所述第三数据方生成随机数rc并加密rc,得到加密rb,所述第三数据方将加密梯度gdhc和加密rc的求和发送给第二数据分块;所述第二数据分块将加密梯度gdhc和加密rc的求和解密为gdhd=gdhc-rc,并将gdhd发送给第三数据方;所述第三数据方接收并根据gdhd减去随机数rc更新权重wc;所述第二数据分块通过特征和gdf矩阵相乘得到梯度gdha2,并根据梯度gdha2更新权重wa2和偏置intercept2。6.一种电子设备,其特征在于,包括:存储器,用于存储一个或多个程序;处理器;当所述一个或多个程序被所述处理器执行时,实现如权利要求1-5中任一项所述的方法。7.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1-5中任一项所述的方法。
技术总结
本发明提出了一种基于同态加密的混合联邦逻辑回归方法,涉及计算机技术领域。该方法包括:对数据进行模块切分,组成数据data1、数据data2。对数据data1和数据data2进行纵向联邦逻辑回归训练。针对数据data1或数据data2,用随机数r作为种子生成同态公私钥对。加密w1和intercept1,w2和intercept2,将加密参数进行安全聚合。将聚合中间结果参数发送至各参与方,各参与方解密聚合中间结果参数,进行参数迭代,直至满足要求,获得最终训练模型。有效突破了单个机构内部和外部数据建模互通瓶颈,实现本地数据不出库,但能联合多方数据进行联邦学习模型训练,以提升联邦学习模型的准确率。以提升联邦学习模型的准确率。以提升联邦学习模型的准确率。
技术研发人员:骆双阳 章庆 贺伟
受保护的技术使用者:天翼电子商务有限公司
技术研发日:2023.05.25
技术公布日:2023/9/20
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/