抗推理攻击的分布式多任务学习隐私保护方法及系统技术方案

技术编号:26797341 阅读:26 留言:0更新日期:2020-12-22 17:14
抗推理攻击的分布式多任务学习隐私保护方法及系统,通过各任务节点基于本地数据进行模型训练,并通过共享知识的方式实现联合模型训练;本发明专利技术提出基于同态密码学的隐私保护模型训练机制,使得任务节点在保证训练数据隐私的前提下,实现多任务学习模型训练,并使得模型训练效率独立于样本数据量,提高了机器学习模型训练效率;设计了基于差分隐私的模型发布方法,可以抵抗模型用户在访问机器学习模型时发起的身份推理攻击。系统包括密钥生成中心、中央服务器、任务节点和模型用户。本发明专利技术能够保证模型训练过程中和模型发布后任务节点的数据隐私,促进多任务机器学习的大规模应用。

【技术实现步骤摘要】
抗推理攻击的分布式多任务学习隐私保护方法及系统
本专利技术属于信息安全领域,具体涉及一种抗推理攻击的分布式多任务学习隐私保护方法及系统,能够用于大规模不同分布数据的多任务模型协同训练。
技术介绍
随着云计算和大数据技术的发展,机器学习技术得到了大规模的应用,尤其在图像识别、智能语音识别等领域,机器学习模型的识别精度已经超过人脑的识别精度。机器学习往往基于海量数据进行模型训练,然而,训练数据可能来自不同数据源,从而导致所收集的数据分布情况不同。因此,传统的机器学习模型训练方法难以直接应用于多数据分布模型训练。为使得机器学习模型在多样化分布的数据上具有更好的泛化能力,多任务机器学习被用于在多样化分布的数据上同时实现多个模型训练,通过共享知识,实现多个训练任务的联合学习。然而,训练数据中通常含有用户的大量敏感信息,如疾病诊断信息、个人身份信息、兴趣偏好信息等,数据拥有者或者训练任务节点可能会因为担心隐私信息泄露拒绝以明文形式共享训练数据和提取的共享知识。目前,已有多种基于密码学和差分隐私技术的多任务学习模型训练方案,但是在大规模、多分布的数据中进行模型训练,现有方案仍存在模型训练效率低、训练模型准确性差、数据隐私无法保证等问题。如:“Privacy-PreservingDistributedMulti-TaskLearningwithAsynchronousUpdates”中采用差分隐私方案对任务间共享的信息进行扰动,但是,由于在共享信息中加入了噪声,从而导致共享信息的准确性降低,进而导致了模型训练精度降低。因此,如何能在确保用户数据隐私的前提下,实现多任务的机器学习模型训练已成为多分布数据机器学习进一步发展与应用的关键。
技术实现思路
本专利技术的目的在于针对上述现有技术中多分布数据机器学习模型训练过程中的隐私保护问题,提供一种抗推理攻击的分布式多任务学习隐私保护方法及系统,以保证模型训练过程中和模型发布后任务节点的数据隐私,促进多任务机器学习的大规模应用。为了实现上述目的,本专利技术有如下的技术方案:一种抗推理攻击的分布式多任务学习隐私保护方法,包括以下步骤:步骤1,为中央服务器和任务节点生成安全密钥,并通过安全通道实现密钥分发;步骤2,各任务节点初始化训练模型的参数,并将参数分为共享部分和任务相关部分;步骤3,选择ADMM为模型训练优化器提升训练模型的训练效率,各任务节点计算其参数共享部分和训练样本表示矩阵的乘积,并将计算结果加密后发送给中央服务器;步骤4,基于ADMM约束条件,构造增广拉格朗日函数,并分别求解获得拉格朗日乘子、参数共享部分和参数任务相关部分的更新式;步骤5,对步骤4更新式所涉及的训练样本数据进行预处理计算,降低模型训练过程中密文数据计算量;中央服务器对步骤3所述各任务节点上传的乘积进行聚合处理;步骤6,各任务节点从中央服务器下载其对应的乘积聚合结果,以步骤5中预处理计算的训练样本为输入,计算更新拉格朗日乘子;步骤7,以更新后的拉格朗日乘子和预处理计算的训练样本数据作为输入,计算更新参数共享部分,计算参数共享部分和训练样本表示矩阵的乘积,将乘积上传给中央服务器;步骤8,以更新后的参数共享部分和预处理计算的训练样本数据为输入,计算更新参数任务相关部分,并与训练样本数据表示矩阵计算乘积;步骤9,中央服务器对各任务节点的乘积聚合进行更新计算;步骤10,任务节点借助中央服务器计算差分隐私敏感度,并解密训练后的模型参数;步骤11,任务节点依据计算的敏感度产生差分隐私噪声,并对训练后的模型参数进行扰动,最后将扰动后的模型进行发布。优选的,选择RidgeRegression模型为训练模型,步骤2具体步骤如下:2a)任务节点首先依据模型结构随机初始化模型参数w(0),通过定点整数表示法对初始化模型参数w(0)进行归整处理;2b)将所有模型参数分为共享部分p(0)和任务相关部分q(0),通过分享参数的共享部分实现知识传递,其中,w(0)=p(0)+q(0);采用ADMM优化器,所述步骤3具体步骤如下:3a)在任务节点训练数据X中,随机抽取条训练样本,并分别依次选取d条样本数据计算其平均值,构造出样本表示矩阵Θ,样本平均值向量为表示矩阵中的元素向量,其中表示下取整计算,nt表示节点Tt的训练样本数量,d表示单条训练样本的维度;3b)假设任务节点的参数共享部分代表了本节点的训练样本数据分布特性,构造ADMM优化器约束条件如下:其中,Θi(Θt)表示任务节点Ti(Tt)的样本表示矩阵,pi表示任务节点Ti的参数共享部分,m表示任务节点数;3c)在训练RidgeRegression模型时,其损失函数定义为:利用ADMM训练RidgeRegression模型问题形式化表示为如下多方优化问题:其中,{Xt,yt}表示任务节点Tt的训练数据,pt和qt分别表示参数的共享部分和任务相关部分,wt=pt+qt表示模型参数,λ、λ1、λ2表示归一化参数,Θt表示任务节点Tt的训练数据表示矩阵,m表示任务节点数量,t表示第t个任务节点;3d)任务节点计算训练样本表示矩阵Θ与初始化生成的参数共享部分p(0)的乘积,并采用所有任务节点的联合公钥pkΣ对其加密,得到密文[[Θp(0)]];然后,任务节点将[[Θp(0)]]发送给中央服务器管理,其中[[·]]表示对数据加密后的密文。优选的,所述步骤5具体步骤如下:5a)按下式对更新式所涉及的训练样本数据进行预处理计算:其中,{Xt,yt}表示任务节点Tt的训练数据,Θt表示任务节点Tt的训练样本表示矩阵,I表示单位矩阵,ρ表示对偶变量,λ1、λ2表示归一化参数,m表示任务节点数量;拉格朗日乘子ut、参数共享部分pt和参数任务相关部分qt的更新式表示如下:其中,表示第k/k+1次迭代训练中的拉格朗日乘子,表示第k/k+1次迭代训练中的参数共享部分,表示第k/k+1次迭代训练中的参数任务相关部分,Θt表示任务节点Tt的训练样本表示矩阵,m表示任务节点数量,at、Bt、Ct、Ft、gt、Lt分别为上述对训练样本预处理计算结果;5b)在任务节点预处理训练样本时,中央服务器对接收到来自任务节点的乘积数据进行聚合处理,对于任一t∈[1,m]:其中,Θi表示任务节点i的训练样本表示矩阵,表示任务节点i初始化的参数共享部分,m表示任务节点数量,Π表示加密算法中的同态乘法计算。优选的,所述步骤6具体步骤如下:6a)任务节点从中央服务器下载本节点对应的乘积聚合并执行如下计算:其中,d为任务节点训练数据的维度,m为任务节点数量,Θt为任务节点Tt的训练样本表示矩阵;6b)依据步骤5a)中的更新式,对第k+1次迭代训练中的拉格朗日乘子进行更新:其中,为第k次迭代模型训练中的拉本文档来自技高网
...

