非对称场景下基于联邦学习金融电力数据融合方法及介质与流程

文档序号:31699730发布日期:2022-10-01 07:30阅读:110来源:国知局
非对称场景下基于联邦学习金融电力数据融合方法及介质与流程

1.本发明涉及大数据技术领域,具体涉及一种非对称场景下基于联邦学习金融电力数据融合方法及存储介质。


背景技术:

2.数据资源开放和共享是推动数据经济发展基础,尤其银行等金融机构对外部数据的共享应用有强烈需求,但在数据共享过程中面临着数据安全问题。联邦学习作为隐私计算一种技术路径,可以实现两方或多个参与方在不泄露各自数据的前提下,通过模型参数传递实现联合机器学习建模。
3.目前,金融机构已应用联邦学习结合外部数据建立营销风控模型,如专利(cn111724262a)公开了基于数据隐私保护的应用逻辑回归建模的信贷反欺诈系统,其特征是汇集多家银行数据基于横向联邦学习建模,参数传递基于半同态加密算法传输。专利(cn113409134a)公开了基于联邦学习的企业融资授信方法及装置,通过同态加密规则从第三方系统获取对应的梯度数据和损失数据,从而整合各方数据提升企业融资授信准确率。现有技术提供了金融和第三方数据联合建模参数传递加密传输的解决方案,但未结合特定外部数据源(电力数据)、未考虑双方数据量非对称量级下的隐私求交问题。
4.现有专利中,针对双方数据样本对齐未考虑非对称场景下的隐私求交问题,真实样本交集可能会无限接近于数据量少的样本集,导致数据量少的样本集存在数据泄露的风险。
5.在基于不经意伪随机函数构建隐私集合求交,效率低,资源开销大。
6.术语解释:
7.非对称场景:是指参与建模双方样本数量不均衡,其中一方样本量远高于另一方样本量。
8.联邦学习融合建模:建模双方数据各自不出本地进行建模训练,实现“数据不动,模型动”,达到数据可用不可见的效果。


技术实现要素:

9.本发明提出的一种非对称场景下基于联邦学习金融电力数据融合方法,可解决银行使用第三方数据源,如联合外部电力数据建立评分模型,但不能彼此共享双方数据融合建模的问题。
10.为实现上述目的,本发明采用了以下技术方案:
11.一种非对称场景下基于联邦学习金融电力数据融合方法,包括以下步骤:
12.s1、将银行企业客户和电力企业客户数据唯一标识符通过不经意伪随机函数结合线性同余法抽样生成混淆集合,完成双方样本的隐私求交;
13.s2、利用同态加密对纵向逻辑回归模型训练前向计算和反向传播中的权重、梯度等模型参数信息进行更新;
14.s3、利用训练完成的模型对银行企业数据和电力企业数据进行处理,得到金融电力的评分结果。
15.进一步的,所述隐私求交是指针对银行端和电力端的样本企业客户,根据其唯一标识符进行样本对齐,筛选出共同样本客户用于后续联合建模,所述隐私求交步骤如下:
16.在隐私求交阶段,数据提供方a拥有的样本数远大于数据需求方b的数据量,且数据需求方b的数据具有模型训练所需的标签y值;
17.首先,数据提供方a和数据需求方b双方共同选择三个哈希函数h1,h2,h3:{0,1}
*

