联邦学习环境中基于第三方高效皮尔森系数计算方法技术

技术编号:33129269 阅读:33 留言:0更新日期:2022-04-17 00:43
本发明专利技术是联邦学习环境中基于第三方高效皮尔森系数计算方法,该方法中,选择开源的FATE做计算Pearson系数的整体计算通信的框架,参与特征相关性系数计算的两方分别为A方和B方,半诚实第三方为C方。已有的方案为了安全地生成Beaver Triplets三元对,需要使用了大量同态加密运算,新方案中,通过一个半诚实的第三方,在不牺牲安全性的同时,能够去掉同态加密运算,安全地生成(a,b,c)Beaver Triplets三元组,同时使两方各自获得(a,b,c)的加法秘密共享share。由于没有了原有方案中Paillier同态加密中大量大整数模幂运算,只有张量点积,以及加减运算,所以效率将得到大幅提升。提升。提升。

【技术实现步骤摘要】
联邦学习环境中基于第三方高效皮尔森系数计算方法


[0001]本专利技术涉及联邦学习环境中基于第三方高效皮尔森系数计算方法方法。

技术介绍

[0002]以下是本领域的一些基础知识:
[0003]联邦机器学习:隐私计算在机器学习领域的应用,在不泄露各方隐私数据的情况下,能够融合多方的数据,通过机器学习算法,训练模型,进行预测。
[0004]联邦学习的安全模型多为半诚实模型。
[0005]特征工程:一种在机器学习工程中的数据预处理方法,对样本的特征数据进行筛选,以及特征数据的离散化,以便之后能够训练出更好的机器学习模型。
[0006]皮尔森(Pearson)系数:一种计算数据相关性的方法,可以用在特征工程中,计算样本数据特征之间的相关性,以便筛选出对整体模型预测作用不大,无关多余的特征。方便后期进行更好,更高效的机器学习模型训练。
[0007]半诚实安全模型:在分析一种计算或通信协议安全性时候的一种模型,在这种安全模型下,协议参与者会严格遵守协议的相关步骤和要求,但是攻击者会试图通过协议过程中获取的数据得到其他其不应该知道的数据。
[0008]多方安全计算:安全多方计算是一类密码学技术,也是当前密码学领域的一个热门研究方向,属于隐私计算范畴。主要用于两方或者多方希望在不泄露自己隐私输入数据的情况下,根据各方输入数据,共同计算一个函数结果。安全多方计算除了最终结果之外,每一方的输入都能保持隐私性。
[0009]该研究方向起源于图灵机获得者姚期智提出的百万富翁问题,初期的解决方案效率较低,并不实用。近年来,随着该类技术的不断发展,效率大大提高,并开始逐步有实际落地应用。
[0010]全同态加密:全同态加密是一种对密文可以进行任意计算(分为算术上的加法,乘法,或者逻辑比特位上的异或与AND),解密后得到的结果是相应明文进行相同计算结果的一种加密算法。
[0011]半同态加密,有限级数的全同态加密:目前,由于全同态加密在应用上往往存在效率和存储上的限制,应用更加广泛的是半同态加密,或者有限级数的全同态加密。其中半同态加密算法只支持密文加法或者乘法的同态运算,而有限级数的全同态加密则支持加法和有限级数的乘法同态。
[0012]联邦学习是2017年由Google提出,通过融合多个用户的数据,通过机器学习算法,训练更准确的模型,以便更好的为用户提供推荐等服务。同时,为了更好保护用户的隐私,用户无需传递隐私数据给Google这样的中间服务商,所有机器学习训练对数据的计算都在用户本地完成,所有用户只需要将梯度等最终结果传输给Google即可,最后由Google做最终结果的整合,整合好后,将新的模型发送给所有用户。所有用户进行新的一轮的学习训练过程,周而复始,直至有满意的模型输出。
[0013]联邦学习由于能够在保护用户数据隐私的条件下,消除数据孤岛,联合各方数据训练更好的预测模型,提供更好的服务。因此自此概念提出后,便受到各方关注,不少互联网,金融等企业纷纷踏足联邦学习领域。
[0014]微众便是其中一员,其提出的联邦学习框架FATE,针对金融领域,使得企业之间数据能够安全共享,进行机器学习训练。由于其简单实用高效,且开源,吸引了大批使用者,在github有大约9k的加星以及1k的分支。
[0015]在FATE的技术框架中,特征工程是非常重要的一环,能够剔除一些无关的特征,离散化特征数据等,以便训练出更准确,更符合实际应用场景的机器学习模型。FATE(Federated AI Technology Enabler联邦人工智能技术推动者)是微众银行AI部门发起的开源项目,为联邦学习生态系统提供了可靠的安全计算框架。
[0016]其中,特征之间的Pearson系数被用来确定特征之间的线性相关性,并以此用来剔除其中线性相关性较大的特征,以便更好进行机器学习。
[0017]然而,FATE的参与方之间特征数据Pearson系数的计算参考了多方计算框架SPDZ,其中的Beaver Triplets(三元组)的生成涉及大量的Paillier同态加密运算。这样的计算过程使其在大规模数据量的特征相关性计算变得及其缓慢,比如几千万规模的数据的时候,一天时间都无法完成计算任务,这使得FATE的数据相关性计算变得很不实用。
[0018]目前,FATE使用类似于SPDZ的多方计算框架,通过秘密共享和Paillier同态加密进行参与方特征之间相关性计算,同时去除了SPDZ恶意敌手下密文加密以及MAC的验证,以提高计算的效率。
[0019]但是,这种方法依然使用了大量的Paillier同态公钥加密运算来生成Beaver Triplets(三元组),导致FATE整体Pearson相关性系数的计算比较低效,在大规模数据的情况下并不实用。比如几千万规模的数据的时候,一天时间都无法完成计算任务,这使得FATE的数据相关性计算变得很不实用。

