[发明专利]一种非交互式隐私保护多方机器学习方法有效
申请号: | 202010092237.2 | 申请日: | 2020-02-14 |
公开(公告)号: | CN111260081B | 公开(公告)日: | 2023-03-14 |
发明(设计)人: | 李进;李同;向晓宇 | 申请(专利权)人: | 广州大学 |
主分类号: | G06N20/00 | 分类号: | G06N20/00;G06F21/60 |
代理公司: | 广州市华学知识产权代理有限公司 44245 | 代理人: | 林梅繁 |
地址: | 510006 广东省*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 交互式 隐私 保护 多方 机器 学习方法 | ||
1.一种非交互式隐私保护多方机器学习方法,其特征在于,所述方法构建了非交互式隐私保护机器学习架构,所述架构包括三种实体:
数据属主,为拥有数据集,并为机器学习分类器的训练提供训练数据,且不需要获得训练结果的实体;
数据服务提供者,为不可信的辅助服务器,在训练期间承担加密和运算操作,包括发布公共参数,向数据属主颁发加密密钥,以及与训练者合作进行训练;
训练者,从数据属主处收集数据作为训练数据集,利用该训练数据集训练并建立机器学习分类器模型;
所述方法包括以下步骤:
S1、数据服务提供者生成公共参数,并初始化具有安全参数的公钥加密方案,然后为每个数据属主生成私钥与公钥密钥对,并将公钥分发给该数据属主;每一个训练者生成加密密钥对,并公布自己的加密公钥;
S2、数据属主对自己数据集中的每一个记录使用公钥加密方案进行加密,数据属主将加密的数据集上传给训练者,训练者收集后将其作为训练数据集的一部分;
S3、在训练者与数据服务提供者之间运行若干训练轮隐私保护训练协议,最终训练者得到训练完成的机器学习分类器模型,同时数据服务提供者无法以明文的形式揭示机器学习分类器模型的内容;
步骤S1中,公钥加密方案为基于CCA-2安全的公钥加密方案PKE={Gen,Enc,Dec},其模数为n;当需要加密一个训练样本实例x与其对应的标签y时,数据属主需要使用公钥pk进行加密:
(1)随机选择一对互逆的a阶非奇异矩阵A,其中每个元素均在以n为阶的循环群上,并将A设置为z(1);
(2)将A-1*x加密为PKE.Encpk(A-1*x)并设置为z(2);
(3)将z=z(1)||z(2)作为密文;
步骤S3在每个训练轮中,训练者使用随机梯度下降法选择收集得到的部分训练集,使用盲化算法隐藏当前模型得到盲化模型,并向数据服务提供者发送训练请求;数据服务提供者接收到请求后,在盲化模型和加密训练集上进行梯度计算,之后把结果返回给训练者;训练者对返回结果进行去盲化后得到当前梯度,利用当前梯度对当前机器学习分类器模型进行更新,一旦达到最大的训练轮数或机器学习分类器模型收敛,则隐私保护训练协议结束,并得到最终的机器学习分类器模型。
2.根据权利要求1所述的非交互式隐私保护多方机器学习方法,其特征在于,步骤S1中每一个训练者生成的加密密钥对为Paillier加密密钥对。
3.根据权利要求2所述的非交互式隐私保护多方机器学习方法,其特征在于,所述Paillier加密为加同态加密方案,为在加法群上实现的同态加密方案。
4.根据权利要求1所述的非交互式隐私保护多方机器学习方法,其特征在于,在每个训练轮t中,执行以下步骤:
(1)训练者将当前分类器模型θt-1盲化为盲化模型θt-1’以保护其隐私性,并用随机梯度下降法选择一个小批次的加密数据集{z},之后将其中的一部分加密数据集{z(2)}与盲化模型θt-1’传输给数据服务提供者作为请求;
(2)数据服务提供者利用训练者上传的请求,以隐私保护的形式完成梯度计算,得到被盲化的梯度G’并返回给训练者;
(3)训练者对被盲化的梯度G’进行解盲,得到当前训练轮的梯度G,并利用梯度下降法更新得到当前训练轮的模型θt=θt-1-ηG,其中η为学习率。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广州大学,未经广州大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010092237.2/1.html,转载请声明来源钻瓜专利网。