本发明涉及物联网技术领域,尤其涉及一种数据隐私保护方法、装置及计算机可读存储介质。
背景技术:
随着通信网络的发展,大量物联网设备持续接入网络并产生大量的数据。作为大数据分析领域的主流方法,深度学习正与物联网应用紧密结合,已经广泛应用到智慧城市、智慧家居、无人驾驶等多个领域。
传统中心化的深度学习要求用户将数据提交到一个数据中心,然后,由云服务器统一进行训练。然而,这些数据很可能会被模型训练者滥用,推测出更多有关用户的隐私信息。分布式的深度学习在不公开数据集的前提下,允许多个参与者联合学习一个共同的模型。但是,在分布式的深度学习环境下,在云服务器与参与者之间分享数据的过程中,由于互相分享的数据隐私保护性差,仍会导致敏感信息的泄露。
上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。
技术实现要素:
本发明的主要目的在于提供一种数据隐私保护方法、装置及计算机可读存储介质,旨在解决数据隐私保护性差的技术问题。
为实现上述目的,本发明提供一种数据隐私保护方法,所述数据隐私保护方法包括以下步骤:
参与者获取云服务器发送的第一权重;
所述参与者基于所述第一权重以及模型训练规则,迭代所述参与者对应的本地模型,确定迭代所述本地模型完成后所述本地模型中各个神经元的第二权重;
所述参与者基于所述第二权重以及权重重要性算法,确定所述第二权重对应的权重重要性;
所述参与者基于所述第二权重、所述权重重要性以及扰动机制,确定干扰所述第二权重后的扰动权重,并将所述扰动权重发送至云服务器。
可选地,所述参与者基于所述第二权重、所述权重重要性以及扰动机制,确定干扰所述第二权重后的扰动权重,并将所述扰动权重发送至云服务器的步骤之后,还包括:
所述云服务器接收所述参与者所发送的扰动权重;
所述云服务器将所述扰动权重输入至所述云服务器的模型环中的第一目标模型,并获取所述模型环的第二目标模型的第三权重,其中,所述第二目标模型为所述模型环中所述第一目标模型的前一个模型;
所述云服务器将所述第三权重发送至所述参与者,以供所述参与者接收所述第三权重,将所述第三权重作为所述第一权重,并执行所述参与者基于所述第一权重以及模型训练规则,迭代所述参与者对应的本地模型,确定迭代所述本地模型完成后所述本地模型中各个神经元的第二权重的步骤。
可选地,所述云服务器将所述扰动权重输入至所述云服务器的模型环中的第一目标模型,并获取所述模型环的第二目标模型的第三权重的步骤之后,还包括:
所述云服务器获取所述第一目标模型;
所述云服务器将所述第一目标模型作为所述第二目标模型,并执行所述获取所述模型环的第二目标模型的第三权重的步骤。
可选地,所述云服务器将所述扰动权重输入至所述云服务器的模型环中的第一目标模型,并获取所述模型环的第二目标模型的第三权重的步骤之前,还包括:
所述云服务器获取非隐私数据;
所述云服务器基于所述非隐私数据,初始化所述模型环中的目标模型,所述目标模型包括所述第一目标模型以及所述第二目标模型。
可选地,所述参与者基于所述第二权重、所述权重重要性以及扰动机制,确定干扰所述第二权重后的扰动权重,并将所述扰动权重发送至云服务器的步骤包括:
所述参与者基于所述权重重要性以及扰动机制,对所述权重重要性进行归一化操作,确定权重归一化结果;
所述参与者获取总隐私预算,并基于所述权重归一化结果以及所述总隐私预算,确定所述权重重要性对应的隐私预算;
所述参与者基于所述第二权重以及所述隐私预算,确定干扰所述第二权重后的扰动权重。
可选地,所述参与者基于所述第二权重以及所述隐私预算,确定干扰所述第二权重后的扰动权重的步骤包括:
所述参与者基于所述隐私预算以及差分隐私机制,对所述第二权重进行扰动,确定干扰所述第二权重后的扰动权重。
可选地,所述参与者基于所述第二权重以及权重重要性算法,确定所述第二权重对应的权重重要性的步骤包括:
所述参与者基于所述第二权重以及权重重要性算法,确定所述本地模型的神经元重要性;
所述参与者基于所述神经元重要性,确定所述第二权重对应的权重重要性。
可选地,所述确定迭代所述本地模型完成后所述本地模型中各个神经元的第二权重的步骤包括:
所述参与者获取迭代所述本地模型的迭代步骤;
所述参与者若检测到所述迭代步骤达预设步骤,则确定迭代所述本地模型完成后所述本地模型中各个神经元的第二权重。
此外,为实现上述目的,本发明还提供一种数据隐私保护装置,所述数据隐私保护装置包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数据隐私保护程序,所述数据隐私保护程序被所述处理器执行时实现如上述的数据隐私保护方法的步骤。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有数据隐私保护程序,所述数据隐私保护程序被处理器执行时实现如上述的数据隐私保护方法的步骤。
本发明通过参与者获取云服务器发送的第一权重;所述参与者基于所述第一权重以及模型训练规则,迭代所述参与者对应的本地模型,确定迭代所述本地模型完成后所述本地模型中各个神经元的第二权重;所述参与者基于所述第二权重以及权重重要性算法,确定所述第二权重对应的权重重要性;所述参与者基于所述第二权重、所述权重重要性以及扰动机制,确定干扰所述第二权重后的扰动权重,并将所述扰动权重发送至云服务器,通过结合权重重要性算法和扰动机制,对参与者与云服务器之间分享的数据即权重进行有差别地扰动,对重要性较高的权重分配较少的扰动噪音,对重要性不高的权重注入较多的扰动噪音,从而提高了互相分享数据的隐私保护水平,同时,提高参与者与云服务器联合训练模型的精确度。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的数据隐私保护装置结构示意图;
图2为本发明数据隐私保护方法第一实施例的流程示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,图1是本发明实施例方案涉及的硬件运行环境的数据隐私保护装置结构示意图。
本发明实施例数据隐私保护装置可以是pc,也可以是智能手机、平板电脑、便携计算机等具有显示功能的可移动式终端设备。
如图1所示,该数据隐私保护装置可以包括:处理器1001,例如cpu,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(display)、输入单元比如键盘(keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如wi-fi接口)。存储器1005可以是高速ram存储器,也可以是稳定的存储器(non-volatilememory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
可选地,数据隐私保护装置还可以包括摄像头、rf(radiofrequency,射频)电路,传感器、音频电路、wifi模块等等。
本领域技术人员可以理解,图1中示出的数据隐私保护装置结构并不构成对数据隐私保护装置的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及数据隐私保护程序。
在图1所示的数据隐私保护装置中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的数据隐私保护程序。
在本实施例中,数据隐私保护装置包括:存储器1005、处理器1001及存储在所述存储器1005上并可在所述处理器1001上运行的数据隐私保护程序,其中,处理器1001调用存储器1005中存储的数据隐私保护程序时,并执行以下操作:
参与者获取云服务器发送的第一权重;
所述参与者基于所述第一权重以及模型训练规则,迭代所述参与者对应的本地模型,确定迭代所述本地模型完成后所述本地模型中各个神经元的第二权重;
所述参与者基于所述第二权重以及权重重要性算法,确定所述第二权重对应的权重重要性;
所述参与者基于所述第二权重、所述权重重要性以及扰动机制,确定干扰所述第二权重后的扰动权重,并将所述扰动权重发送至云服务器。
进一步地,处理器1001可以调用存储器1005中存储的数据隐私保护程序,还执行以下操作:
所述云服务器接收所述参与者所发送的扰动权重;
所述云服务器将所述扰动权重输入至所述云服务器的模型环中的第一目标模型,并获取所述模型环的第二目标模型的第三权重,其中,所述第二目标模型为所述模型环中所述第一目标模型的前一个模型;
所述云服务器将所述第三权重发送至所述参与者,以供所述参与者接收所述第三权重,将所述第三权重作为所述第一权重,并执行所述参与者基于所述第一权重以及模型训练规则,迭代所述参与者对应的本地模型,确定迭代所述本地模型完成后所述本地模型中各个神经元的第二权重的步骤。
进一步地,处理器1001可以调用存储器1005中存储的数据隐私保护程序,还执行以下操作:
所述云服务器获取所述第一目标模型;
所述云服务器将所述第一目标模型作为所述第二目标模型,并执行所述获取所述模型环的第二目标模型的第三权重的步骤。
进一步地,处理器1001可以调用存储器1005中存储的数据隐私保护程序,还执行以下操作:
所述云服务器获取非隐私数据;
所述云服务器基于所述非隐私数据,初始化所述模型环中的目标模型,所述目标模型包括所述第一目标模型以及所述第二目标模型。
进一步地,处理器1001可以调用存储器1005中存储的数据隐私保护程序,还执行以下操作:
所述参与者基于所述权重重要性以及扰动机制,对所述权重重要性进行归一化操作,确定权重归一化结果;
所述参与者获取总隐私预算,并基于所述权重归一化结果以及所述总隐私预算,确定所述权重重要性对应的隐私预算;
所述参与者基于所述第二权重以及所述隐私预算,确定干扰所述第二权重后的扰动权重。
进一步地,处理器1001可以调用存储器1005中存储的数据隐私保护程序,还执行以下操作:
所述参与者基于所述隐私预算以及差分隐私机制,对所述第二权重进行扰动,确定干扰所述第二权重后的扰动权重。
进一步地,处理器1001可以调用存储器1005中存储的数据隐私保护程序,还执行以下操作:
所述参与者基于所述第二权重以及权重重要性算法,确定所述本地模型的神经元重要性;
所述参与者基于所述神经元重要性,确定所述第二权重对应的权重重要性。
进一步地,处理器1001可以调用存储器1005中存储的数据隐私保护程序,还执行以下操作:
所述参与者获取迭代所述本地模型的迭代步骤;
所述参与者若检测到所述迭代步骤达预设步骤,则确定迭代所述本地模型完成后所述本地模型中各个神经元的第二权重。
本发明还提供一种数据隐私保护方法,参照图2,图2为本发明数据隐私保护方法第一实施例的流程示意图。
在本实施例中,该数据隐私保护方法包括以下步骤:
本发明实施例所适用的一种系统架构,包括云服务器以及多个参与者。在本实施例的技术方案中,各参与者在预训练阶段,预先用公开的非隐私数据训练本地模型,以对本地模型进行初始化;然后运行权重重要性算法来量化深度学习模型中权重对模型预测的重要性;在保护隐私阶段,结合差分隐私机制来有差别地扰动本地模型的权重值;然后将被扰动的本地模型权重值上传给服务器,并请求一个新的训练模型。云服务器中部署多个同类型不同参数值的深度学习模型,轮转着接收参与者发来的本地模型,并替换其中一个深度学习模型;服务器在处理客户端的模型请求时,将其他参与者上传的模型发给请求模型的参与者。
云服务器可以是计算机等网络设备。云服务器可以是一个独立的设备,也可以是多个服务器所形成的服务器集群。优选地,云服务器可以采用云计算技术进行信息处理。参与者部署于终端上,终端可以是手机、平板电脑或者是专用的手持设备等具有无线通信功能的电子设备,也可以是个人计算机(personalcomputer,简称pc),笔记本电脑,服务器等有线接入方式连接上网的设备。终端可以是一个独立的设备,也可以是多个终端所形成的终端集群。优选地,终端可以采用云计算技术进行信息处理。参与者可以通过internet网络与云服务器进行通信,也可以通过全球移动通信系统(globalsystemformobilecommunications,简称gsm)、长期演进(longtermevolution,简称lte)系统等移动通信系统与云服务器进行通信。
步骤s10,参与者获取云服务器发送的第一权重;
一实施例中,云服务器中部署了多个深度学习模型,多个深度学习模型组成模型环,云服务器接收参与者上传的模型参数(权重),并将模型参数输入至模型环中的一个深度学习模型中,当接收到下一个参与者上传的模型参数,则将下一个参与者的模型参数输入至下一个深度学习模型,以此类推,云服务器轮转着接收参与者发来的本地模型的权重参数,并同时轮转着将权重参数输入至模型环中的深度学习模型中,这样不断更新云服务器中的深度学习模型。具体地,若在云服务器中部署m个深度学习模型,并且云服务器已对模型环上的所有深度学习模型进行初始化,那么一旦接收到参与者发来的模型参数,将模型参数输入至模型环上的第m个深度学习模型(m∈[0,m-1]),然后将第m-1个模型发送给参与者进行下一轮的训练。值得注意的是,第m-1个模型是将上一个与云服务器交互的参与者上传的模型参数输入的深度学习模型。与每个参与者交互之后,执行m←m+1。
云服务器获取上一个与该云服务器交互的另一参与者上传的权重参数,并将该权重参数输入至云服务器的模型环的目标模型中。当参与者将本地模型的权重参数发送给云服务器时,同时向云服务器请求新的本地模型参数即第一权重,则云服务器获取目标模型中的第一权重,并将第一权重发送至参与者,参与者获取云服务器发送过来的第一权重。
步骤s20,所述参与者基于所述第一权重以及模型训练规则,迭代所述参与者对应的本地模型,确定迭代所述本地模型完成后所述本地模型中各个神经元的第二权重;
一实施例中,参与者接收云服务器发送过来的第一权重后,参与者开始训练本地模型,将第一权重输入到本地模型中,通过一定的模型训练规则训练本地模型。具体地,将第一权重输入至本地模型中,以及将用户数据作为训练样本输入至本地模型中,首先对本地模型进行正向传播过程的运算,确定本地模型中所有的激活值,激活值包括神经网络隐含层的输出控制量等。之后,对本地模型进行反向传播过程的运算,针对本地模型中每一层的每一个节点,确定每个节点的新的权值和阈值,新的权值和阈值表明了该节点对输出层的最终的输出控制量对应的权值和阈值产生了多少影响。如此,不断对本地模型进行一系列的正向传播过程以及反向传播过程的运算,直至本地模型迭代完成,即训练完成。最后,确定并输出本地模型的第二权重。其中,本地模型的训练过程由正向传播过程和反向传播过程组成,正向传播过程,输入模式从输入层经隐单元层逐层处理,并转向输出层,每一层神经元的状态只影响下一层神经元的状态;反向传播过程,将误差信号沿原来的连接通路返回,通过修改各神经元的权值和阈值,使各神经元的权值和阈值的误差最小。
步骤s30,所述参与者基于所述第二权重以及权重重要性算法,确定所述第二权重对应的权重重要性;
一实施例中,参与者迭代本地模型完成后,运行权重重要性算法,确定第二权重对应的权重重要性。具体地,运行权重重要性算法,确定第二权重对应的权重重要性的具体过程如下:
1)初始化权重重要性矩阵:参与者设置一个γ×γ的权重重要性矩阵
2)计算输出层神经元重要性:首先计算输出层中各个神经元ap对模型预测值的重要性
其中,xi来自训练样本
3)计算权重重要性:参与者从后往前逐层递推,计算相邻层间权重wp,q对模型预测值的重要性,假设是第h-1层神经元ap和第h层神经元aq,第h-1层神经元ap和第h层神经元ap之间的权重重要性
其中,公式中的ap指的是除输出层外其他各层神经元ap的输出值。
4)计算除输出层外的各层神经元的重要性(包括隐藏层神经元重要性和输入层神经元重要性):除了输出层,计算其余各层的神经元的重要性,第(h-1)层的神经元ap的重要性为
5)重复步骤3)和步骤4),直到本地模型中的全部权重重要性计算完毕,最终确定第二权重对应的权重重要性。可以理解的是,计算神经元的重要性来作为计算重要性矩阵的中间参数。
步骤s40,所述参与者基于所述第二权重、所述权重重要性以及扰动机制,确定干扰所述第二权重后的扰动权重,并将所述扰动权重发送至云服务器。
一实施例中,运行运行权重重要性算法确定第二权重对应的权重重要性后,参与者运行在参与者定制的扰动机制,基于不同的权重重要性,对第二权重进行干扰,得到扰动权重,并将干扰后的扰动权重发送至云服务器,以供云服务器联合其他参与者进行训练不同参与者的模型,其中,权重重要性决定了对第二权重的干扰程度,权重重要性越高,则干扰程度越低,以保证数据的准确性。具体地,对基于不同的权重重要性,运行扰动机制对第二权重进行干扰,得到扰动权重的具体过程如下:
1)权重重要性归一化:对权重重要性中的每个参数
其中,
2)调整隐私预算:对权重重要性矩阵中的每个权重重要性
其中,εt指的是总的隐私预算。
3)保护本地模型参数:此时模型迭代步骤达到最大步骤s,最大步骤所得到的权重为第二权重,为保护参与者的训练数据不被泄漏或被推测,采用差分隐私机制对第二权重进行有差别地扰动,即:对不同重要性的权重添加调整后的拉普拉斯噪音,最终得到扰动权重
其中,
本实施例提出的数据隐私保护方法,通过参与者获取云服务器发送的第一权重;以及,所述参与者基于所述第一权重以及模型训练规则,迭代所述参与者对应的本地模型,确定迭代所述本地模型完成后所述本地模型中各个神经元的第二权重;以及,所述参与者基于所述第二权重以及权重重要性算法,确定所述第二权重对应的权重重要性;以及,所述参与者基于所述第二权重、所述权重重要性以及扰动机制,确定干扰所述第二权重后的扰动权重,并将所述扰动权重发送至云服务器,通过结合权重重要性算法和扰动机制,对参与者与云服务器之间分享的数据即权重进行有差别地扰动,对重要性较高的权重分配较少的扰动噪音,对重要性不高的权重注入较多的扰动噪音,从而提高了互相分享数据的隐私保护水平,同时,提高参与者与云服务器联合训练模型的精确度。
基于第一实施例,提出本发明数据隐私保护方法的第二实施例,在本实施例中,步骤s40之后,还包括:
步骤a,所述云服务器接收所述参与者所发送的扰动权重;
步骤b,所述云服务器将所述扰动权重输入至所述云服务器的模型环中的第一目标模型,并获取所述模型环的第二目标模型的第三权重,其中,所述第二目标模型为所述模型环中所述第一目标模型的前一个模型;
步骤c,所述云服务器将所述第三权重发送至所述参与者,以供所述参与者接收所述第三权重,将所述第三权重作为所述第一权重,并执行所述参与者基于所述第一权重以及模型训练规则,迭代所述参与者对应的本地模型,确定迭代所述本地模型完成后所述本地模型中各个神经元的第二权重的步骤。
一实施例中,云服务器中部署了多个深度学习模型,多个深度学习模型组成模型环,当参与者对本地模型迭代完成,并将本地模型参数进行扰动得到扰动权重后,参与者将扰动权重发送至云服务器,并请求新的权重参数进行下一次的联合训练。云服务器接收参与者上传的扰动权重,并将扰动权重输入至模型环中的第一目标模型中。然后,获取模型环中第一模型模型的前一个模型即第二目标模型的权重参数(即第三权重)。云服务器将第一目标模型的前一个模型(第二目标模型)的权重参数(第三权重)发送至参与者,以供参与者进行下一次的联合训练,即以供参与者接受第三权重,将第三权重作为第一权重,并执行参与者基于第一权重以及模型训练规则,迭代参与者对应的本地模型,确定迭代本地模型完成后所述本地模型中各个神经元的第二权重的步骤。
进一步地,一实施例中,所述云服务器将所述扰动权重输入至所述云服务器的模型环中的第一目标模型,并获取所述模型环的第二目标模型的第三权重的步骤之前,还包括:
所述云服务器获取非隐私数据;
所述云服务器基于所述非隐私数据,初始化所述模型环中的目标模型,所述目标模型包括所述第一目标模型以及所述第二目标模型。
进一步地,在参与者与云服务器联合训练模型开始,多个参与者需要联合得到一个更加精确且不会导致局部过拟合的学习模型,参与者与云服务器之间预先协商好一个深度学习的网络结构,如卷积神经网络(cnn),循环神经网络(rnn)等。云服务器与参与者之间协商好所要训练的网络结构后,云服务器对模型环中的深度学习模型进行初始化,云服务器使用公开数据或者历史数据(非隐私数据)对深度学习模型进行训练,得到预设数量的深度学习模型。
进一步地,当参与者对本地模型迭代完成,并将本地模型参数进行扰动得到扰动权重后,参与者将扰动权重发送至云服务器,并请求新的权重参数进行下一次的联合训练。云服务器接收参与者上传的扰动权重,将扰动权重输入至模型环中的第一目标模型中,并获取所述模型环的第二目标模型。若第二目标模型为云服务器初始化的深度学习模型,则发送继续训练指令至参与者,以供参与者将扰动权重作为第一权重,执行所述基于所述第一权重以及模型训练规则,迭代所述参与者对应的本地模型,确定迭代所述本地模型完成后所述本地模型中各个神经元的第二权重的步骤,即若第二目标模型为云服务器初始化的深度学习模型,云服务器告知该参与者持续用当前模型进行下一轮的训练。
进一步地,一实施例中,所述云服务器将所述扰动权重输入至所述云服务器的模型环中的第一目标模型,并获取所述模型环的第二目标模型的第三权重的步骤之后,还包括:
步骤d,所述云服务器获取所述第一目标模型;
步骤e,所述云服务器将所述第一目标模型作为所述第二目标模型,并执行所述获取所述模型环的第二目标模型的第三权重的步骤。
一实施例中,云服务器将扰动权重输入至云服务器的模型环中的第一目标模型,将第一目标模型作为第二目标模型,以供后续云服务器获取模型环的第二目标模型的第三权重,云服务器将第三权重发送至参与者,从而参与者接收第三权重,将第三权重作为第一权重,基于第一权重以及模型训练规则,迭代参与者对应的本地模型,确定迭代本地模型完成后本地模型中各个神经元的第二权重。
也就是说,当云服务器接收到下一个参与者上传的模型参数,则将下一个参与者的模型参数输入至下一个深度学习模型,以此类推,云服务器轮转着接收参与者发来的本地模型的权重参数,并同时轮转着将权重参数输入至模型环中的深度学习模型中,这样不断更新云服务器中的深度学习模型。具体地,若在云服务器中部署m个深度学习模型,并且云服务器已对模型环上的所有深度学习模型进行初始化,那么一旦接收到参与者发来的模型参数,将模型参数输入至模型环上的第m个深度学习模型(m∈[0,m-1]),然后将第m-1个模型发送给参与者进行下一轮的训练。值得注意的是,第m-1个模型是将上一个与云服务器交互的参与者上传的模型参数输入的深度学习模型。与每个参与者交互之后,执行m←m+1。
进一步地,一实施例中,所述参与者基于所述第二权重、所述权重重要性以及扰动机制,确定干扰所述第二权重后的扰动权重,并将所述扰动权重发送至云服务器的步骤包括:
步骤f,所述参与者基于所述权重重要性以及扰动机制,对所述权重重要性进行归一化操作,确定权重归一化结果;
一实施例中,运行运行权重重要性算法确定第二权重对应的权重重要性后,参与者运行在参与者定制的扰动机制,对权重重要性中的每个参数
其中,
步骤g,所述参与者获取总隐私预算,并基于所述权重归一化结果以及所述总隐私预算,确定所述权重重要性对应的隐私预算;
一实施例中,参与者获取总隐私预算,对权重重要性矩阵中的每个权重重要性
其中,εt为总隐私预算。
步骤h,所述参与者基于所述第二权重以及所述隐私预算,确定干扰所述第二权重后的扰动权重。
一实施例中,此时模型迭代步骤达到最大步骤s,最大步骤所得到的权重为第二权重,为保护参与者的训练数据不被泄漏或被推测,对第二权重进行有差别地扰动,即:对不同重要性的权重添加调整后的拉普拉斯噪音,最终得到扰动权重
其中,
进一步地,一实施例中,所述参与者基于所述第二权重以及所述隐私预算,确定干扰所述第二权重后的扰动权重的步骤包括:
步骤i,基于所述隐私预算以及差分隐私机制,对所述第二权重进行扰动,确定干扰所述第二权重后的扰动权重。
一实施例中,此时模型迭代步骤达到最大步骤s,最大步骤所得到的权重为第二权重,为保护参与者的训练数据不被泄漏或被推测,采用差分隐私机制对第二权重进行有差别地扰动,即:对不同重要性的权重添加调整后的拉普拉斯噪音,最终得到扰动权重
其中,
本实施例提出的数据隐私保护方法,通过所述云服务器接收所述参与者所发送的扰动权重;以及,所述云服务器将所述扰动权重输入至所述云服务器的模型环中的第一目标模型,并获取所述模型环的第二目标模型的第三权重,其中,所述第二目标模型为所述模型环中所述第一目标模型的前一个模型;以及,所述云服务器将所述第三权重发送至所述参与者,以供所述参与者接收所述第三权重,将所述第三权重作为所述第一权重,并执行所述参与者基于所述第一权重以及模型训练规则,迭代所述参与者对应的本地模型,确定迭代所述本地模型完成后所述本地模型中各个神经元的第二权重的步骤,云服务器轮转着接收参与者发来的本地模型的权重参数,并同时轮转着将权重参数输入至模型环中的深度学习模型中,这样不断更新云服务器中的深度学习模型,实现异步更新及异步优化,高效地处理物联网应用中实时出现的数据流,防止参与者的本地模型出现局部过拟合的现象。
基于第一实施例,提出本发明数据隐私保护方法的第三实施例,在本实施例中,步骤s30包括:
步骤j,所述参与者基于所述第二权重以及权重重要性算法,确定所述本地模型的神经元重要性;
步骤k,所述参与者基于所述神经元重要性,确定所述第二权重对应的权重重要性。
一实施例中,参与者迭代本地模型完成后,运行权重重要性算法,首先,确定神经元重要性,之后基于神经元重要性,确定第二权重对应的权重重要性。可以理解的是,计算神经元重要性来作为计算权重重要性的中间参数。
具体地,运行权重重要性算法,确定第二权重对应的权重重要性的具体过程如下:
1)初始化权重重要性矩阵:参与者设置一个γ×γ的权重重要性矩阵
2)计算输出层神经元重要性:首先计算输出层中各个神经元ap对模型预测值的重要性
其中,xi来自训练样本
3)计算权重重要性:参与者从后往前逐层递推,计算相邻层间权重wp,q对模型预测值的重要性,假设是第h-1层神经元ap和第h层神经元aq,第h-1层神经元ap和第h层神经元ap之间的权重重要性
其中,公式中的ap指的是除输出层外其他各层神经元ap的输出值。
4)计算除输出层外的各层神经元的重要性(包括隐藏层神经元重要性和输入层神经元重要性):除了输出层,计算其余各层的神经元的重要性,第(h-1)层的神经元ap的重要性为
5)重复步骤3)和步骤4),直到本地模型中的全部权重重要性计算完毕,最终确定第二权重对应的权重重要性。
进一步地,一实施例中,所述确定迭代所述本地模型完成后所述本地模型中各个神经元的第二权重的步骤包括:
步骤m,所述参与者获取迭代所述本地模型的迭代步骤;
步骤n,所述参与者若检测到所述迭代步骤达预设步骤,则确定迭代所述本地模型完成后所述本地模型中各个神经元的第二权重。
一实施例中,参与者终端时刻在检测迭代本地模型是否达到预设步骤,当模型迭代步骤达到最大步骤s时,最大步骤s即预设步骤,停止迭代本地模型,确定迭代本地模型完成后本地模型中各个神经元的第二权重。
本实施例提出的数据隐私保护方法,通过所述参与者基于所述第二权重以及权重重要性算法,确定所述本地模型的神经元重要性;以及,所述参与者基于所述神经元重要性,确定所述第二权重对应的权重重要性,通过权重重要性算法,确定不同权重的权重重要性,从而可以对参与者与云服务器之间分享的数据即权重进行有差别地扰动,对重要性较高的权重分配较少的扰动噪音,对重要性不高的权重注入较多的扰动噪音,因此提高了互相分享数据的隐私保护水平,同时,提高参与者与云服务器联合训练模型的精确度。
此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有数据隐私保护程序,所述数据隐私保护程序被处理器执行时实现如上述中任一项所述的数据隐私保护方法的步骤。
本发明计算机可读存储介质具体实施例与上述数据隐私保护方法的各实施例基本相同,在此不再详细赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。