【技术保护点】
1.一种抗推理攻击的分布式多任务学习隐私保护方法,其特征在于,包括以下步骤:/n步骤1,为中央服务器和任务节点生成安全密钥,并通过安全通道实现密钥分发;/n步骤2,各任务节点初始化训练模型的参数,并将参数分为共享部分和任务相关部分;/n步骤3,选择ADMM为模型训练优化器提升训练模型的训练效率,各任务节点计算其参数共享部分和训练样本表示矩阵的乘积,并将计算结果加密后发送给中央服务器;/n步骤4,基于ADMM约束条件,构造增广拉格朗日函数,并分别求解获得拉格朗日乘子、参数共享部分和参数任务相关部分的更新式;/n步骤5,对步骤4更新式所涉及的训练样本数据进行预处理计算,降低模型训练过程中密文数据计算量;中央服务器对步骤3所述各任务节点上传的乘积进行聚合处理;/n步骤6,各任务节点从中央服务器下载其对应的乘积聚合结果,以步骤5中预处理计算的训练样本为输入,计算更新拉格朗日乘子;/n步骤7,以更新后的拉格朗日乘子和预处理计算的训练样本数据作为输入,计算更新参数共享部分;计算参数共享部分和训练样本表示矩阵的乘积,将乘积上传给中央服务器;/n步骤8,以更新后的参数共享部分和预处理计算的训练样本数据为输入,计算更新参数任务相关部分,并与训练样本数据表示矩阵计算乘积;/n步骤9,中央服务器对各任务节点的乘积聚合进行更新计算;/n步骤10,任务节点借助中央服务器计算差分隐私敏感度,并解密训练后的模型参数;/n步骤11,任务节点依据计算的敏感度产生差分隐私噪声,并对训练后的模型参数进行扰动,最后将扰动后的模型进行发布。/n...