技术实现思路

[0020]本专利技术针对目前在FATE的技术框架中,使用了大量的Paillier同态公钥加密运算来生成Beaver Triplets(三元组)的计算方法,提供一种联邦学习环境中基于第三方高效皮尔森系数计算方法,该方法没有了原有方案中Paillier同态加密中大量大整数模幂运算,只有张量点积,以及加减运算,所以效率将得到大幅提升。
[0021]本专利技术为实现其技术目的所采用的技术方案是:联邦学习环境中基于第三方高效皮尔森系数计算方法,该方法中,选择开源的FATE做计算Pearson系数的整体计算通信的框架,参与特征相关性系数计算的两方分别为A方和B方,半诚实第三方为C方;包括以下步骤:
[0022]步骤S1、参与计算相关性系数的双方A,B,将各自的特征数据张量x,y做一个加法秘密共享,每一方都将得到对方数据张量的一个加法秘密共享份额;
[0023]步骤S2、参与计算相关性系数的双方A,B,在获取对方的数据张量x,y的加法秘密共享份额后,各自在本地生成与特征数据张量x,y相同规模的张量a
i
,b
i
,作为三元组a,b中的一个秘密共享;
[0024]步骤S3、参与计算相关性系数的双方A,B将各自的生成的张量a
i
,b
i
发送给半诚实第三方C;
[0025]步骤S4、半诚实第三方C利用收到的张量a
i
,b
i
相加得到三元组中的a,b,并进一步计算所述三元组中的c,c是张量a,b之间点积;
[0026]步骤S5、半诚实第三方C将c做一个加法秘密共享生成c1,c2,并分别发送给参与计算相关性系数的双方A,B;
[0027]步骤S6、参与计算相关性系数的双方A,B分别获取c
i
后,各自使用已有的三元组份额a
i
,b
i
,c
i
,以及张量x
i
,y
i
,通过和对方交互本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.联邦学习环境中基于第三方高效皮尔森系数计算方法,该方法中,选择开源的FATE做计算Pearson系数的整体计算通信的框架,参与特征相关性系数计算的两方分别为A方和B方,半诚实第三方为C方;其特征在于:包括以下步骤:步骤S1、参与计算相关性系数的双方A,B,将各自的特征数据张量x,y做一个加法秘密共享,每一方都将得到对方数据张量的一个加法秘密共享份额;步骤S2、参与计算相关性系数的双方A,B,在获取对方的数据张量x,y的加法秘密共享份额后,各自在本地生成与特征数据张量x,y相同规模的张量a
i
,b
i
,作为三元组a,b中的一个加法秘密共享;步骤S3、参与计算相关性系数的双方A,B将各自的生成的张量a
i
,b
i
发送给半诚实第三方C;步骤S4、半诚实第三方C利用收到的张量a
i
,b
i
相加得到三元组中的a,b,并进一步计算所述三元组中的c,c是张量a,b之间点积;步骤S5、半诚实第三方C将c做一个加法秘密共享生成c1,c2,并分别发送给参与计算相关性系数的双方A,B;步骤S6、参与计算相关性系数的双方A,B分别获取c
i
后,各自使用已有的三元组份额a
i
,b
i
,c
i
,以及张量x
i
,y
i
,通过和对方交互计算得到z
i
,z
i
等于张量x,y之间点...

【专利技术属性】
技术研发人员:谈扬
申请(专利权)人:深圳前海新心数字科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1