[b]以及b个空桶b[1...b];
[0018]
数据需求方b将其持有的n条数据放入空桶中,每个桶中最多只能放一条数据;如果没有空桶,则在b个桶中随机选择一个,并将这个桶中的数据拿出,再尝试放入拿出的数据,经过一定轮次后,仍找不到空桶,就将被这些数据放入储藏桶中,储藏桶中最多有s个元素;放入一条数据x,需查看3个桶|b[h1(x)]b[h2(x)]b[h3(x)]:是否空余,其中桶数设定为1.2n个桶与一个储藏桶,数据需求方b构造假数据将所有桶都填满,总共有1.2n+s条数据;
[0019]
数据提供方a生成1.2n+s个随机种子ki,i∈{1,2,

,1.2n+s},用作1.2n+s个不经意伪随机函数的随机种子,数据需求方b作为接收方为桶中每一个元素计算不经意伪随机函数,如果元素被放在i号桶中,则计算f(ki,y),如果元素被放在了储藏桶中的第j个位置,则计算f(k
1.2n+j
,y),f表示为伪随机函数,由随机数种子k当作密钥得到加密的结果;
[0020]
数据提供方a作为发送方,任意地计算伪随机函数f(ki,
·
),a为其输入x计算以下两个集合:
[0021][0022]
s={f(k
1.2n+j
,x)|x∈x,j∈{1,2,

,s}}
[0023]
其中h指不含储藏桶的不经意伪随机函数,给定一个密钥k,定义在x到h的随机函数,s类似于h,区别是s是含有储藏桶不经意伪随机函数;
[0024]
数据提供方a将集合h和集合s中的元素打乱,并将这两个集合发送给b;对于数据需求方b来说,如果一个元素被放到储藏桶中,则数据需求方b可以在集合s中查找对应的不经意伪随机函数输出;否则,就在集合h中查找,通过查找,就得到a与b的交集;数据需求方b在获得真实交集后,在交集外随机抽样混淆集合,将混淆集合对应的伪随机函数返回给参与方a;
[0025]
在计算双方样本交集过程中,数据提供方a无法获取样本的真实交集,数据需求方也无法从伪随机函数反推出a混淆集合的样本,不经意伪随机函数的特性使得整个协议在隐私保护方面是安全的;
[0026]
随机抽样时采用是线性同余法:
[0027]
x
n+1
=(axn+b)mod c
[0028]
其中,a=25214903917,b=11,c=248,设定初始种子xn为当前时间戳,便能生成一系列随机数用于选择混淆样本;
[0029]
混淆样本中伪样本的构成是从数据提供方a的伪随机函数中选取,随机选取的部分和真实交集并集样本数应至少占数据提供方a的样本数的1/4,降低数据需求方b的隐私泄露的风险。
[0030]
进一步的,所述步骤s3中模型训练步骤包括,
[0031]
步骤(1)初始化:数据提供方a和数据需求方b分别初始化各自节点模型,设置模型训练最大迭代步数、学习率α,a和b节点基于同态加密原理各自生成公私钥,并将公钥分别发送给对方节点;
[0032]
步骤(2)前向计算:首先a节点计算xawa,减去a节点生成的随机噪声ua,得到a节点输出值,并利用b的公钥对a节点输出值同态加密发送给数据需求方b;
[0033]
同样,b节点计算xbwb,减去b节点生成的随机噪声ub,得到b节点输出值,并利用a的公钥对b节点输出值同态加密发送给数据提供方a;
[0034]
其中,xa表示a节点输入值,wa表示a端模型权重,xb表示b节点输入值,wb表示b端模型权重;
[0035]
在a、b节点对对方节点输出的加密数据利用本地私钥解密,并分别加上本地节点的随机噪声ua、ub;
[0036]
将数据提供方a获得的计算数据发送给数据需求方b,并相加,最终得到前向计算结果z=xawa+xbwb,计算y=sigmod(z);
[0037]
确定模型双方的损失函数:loss=log2-(1/2)(ywx)+(1/8)(wx2);
[0038]
步骤(3)反向传播:通过同态加密保护数据需求方b反向传播的模型总的梯度信息,根据损失函数和模型梯度信息分别计算数据提供方a和数据需求方b的梯度信息ga、gb,更新各自模型参数w值;
[0039]
其中,w:=w-α(1/m)(1/4)(wx-2y)x,g=(1/4)(wx-2y)x
[0040]
步骤(4)迭代循环:当模型收敛或者迭代次数达到设定阈值,模型停止训练,否则一直重复(2)(3)步骤迭代循环。
[0041]
进一步的,所述s3、利用训练完成的模型对银行企业数据和电力企业数据进行处理,得到金融电力的评分结果,具体包括:
[0042]
已完成训练的纵向逻辑回归模型分别部署在数据提供方a和数据需求方b节点端;
[0043]
数据需求方发起新样本的预测请求,具体为:
[0044]
数据需求方b将样本唯一标识符通过不经意传输加密协议发送给数据提供方,判断数据提供方是否有此样本id,若无,则结束;若有,则基于训练后的模型分别计算数据提供方和数据需求方的输出za和zb,然后数据提供方将计算结果发送给数据需求方,完成最终评分结果计算即完成模型最终结果y值计算输出:
[0045]
y=za+zb。
[0046]
进一步的,步骤s3中的银行企业数据和电力企业数据,其中银行企业数据包括小企业的银行流水信息、人行征信信息、股权管理信息、风险信息、银行账户信息和交易信息;电力企业数据包括基本属性、电力缴费、用电量、电量波动信息、用电行为信息;
[0047]
将建模发起方银行标记为数据需求方;电力公司标记为数据提供方,中心节点部署在电力方。
[0048]
另一方面,本发明还公开一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如上述方法的步骤。
[0049]
由上述技术方案可知,本发明的非对称场景下基于联邦学习金融电力数据融合方法,在联合建模过程中,要解决(1)基于银行端和电力端数据基于联邦学习模型应用逻辑回归算法联合建模。(2)双方样本量极度不对称情况下的隐私求交,隐私求交后样本集合接近
样本量少的真实样本集合,导致样本量少的数据方存在数据泄露风险。(3)基于同态加密算法建立逻辑回归模型训练双方样本,避免损失函数和梯度信息等参数在通信传递中存在泄露风险。
[0050]
与现有技术相比,本发明存在以下技术效果:
[0051]
本发明中利用基于不经意传输构造不经意伪随机函数结合线性同余法抽样生成混淆集合完成数据提供方和数据需求方的隐私求交问题,进一步提高对数据安全隐私保护能力,所构建的纵向逻辑回归评分模型,可以有效联合内外部数据建模,完成金融电力评分建模。
[0052]
具体的说,本发明采用基于哈希优化后的不经意伪随机函数构造隐私求交算法,建设了协议所需要传输的数据量,加大了协议的执行速度。
[0053]
采用布谷鸟哈希算法的优势:计算中,集合h的大小为3n,集合s的大小为s*n,s是一个常数,这样a需要传输的数据量为(s+3)*n,是o(n),布谷鸟哈希算法相较于一般不经意传输算法的传输效率更高,因为数据量从n2减少为n。
附图说明
[0054]
图1是本发明的方法流程图。
具体实施方式
[0055]
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。
[0056]
本发明实施例的目的在于提出解决非对称场景下隐私求交问题,构建基于隐私保护的融合银行与第三方外部数据的信贷准入评分方法,有效提升企业融资授信的准确率。
[0057]
为实现以上目的,采用一种非对称场景下基于联邦学习的金融电力数据融合建模的方法及系统。将银行端用户数据和电力端用户数据分别发送至各节点预先训练好的联邦学习模型中。
[0058]
整个模型包含隐私求交步骤、模型训练步骤及模型应用步骤,训练的步骤和方式如下:
[0059]
首先在银行端和电力端在各自服务器部署节点用于存储上传各自样本数据及接受模型训练返回的梯度等参数信息。
[0060]
隐私求交是指针对银行端和电力端的样本企业客户,根据其唯一标识符进行样本对齐,筛选出共同样本客户用于后续联合建模。
[0061]
本发明提出了一种非对称场景下的隐私求交方法,主要目的是为了解决双方样本集数量级相差较大,真实样本交集结果无限接近于样本量少的数据方,从而导致样本量少的客户存在数据泄露风险。
[0062]
具体来说,在隐私求交阶段,数据提供方a拥有的样本数远大于数据需求方b的数据量,且数据需求方b的数据具有模型训练所需的标签y值,真实样本交集结果可能接近数据需求方b数据样本,实际上,样本b往往具有隐私性,为避免非对称成场景隐私求交数据需求方样本泄露,在隐私求交阶段,采用不经意传输加密方法结合抽样混淆集合法。
[0063]
首先,数据提供方a和数据需求方b双方共同选择三个哈希函数h1,h2,h3:{0,1}
*