【技术特征摘要】
1.一种抗推理攻击的分布式多任务学习隐私保护方法,其特征在于,包括以下步骤:
步骤1,为中央服务器和任务节点生成安全密钥,并通过安全通道实现密钥分发;
步骤2,各任务节点初始化训练模型的参数,并将参数分为共享部分和任务相关部分;
步骤3,选择ADMM为模型训练优化器提升训练模型的训练效率,各任务节点计算其参数共享部分和训练样本表示矩阵的乘积,并将计算结果加密后发送给中央服务器;
步骤4,基于ADMM约束条件,构造增广拉格朗日函数,并分别求解获得拉格朗日乘子、参数共享部分和参数任务相关部分的更新式;
步骤5,对步骤4更新式所涉及的训练样本数据进行预处理计算,降低模型训练过程中密文数据计算量;中央服务器对步骤3所述各任务节点上传的乘积进行聚合处理;
步骤6,各任务节点从中央服务器下载其对应的乘积聚合结果,以步骤5中预处理计算的训练样本为输入,计算更新拉格朗日乘子;
步骤7,以更新后的拉格朗日乘子和预处理计算的训练样本数据作为输入,计算更新参数共享部分;计算参数共享部分和训练样本表示矩阵的乘积,将乘积上传给中央服务器;
步骤8,以更新后的参数共享部分和预处理计算的训练样本数据为输入,计算更新参数任务相关部分,并与训练样本数据表示矩阵计算乘积;
步骤9,中央服务器对各任务节点的乘积聚合进行更新计算;
步骤10,任务节点借助中央服务器计算差分隐私敏感度,并解密训练后的模型参数;
步骤11,任务节点依据计算的敏感度产生差分隐私噪声,并对训练后的模型参数进行扰动,最后将扰动后的模型进行发布。


