一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

两方泊松回归隐私计算模型训练方法、装置和存储介质与流程

2022-11-30 21:50:27 来源:中国专利 TAG:


1.本发明涉及模型训练领域,具体涉及一种两方泊松回归隐私计算模型训练方法、装置和计算机可读存储介质。


背景技术:

2.隐私计算全称是“保护数据隐私的计算”,或“隐私保护计算”(privacy preserving computation),是指在多个参与方进行联合计算的时候,在保证各方数据安全与隐私不泄露的前提下,实现计算与数据价值挖掘的技术体系。隐私计算能够在各方明文数据无需出库的情况下,完成各方数据的融合计算、联合建模的等数据应用,在满足数据隐私安全的基础上,实现数据“价值”和“知识”的流动与共享,真正做到“数据可用不可见”。目前隐私计算领域在应用层面最受广泛关注的领域是联邦学习和基于mpc(secure muti-party computation,安全多方计算)的机器学习方法。在实现本发明过程中,申请人发现现有技术中至少存在如下问题:在对事件的“计数”进行建模时,需要可信第三方,或者不需要第三方时加密复杂,通信频繁。


技术实现要素:

3.本发明实施例提供一种两方泊松回归隐私计算模型训练方法、装置和计算机可读存储介质,在统计学角度上对事件的“计数”进行建模时,采用同态加密手段对本地模型结果进行加密,成功去除了可信第三方,保证两方数据传输不泄漏,保护隐私。
4.为达上述目的,一方面,本发明实施例提供一种纵向联邦两方泊松回归隐私计算模型训练方法,应用于标签方,该方法包括:
5.向数据源方发起两方泊松回归隐私计算初始模型训练的请求;其中,所述两方泊松回归隐私计算初始模型内包含用于衡量计数的变量;
6.对两方泊松回归隐私计算初始模型进行模型迭代训练,直至满足所述两方泊松回归隐私计算初始模型的收敛条件,得到训练完毕的两方泊松回归隐私计算模型;所述两方泊松回归隐私计算模型用于与训练数据所属场景的相同场景中事件的计数进行预测;
7.其中,每次对所述两方泊松回归隐私计算初始模型进行模型迭代训练时,属于标签方的具体步骤包括:
8.步骤11、根据所持有的样本变量与标签方模型训练参数进行计算得到标签方本地模型结果;其中,所述标签方本地模型结果采用第一公钥进行加密,所述第一公钥属于数据源方生成的用于同态加密的第一密钥对;首次采用的所述标签方模型训练参数为标签方模型训练初始参数;
9.接收所述数据源方根据数据源方模型训练参数与其所持有的本地样本变量在本地生成的数据源方本地模型结果,所述数据源方本地模型结果采用所述第一公钥进行加密;其中,首次采用的数据源方模型训练参数为数据源方模型训练初始参数;
10.步骤12、将标签方采用第一公钥加密的本地模型结果和数据源方采用第一公钥加
密的本地模型结果相乘,得到采用第一公钥加密的预测值;根据所述预测值计算得到加密的残差,并加密的残差同步给数据源方;
11.步骤13、在所述数据源方的配合下通过所述残差计算标签方参数梯度,通过所述标签方参数梯度调整所述标签方模型训练参数,实现所述两方泊松回归隐私计算初始模型训练的迭代计算;
12.步骤14、配合所述数据源方通过所述残差计算数据源方参数梯度,所述数据源方参数梯度用于所述数据源方在本地调整数据源方模型训练参数,实现所述两方泊松回归隐私计算初始模型训练的迭代计算。
13.另一方面,本发明实施例提供一种两方泊松回归隐私计算模型训练方法,应用于数据源方,该方法包括:
14.接收标签方发起的两方泊松回归隐私计算初始模型训练的请求;其中,所述两方泊松回归隐私计算初始模型内包含用于衡量计数的变量;
15.对两方泊松回归隐私计算初始模型进行模型迭代训练,直至满足模型的收敛条件,得到训练完毕的两方泊松回归隐私计算模型;所述两方泊松回归隐私计算模型用于与训练数据所属场景的相同场景中事件的计数进行预测;
16.其中,每次对两方泊松回归隐私计算初始模型进行模型迭代训练时,属于数据源方的具体步骤包括:
17.步骤21、根据数据源方模型训练参数与其所持有的本地样本数据,在本地生成数据源方本地模型结果,将所述数据源方本地模型结果发送给所述标签方;其中,所述数据源方本地模型结果采用第一私钥进行加密,所述第一私钥属于所述数据源方生成的用于同态加密的第一密钥对;首次采用的所述数据源方模型训练参数为数据源方模型训练初始参数;
18.步骤22、接收所述标签方同步给到的残差之后,配合所述标签方通过所述残差计算标签方参数梯度,所述标签方参数梯度用于调整标签方模型训练参数,实现两方泊松回归隐私计算初始模型训练迭代计算;
19.步骤23、当接收所述标签方同步给到的残差之后,在所述标签方的配合下通过所述残差计算数据源方参数梯度,所述数据源方参数梯度用于所述数据源方在本地调整数据源方模型训练参数,实现两方泊松回归隐私计算初始模型训练迭代计算。
20.本发明实施例还提供一种两方泊松回归隐私计算模型训练方法,包括:
21.标签方向数据源方发起两方泊松回归隐私计算初始模型训练的请求;其中,所述两方泊松回归隐私计算初始模型内包含用于衡量计数的变量;
22.对两方泊松回归隐私计算初始模型进行模型迭代训练,直至满足所述两方泊松回归隐私计算初始模型的收敛条件,得到训练完毕的两方泊松回归隐私计算模型;所述两方泊松回归隐私计算模型用于对与训练数据所属场景的相同场景中事件的计数进行预测;
23.其中,每次对两方泊松回归隐私计算初始模型进行模型迭代训练的具体步骤包括:
24.步骤31、标签方根据所持有的样本变量与标签方模型训练参数进行计算得到标签方本地模型结果,所述标签方本地模型结果采用第一公钥加密,所述第一公钥属于数据源方生成的用于同态加密的第一密钥对;其中,首次采用的标签方模型训练参数为标签方模
型训练初始参数;
25.步骤32、数据源方根据所持有的本地样本数据与数据源方模型训练参数,在本地生成数据源方本地模型结果,将数据源方本地模型结果发送给标签方;其中,所述数据源方本地模型结果采用第一私钥加密,所述第一私钥属于数据源方生成的用于同态加密的第一密钥对;首次采用的数据源方模型训练参数为数据源方模型训练初始参数;
26.步骤33、标签方将标签方采用第一公钥加密的本地模型结果和数据源方采用第一公钥加密的本地模型结果相乘,得到采用第一公钥加密的预测值;根据所述预测值计算得到加密的残差,并将加密的残差同步给数据源方;
27.步骤34、标签方在数据源方的配合下通过所述残差计算标签方参数梯度,通过标签方参数梯度调整标签方模型训练参数,实现两方泊松回归隐私计算初始模型训练迭代计算;
28.步骤35、标签方配合数据源方通过所述残差计算数据源方参数梯度,所述数据源方参数梯度用于数据源方在本地调整数据源方模型训练参数,实现两方泊松回归隐私计算初始模型训练迭代计算。
29.本发明实施例还提供一种计算机可读存储介质,应用于标签方,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被包括多个程序的电子设备执行标签方的所述的两方泊松回归隐私计算模型训练方法。
30.本发明实施例还提供一种两方泊松回归隐私计算模型训练装置,应用于标签方,包括:
31.处理器;以及,
32.被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行标签方的所述的两方泊松回归隐私计算模型训练方法。
33.本发明实施例还提供一种计算机可读存储介质,应用于数据源方,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被包括多个程序的电子设备执行数据源方的所述的两方泊松回归隐私计算模型训练方法。
34.本发明实施例还提供一种两方泊松回归隐私计算模型训练装置,应用于数据源方,包括:
35.处理器;以及,
36.被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行数据源方的所述的两方泊松回归隐私计算模型训练方法。
37.上述技术方案具有如下有益效果:本发明采用同态加密手段对本地模型结果进行加密,成功去除了可信第三方,保证两方数据传输不泄漏,保护隐私;可有效规避内部人员窜谋带来的安全性隐患,保证数据应用的合规,从节点部署和性能要求上来说极大降低产品的使用成本。同时实现了从统计学角度上对事件的“计数”进行建模。
附图说明
38.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以
根据这些附图获得其他的附图。
39.图1是本发明实施例的两方泊松回归隐私计算模型训练方法(应用于标签方)的流程图;
40.图2是本发明实施例的两方泊松回归隐私计算模型训练方法(应用于数据源方)的流程图;
41.图3是本发明实施例的另一两方泊松回归隐私计算模型训练方法的流程图;
42.图4是本发明实施例的两方纵向联邦泊松回归模型的数据传输步骤。
具体实施方式
43.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
44.如图1所示,结合本发明的实施例,提供一种(纵向联邦)两方泊松回归隐私计算模型训练方法,应用于标签方,该方法包括:
45.向数据源方发起两方泊松回归隐私计算初始模型训练的请求;其中,所述两方泊松回归隐私计算初始模型内包含用于衡量计数的变量;
46.对两方泊松回归隐私计算初始模型进行模型迭代训练,直至满足所述两方泊松回归隐私计算初始模型的收敛条件,得到训练完毕的两方泊松回归隐私计算模型;所述两方泊松回归隐私计算模型用于与训练数据所属场景的相同场景中事件的计数进行预测;
47.其中,每次对所述两方泊松回归隐私计算初始模型进行模型迭代训练时,属于标签方的具体步骤包括:
48.步骤11、根据所持有的样本变量与标签方模型训练参数进行计算得到标签方本地模型结果;其中,所述标签方本地模型结果采用第一公钥进行加密,所述第一公钥属于数据源方生成的用于同态加密的第一密钥对;首次采用的所述标签方模型训练参数为标签方模型训练初始参数;
49.接收所述数据源方根据数据源方模型训练参数与其所持有的本地样本变量在本地生成的数据源方本地模型结果,所述数据源方本地模型结果采用所述第一公钥进行加密;其中,首次采用的数据源方模型训练参数为数据源方模型训练初始参数;
50.步骤12、将标签方采用第一公钥加密的本地模型结果和数据源方采用第一公钥加密的本地模型结果相乘,得到采用第一公钥加密的预测值;根据所述预测值计算得到加密的残差,并加密的残差同步给数据源方;
51.步骤13、在所述数据源方的配合下通过所述残差计算标签方参数梯度,通过所述标签方参数梯度调整所述标签方模型训练参数,实现所述两方泊松回归隐私计算初始模型训练的迭代计算;
52.步骤14、配合所述数据源方通过所述残差计算数据源方参数梯度,所述数据源方参数梯度用于所述数据源方在本地调整数据源方模型训练参数,实现所述两方泊松回归隐私计算初始模型训练的迭代计算。
53.优选地,还包括:
54.步骤15、在向数据源方发起两方泊松回归隐私计算初始模型训练的请求之前,所述标签方生成用于同态加密的第二密钥对,所述第二密钥对包括第二公钥和第二私钥;接收数据源方发送的第一公钥;
55.步骤12,所述根据所述预测值计算得到加密的残差,具体包括:
56.计算所述预测值与真实标签值之差,得到整体线性结果的偏导,在泊松回归中计算整体线性结果的偏导,泊松回归中计算整体线性结果的偏导等于残差;
57.步骤13中,所述的在所述数据源方的配合下通过残差计算标签方参数梯度,通过所述标签方参数梯度调整标签方模型训练参数,具体包括:
58.采用所述残差进行计算得到标签方参数梯度,将所述标签方参数梯度加密,得到以标签方加密的标签方参数梯度,并发送给所述数据源方;
59.接收所述数据源方发送的以标签方加密的标签方参数梯度;
60.将所述标签方参数梯度解密后,通过解密后的所述参数梯度调整标所述签方模型训练参数。具体为:
61.步骤2.4:标签方生成随机数rg作为第一随机掩码,以第二公钥pkg加密得到加密的第一随机掩码
62.步骤2.5:标签方对dz的密文增加第一随机掩码,得到加盐的残差:步骤2.5:标签方对dz的密文增加第一随机掩码,得到加盐的残差:将和发送给数据源方;
63.步骤2.6:数据源方用第一私钥skh解密密文得到加盐的明文dz