[b]以及b个空桶b[1...b]。数据需求方b将其持有的n条数据放入空桶中,每个桶中最多只能放一条数据。如果没有空桶,则在b个桶中随机选择一个,并将这个桶中的数据拿出,再尝试放入拿出的数据,经过一定轮次后,仍找不到空桶,就将被这些数据放入储藏桶中,储藏桶中最多有s个元素。放入一条数据x,需查看3个桶b[h1(x)]b[h2(x)]b[h3(x)]:是否空余,其中桶数设定为1.2n个桶与一个储藏桶。数据需求方b可以构造假数据将所有桶都填满,总共有1.2n+s条数据。
[0064]
数据提供方a可以生成1.2n+s个随机种子ki,i∈{1,2,

,1.2n+s},用作1.2n+s个不经意伪随机函数的随机种子。数据需求方b作为接收方为桶中每一个元素计算不经意伪随机函数。如果元素被放在i号桶中,则计算f(ki,y),如果元素被放在了储藏桶中的第j个位置,则计算f(k
1.2n+j
,y),f表示为伪随机函数,由随机数种子k当作密钥得到加密的结果。
[0065]
数据提供方a作为发送方,可以任意地计算伪随机函数f(ki,
·
),a可以为其输入x计算以下两个集合:
[0066][0067]
s={f(k
1.2n+j
,x)|x∈x,j∈{1,2,

,s}}
[0068]
其中h指不含储藏桶的不经意伪随机函数,给定一个密钥k,定义在x到h的随机函数,s类似于h,区别是s是含有储藏桶不经意伪随机函数。
[0069]
数据提供方a将集合h和集合s中的元素打乱,并将这两个集合发送给b。对于数据需求方b来说,如果一个元素被放到储藏桶中,则数据需求方b可以在集合s中查找对应的不经意伪随机函数输出;否则,就在集合h中查找。通过查找,就可以得到a与b的交集。数据需求方b在获得真实交集后,在交集外随机抽样混淆集合,将混淆集合对应的伪随机函数返回给参与方a。
[0070]
在计算双方样本交集过程中,数据提供方a无法获取样本的真实交集,数据需求方也无法从伪随机函数反推出a混淆集合的样本,不经意伪随机函数的特性使得整个协议在隐私保护方面是安全的。
[0071]
随机抽样时采用是线性同余法:
[0072]
x
n+1
=(axn+b)mod c
[0073]
其中,a=25214903917,b=11,c=248,设定初始种子xn为当前时间戳,便能生成一系列随机数用于选择混淆样本。
[0074]
混淆样本中伪样本的构成是从数据提供方a的伪随机函数中选取,随机选取的部分和真实交集并集样本数应至少占数据提供方a的样本数的1/4,降低数据需求方b的隐私泄露的风险。
[0075]
在模型训练阶段,采用的是基于同态加密传输协议的的联邦逻辑回归算法。具体步骤为:
[0076]
(1)初始化:数据提供方a和数据需求方b分别初始化各自节点模型,设置模型训练最大迭代步数、学习率α,a和b节点基于同态加密原理各自生成公私钥,并将公钥分别发送给对方节点。
[0077]
(2)前向计算:首先a节点计算xawa,减去a节点生成的随机噪声ua,得到a节点输出值,并利用b的公钥对a节点输出值同态加密发送给数据需求方b;
[0078]
同样,b节点计算xbwb,减去b节点生成的随机噪声ub,得到b节点输出值,并利用a的公钥对b节点输出值同态加密发送给数据提供方a;
[0079]
其中,xa表示a节点输入值,wa表示a端模型权重,xb表示b节点输入值,wb表示b端模型权重。
[0080]
在a、b节点对对方节点输出的加密数据利用本地私钥解密,并分别加上本地节点的随机噪声ua、ub;
[0081]
将数据提供方a获得的计算数据发送给数据需求方b,并相加,最终得到前向计算结果z=xawa+xbwb,计算y=sigmod(z)。
[0082]
确定模型双方的损失函数:loss=log2-(1/2)(ywx)+(1/8)(wx2)
[0083]
(3)反向传播:通过同态加密保护数据需求方b反向传播的模型总的梯度信息,根据损失函数和模型梯度信息分别计算数据提供方a和数据需求方b的梯度信息ga、gb,更新各自模型参数w值。
[0084]
其中,w:=w-α(1/m)(1/4)(wx-2y)x,g=(1/4)(wx-2y)x;
[0085]
(4)迭代循环:当模型收敛或者迭代次数达到设定阈值,模型停止训练,否则一直重复(2)(3)步骤迭代循环。
[0086]
在模型应用单元,已完成训练的纵向逻辑回归模型分别部署在数据提供方a和数据需求方b节点端。数据需求方发起新样本的预测请求,具体为:数据需求方b将样本唯一标识符通过不经意传输加密协议发送给数据提供方,判断数据提供方是否有此样本id,若无,则结束。若有,则基于训练后的模型分别计算数据提供方和数据需求方的输出za和zb,然后数据提供方将计算结果发送给数据需求方,完成最终评分结果计算即完成模型最终结果y值计算输出:
[0087]
y=za+zb。
[0088]
以下举例说明:
[0089]
如图1所示,本实施例公开了一种非对称场景下基于联邦学习的金融电力数据融合建模的方法,包括如下步骤s1至s3:
[0090]
s1、将银行企业客户和电力企业客户唯一标识符通过不经意伪随机函数结合线性同余法抽样生成混淆集合,完成双方样本的隐私求交;
[0091]
s2、利用同态加密对纵向逻辑回归模型训练前向计算和反向传播中的权重、梯度等模型参数信息进行更新;
[0092]
s3、利用训练完成的模型对银行企业数据和电力企业数据进行处理,得到金融电力的评分结果。
[0093]
本实施例中汇集银行和金融电力数据共同建模并将其发送至数据分析模块;其中银行数据包括小企业的银行流水信息、人行征信信息、股权管理信息、风险信息、银行账户信息和交易信息等,电力数据包括基本属性、电力缴费、用电量、电量波动信息、用电行为等信息;将建模发起方银行标记为数据需求方;电力公司标记为数据提供方,中心节点部署在电力方,不会获取任何明文数据,仅做任务分发;
[0094]
电力端模型节点先将n个随机种子发给金融方,银行端模型节点为每个企业id执行一个伪随机函数,电力方为每个企业id执行每一个伪随机函数,并将结果发给金融方,金融方将双方的伪随机函数结果比较,再映射回本身持有的企业id,即可到真实交集,金融方
再将交集外的电力方的加密的企业id中通过线性同余法算法随机抽样和真实交集混合,将混淆后的伪随机函数返回给电力方,电力方得到的是混淆交集。根据不经意伪随机函数加密规则和企业唯一标识符将所述企业用户的所有银行维度数据和电力维度数据进行样本对齐操作,得到用于进行纵向逻辑回归模型训练的银行维度数据和电力维度数据。
[0095]
具体样本对齐方式为,电力端和银行端节点双方共同选择三个哈希函数h1,h2,h3。银行端节点将其持有的个企业客户标识符id,使用上述哈希算法,放入1.2n个桶与一个储藏桶中,储藏桶的大小为s。对银行端来说,现在每个桶中最多只有一个元素,并且储藏桶的中,最多有s个元素。现在b可以构造假数据,将这些桶和储藏桶都填满,使每个桶中都有一个元素,且储藏同中正好有s个元素。
[0096]
电力端节点生成1.2n+s个随机种子
·ki
,i∈{1,2,

,1.2n+s},用作1.2n+s个不经意伪随机函数的随机种子。银行端作为接收方为桶中每一个元素计算不经意伪随机函数。如果元素被放在i号桶中,则计算f(ki,y),如果元素被放在了储藏桶中的第j个位置,则计算f(k
1.2n+j
,y)。
[0097]
电力端可以任意地计算伪随机函数f(ki,
·
),电力端可以为其输入x计算以下两个集合:
[0098][0099]
s={f(k
1.2n+j
,x)|x∈x,j∈{1,2,

,s}}
[0100]
电力数据发送方将集合h和集合s中的元素打乱,发送给银行端。对于银行节点样本来说,如果一个样本的唯一标识符被放到储藏桶中,则银行端节点可以在集合s中查找对应的不经意伪随机函数输出;否则,就在集合h中查找。通过查找,就可以得到电力和银行的客户样本真实交集。
[0101]
数据需求方b在获得真实交集后,在交集外基于线性同余法随机抽样混淆集合,将混淆集合对应的伪随机函数返回给参与方a。
[0102]
x
n+1
=(axn+b)mod c
[0103]
其中,a=25214903917,b=11,c=248,设定初始种子xn为当前时间戳,便能生成一系列随机数用于选择混淆样本。
[0104]
根据预设的纵向逻辑回归算法建立初始联邦学习模型,在电力端和银行端节点分别求出并持有两套参数信息,在建立的联邦学习模型训练过程中通过同态加密协议传输产生的参数信息,如损失值及梯度信息,加密过程不可逆。
[0105]
根据上述初始化、前向计算、反向传播和迭代循环完成模型的训练。
[0106]
综上所述,本发明在隐私求交阶段加上了混淆集合,这个混淆集合是通过线性同余法随机抽样获得的。主要是在隐私求交阶段通过不经意伪随机函数结合线性同余法抽样生成混淆集合,保证了数据需求方的数据安全。
[0107]
与现有技术相比,本发明存在以下技术效果:本发明中利用基于不经意传输构造不经意伪随机函数结合线性同余法抽样生成混淆集合完成数据提供方和数据需求方的隐私求交问题,进一步提高对数据安全隐私保护能力,所构建的纵向逻辑回归评分模型,可以有效联合内外部数据建模,完成金融电力评分建模。
[0108]
又一方面,本发明还公开一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如上述任一方法的步骤。
[0109]
再一方面,本发明还公开一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如上述任一方法的步骤。
[0110]
在本技术提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一方法的步骤。
[0111]
可理解的是,本发明实施例提供的系统与本发明实施例提供的方法相对应,相关内容的解释、举例和有益效果可以参考上述方法中的相应部分。
[0112]
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。
[0113]
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0114]
以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1