2.根据权利要求1所述抗推理攻击的分布式多任务学习隐私保护方法,其特征在于,选择RidgeRegression模型为训练模型,步骤2具体步骤如下:
2a)任务节点首先依据模型结构随机初始化模型参数w(0),通过定点整数表示法对初始化模型参数w(0)进行归整处理;
2b)将所有模型参数分为共享部分p(0)和任务相关部分q(0),通过分享参数的共享部分实现知识传递,其中,w(0)=p(0)+q(0);
采用ADMM优化器,所述步骤3具体步骤如下:
3a)在任务节点训练数据X中,随机抽取条训练样本,并分别依次选取d条样本数据计算其平均值,构造出样本表示矩阵Θ,样本平均值向量为表示矩阵中的元素向量,其中表示下取整计算,nt表示节点Tt的训练样本数量,d表示单条训练样本的维度;
3b)假设任务节点的参数共享部分代表了本节点的训练样本数据分布特性,构造ADMM优化器约束条件如下:



其中,Θi(Θt)表示任务节点Ti(Tt)的样本表示矩阵,pi表示任务节点Ti的参数共享部分,m表示任务节点数;
3c)在训练RidgeRegression模型时,其损失函数定义为:



利用ADMM训练RidgeRegression模型问题形式化表示为如下多方优化问题:






其中,{Xt,yt}表示任务节点Tt的训练数据,pt和qt分别表示参数的共享部分和任务相关部分,wt=pt+qt表示模型参数,λ、λ1、λ2表示归一化参数,Θt表示任务节点Tt的训练数据表示矩阵,m表示任务节点数量,t表示第t个任务节点;
3d)任务节点计算训练样本表示矩阵Θ与初始化生成的参数共享部分p(0)的乘积,并采用所有任务节点的联合公钥pkΣ对其加密,得到密文然后,任务节点将发送给中央服务器管理,其中表示对数据加密后的密文。


3.根据权利要求1所述抗推理攻击的分布式多任务学习隐私保护方法,其特征在于,所述步骤5具体步骤如下:
5a)按下式对更新式所涉及的训练样本数据进行预处理计算:



其中,{Xt,yt}表示任务节点Tt的训练数据,Θt表示任务节点Tt的训练样本表示矩阵,I表示单位矩阵,ρ表示对偶变量,λ1、λ2表示归一化参数,m表示任务节点数量;
拉格朗日乘子ut、参数共享部分pt和参数任务相关部分qt的更新式表示如下:



其中,表示第k/k+1次迭代训练中的拉格朗日乘子,表示第k/k+1次迭代训练中的参数共享部分,表示第k/k+1次迭代训练中的参数任务相关部分,Θt表示任务节点Tt的训练样本表示矩阵,m表示任务节点数量,at、Bt、Ct、Ft、gt、Lt分别为上述对训练样本预处理计算结果;
5b)在任务节点预处理训练样本时,中央服务器对接收到来自任务节点的乘积数据进行聚合处理,对于任一t∈[1,m]:



其中,Θi表示任务节点i的训练样本表示矩阵,表示任务节点i初始化的参数共享部分,m表示任务节点数量,Π表示加密算法中的同态乘法计算。


4.根据权利要求1所述抗推理攻击的分布式多任务学习隐私保护方法,其特征在于,所述步骤6具体步骤如下:
6a)任务节点从中央服务器下载本节点对应的...

【专利技术属性】
技术研发人员:马鑫迪马建峰沈玉龙姜奇谢康李腾卢笛习宁冯鹏斌
申请(专利权)人:西安电子科技大学公安部第三研究所
类型:发明
国别省市:陕西;61

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

1