64.步骤2.7:数据源方减去加密的第一随机掩码:即得到了以标签方的第二公钥加密的
65.优选地,所述的将标签方参数梯度加密得到以标签方加密的标签方参数梯度,具体包括:生成第二随机掩码,将所述第二随机掩码加入标签方参数梯度形成加盐的标签方参数梯度;
66.步骤13中,所述在数据源方的配合下通过所述残差计算标签方参数梯度,通过标签方参数梯度调整标签方模型训练参数,具体包括:
67.将所述加盐的标签方参数梯度发送给所述数据源方;
68.接收所述数据源方解密的标签方参数梯度;其中,所述数据源方接收到加盐的标签方参数梯度后,采用第一私钥对所述加盐的标签方参数梯度进行解密,得到加盐的标签方参数梯度;
69.将加盐的参数梯度内的第二随机掩码去掉,得到标签方参数梯度的明文;
70.根据标签方参数梯度的明文调整所述标签方模型训练参数。
71.优选地,步骤14具体包括:
72.对所述残差进行加密,将加密的残差发送给所述数据源方;
73.接收数据源方发送的加密的数据源方参数梯度;其中,所述数据源方发送的加密的所述数据源方参数梯度通过如下方法得到:所述数据源方在接收到所述加密的残差后,采用第一私钥对所述加密的残差进行解密得到标签方加密的残差,采用所述标签方加密的残差进行计算得到所述数据源方参数梯度,对所述数据源方参数梯度进行加密得到加密的
数据源方参数梯度,将所述加密的数据源方参数梯度发给所述标签方;
74.对加密的数据源方参数梯度进行解密,发送给数据源方;其中,发送给数据源方的数据源方参数梯度被数据源方采用第一私钥对数据源方参数梯度进行解密,得到数据源方参数梯度的明文,通过所述数据源方参数梯度的明文调整数据源方模型训练参数。
75.优选地,步骤12中,在所述将加密的残差同步给数据源方之前,还包括:
76.标签方生成第一随机掩码,采用第二公钥对第一随机掩码进行加密第一盐,将第一盐加入所述残差得到加盐的残差;
77.步骤14中,将加密的残差发送给所述数据源方,具体包括:
78.将所述加盐的残差发送给数据源方;
79.接收所述数据源方发送的加盐的数据源方参数梯度,采用所述第二私钥对加盐的数据源方参数梯度进行解密,发送给所述数据源方。
80.如图2所示,结合本发明的实施例,提供一种两方泊松回归隐私计算模型训练方法,应用于数据源方,包括:
81.接收标签方发起的两方泊松回归隐私计算初始模型训练的请求;其中,所述两方泊松回归隐私计算初始模型内包含用于衡量计数的变量;
82.对两方泊松回归隐私计算初始模型进行模型迭代训练,直至满足模型的收敛条件,得到训练完毕的两方泊松回归隐私计算模型;所述两方泊松回归隐私计算模型用于与训练数据所属场景的相同场景中事件的计数进行预测;
83.其中,每次对两方泊松回归隐私计算初始模型进行模型迭代训练时,属于数据源方的具体步骤包括:
84.步骤21、根据数据源方模型训练参数与其所持有的本地样本数据,在本地生成数据源方本地模型结果,将所述数据源方本地模型结果发送给所述标签方;其中,所述数据源方本地模型结果采用第一私钥进行加密,所述第一私钥属于所述数据源方生成的用于同态加密的第一密钥对;首次采用的所述数据源方模型训练参数为数据源方模型训练初始参数;
85.步骤22、接收所述标签方同步给到的残差之后,配合所述标签方通过所述残差计算标签方参数梯度,所述标签方参数梯度用于调整标签方模型训练参数,实现两方泊松回归隐私计算初始模型训练迭代计算;
86.步骤23、当接收所述标签方同步给到的残差之后,在所述标签方的配合下通过所述残差计算数据源方参数梯度,所述数据源方参数梯度用于所述数据源方在本地调整数据源方模型训练参数,实现两方泊松回归隐私计算初始模型训练迭代计算。
87.优选地,还包括:
88.步骤24、在接收标签方发起的两方泊松回归隐私计算初始模型训练的请求之前,生成用于同态加密的第一密钥对,所述第一密钥对包括第一公钥和第一私钥,并将第一公钥发送给标签方;接收所述标签方发送的第二公钥;所述第二公钥属于所述标签方生成的同态加密的第二密钥对,所述第二密钥对包括第二公钥和第二私钥;
89.步骤23中,所述当接收所述标签方同步给到的残差之后,在所述标签方的配合下通过所述残差计算数据源方参数梯度,所述数据源方参数梯度用于所述数据源方在本地调整数据源方模型训练参数,实现两方,具体包括:
90.接收标签方同步给到的加密的残差,采用第一私钥对所述加密的残差进行解密,得到标签方加密的残差;其中,标签方发送的加密的残差通过如下方法得到:标签方计算所述预测值与真实标签值之差,得到整体线性结果的偏导,在泊松回归中计算整体线性结果的偏导,泊松回归中计算整体线性结果的偏导等于残差;并对所述残差进行加密,得到加密的残差;
91.采用所述标签方加密的残差进行计算得到所述数据源方参数梯度,对所述数据源方参数梯度进行加密得到加密的数据源方参数梯度,并将所述加密的数据源方参数梯度发送给所述标签方;
92.接收所述标签方发送的采用所述第一公钥加密的数据源方参数梯度,采用第一私钥对所述加密的数据源方参数梯度进行解密,得到数据源方参数梯度的明文,通过所述数据源方参数梯度的明文调整所述数据源方模型训练参数;其中,所述标签方发送的采用所述第一公钥加密的数据源方参数梯度通过如下方法得到:所述标签方对所述数据源方参数梯度进行解密,得到加盐的数据源方参数梯度。
93.优选地,步骤23具体包括:
94.所述采用标签方加密的残差进行计算接收标签方发送的加盐的残差;其中,标签方发送的加盐的残差,具体包括:标签方生成第一随机掩码,采用第二公钥对第一随机掩码进行加密得到第一盐,将第一盐加入残差得到加盐的残差;
95.采用所述第一私钥对所述加盐的残差进行解密,得到采用第二公钥进行加密的残差,
96.采用所述采用第二公钥进行加密的残差进行计算得到所述数据源方参数梯度,将所述数据源方参数梯度进行加密得到加密的数据源方参数梯度;其中,所述的将数据源方参数梯度进行加密,包括:生成第三随机数作为第三随机掩码,将所述第三随机掩码加入数据源方参数梯度,得到加盐的数据源方参数梯度;
97.接收所述标签方发送的加密的数据源方参数梯度;其中,所述标签方发送的加密的数据源方参数梯度通过如下方法得到:所述标签方采用第二私钥对所述加盐的数据源方参数梯度进行解密,得到加密的数据源方参数梯度;
98.去掉所述数据源方参数梯度内的第三随机掩码,得到所述数据源方参数梯度的明文;
99.通过所述数据源方参数梯度的明文调整所述数据源方模型训练参数。
100.优选地,步骤22,所述接收所述标签方同步给到的残差之后,配合所述标签方通过所述残差计算标签方参数梯度,所述标签方参数梯度用于调整标签方模型训练参数,具体包括:
101.接收标签方发送的加密后的标签方参数梯度;其中,加密后的标签方参数梯度通过如下方法得到:标签方计算预测值与真实标签值之差,将预测值与真实标签值之差作为残差;标签方采用所述残差进行计算得到标签方参数梯度,并将标签方参数梯度加密,得到加密后的标签方参数梯度;
102.采用第一私钥对标签方参数梯度进行解密,得到标签方加密的标签方参数梯度,并将标签方参数梯度返回给标签方;其中,返回给标签方的标签方参数梯度在标签方解密后用于调整标签方模型训练参数。
103.优选地,步骤22,所述接收所述标签方同步给到的残差之后,配合所述标签方通过所述残差计算标签方参数梯度,所述标签方参数梯度用于调整标签方模型训练参数,具体包括:
104.接收标签方发送的加盐的标签方参数梯度;其中,标签方发送的加盐的标签方参数梯度通过如下方法得到:标签方生成第二随机掩码,将第二随机掩码加入标签方参数梯度形成加盐的标签方参数梯度;
105.采用第一私钥对加盐的标签方参数梯度进行解密,得到加盐的标签方参数梯度,将加盐的标签方参数梯度返回给标签方;其中,标签方在接收到数据源方返回的加盐的标签方参数梯度后,将加盐的参数梯度内的第二随机掩码去掉,得到标签方参数梯度的明文;所述标签方参数梯度的明文用于调整标签方模型训练参数。
106.如图3所示,结合本发明的实施例,还提供一种两方泊松回归隐私计算模型训练方法,包括:
107.标签方向数据源方发起两方泊松回归隐私计算初始模型训练的请求;其中,所述两方泊松回归隐私计算初始模型内包含用于衡量计数的变量;
108.对两方泊松回归隐私计算初始模型进行模型迭代训练,直至满足所述两方泊松回归隐私计算初始模型的收敛条件,得到训练完毕的两方泊松回归隐私计算模型;所述两方泊松回归隐私计算模型用于对与训练数据所属场景的相同场景中事件的计数进行预测;
109.其中,每次对两方泊松回归隐私计算初始模型进行模型迭代训练的具体步骤包括:
110.步骤31、标签方根据所持有的样本变量与标签方模型训练参数进行计算得到标签方本地模型结果,所述标签方本地模型结果采用第一公钥加密,所述第一公钥属于数据源方生成的用于同态加密的第一密钥对;其中,首次采用的标签方模型训练参数为标签方模型训练初始参数;
111.步骤32、数据源方根据所持有的本地样本数据与数据源方模型训练参数,在本地生成数据源方本地模型结果,将数据源方本地模型结果发送给标签方;其中,所述数据源方本地模型结果采用第一私钥加密,所述第一私钥属于数据源方生成的用于同态加密的第一密钥对;首次采用的数据源方模型训练参数为数据源方模型训练初始参数;
112.步骤33、标签方将标签方采用第一公钥加密的本地模型结果和数据源方采用第一公钥加密的本地模型结果相乘,得到采用第一公钥加密的预测值;根据所述预测值计算得到加密的残差,并将加密的残差同步给数据源方;
113.步骤34、标签方在数据源方的配合下通过所述残差计算标签方参数梯度,通过标签方参数梯度调整标签方模型训练参数,实现两方泊松回归隐私计算初始模型训练迭代计算;
114.步骤35、标签方配合数据源方通过所述残差计算数据源方参数梯度,所述数据源方参数梯度用于数据源方在本地调整数据源方模型训练参数,实现两方泊松回归隐私计算初始模型训练迭代计算。
115.优选地,还包括:
116.步骤36、在标签方向数据源方发起两方泊松回归隐私计算初始模型训练的请求之前,数据源方生成用于同态加密的第一密钥对,所述第一密钥对包括第一公钥和第一私钥,
并将第一公钥发送给标签方;以及,标签方生成用于同态加密的第二密钥对,所述第二密钥对包括第二公钥、第二私钥;
117.步骤33中,所述根据所述预测值计算得到加密的残差,并将加密的残差同步给数据源方,具体包括:
118.标签方计算采用第一公钥加密的预测值与真实标签值之差,得到整体线性结果的偏导,在泊松回归中计算整体线性结果的偏导,泊松回归中计算整体线性结果的偏导等于残差;
119.步骤34具体包括:
120.标签方采用所述残差进行计算得到标签方参数梯度;将标签方参数梯度加密得到以标签方加密的标签方参数梯度,并发送给数据源方;
121.数据源方采用第一私钥对标签方参数梯度进行解密,得到以标签方加密的标签方参数梯度,并将以标签方加密的标签方参数梯度返回给标签方;
122.标签方将以标签方加密的标签方参数梯度解密后,通过解密后的参数梯度调整标签方模型训练参数。
123.优选地,所述将标签方参数梯度加密得到以标签方加密的标签方参数梯度,具体包括:标签方生成第二随机掩码,将第二随机掩码加入标签方参数梯度形成加盐的标签方参数梯度;
124.步骤34具体包括:
125.标签方将加盐的标签方参数梯度发送给数据源方,数据源方采用第一私钥对加盐的标签方参数梯度进行解密,得到加盐的标签方参数梯度,将加盐的标签方参数梯度返回给标签方;
126.标签方将加盐的参数梯度内的第二随机掩码去掉,得到标签方参数梯度的明文;
127.标签方根据标签方参数梯度的明文调整标签方模型训练参数。
128.优选地,步骤35、标签方根据预测值计算残差,配合数据源方通过残差计算数据源方参数梯度,所述数据源方参数梯度用于数据源方在本地调整数据源方模型训练参数,具体包括:
129.标签方对残差进行加密,将加密的残差发送给数据源方;
130.数据源方采用第一私钥对残差进行解密,得到标签方加密的残差;
131.数据源方采用所述标签方加密的残差进行计算得到数据源方参数梯度,对数据源方参数梯度进行加密得到加密的数据源方参数梯度,并将加密的数据源方参数梯度发送给标签方;
132.标签方对加密的数据源方参数梯度进行解密,发送给数据源方;
133.数据源方采用第一私钥对数据源方参数梯度进行解密,得到数据源方参数梯度的明文,通过数据源方参数梯度调整数据源方模型训练参数。
134.优选地,所述标签方对残差进行加密,具体包括:标签方生成第一随机掩码,采用第二公钥对第一随机掩码进行加密作为第一盐,将第一盐加入残差得到加盐的残差;
135.所述对数据源方参数梯度进行加密得到加密的数据源方参数梯度,具体包括:数据源方生成第三随机数作为第三随机掩码,将第三随机掩码加入数据源方参数梯度,得到加盐的数据源方参数梯度;
136.步骤35具体包括:
137.标签方将加盐的残差发送给数据源方;
138.数据源方采用第一私钥对加盐的残差进行解密,得到采用第二公钥进行加密的残差,
139.数据源方采用所述采用第二公钥进行加密的残差进行计算得到数据源方参数梯度,将第三随机掩码加入数据源方参数梯度,得到加盐的数据源方参数梯度,将加盐的数据源方参数梯度发送给标签方;
140.标签方采用第二私钥对加盐的数据源方参数梯度进行解密,发送给数据源方;
141.数据源方采用第一私钥对加盐的数据源方参数梯度进行解密,得到数据源方参数梯度,去掉数据源方参数梯度内的第三随机掩码,得到数据源方参数梯度的明文;通过数据源方参数梯度的明文调整数据源方模型训练参数。
142.本发明还提供一种计算机可读存储介质,应用于标签方,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被包括多个应用程序的电子设备执行时,使得所述电子设备执行以下操作:
143.向数据源方发起两方泊松回归隐私计算初始模型训练的请求;其中,所述两方泊松回归隐私计算初始模型内包含用于衡量计数的变量;
144.对两方泊松回归隐私计算初始模型进行模型迭代训练,直至满足所述两方泊松回归隐私计算初始模型的收敛条件,得到训练完毕的两方泊松回归隐私计算模型;所述两方泊松回归隐私计算模型用于与训练数据所属场景的相同场景中事件的计数进行预测;
145.其中,每次对所述两方泊松回归隐私计算初始模型进行模型迭代训练时,属于标签方的具体步骤包括:
146.步骤11、根据所持有的样本变量与标签方模型训练参数进行计算得到标签方本地模型结果;其中,所述标签方本地模型结果采用第一公钥进行加密,所述第一公钥属于数据源方生成的用于同态加密的第一密钥对;首次采用的所述标签方模型训练参数为标签方模型训练初始参数;
147.接收所述数据源方根据数据源方模型训练参数与其所持有的本地样本变量在本地生成的数据源方本地模型结果,所述数据源方本地模型结果采用所述第一公钥进行加密;其中,首次采用的数据源方模型训练参数为数据源方模型训练初始参数;
148.步骤12、将标签方采用第一公钥加密的本地模型结果和数据源方采用第一公钥加密的本地模型结果相乘,得到采用第一公钥加密的预测值;根据所述预测值计算得到加密的残差,并加密的残差同步给数据源方;
149.步骤13、在所述数据源方的配合下通过所述残差计算标签方参数梯度,通过所述标签方参数梯度调整所述标签方模型训练参数,实现所述两方泊松回归隐私计算初始模型训练的迭代计算;
150.步骤14、配合所述数据源方通过所述残差计算数据源方参数梯度,所述数据源方参数梯度用于所述数据源方在本地调整数据源方模型训练参数,实现所述两方泊松回归隐私计算初始模型训练的迭代计算。
151.本发明还提供一种两方泊松回归隐私计算模型训练装置,应用于标签方,包括:
152.处理器;以及,
153.被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行以下操作:
154.向数据源方发起两方泊松回归隐私计算初始模型训练的请求;其中,所述两方泊松回归隐私计算初始模型内包含用于衡量计数的变量;
155.对两方泊松回归隐私计算初始模型进行模型迭代训练,直至满足所述两方泊松回归隐私计算初始模型的收敛条件,得到训练完毕的两方泊松回归隐私计算模型;所述两方泊松回归隐私计算模型用于与训练数据所属场景的相同场景中事件的计数进行预测;
156.其中,每次对所述两方泊松回归隐私计算初始模型进行模型迭代训练时,属于标签方的具体步骤包括:
157.步骤11、根据所持有的样本变量与标签方模型训练参数进行计算得到标签方本地模型结果;其中,所述标签方本地模型结果采用第一公钥进行加密,所述第一公钥属于数据源方生成的用于同态加密的第一密钥对;首次采用的所述标签方模型训练参数为标签方模型训练初始参数;
158.接收所述数据源方根据数据源方模型训练参数与其所持有的本地样本变量在本地生成的数据源方本地模型结果,所述数据源方本地模型结果采用所述第一公钥进行加密;其中,首次采用的数据源方模型训练参数为数据源方模型训练初始参数;
159.步骤12、将标签方采用第一公钥加密的本地模型结果和数据源方采用第一公钥加密的本地模型结果相乘,得到采用第一公钥加密的预测值;根据所述预测值计算得到加密的残差,并加密的残差同步给数据源方;
160.步骤13、在所述数据源方的配合下通过所述残差计算标签方参数梯度,通过所述标签方参数梯度调整所述标签方模型训练参数,实现所述两方泊松回归隐私计算初始模型训练的迭代计算;
161.步骤14、配合所述数据源方通过所述残差计算数据源方参数梯度,所述数据源方参数梯度用于所述数据源方在本地调整数据源方模型训练参数,实现所述两方泊松回归隐私计算初始模型训练的迭代计算。
162.本发明还提供一种计算机可读存储介质,应用于数据源方,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被包括多个应用程序的电子设备执行时,使得所述电子设备执行以下操作:
163.接收标签方发起的两方泊松回归隐私计算初始模型训练的请求;其中,所述两方泊松回归隐私计算初始模型内包含用于衡量计数的变量;
164.对两方泊松回归隐私计算初始模型进行模型迭代训练,直至满足模型的收敛条件,得到训练完毕的两方泊松回归隐私计算模型;所述两方泊松回归隐私计算模型用于与训练数据所属场景的相同场景中事件的计数进行预测;
165.其中,每次对两方泊松回归隐私计算初始模型进行模型迭代训练时,属于数据源方的具体步骤包括:
166.步骤21、根据数据源方模型训练参数与其所持有的本地样本数据,在本地生成数据源方本地模型结果,将所述数据源方本地模型结果发送给所述标签方;其中,所述数据源方本地模型结果采用第一私钥进行加密,所述第一私钥属于所述数据源方生成的用于同态加密的第一密钥对;首次采用的所述数据源方模型训练参数为数据源方模型训练初始参
数;
167.步骤22、接收所述标签方同步给到的残差之后,配合所述标签方通过所述残差计算标签方参数梯度,所述标签方参数梯度用于调整标签方模型训练参数,实现两方泊松回归隐私计算初始模型训练迭代计算;
168.步骤23、当接收所述标签方同步给到的残差之后,在所述标签方的配合下通过所述残差计算数据源方参数梯度,所述数据源方参数梯度用于所述数据源方在本地调整数据源方模型训练参数,实现两方泊松回归隐私计算初始模型训练迭代计算。
169.本发明还提供一种两方泊松回归隐私计算模型训练装置,应用于数据源方,包括:
170.处理器;以及,
171.被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行以下操作:
172.接收标签方发起的两方泊松回归隐私计算初始模型训练的请求;其中,所述两方泊松回归隐私计算初始模型内包含用于衡量计数的变量;
173.对两方泊松回归隐私计算初始模型进行模型迭代训练,直至满足模型的收敛条件,得到训练完毕的两方泊松回归隐私计算模型;所述两方泊松回归隐私计算模型用于与训练数据所属场景的相同场景中事件的计数进行预测;
174.其中,每次对两方泊松回归隐私计算初始模型进行模型迭代训练时,属于数据源方的具体步骤包括:
175.步骤21、根据数据源方模型训练参数与其所持有的本地样本数据,在本地生成数据源方本地模型结果,将所述数据源方本地模型结果发送给所述标签方;其中,所述数据源方本地模型结果采用第一私钥进行加密,所述第一私钥属于所述数据源方生成的用于同态加密的第一密钥对;首次采用的所述数据源方模型训练参数为数据源方模型训练初始参数;
176.步骤22、接收所述标签方同步给到的残差之后,配合所述标签方通过所述残差计算标签方参数梯度,所述标签方参数梯度用于调整标签方模型训练参数,实现两方泊松回归隐私计算初始模型训练迭代计算;
177.步骤23、当接收所述标签方同步给到的残差之后,在所述标签方的配合下通过所述残差计算数据源方参数梯度,所述数据源方参数梯度用于所述数据源方在本地调整数据源方模型训练参数,实现两方泊松回归隐私计算初始模型训练迭代计算。
178.下面结合具体的应用实例对本发明实施例上述技术方案进行详细说明,实施过程中没有介绍到的技术细节,可以参考前文的相关描述。
179.本发明一种无需第三方的两方泊松回归隐私计算模型训练方法,属于隐私计算领域,用于隐私计算两方通过联邦学习和同态加密进行纵向联邦泊松回归建模。两方的其中一方为标签方,另一方为数据源方。
180.本发明的“无需第三方的两方泊松回归隐私计算模型训练方法”用于联邦建模双方在无“可信第三方”的条件下,安全地进行“计数”型y标签的建模。比如:以车险索赔次数估计为例,联邦建模标签方为保险公司,握有客户申请保险时录入的性别、年龄等从人数据以及历史索赔次数,数据源方为车辆数据提供商,可提供车辆型号、座位数、购置价等从车数据。通过联邦建模的方式,保险公司可以在双方数据都不出库的情况下,利用己方y标签
和变量以及车辆数据提供商的各变量进行泊松回归建模,来预估每个样本未来一段时间内的索赔次数,以辅助对每个客户的车险费率进行定价。此方法能够满足金融、政务等行业数据安全要求高,并能提供明确的成本估计,同时整体模型结果与明文计算相比基本无损的各方面要求。
181.本发明的技术方案泊松回归模型为:
182.y=exp(z)
183.z=xw
184.如果有用于衡量“计数”y的单位时间、面积或体积的exposure变量,则z=xw ln(exposure)。
185.两方泊松回归可以写作如下形式:
186.y=exp(xgwg xhwh)=exp(xgwg)exp(xhwh)=exp(zg)exp(zh)
187.如果有exposure变量,则y=exp(xgwg ln(exposure) xhwh)=exp(xgwg ln(exposure))exp(xhwh)=exp(zg)exp(zh)。
188.下标g表示guest(标签方,为主导模型训练的一方),下标h表示host(数据源方)。xg表示标签方的变量(特征),xh表示数据源方的变量(特征);zg代表标签方线性部分的中间结果,exp(zg)表示标签方变量对应的本地模型结果,zh代表标签方线性部分的中间结果,exp(zh)表示数据源方变量对应的本地模型结果。
189.如图4所示,本发明实施例的整体流程如下:
190.步骤1:密钥生成与发送。
191.步骤1.1:标签方生成同态加密密钥对(pkg,skg);pkg称为第二公钥,skg称为第二私钥。
192.步骤1.2:数据源方也生成同态加密密钥对(pkh,skh),pkh称为第一公钥,skh称为第一私钥,将第一公钥pkh发给标签方。
193.这里的使用的同态加密算法是全同态加密或有限级数全同态加密,例如ckks。在后续步骤中,通过表示同态加密的x,x为对步骤中所出现数据的指代。
194.步骤2:数据源方(host)同步己方模型结果的密文,标签方(guest)同步残差的密文。
195.步骤2.1:数据源方根据自己所持有的数据计算己方模型结果exp(zh),以pkh加密,并将密文发送给标签方。
196.步骤2.2:标签方根据自己所持有的样本变量(样本数据)计算己方模型结果exp(zg),与2.1接收到的密文相乘,得到以第一公钥加密的样本预测值密文),与2.1接收到的密文相乘,得到以第一公钥加密的样本预测值密文
197.步骤2.3:标签方计算整体线性结果的偏导dz的密文y是标签方的真实标签值,泊松回归中整体线性结果的偏导dz等于残差;
198.步骤2.4:标签方生成随机数rg作为第一随机掩码,以第二公钥pkg加密得到加密的第一随机掩码
199.步骤2.5:标签方对dz的密文增加第一随机掩码,得到加盐的残差:
将和发送给数据源方;
200.步骤2.6:数据源方用第一私钥skh解密密文得到加盐的明文dz


