【技术实现步骤摘要】
一种基于安全多方计算的岭回归隐私保护算法
[0001]本专利技术涉及计算机软件技术,更具体地说,它涉及一种基于安全多方计算的岭回归隐私保护算法。
技术介绍
[0002]机器学习主要做的研究,是如何依据已有数据构建算法模型,在面对经验数据时,算法能基于数据生成模型,而模型会基于新的同类型数据反映给我们需要的决策。常见的机器学习算法大致可以分为三种,它们分别是有监督学习、无监督学习和强化学习。针对包括线性回归、逻辑回归、支持向量机、决策树、神经网络、k
‑
means聚类、贝叶斯分类、随机森林等不同的机器学习算法,已有研究人员设计了许多隐私保护方案。而这些隐私保护技术基本上基于以下几种类型。
[0003]其中一类是基于差分隐私的隐私保护技术。差分隐私技术利用随机噪声掩盖真实数据信息,拥有实现开销低的优点,依据随机噪声加入的时机可以将差分隐私扰动方法分为输入扰动、中间参数扰动、目标扰动、输出扰动等。Beaulieu
‑
Jones
[1]提出了一种基于差分隐私的机器学习梯度下降法来训练辅助分类器生成对抗网络的模型,为保护患者的个人数据同时分享临床研究数据提供了解决方案。Shokri
[2]提出了一种分布式的选择随机梯度下降算法,该方案在模型训练过程中给梯度参数添加噪声,以达到防止隐私泄露的目的。Papernot
[3]将一种新的噪声聚集机制R
é
nyi差分隐私引入教师群体私有集成模型,该模型可用于图像分类,引入R
é
nyi差 ...
【技术保护点】
【技术特征摘要】
1.一种基于安全多方计算的岭回归隐私保护算法,其特征在于,设置两个网络互联的参与方S
k
;然后执行如下步骤,三元组生成步骤,用于通过扩展不经意传输协议对参与方S
k
进行运算分析,以生成乘法三元组;岭参数选取步骤,用于通过所述参与方S
k
的数据集对备选岭参数进行十折交叉验证,以获取岭参数λ;数据处理步骤,用于对所述参与方S
k
中待训练的数据进行盲化分块处理,以获取整数数据矩阵;并对所述参与方S
k
的回归参数进行初始化,以获取初始参数向量秘密分块[W]
k
(d+1,1);模型训练步骤,用于以乘法三元组、岭参数λ、整数数据矩阵和初始化后的回归参数作为训练参数,通过安全多方计算法进行岭回归训练,获取岭回归的模型参数向量秘密分块;结果重构步骤,用于在所述模型训练步骤完成后,两个所述参与方S
k
之间将通过数据交互进行秘密重构处理,以获取训练模型的模型回归参数w(d+1,1);其中,k∈(1,2);d为样本特征数。2.根据权利要求1所述的一种基于安全多方计算的岭回归隐私保护算法,其特征在于,所述三元组生成步骤具体包括,第一步、生成随机数A
i
;生成随机数B
i
;第二步、所述参数方S1通过扩展不经意传输协议与参数方S2交互得到秘密分块[C
i
]1;所述参数方S2通过扩展不经意传输协议与参数方S1交互得到秘密分块[C
i
]2;第三步、生成随机数[A
i
]1;生成随机数[B
i
]2;第四步、对所述随机数A
i
与随机数[A
i
]1进行差值运算,获取秘密分块[A
i
]2,并将所述秘密分块[A
i
]2,发送给参数方S2;对所述随机数B
i
与随机数[B
i
]2进行差值运算,获取秘密分块[B
i
]1,并将所述秘密分块[B
i
]1,发送给参数方S1;其中,i为1以上的自然数。3.根据权利要求2所述的一种基于安全多方计算的岭回归隐私保护算法,其特征在于,所述随机数A
i
、随机数B
i
与秘密分块[C
i
]1、秘密分块[C
i
]2之间的关系为,[C
i
]1+[C
i
]2=A
i
B
i
。4.根据权利要求1所述的一种基于安全多方计算的岭回归隐私保护算法,其特征在于,所述岭参数选取步骤,具体包括,第一步、获取若干个备选岭参数,对所有所述的备选岭参数进行十折交叉验证,以获取均方误差最低的备选岭参数λ1、备选岭参数λ2、备选岭参数λ3;第二步、将所述备选岭参数λ1、备选岭参数λ2、备选岭参数λ3发送给参数方S2;第三步、采用所述参数方S2的数据集对备选岭参数λ1、备选岭参数λ2、备选岭参数λ3进行十折交叉验证,获取均方误差最低的备选岭参数作为岭参数λ;第四步、将所述岭参数λ发送给参数方S1。5.根据权利要求4所述的一种基于安全多方计算的岭回归隐私保护算法,其特征在于,若干个所述备选岭参数为,首项为1,公比为0.5的等比数列。6.根据权利要求1所述的一种基于安全多方计算的岭回归隐私保护算法,其特征在于,所述盲化分块处理,具体为,
第一步、在参与方S1中随机生成数据矩阵[x1]1(n1,d+1)、数据矩阵[y1]1(n1,1);第二步、在参与方S2中随机生成数据矩阵[x2]1(n2,d+1)、数据矩阵[y2]1(n2,1);第三步、计算数据矩阵[x1]2(n1,d+1)=x1(n1,d+1)
‑
[x1]1(n1,d+1),数据矩阵[y1]2(n1,1)=y1(n1,1)
‑
[y1]1(n1,1);第四步、计算数据矩阵[x2]2(n2,d+1)=x2(n2,d+1)
‑
[x2]1(n2,d+1),数据矩阵[y2]2(n2,1)=y2(n2,1)
‑
[y2]1(n2,1);第五步、将所述数据矩阵[x1]1(n1,d+1)、数据矩阵[y1]1(n1,1)发送给参与方S2;第六步、将所述数据矩阵[x2]1(n2,d+1)、数据矩阵[y2]1(n2,1)发送给参与方S1;第七步、将所述数据矩阵[x1]2(n1,d+1)、数据矩阵[x2]1(n2,d+1)合并为数据矩阵[x]1(n,d+1),将所述数据矩阵[y1]2(n1,1)、数据矩阵[y2]1(n2,1)合并为数据矩阵[y]1(n,1);第八步、将所述数据矩阵[x2]2(n2,d+1)、数据矩阵[x1]1(n1,d+1)合并为数据矩阵[x]2(n,d+1),将所述数据矩阵[y2]2(n2,1)、数据矩阵[y1]1(n1,1)合并为数据矩阵[y]2(n,1);第九步、对数据矩阵[x]1(n,d+1)、数据矩阵[y]1(n,1)进行精度处理,使其分别转化为整数矩阵[X]1(n,d+1)、整数矩阵[Y]1(n,1);第十步、对数据矩阵[x]2(n,d+1)、数据矩阵[y]2(n,1)进行精度处理,使其分别转化为整数矩阵[X]2(n,d+1)、整数矩阵[Y]2(n,1);其中,n、n1、n2均为1以上的自然数,且n=n1+n2;x1(n1,d+1)为参与方S1输入的用于训练的数据矩阵;x2(n2,d+1)为参与方S2输入的用于训练的数据矩阵;y1(n1,1)为参与方S1输入的用于训练的标签向量;y2(n2,1)为参与方S2输入的用于训练的标签向量。7.根据权利要求1所述的一种基于安全多方计算的岭回归隐私保护算法,其特征在于,对所述参与方S
k
的回归参数进行初始化,具体为,初始化参与方S1的回归参数,以生成长度为d+1的列向量,记为初始参数向量秘密分块[W]1(d+1,1)=(0,0,
…
,0);初始化参与方S2的回归参数,以生成长度为d+1的列向量,记为初始参数向量秘密分块[W]2(d+1,1)=(0,0,
…
,0)。8.根据权利要求6所述的一种基于安全多方计算的岭回归隐私保护算法,其特征在于,所述模型训练步骤,具体包括,第一步、所述参与方S1通过扩展不经意传输协议获取秘密分块[a]1(n,d+1);计算所述参与方S1中被盲化的待训练样本数据矩阵的秘密分块[E]1(n,d+1)=[X]1(n,d+1)
‑
[a]1(n,d+1);第二步、所述参与方S2通过扩展不经意传输协议获取秘密分块[a]2(n,d+1);计算所述参与方S2中被盲化的待训练样本数据矩阵的秘密分块[E]2(n,d+1)=[X]2(n,d+1)
‑
[a]2(n,d+1);第三步、通过秘密重构协议得到被盲化的待训练样本数据矩阵E(n,d+1)=[E]1(n,d+1)+[E]2(n,d+1);第四步、在所述参与方S1中顺序选取若干数据矩阵,分别记为数据矩阵[X
t
]1(|B|,d+1)、数据矩阵[Y
t
]1(|B|,1)、数据矩阵E<...
【专利技术属性】
技术研发人员:林志强,王楷梁,梁承东,王正临,
申请(专利权)人:广州竞远安全技术股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。