The invention discloses a training and prediction method of privacy protection neural network based on VHE, which encrypts data set D'by using VHE homomorphic encryption algorithm and obtains encrypted data set D'. The encrypted data set D', which includes training data set D' 1 and testing data set D'2, carries out BP neural network batch on the training data set D' 1. Gradient training is used to obtain the trained BP neural network; the trained BP neural network is used to predict the test data set D'2 and obtain the prediction result; The training and prediction of BP neural network in ciphertext domain is realized by combining encryption algorithm and BP neural network method, that is to say, in the case of untrustworthy cloud. Under the protection of input encryption, the data can still be trained and predicted by BP neural network, which realizes the real outsourcing of computing.
【技术实现步骤摘要】
一种基于VHE的隐私保护神经网络的训练及预测方法
本专利技术涉及向量同态计算领域,具体涉及一种基于VHE的隐私保护神经网络的训练及预测方法。
技术介绍
如今,大数据已经成为未来社会与经济发展的趋势,在人类社会各个领域都有很大的应用潜力。大量来自传感器,社交网络,企业,互联网等的数据被收集、共享和分析。由于云计算的广泛使用,用户现在不仅将他们的数据,还将数据挖掘的任务外包给云。然而,云很有可能是不安全的,云在数据挖掘时可能会危害用户的隐私。被挖掘的数据可能包含敏感信息,例如个人身份,医疗记录甚至财务信息。BP神经网络是多层前馈网络,主要工作分为两个阶段:第一阶段,信号向前传播,由输入层经隐层到达输出层;第二阶段:误差反向传播,由输出层经隐层再到输入层,依次调节隐含层到输出层的权重和隐层神经元的阈值、输入层到隐含层的权重和神经元阈值。它的整个过程是在外界输入样本的刺激下不断改变网络的连接权值,以使网络的输出不断地接近期望的输出。在大数据背景下,利用BP神经网络进行训练和预测所需数据量很大,通常用户会将数据发送至云进行计算,云将计算后的结果再返回至用户,在计算时通常是对源数据进行计算,由于云有可能是不安全的,因此这些源数据可能会被泄露,对用户造成极大的损失。而目前为了保护数据的隐私,用到的方法有k-匿名化、差分隐私、数据加密等。K-匿名化在一定程度上可以保护个人隐私,但是同时会降低数据的可用性;差分隐私只能保证数据的精确值的安全,不能保证数据的估计值的安全;如果用一般的底层加密方案加密数据,对这样的密文进行数据挖掘又很有难度。由于利用BP神经网络进行训练和预测过 ...
【技术保护点】
1.一种基于VHE的隐私保护神经网络的训练及预测方法,其特征在于:包括以下步骤:步骤1:利用VHE同态加密算法对数据集D进行加密,得到加密数据集D′,所述加密数据集D′包括训练数据集D′1和测试数据集D′2;步骤2:对所述训练数据集D′1进行BP神经网络批梯度训练,得到训练后的BP神经网络;步骤3:利用训练后的BP神经网络对测试数据集D′2进行预测,得到预测结果。
【技术特征摘要】
1.一种基于VHE的隐私保护神经网络的训练及预测方法,其特征在于:包括以下步骤:步骤1:利用VHE同态加密算法对数据集D进行加密,得到加密数据集D′,所述加密数据集D′包括训练数据集D′1和测试数据集D′2;步骤2:对所述训练数据集D′1进行BP神经网络批梯度训练,得到训练后的BP神经网络;步骤3:利用训练后的BP神经网络对测试数据集D′2进行预测,得到预测结果。2.根据权利要求1所述的一种基于VHE的隐私保护神经网络的训练及预测方法,其特征在于:所述步骤1中利用VHE进行加密的具体过程为:利用加密公式Sc=wx+e(1),得到SD′=wD+e(2),又,S=[IR],则加密数据集D′为:D′=[(c1,y1),(c2,y2),...,(cn,yn)](4),其中,S表示加密时采用的私钥矩阵,w表示加密参数,e表示噪声向量,M表示公钥矩阵,I表示单位矩阵,R表示一个随机矩阵,x表示数据集D中的明文向量,c表示加密数据集D′中的密文向量,n表示数据的序号。3.根据权利要求1所述的一种基于VHE的隐私保护神经网络的训练及预测方法,其特征在于:所述步骤2具体为:步骤21:设BP神经网络含有m-1个隐层,学习率为α,初始化m个权值矩阵和m个阈值向量;步骤22:设定训练次数,将训练数据集D′1中的数据a0输入所述BP神经网络,利用权值矩阵和阈值向量,在经过每一层隐层的计算后得到输出层的输出矩阵am,a0表示训练数据集D′1中所有数据的输入向量;步骤23:计算真实值矩阵y与所述输出矩阵am的差值矩阵err;步骤24:利用所述差值矩阵err反向依次计算输出层到第一层隐层的敏感性;步骤25:利用所述敏感性和学习率更新所述权值矩阵和阈值向量,判断训练次数是否达到阈值,若没有达到,则跳转步骤22,否则结束训练。4.根据权利要求3所述的一种基于VHE的隐私保护神经网络的训练及预测方法,其特征在于:所述步骤22中,当隐层和输出层的激励函数均为线性函数时,输出矩阵am的计算方法如下:第一层隐层的输入为:第一层隐层的输出为:a1=f1(n1)(6),则第i层隐层的输入为:第i层隐层的输出为:ai=fi(ni)(8),即输出层的输入为:输出层的输出为:am=fm(nm)(10),当隐层中第i层的激励函数为非线性函数时,该层隐层的输出为:ai=fi(ni/paraml)*paraml(11),当输出层的激励函数为非线性函数时,输出层的输出为:am=fm(nm/paraml)*paraml(12),其中,n1表示第一层隐层的输入,a0表示BP网络的输入...
【专利技术属性】
技术研发人员:杨浩淼,张有,何伟超,梁绍鹏,李洪伟,任彦之,
申请(专利权)人:电子科技大学,
类型:发明
国别省市:四川,51
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。