201.步骤2.7:数据源方减去加密的第一随机掩码:即得到了以标签方的第二公钥加密的
202.步骤3:标签方(guest)计算梯度并更新参数。
203.步骤3.1:标签方生成随机数rg作为第二随机掩码,计算己方参数梯度的密文加上第二随机掩码,得到加盐的己方参数梯度加上第二随机掩码,得到加盐的己方参数梯度发送给数据源方;其中,t表示转置矩阵。
204.步骤3.2:数据源方用第一私钥skh解密得到加盐的标签方参数梯度dw
′g,发送给标签方;
205.步骤3.3:标签方减去第二随机掩码,得到己方参数梯度dwg=dw

g-rg;
206.步骤3.4:标签方更新模型参数,例如采用梯度下降法wg←wg-learning_rate
·
dwg。
207.步骤4:数据源方(host)计算梯度并更新参数(与步骤3对称,不分先后)。
208.步骤4.1:数据源方生成随机数rh作为第三随机掩码,计算梯度的密文作为第三随机掩码,计算梯度的密文将加盐的己方参数梯度密文发送给标签方;
209.步骤4.2:标签方用第二私钥skg解密得到加盐的数据源方参数梯度dw
′h,发送给数据源方;
210.步骤4.3:数据源方减去第三随机掩码,得到己方参数梯度dwh=dw

