CN117708887B - 一种基于纵向逻辑回归的联邦学习模型获取方法及系统 - Google Patents
一种基于纵向逻辑回归的联邦学习模型获取方法及系统 Download PDFInfo
- Publication number
- CN117708887B CN117708887B CN202410163521.2A CN202410163521A CN117708887B CN 117708887 B CN117708887 B CN 117708887B CN 202410163521 A CN202410163521 A CN 202410163521A CN 117708887 B CN117708887 B CN 117708887B
- Authority
- CN
- China
- Prior art keywords
- participant
- encryption
- party
- sample data
- module
- 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
- 238000000034 method Methods 0.000 title claims abstract description 70
- 238000007477 logistic regression Methods 0.000 title claims abstract description 21
- 238000004364 calculation method Methods 0.000 claims abstract description 92
- 230000005540 biological transmission Effects 0.000 claims abstract description 6
- 238000012545 processing Methods 0.000 claims description 21
- 230000008569 process Effects 0.000 abstract description 29
- 238000004891 communication Methods 0.000 abstract description 5
- 230000003993 interaction Effects 0.000 description 3
- 238000010276 construction Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 239000003999 initiator Substances 0.000 description 1
- 238000010801 machine learning Methods 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
- 238000012549 training Methods 0.000 description 1
Landscapes
- Storage Device Security (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供了一种基于纵向逻辑回归的联邦学习模型获取方法及系统,本方法通过协作方根据paillier算法生成私钥和公钥,并分别向第一参与方与第二参与方发送公钥;第一参与方和第二参与方分别根据公钥和RSA算法对样本数据进行加密对齐,以获取各个参与方的共有用户群体,从而获得各个参与方用于模型获取的样本数据,让模型在获取过程中,各个参与方传输的数据都是加密数据,并且在用协作方对模型参数解密后,再对解密后的模型参数注入的噪声,这样能够更好地保证了各个参与方的数据隐私安全,从而提高了模型在获取过程中的安全性,同时降低各个参与方在加解密过程中的计算步骤以及传输的通信开销,从而有效地提升了模型的获取效率。
Description
技术领域
本申请涉及联邦学习技术领域,特别是涉及一种基于纵向逻辑回归的联邦学习模型获取方法及系统。
背景技术
联邦学习是一种带有隐私保护、安全加密技术的分布式机器学习技术,旨在让分散的各个参与方在不暴露各自敏感数据的前提下,共同协作进行模型的构建跟训练;其核心思想是通过在拥有本地数据源的参与方之间进行分布式模型构建跟训练,并且在不需要交换各自所拥有的个体或样本数据的前提下,只通过交换各自构建模型的参数或中间的运算结果的方式,共同构建基于虚拟融合数据下的全局模型,从而实现数据隐私保护和数据共享计算的平衡,这样就可以达到“数据可用不可见”、“数据不动模型动”的效果。
在利用多个参与方在进行联邦学习的过程中,可以根据数据的分布情况分为横向、纵向二种场景;横向场景指所有参与方所拥有的数据具有相同的特征而持有不同的样本;纵向场景指所有参与方所拥有的数据具有相同的样本而持有不同的特征;而在联邦学习建模过程中,各个参与方所拥有的数据大部分都是纵向场景;而在实现纵向联邦学习联合建模过程中,由于参与方的用户群体并非完全重合,所以就需要基于各个参与方的数据来构建相同的用户群体,这样就需要各个参与方之间交换各自的用户数据,而在进行多方联邦学习纵向逻辑回归的过程中,各个参与方的数据隐私无法得到保证以及降低各个参与方之间的通信开销。
鉴于此,提供一种在模型获取过程中不暴露数据,保证数据隐私的基于纵向逻辑回归的联邦学习模型获取方法及系统是本领域技术人员亟待解决的技术问题。
发明内容
为解决上述技术问题,本发明的目的为提供一种基于纵向逻辑回归的联邦学习模型获取方法及系统;可以使各个参与方在进行数据交互时交互的都是加密后的中间计算结果且不涉及到解密,从而避免了各个参与方之间的数据泄露,实现了不暴露数据,保证数据隐私,同时使得模型在整个获取过程中降低了通信开销;
本发明提供的技术方案如下:
一种基于纵向逻辑回归的联邦学习模型获取方法,包括如下步骤:
协作方通过paillier算法生成私钥跟公钥,所述协作方分别向第一参与方和第二参与方发送所述公钥;
所述第一参与方和所述第二参与方分别根据所述公钥和RSA算法进行样本数据加密对齐,以获取所述第一参与方跟所述第二参与方的共有用户数据;
所述第一参与方和所述第二参与方根据所述共有用户数据分别获取第一样本数据和第二样本数据;
所述第一参与方和所述第二参与方根据所述第一样本数据跟所述第二样本数据获取总加密梯度值;
所述协作方根据所述私钥对所述总加密梯度值进行解密,以获取全局模型参数;
所述第一参与方和所述第二参与方根据所述全局模型参数分别更新与之对应的模型参数,以获取全局模型。
优选地,所述第一参与方和所述第二参与方分别根据所述公钥和RSA算法进行样本加密对齐,以获取所述第一参与方跟所述第二参与方的共有用户数据,包括如下步骤:
所述第一参与方根据所述公钥对所述第一参与方的第一样本数据进行加密获得第一加密样本数据,所述第一参与方将所述第一加密样本数据发送到所述第二参与方;
所述第二参与方根据所述公钥对所述第二参与方的所述第二样本数据进行加密获得第二加密样本数据;
将所述第二加密样本数据与所述第一加密样本数据进行交集处理,以获取所述第一参与方和所述第二参与方的共有用户数据。
优选地,所述第一参与方和所述第二参与方根据所述第一样本数据跟所述第二样本数据获取总加密梯度值,包括如下步骤:
所述第一参与方根据所述第一样本数据通过第一计算公式计算第一残差值;所述第一参与方并利用所述公钥对所述第一残差值/>进行加密,以获得第一加密残差值/>;
第一计算公式为:
;
其中,为所述第一样本数据中的第/>条数据,/>为第一参与方对应的初始模型参数,/>为第/>条数据的样本标签;
所述第二参与方根据所述第二样本数据通过第二计算公式计算第二残差值,所述第二参与方并利用所述公钥对所述第二残差值/>进行加密,得到第二加密残差值/>;
第二计算公式为:
;
其中为所述第二样本数据中的第/>条数据,/>为第二参与方对应的初始模型参数;
所述第二参与方根据所述第一加密残差值和所述第二加密残差值/>计算总加密残差值/>;
计算公式为:
。
优选地,所述第一参与方和所述第二参与方根据所述第一样本数据跟所述第二样本数据获取总加密梯度值,还包括如下步骤:
所述第二参与方根据所述第二样本数据与所述总加密残差值计算第二加密梯度值/>,所述第二参与方并将所述总加密残差值/>和所述第二加密梯度值/>发送给所述第一参与方;
第二加密梯度值计算公式为:
;
所述第一参与方根据所述总加密残差值和所述第一样本数据计算第一加密梯度值/>,所述第一参与方并将所述第一加密梯度值/>和所述第二加密梯度值/>发送给所述协作方;
第一加密梯度值计算公式为:
;
所述协作方将所述第一加密梯度值和所述第二加密梯度值/>进行组合,以获取总加密梯度值/>。
还提供了一种基于纵向逻辑回归的联邦学习模型获取系统,包括:发送模块、第一获取模块、第二获取模块、第三获取模块、第四获取模块和第五获取模块;
所述发送模块,用于协作方通过paillier算法生成私钥跟公钥,所述协作方分别向第一参与方和第二参与方发送所述公钥;
所述第一获取模块,用于所述第一参与方和所述第二参与方分别根据所述公钥和RSA算法进行样本数据加密对齐,以获取所述第一参与方跟所述第二参与方的共有用户数据;
所述第二获取模块,用于所述第一参与方和所述第二参与方根据所述共有用户数据分别获取第一样本数据和第二样本数据;
所述第三获取模块,用于所述第一参与方和所述第二参与方根据所述第一样本数据跟所述第二样本数据获取总加密梯度值;
所述第四获取模块,用于所述协作方根据所述私钥和总加密梯度值获取全局模型参数;
所述第五获取模块,用于所述第一参与方和所述第二参与方根据所述全局模型参数分别更新与之对应的模型参数,以获取全局模型。
优选地,所述第一获取模块包括:第一加密模块、第二加密模块和数据处理模块;
所述第一加密模块,用于所述第一参与方根据所述公钥对所述第一参与方的第一样本数据进行加密获得第一加密样本数据,所述第一参与方将所述第一加密样本数据发送到所述第二参与方;
所述第二加密模块,用于所述第二参与方根据所述公钥对所述第二参与方的所述第二样本数据进行加密获得第二加密样本数据;
所述数据处理模块,用于将所述第二加密样本数据与所述第一加密样本数据进行交集处理,以获取所述第一参与方和所述第二参与方的共有用户数据。
优选地,所述第二获取模块,包括:第一参数计算模块、第二参数计算模块和第三参数计算模块;
所述第一参数计算模块,用于所述第一参与方根据所述第一样本数据通过第一计算公式计算第一残差值;所述第一参与方并利用所述公钥对所述第一残差值/>进行加密,以获得第一加密残差值/>;
所述第二参数计算模块,用于所述第二参与方根据所述第二样本数据通过第二计算公式计算第二残差值,所述第二参与方并利用所述公钥对所述第二残差值/>进行加密,得到第二加密残差值/>;
所述第三参数计算模块,用于所述第二参与方根据所述第一加密残差值和所述第二加密残差值/>计算总加密残差值/>。
优选地,所述第二获取模块,还包括:第一计算发送模块、第二计算发送模块和组合模块;
所述第一计算发送模块,用于所述第二参与方根据所述第二样本数据与所述总加密残差值计算第二加密梯度值/>,所述第二参与方并将所述总加密残差值/>和所述第二加密梯度值/>发送给所述第一参与方;
所述第二计算发送模块,用于所述第一参与方根据所述总加密残差值和所述第一样本数据计算第一加密梯度值/>,所述第一参与方并将所述第一加密梯度值/>和所述第二加密梯度值/>发送给协作方;
所述组合模块,用于所述协作方将所述第一加密梯度值和所述第二加密梯度值/>进行组合,以获取总加密梯度值/>。
本申请提供了一种基于纵向逻辑回归的联邦学习模型获取方法,通过协作方通过paillier算法生成私钥跟公钥,协作方分别向第一参与方和第二参与方发送公钥;第一参与方和第二参与方分别根据公钥和RSA算法进行样本数据加密对齐,以获取第一参与方跟第二参与方的共有用户数据;第一参与方和第二参与方根据共有用户数据分别获取第一样本数据和第二样本数据;第一参与方和第二参与方根据第一样本数据跟第二样本数据获取总加密梯度值;协作方根据私钥对总加密梯度值进行解密,以获取全局模型参数;第一参与方和第二参与方根据全局模型参数分别更新与之对应的模型参数,以获取全局模型;本方法通过协作方根据paillier算法生成私钥和公钥,协作方分别向第一参与方与第二参与方发送公钥;第一参与方和第二参与方分别根据公钥和RSA算法进行样本数据加密对齐,以获取第一参与方跟第二参与方的共有用户群体,从而获得各个参与方用于模型获取的样本数据,让模型在获取过程中,各个参与方传输的数据都是加密数据,并且在用协作方对模型参数解密后,再对解密后的模型参数注入的噪声,这样能够更好地保证了各个参与方的数据隐私安全,从而提高了模型在获取过程中的安全性,同时降低各个参与方在加解密过程中的计算步骤以及传输的通信开销,从而有效地提升了模型的获取效率。
本发明还提供了一种基于纵向逻辑回归的联邦学习模型获取系统,由于该系统与该基于纵向逻辑回归的联邦学习模型获取方法解决相同的技术问题,属于相同的技术构思,理应具有相同的有益效果,在此不再赘述。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中基于纵向逻辑回归的联邦学习模型获取方法的流程图;
图2为本发明实施例中基于纵向逻辑回归的联邦学习模型获取系统的结构示意图。
具体实施方式
为了使本领域的技术人员更好地理解本申请中的技术方案,下面将对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
如图1所示,本发明实施例提供一种基于纵向逻辑回归的联邦学习模型获取方法,包括如下步骤:
S1.协作方通过paillier算法生成私钥跟公钥,协作方分别向第一参与方和第二参与方发送公钥;
S2.第一参与方和第二参与方分别根据公钥和RSA算法进行样本数据加密对齐,以获取第一参与方跟第二参与方的共有用户数据;
S3.第一参与方和第二参与方根据共有用户数据分别获取第一样本数据和第二样本数据;
S4.第一参与方和第二参与方根据第一样本数据跟第二样本数据获取总加密梯度值;
S5.协作方根据私钥对总加密梯度值进行解密,以获取全局模型参数;
S6.第一参与方和第二参与方根据全局模型参数分别更新与之对应的模型参数,以获取全局模型。
在步骤S1中,协作方通过paillier算法生成私钥和公钥,然后协作方分别向第一参与方与第二参与方发送初始权重和公钥,具体的,第一参与方为标签值的发起方,而第二参与方为普通的参与方;通过协作方利用paillier算法生成公钥(public key)和私钥(private key),公钥通过协作方发送给第一参与方和第二参与方等多个参与方,用来对需要传输的数据进行加密,保证了各个参与方的数据隐私安全;Paillier算法是一种公钥密码算法,它允许计算机之间的加密通信;
在步骤S2中,第一参与方和第二参与方分别根据公钥和RSA算法进行样本数据加密对齐,从而获取第一参与方跟第二参与方的共有用户数据;第一参与方和第二参与方等参与方会携带有不同的数据,因此,第一参与方和第二参与方将分别根据公钥对各自的样本数据中的样本编号进行加密,再对加密后的样本编号进行交集处理,然后在各个参与方不公开各自数据的前提下得到各个参与方的共有用户数据编号,并且不暴露不互相重叠的数据,从而使得各个参与方得到后续模型获取过程中需要用到的样本数据;采用的RSA算法是一种非对称加密算法。
在步骤S3中,第一参与方根据共有用户数据获取第一样本数据以及第二参与方同样根据共有用户数据获取第二样本数据,因为共有用户数据已经进行了加密,所以通过共有用户数据得到的样本数据也是加密的。
在步骤S4中,第一参与方和第二参与方分别根据第一样本数据和第二样本数据获取第一残差值、第二残差值、总加密残差值、第一梯度值、第二梯度值以及总加密梯度值,计算的中间数据在各个参与方之间传送时,都是用加密后的数据,防止在进行数据交互的时候,数据泄露。
在步骤S5中,非对称加密算法实现机密信息的交换过程为:甲方生成一对密钥并将其中一个作为公钥向其他方公开;得到该公钥的乙方使用该密钥对机密信息进行加密后发送给甲方;甲方再用自己的另一个专用密钥对加密后的信息进行解密;所以协作方根据私钥对总加密梯度值进行解密,从而得到整个逻辑回归的全局模型参数/>,然后将每个参与方对应的模型参数传给各个参与方;具体的参数公式为:
;
其中,lr表示模型的参数学习率;表示上一轮的模型参数。
在步骤S6中,第一参与方根据全局模型参数更新与之对应的模型参数,同样的,第二参与方也根据全局模型参数更新与之对应的模型参数,从而更新全局模型参数,获取做优全局模型,从而有效地提升了模型精度;并且从步骤S2到步骤S5将会一直进行迭代,直到模型收敛或达到最大迭代次数,以此来提高模型精度。
优选地,所述步骤S2,包括如下步骤:
A1.第一参与方根据公钥对第一参与方的第一样本数据进行加密获得第一加密样本数据,第一参与方将第一加密样本数据发送到第二参与方;
A2.第二参与方根据公钥对第二参与方的第二样本数据进行加密获得第二加密样本数据;
A3.将第二加密样本数据与第一加密样本数据进行交集处理,以获取第一参与方和第二参与方的共有用户数据。
在步骤A1至步骤A3的实际运用过程中,第一参与方将会用公钥对本地数据中样本数据进行加密,然后将加密后的样本数据发送至第二参与方中,加密过程如下:
首先生成一个随机加密字符(这里设置的字符串随机字节的长度为128),然后转换成16进制的长整数;再用公钥PK(n,e)对样本数据进行加密,加密公式:
;
其中,为第i条数据的样本编号;Hash表示对数据进行哈希化;/>表示第一样本数据;
第二参与方利用公钥对第二参与方的第二样本数据进行加密,再跟第一参与方发送的加密的第一样本数据进行比较,取交集,然后把交集返回给第一参与方,各个参与方根据交集就可以得到后面模型获取的时候需要用到的共有用户数据,匹配过程如下:
1.把第一参与方发送过来的第一样本数据用私钥SK(n,d)进行处理,处理公式如下:
;
把第一样本数据的计算公式代入上述公式中,从而可以得到如下表达式:
;
2.用私钥SK(n,d)对第二参与方的本地数据中的第二样本数据进行处理,处理公式如下:
;
其中,为第二样本数据中的第i条数据的样本编号;
3.计算第一参与方跟第二参与方的交集,/>
其中,表示第一加密样本数据;/>表示第二加密样本数据;
需要说明的是,第一参与方把加密后的样本编号传递给第二参与方,第二参与方进行取交集后发给第一参与方,在这个数据交互的过程中,第二参与方自己的样本编号是没有出本地的,这样也保证的数据的隐私安全。
优选地,所述步骤S4,包括如下步骤:
B1.第一参与方根据第一样本数据通过第一计算公式计算第一残差值;
第一参与方并利用公钥对第一残差值进行加密,以获得第一加密残差值/>;
第一计算公式为:
;
其中,为第一样本数据中的第/>条数据,/>为第一参与方对应的初始模型参数,/>为第/>条数据的样本标签;
B2.第二参与方根据第二样本数据通过第二计算公式计算第二残差值;
第二参与方并利用公钥对第二残差值进行加密,得到第二加密残差值/>;
第二计算公式为:
;
其中为第二样本数据中的第/>条数据,/>为第二参与方对应的初始模型参数;
B3.第二参与方根据第一加密残差值和第二加密残差值/>计算总加密残差值/>;
计算公式为:
。
在步骤B1至步骤B3中,第一参与方与第二参与方可以分别通过第一计算公式和第二计算公式计算得到对应的第一残差值和第二残差值/>,然后以同样的加密方式对第一残差值/>和第二残差值/>进行加密,从而得到第一加密残差值/>和第二加密残差值/>,第一参与方并将第一加密残差值/>发送至第二参与方中,最后通过第二参与方根据第一加密残差值/>和第二加密残差值/>计算得到总加密残差值/>;各个参与方交换的都是加密后的中间计算结果,并且在交换过程中,各个参与方之间也只交换中间计算结果并且不涉及到解密,避免各个参与方之间的数据分发。
优选地,所述步骤S4,还包括如下步骤:
C1.第二参与方根据第二样本数据与总加密残差值计算第二加密梯度值/>,第二参与方并将总加密残差值/>和第二加密梯度值/>发送给第一参与方;
第二加密梯度值计算公式为:
;
C2.第一参与方根据总加密残差值和第一样本数据计算第一加密梯度值/>,第一参与方并将第一加密梯度值/>和第二加密梯度值/>发送给协作方;
第一加密梯度值计算公式为:
;
C3.协作方将第一加密梯度值和第二加密梯度值/>进行组合,以获取总加密梯度值/>。
在实际运用过程中,在步骤C1至步骤C3中,第一参与方与第二参与方可以分别通过第二加密梯度值计算公式和第一加密梯度值/>计算公式计算得到对应的第二加密梯度值/>和第一加密梯度值/>,然后将第二加密梯度值/>和第一加密梯度值/>发送协作方,协作方将第一加密梯度值/>和第二加密梯度值/>进行组合,从而得到总加密梯度值/>;同样的,各个参与方交换的都是加密后的中间计算结果,并且在交换过程中,各个参与方之间也只交换中间计算结果并且不涉及到解密,避免各个参与方之间的数据分发。
如图2所示,还提供了一种基于纵向逻辑回归的联邦学习模型获取系统,包括:发送模块、第一获取模块、第二获取模块、第三获取模块、第四获取模块和第五获取模块;
发送模块,用于协作方通过paillier算法生成私钥跟公钥,协作方分别向第一参与方和第二参与方发送公钥;
第一获取模块,用于第一参与方和第二参与方分别根据公钥和RSA算法进行样本数据加密对齐,以获取第一参与方跟第二参与方的共有用户数据;
第二获取模块,用于第一参与方和第二参与方根据共有用户数据分别获取第一样本数据和第二样本数据;
第三获取模块,用于第一参与方和第二参与方根据第一样本数据和第二样本数据获取总加密梯度值;
第四获取模块,用于协作方根据私钥和总加密梯度值获取全局模型参数;
第五获取模块,用于第一参与方和第二参与方根据全局模型参数分别更新与之对应的模型参数,以获取全局模型。
在实际运用过程中,在实际运用过程中,设置了发送模块、第一获取模块、第二获取模块、第三获取模块、第四获取模块和第五获取模块;第一获取模块分别与发送模块和第二获取模块连接;第二获取模块与第三获取模块连接;第三获取模块与第四获取模块连接;第四获取模块与第五获取模块连接;发送模块将协作方生成的公钥发送至第一获取模块中;第一获取模块将获取的共有用户数据发送至第二获取模块中;第二获取模块将根据共有用户数据分别获取第一样本数据和第二样本数据,并将获取的第一样本数据和第二样本数据发送至第三获取模块中;第三获取模块则根据第一样本数据和第二样本数据获取总加密梯度值,将获取到的总加密梯度值发送至第四获取模块中;第四获取模块中的协作方根据私钥和总加密梯度值获取全局模型参数,将全局模型参数发送至第五获取模块中;第五获取模块根据全局模型参数分别更新与之对应的模型参数,以获取最终全局模型。
优选地,所述第一获取模块包括:第一加密模块、第二加密模块和数据处理模块;
第一加密模块,用于第一参与方根据公钥对第一参与方的第一样本数据进行加密获得第一加密样本数据,第一参与方将第一加密样本数据发送到第二参与方;
第二加密模块,用于第二参与方根据公钥对第二参与方的第二样本数据进行加密获得第二加密样本数据;
数据处理模块,用于将第二加密样本数据与第一加密样本数据进行交集处理,以获取第一参与方和第二参与方的共有用户数据。
在实际运用过程中,在第一获取模块设置了第一加密模块、第二加密模块和数据处理模块;第二加密模块分别与第一加密模块和数据处理模块连接;第一加密模块将加密后的第一加密样本数据发送至第二加密模块中;第二加密模块将加密后的第二加密样本数据发送至数据处理模块中;数据处理模块将根据加密后的第二加密样本数据与第一加密样本数据进行交集处理,以得到共有用户数据。
优选地,所述第二获取模块,包括:第一参数计算模块、第二参数计算模块和第三参数计算模块;
第一参数计算模块,用于第一参与方根据第一样本数据通过第一计算公式计算第一残差值;第一参与方并利用公钥对第一残差值进行加密,以获得第一加密残差值/>;
第二参数计算模块,用于第二参与方根据第二样本数据通过第二计算公式计算第二残差值,第二参与方并利用公钥对第二残差值进行加密,得到第二加密残差值/>;
第三参数计算模块,用于第二参与方根据第一加密残差值和第二加密残差值计算总加密残差值/>。
在实际运用过程中,在第二获取模块中设置了第一参数计算模块、第二参数计算模块与第三参数计算模块,设置第一参数计算模块与第二参数计算模块分别与第三参数计算模块连接;第一参数计算模块将获取到的第一加密残差值发送至第三参数计算模块中;第二参数计算模块将获取到的第二加密残差值发送至第三参数计算模块中;第三参数计算模块则根据第一加密残差值和第二加密残差值计算得到总加密残差值。
优选地,所述第二获取模块,还包括:第一计算发送模块、第二计算发送模块和组合模块;
第一计算发送模块,用于第二参与方根据第二样本数据与总加密残差值计算第二加密梯度值/>,第二参与方并将总加密残差值/>和第二加密梯度值/>发送给第一参与方;
第二计算发送模块,用于第一参与方根据总加密残差值和第一样本数据计算第一加密梯度值/>,第一参与方并将第一加密梯度值/>和第二加密梯度值/>发送给协作方;
组合模块,用于协作方将第一加密梯度值和第二加密梯度值/>进行组合,以获取总加密梯度值/>。
在实际运用过程中,在第二获取模块中还设置了第一计算发送模块、第二计算发送模块和组合模块;第二计算发送模块分别与第一计算发送模块和组合模块连接;第一计算发送模块中的第二参与方根据第二样本数据与总加密残差值计算得到第二加密梯度值,第二参与方并将总加密残差值和第二加密梯度值发送给第二计算发送模块中;第二计算发送模块中的第一参与方根据总加密残差值和第一样本数据计算得到第一加密梯度值,第一参与方并将第一加密梯度值和第二加密梯度值发送给组合模块中;组合模块中的协作方将第一加密梯度值和第二加密梯度值进行组合,以获取总加密梯度值。
在本申请所提供的实施例中,应该理解到,所揭露的方法和系统,可以通过其它的方式实现。以上所描述的系统实施例仅仅是示意性的,例如,模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个模块或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或模块的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
另外,在本发明各实施例中的各功能模块可以全部集成在一个处理器中,也可以是各模块分别单独作为一个器件,也可以两个或两个以上模块集成在一个器件中;本发明各实施例中的各功能模块既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令及相关的硬件来完成,前述的程序指令可以存储于计算机可读取存储介质中,该程序指令在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(Read Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的介质。
应当理解,本申请中如若使用了“方法”、“装置”、“单元”和/或“模块”,仅是用于区分不同级别的不同组件、元件、部件、部分或装配的一种方法。然而,如果其他词语可实现相同的目的,则可通过其他表达来替换该词语。
如本申请和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其它的步骤或元素。由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
以下,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。
本申请中如若使用了流程图,则该流程图是用来说明根据本申请的实施例的系统所执行的操作。应当理解的是,前面或后面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各个步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (4)
1.一种基于纵向逻辑回归的联邦学习模型获取方法,其特征在于,包括如下步骤:
协作方通过paillier算法生成私钥跟公钥,所述协作方分别向第一参与方和第二参与方发送所述公钥;
所述第一参与方和所述第二参与方分别根据所述公钥和RSA算法进行样本数据加密对齐,以获取所述第一参与方跟所述第二参与方的共有用户数据;
所述第一参与方和所述第二参与方根据所述共有用户数据分别获取第一样本数据和第二样本数据;
所述第一参与方和所述第二参与方根据所述第一样本数据跟所述第二样本数据获取总加密梯度值;
所述协作方根据所述私钥对所述总加密梯度值进行解密,以获取全局模型参数;
所述第一参与方和所述第二参与方根据所述全局模型参数分别更新与之对应的模型参数,以获取全局模型;
所述第一参与方和所述第二参与方根据所述第一样本数据跟所述第二样本数据获取总加密梯度值,包括如下步骤:
所述第一参与方根据所述第一样本数据通过第一计算公式计算第一残差值;所述第一参与方并利用所述公钥对所述第一残差值/>进行加密,以获得第一加密残差值/>;
第一计算公式为:
;
其中,为所述第一样本数据中的第/>条数据,/>为第一参与方对应的初始模型参数,/>为第/>条数据的样本标签;
所述第二参与方根据所述第二样本数据通过第二计算公式计算第二残差值,所述第二参与方并利用所述公钥对所述第二残差值/>进行加密,得到第二加密残差值/>;
第二计算公式为:
;
其中为所述第二样本数据中的第/>条数据,/>为第二参与方对应的初始模型参数;
所述第二参与方根据所述第一加密残差值和所述第二加密残差值/>计算总加密残差值/>;
计算公式为:
;
所述第一参与方和所述第二参与方根据所述第一样本数据跟所述第二样本数据获取总加密梯度值,还包括如下步骤:
所述第二参与方根据所述第二样本数据与所述总加密残差值计算第二加密梯度值,所述第二参与方并将所述总加密残差值/>和所述第二加密梯度值/>发送给所述第一参与方;
第二加密梯度值计算公式为:
;
所述第一参与方根据所述总加密残差值和所述第一样本数据计算第一加密梯度值,所述第一参与方并将所述第一加密梯度值/>和所述第二加密梯度值/>发送给所述协作方;
第一加密梯度值计算公式为:
;
所述协作方将所述第一加密梯度值和所述第二加密梯度值/>进行组合,以获取总加密梯度值/>。
2.根据权利要求1所述的基于纵向逻辑回归的联邦学习模型获取方法,其特征在于,所述第一参与方和所述第二参与方分别根据所述公钥和RSA算法进行样本加密对齐,以获取所述第一参与方跟所述第二参与方的共有用户数据,包括如下步骤:
所述第一参与方根据所述公钥对所述第一参与方的第一样本数据进行加密获得第一加密样本数据,所述第一参与方将所述第一加密样本数据发送到所述第二参与方;
所述第二参与方根据所述公钥对所述第二参与方的所述第二样本数据进行加密获得第二加密样本数据;
将所述第二加密样本数据与所述第一加密样本数据进行交集处理,以获取所述第一参与方和所述第二参与方的共有用户数据。
3.一种基于纵向逻辑回归的联邦学习模型获取系统,其特征在于,包括:发送模块、第一获取模块、第二获取模块、第三获取模块、第四获取模块和第五获取模块;
所述发送模块,用于协作方通过paillier算法生成私钥跟公钥,所述协作方分别向第一参与方和第二参与方发送所述公钥;
所述第一获取模块,用于所述第一参与方和所述第二参与方分别根据所述公钥和RSA算法进行样本数据加密对齐,以获取所述第一参与方跟所述第二参与方的共有用户数据;
所述第二获取模块,用于所述第一参与方和所述第二参与方根据所述共有用户数据分别获取第一样本数据和第二样本数据;
所述第三获取模块,用于所述第一参与方和所述第二参与方根据所述第一样本数据跟所述第二样本数据获取总加密梯度值;
所述第四获取模块,用于所述协作方根据所述私钥和总加密梯度值获取全局模型参数;
所述第五获取模块,用于所述第一参与方和所述第二参与方根据所述全局模型参数分别更新与之对应的模型参数,以获取全局模型;
所述第二获取模块,包括:第一参数计算模块、第二参数计算模块和第三参数计算模块;
所述第一参数计算模块,用于所述第一参与方根据所述第一样本数据通过第一计算公式计算第一残差值;所述第一参与方并利用所述公钥对所述第一残差值/>进行加密,以获得第一加密残差值/>;
其中,所述第一计算公式为:
;
其中,为所述第一样本数据中的第/>条数据,/>为第一参与方对应的初始模型参数,/>为第/>条数据的样本标签;
所述第二参数计算模块,用于所述第二参与方根据所述第二样本数据通过第二计算公式计算第二残差值,所述第二参与方并利用所述公钥对所述第二残差值/>进行加密,得到第二加密残差值/>;
其中,第二计算公式为:
;
其中为所述第二样本数据中的第/>条数据,/>为第二参与方对应的初始模型参数;
所述第三参数计算模块,用于所述第二参与方根据所述第一加密残差值和所述第二加密残差值/>计算总加密残差值/>;
其中,计算公式为:
;
所述第二获取模块,还包括:第一计算发送模块、第二计算发送模块和组合模块;
所述第一计算发送模块,用于所述第二参与方根据所述第二样本数据与所述总加密残差值计算第二加密梯度值/>,所述第二参与方并将所述总加密残差值/>和所述第二加密梯度值/>发送给所述第一参与方;
其中,第二加密梯度值计算公式为:
;
所述第二计算发送模块,用于所述第一参与方根据所述总加密残差值和所述第一样本数据计算第一加密梯度值/>,所述第一参与方并将所述第一加密梯度值/>和所述第二加密梯度值/>发送给协作方;
其中,第一加密梯度值计算公式为:
;
所述组合模块,用于所述协作方将所述第一加密梯度值和所述第二加密梯度值/>进行组合,以获取总加密梯度值/>。
4.根据权利要求3所述的基于纵向逻辑回归的联邦学习模型获取系统,其特征在于,所述第一获取模块包括:第一加密模块、第二加密模块和数据处理模块;
所述第一加密模块,用于所述第一参与方根据所述公钥对所述第一参与方的第一样本数据进行加密获得第一加密样本数据,所述第一参与方将所述第一加密样本数据发送到所述第二参与方;
所述第二加密模块,用于所述第二参与方根据所述公钥对所述第二参与方的所述第二样本数据进行加密获得第二加密样本数据;
所述数据处理模块,用于将所述第二加密样本数据与所述第一加密样本数据进行交集处理,以获取所述第一参与方和所述第二参与方的共有用户数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410163521.2A CN117708887B (zh) | 2024-02-05 | 2024-02-05 | 一种基于纵向逻辑回归的联邦学习模型获取方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410163521.2A CN117708887B (zh) | 2024-02-05 | 2024-02-05 | 一种基于纵向逻辑回归的联邦学习模型获取方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117708887A CN117708887A (zh) | 2024-03-15 |
CN117708887B true CN117708887B (zh) | 2024-04-30 |
Family
ID=90151988
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410163521.2A Active CN117708887B (zh) | 2024-02-05 | 2024-02-05 | 一种基于纵向逻辑回归的联邦学习模型获取方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117708887B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117932685A (zh) * | 2024-03-22 | 2024-04-26 | 智慧眼科技股份有限公司 | 基于纵向联邦学习的隐私数据处理方法及相关设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113159327A (zh) * | 2021-03-25 | 2021-07-23 | 深圳前海微众银行股份有限公司 | 基于联邦学习系统的模型训练方法、装置、电子设备 |
WO2023050687A1 (zh) * | 2021-09-28 | 2023-04-06 | 中国银联股份有限公司 | 一种联邦学习中的样本对齐方法、装置、设备及存储介质 |
CN115982738A (zh) * | 2022-12-27 | 2023-04-18 | 泸州老窖集团有限责任公司 | 基于标签加密发送的企业间联邦学习算法模型训练方法 |
CN116468132A (zh) * | 2022-01-10 | 2023-07-21 | 华为技术有限公司 | 用户数据处理的系统、方法以及装置 |
WO2023138152A1 (zh) * | 2022-01-20 | 2023-07-27 | 广州广电运通金融电子股份有限公司 | 一种基于区块链的联邦学习方法和系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112132293A (zh) * | 2020-09-30 | 2020-12-25 | 腾讯科技(深圳)有限公司 | 纵向联邦学习中的计算方法、装置、设备及介质 |
-
2024
- 2024-02-05 CN CN202410163521.2A patent/CN117708887B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113159327A (zh) * | 2021-03-25 | 2021-07-23 | 深圳前海微众银行股份有限公司 | 基于联邦学习系统的模型训练方法、装置、电子设备 |
WO2023050687A1 (zh) * | 2021-09-28 | 2023-04-06 | 中国银联股份有限公司 | 一种联邦学习中的样本对齐方法、装置、设备及存储介质 |
CN116468132A (zh) * | 2022-01-10 | 2023-07-21 | 华为技术有限公司 | 用户数据处理的系统、方法以及装置 |
WO2023138152A1 (zh) * | 2022-01-20 | 2023-07-27 | 广州广电运通金融电子股份有限公司 | 一种基于区块链的联邦学习方法和系统 |
CN115982738A (zh) * | 2022-12-27 | 2023-04-18 | 泸州老窖集团有限责任公司 | 基于标签加密发送的企业间联邦学习算法模型训练方法 |
Also Published As
Publication number | Publication date |
---|---|
CN117708887A (zh) | 2024-03-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108616539B (zh) | 一种区块链交易记录访问的方法及系统 | |
TWI706279B (zh) | 多方安全計算方法及裝置、電子設備 | |
CN108418680B (zh) | 一种基于安全多方计算技术的区块链密钥恢复方法、介质 | |
US20230108682A1 (en) | Data processing method and apparatus, device, and computer-readable storage medium | |
CN110138802B (zh) | 用户特征信息获取方法、装置,区块链节点、网络,及存储介质 | |
CN102170357B (zh) | 组合密钥动态安全管理系统 | |
US10944566B2 (en) | Methods and systems for supporting fairness in secure computations | |
US8688973B2 (en) | Securing communications sent by a first user to a second user | |
TW202013928A (zh) | 多方安全計算方法及裝置、電子設備 | |
CN110268691A (zh) | 具有经验证的区块链和共识协议的联盟区块链网络 | |
CN110033258A (zh) | 基于区块链的业务数据加密方法及装置 | |
CN113424185A (zh) | 快速不经意传输 | |
CN111324881B (zh) | 一种融合Kerberos认证服务器与区块链的数据安全分享系统及方法 | |
CN110419193A (zh) | 用于安全智能家居环境的基于ksi的认证和通信方法及其系统 | |
CN107483212A (zh) | 一种双方协作生成数字签名的方法 | |
CN117708887B (zh) | 一种基于纵向逻辑回归的联邦学习模型获取方法及系统 | |
CN106104562A (zh) | 机密数据安全储存和恢复系统及方法 | |
CN109194523A (zh) | 隐私保护的多方诊断模型融合方法及系统、云端服务器 | |
CN114219483B (zh) | 基于lwe-cpabe的区块链数据共享方法、设备和存储介质 | |
US20230254120A1 (en) | Secret material exchange and authentication cryptography operations | |
WO2019127265A1 (zh) | 基于区块链智能合约的数据写入方法、装置及存储介质 | |
CN112839046B (zh) | 基于区块链的可追踪的匿名众包方法及系统 | |
CN111859446A (zh) | 一种农产品溯源信息共享-隐私保护的方法及系统 | |
CN106101150A (zh) | 加密算法的实现方法和系统 | |
CN108199847A (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 |