h-rh;
211.步骤4.4:数据源方更新参数,例如采用梯度下降法wh←wh-learning_rate
·
dwh。
212.步骤5:重复步骤2-4直至收敛或达到配置的迭代次数。
213.本发明实施例所取得的有益效果:
214.本发明利用了可交换的同态加密手段和增加随机掩码的方式,成功去除了“可信第三方”,保证两方数据传输不泄漏,保护隐私;可有效规避内部人员窜谋带来的安全性隐患,保证数据应用的合规,从节点部署和性能要求上来说极大降低产品的使用成本。同时,此方法避免了运用秘密共享mpc协议存在的“系统资源消耗大、通信复杂度高的秘密共享mpc协议落地实施的成本也就相应较高”的问题,解决了其他无可信第三方纵向联邦泊松回归方法中必须依赖mpc协议的问题。通过联邦学习 同态加密的方式训练模型,中间通信次数少(含发送公钥匙,仅通信7次);但通过基于秘密共享的mpc协议训练模型,训练过程中每一个算子都要进行通信(一个乘法算子,就需要5到6次通信,迭代多次的整个计算流程通信次数很多)。实现了从统计学角度上对事件的“计数”进行建模。
215.在此两方泊松中技术中,所有的数据在出库的时候都进行了同态加密,部分步骤伴随了加盐方法,没有任何明文本地模型结果的传输。增加随机掩码(也称为“加盐”)的本
质也是一种加密方式,加盐的随机数只用一次就会丢弃掉,对方无法猜到随机数,也就无法推算明文,能够保证其安全性。重点步骤分析如下:对数据源方来说,本方计算的z值并没有暴露给标签方,通过同态加密的手段,在保护数据的条件下,使标签方能更新梯度;对于标签方来说,计算密文的中包含y标签的重要信息,通过同态加密和加盐的手段,保护了标签信息,又帮助数据源方更新梯度。
216.在模型训练部署中减少了“可信第三方”协调节点的部署,降低了部署成本,降低安全隐患、实现数据合规;由于参与计算的两方都是实际拥有数据的参与方,所以更方便估计实施计算所需要的花费,双方可以根据自己本地数据的规模、变量个数等来设置一个比较合理的本地计算算力、网络带宽,既不会出现算力浪费的情况,也不会存在很高的延迟,很大程度提升了商业合作的可行性,落地实施容易。
217.另外,无论是同态加密还是增加随机掩码的方式,其安全性是可以拓展的,用户可根据自己隐私计算的应用场景,配置同态加密密钥的长度和随机数的大小范围。对于安全性要求较高的场景,可以选择较大的同态加密密钥的长度和随机数的大小范围,以满足数据合规需要;对于安全性要求较低的场景,可以选择较小的同态加密密钥的长度或仅使用简单加盐的方式,在提升运算速度同时减小传输量,实现安全性和计算速度、时间、带宽等物理资源的权衡,更好地满足不同场景的需求。在准确性上,在同一数据集上使用相同的参数,此技术计算结果与明文相比基本无损。
218.应该明白,公开的过程中的步骤的特定顺序或层次是示例性方法的实例。基于设计偏好,应该理解,过程中的步骤的特定顺序或层次可以在不脱离本公开的保护范围的情况下得到重新安排。所附的方法权利要求以示例性的顺序给出了各种步骤的要素,并且不是要限于所述的特定顺序或层次。
219.在上述的详细描述中,各种特征一起组合在单个的实施方案中,以简化本公开。不应该将这种公开方法解释为反映了这样的意图,即,所要求保护的主题的实施方案需要比清楚地在每个权利要求中所陈述的特征更多的特征。相反,如所附的权利要求书所反映的那样,本发明处于比所公开的单个实施方案的全部特征少的状态。因此,所附的权利要求书特此清楚地被并入详细描述中,其中每项权利要求独自作为本发明单独的优选实施方案。
220.为使本领域内的任何技术人员能够实现或者使用本发明,上面对所公开实施例进行了描述。对于本领域技术人员来说;这些实施例的各种修改方式都是显而易见的,并且本文定义的一般原理也可以在不脱离本公开的精神和保护范围的基础上适用于其它实施例。因此,本公开并不限于本文给出的实施例,而是与本技术公开的原理和新颖性特征的最广范围相一致。
221.上文的描述包括一个或多个实施例的举例。当然,为了描述上述实施例而描述部件或方法的所有可能的结合是不可能的,但是本领域普通技术人员应该认识到,各个实施例可以做进一步的组合和排列。因此,本文中描述的实施例旨在涵盖落入所附权利要求书的保护范围内的所有这样的改变、修改和变型。此外,就说明书或权利要求书中使用的术语“包含”,该词的涵盖方式类似于术语“包括”,就如同“包括,”在权利要求中用作衔接词所解释的那样。此外,使用在权利要求书的说明书中的任何一个术语“或者”是要表示“非排它性的或者”。
222.本领域技术人员还可以了解到本发明实施例列出的各种说明性逻辑块
(illustrative logical block),单元,和步骤可以通过电子硬件、电脑软件,或两者的结合进行实现。为清楚展示硬件和软件的可替换性(interchangeability),上述的各种说明性部件(illustrative components),单元和步骤已经通用地描述了它们的功能。这样的功能是通过硬件还是软件来实现取决于特定的应用和整个系统的设计要求。本领域技术人员可以对于每种特定的应用,可以使用各种方法实现所述的功能,但这种实现不应被理解为超出本发明实施例保护的范围。
223.本发明实施例中所描述的各种说明性的逻辑块,或单元都可以通过通用处理器,数字信号处理器,专用集成电路(asic),现场可编程门阵列或其它可编程逻辑装置,离散门或晶体管逻辑,离散硬件部件,或上述任何组合的设计来实现或操作所描述的功能。通用处理器可以为微处理器,可选地,该通用处理器也可以为任何传统的处理器、控制器、微控制器或状态机。处理器也可以通过计算装置的组合来实现,例如数字信号处理器和微处理器,多个微处理器,一个或多个微处理器联合一个数字信号处理器核,或任何其它类似的配置来实现。
224.本发明实施例中所描述的方法或算法的步骤可以直接嵌入硬件、处理器执行的软件模块、或者这两者的结合。软件模块可以存储于ram存储器、闪存、rom存储器、eprom存储器、eeprom存储器、寄存器、硬盘、可移动磁盘、cd-rom或本领域中其它任意形式的存储媒介中。示例性地,存储媒介可以与处理器连接,以使得处理器可以从存储媒介中读取信息,并可以向存储媒介存写信息。可选地,存储媒介还可以集成到处理器中。处理器和存储媒介可以设置于asic中,asic可以设置于用户终端中。可选地,处理器和存储媒介也可以设置于用户终端中的不同的部件中。
225.在一个或多个示例性的设计中,本发明实施例所描述的上述功能可以在硬件、软件、固件或这三者的任意组合来实现。如果在软件中实现,这些功能可以存储与电脑可读的媒介上,或以一个或多个指令或代码形式传输于电脑可读的媒介上。电脑可读媒介包括电脑存储媒介和便于使得让电脑程序从一个地方转移到其它地方的通信媒介。存储媒介可以是任何通用或特殊电脑可以接入访问的可用媒体。例如,这样的电脑可读媒体可以包括但不限于ram、rom、eeprom、cd-rom或其它光盘存储、磁盘存储或其它磁性存储装置,或其它任何可以用于承载或存储以指令或数据结构和其它可被通用或特殊电脑、或通用或特殊处理器读取形式的程序代码的媒介。此外,任何连接都可以被适当地定义为电脑可读媒介,例如,如果软件是从一个网站站点、服务器或其它远程资源通过一个同轴电缆、光纤电缆、双绞线、数字用户线(dsl)或以例如红外、无线和微波等无线方式传输的也被包含在所定义的电脑可读媒介中。所述的碟片(disk)和磁盘(disc)包括压缩磁盘、镭射盘、光盘、dvd、软盘和蓝光光盘,磁盘通常以磁性复制数据,而碟片通常以激光进行光学复制数据。上述的组合也可以包含在电脑可读媒介中。
226.以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献