用于隐私计算的网络节点协作方法及云计算网络与流程
未命名
09-24
阅读:50
评论:0
1.本技术涉及数据安全和隐私保护技术领域,尤其涉及隐私计算和联邦学习技术领域,具体涉及一种用于隐私计算的网络节点协作方法及云计算网络。
背景技术:
2.隐私计算指的是在保护隐私信息安全前提下进行数据相关计算及分析和挖掘数据价值。其中,隐私信息安全的范围一般包括各个参与方的私有数据、中间计算结果以及模型参数等,可以宽泛地理解为涵盖了在处理各种信息时对其中涉及的隐私信息进行各种操作从而在隐私信息的整个生命周期提供保护的计算理论和方法。当涉及到两个或者更多个参与方一起协同完成某项任务例如协作训练模型或者协作推理等,每个参与方都希望保护自己的私有数据和自身的模型参数等隐私信息。但是,这些隐私保护方面的需求难以在当前云计算和云网络得到广泛应用的环境下得到满足,这是因为云计算和云网络是通过由第三方供应商来提供计算资源如通过服务的方式给多个租户使用,这样租户就节省了硬件和基础架构方面的投入和维护成本。但是云计算和云网络下存在隐私信息泄露的风险,例如采用公有云的云部署模式可能使得上传到公有云服务器的私有数据被泄露到未授权方。除了云网络以外,其他类型的网络的计算机网络节点之间的协作也面临隐私信息泄露的风险,例如一个节点发送给另一个节点的私有数据可能被泄露到未授权方。
3.一种现有的隐私保护技术通过同态加密(homomorphic encryption,he)技术来加强保护,但是会增加通信开销并对算力和存储空间提出挑战,例如本来只占用1比特空间的明文数据经过同态加密后变成占用1024比特空间的密文数据。另一些隐私保护技术要求提供计算资源或者云资源的一方为可信第三方或者具有可信执行环境(trust execution environment,tee),但是这一点很难在当前的云计算环境特别是采用公有云的云部署模式中得到满足。其他类型的网络的计算节点之间的协作也有类似问题。另外,算法和模型需要频繁的更新,而提供算法或模型服务的节点其自身的安全性和可靠性也是可能发生变化的,因此上述的隐私保护技术难以在计算效率和安全性各方面做到均衡。
4.为此,需要一种用于隐私计算的网络节点协作方法及云计算网络,能够克服上述各种不足。
技术实现要素:
5.第一方面,本技术实施例提供了一种用于隐私计算的网络节点协作方法。所述方法应用于包括第一节点和第二节点的网络。所述方法包括:所述第一节点提供多个输入数据用于与持有计算模型的所述第二节点协作完成推理任务,针对所述多个输入数据的每一个输入数据:所述第一节点和所述第二节点分别生成与该输入数据对应的第一随机数序列和第二随机数序列;所述第一节点利用所述第一随机数序列以及所述第二节点利用所述第二随机数序列和所述计算模型的模型参数从而协作生成与该输入数据对应的模型随机数序列;所述第一节点利用所述第一随机数序列加密该输入数据得到加密后输入数据并将该
加密后输入数据发送给所述第二节点;所述第二节点根据该加密后输入数据、所述第二随机数序列和所述计算模型的模型参数生成中间结果并将该中间结果发送给所述第一节点;和所述第一节点根据该中间结果和所述模型随机数序列生成与该输入数据对应的所述推理任务的计算结果。
6.第一方面所描述的技术方案,因为实现了第一节点和第二节点之间的双向的数据安全隐私保护所以不需要第二节点也就是提供计算服务的一方为可信第三方或者具有tee的要求,而且也保护了第二节点的模型参数等的数据隐私,并且具有较好的计算效率和较低的计算复杂度,从而可以充分利用既有的各种云资源和网络资源例如公有云等,有利于在云计算和云网络以及其它网络上隐私计算的产品及服务。
7.根据第一方面的技术方案的一种可能的实现方式,本技术实施例还提供了,所述第一随机数序列是r,所述第二随机数序列是s,所述计算模型的模型参数包括线性成分w和偏置成分b,与该输入数据对应的模型随机数序列是w
·
r+b-s。该输入数据是x,该加密后输入数据是x-r。该中间结果是w
·
(x-r)+s。与该输入数据对应的所述推理任务的计算结果是w
·
x+b。
8.根据第一方面的技术方案的一种可能的实现方式,本技术实施例还提供了,所述计算模型是神经网络模型,所述神经网络模型的模型参数的线性成分w是所述神经网络模型的线性层的线性成分,所述神经网络模型的模型参数的偏置成分b是所述神经网络模型的线性层的偏置成分。所述线性层包括卷积层和/或全连接层,或者,所述线性层指示了包括卷积运算和/或全连接运算的线性转换。
9.根据第一方面的技术方案的一种可能的实现方式,本技术实施例还提供了,所述神经网络模型的训练是基于至少一个第三节点所提供的加密后训练数据,所述至少一个第三节点不同于所述第二节点,所述至少一个第三节点与所述第二节点在所述神经网络模型的训练过程中的数据交互是基于对所述神经网络模型的模型参数按照复合安全协议进行加密处理,其中,对所述神经网络模型的模型参数按照该复合安全协议进行加密处理包括对所述神经网络模型的模型参数的线性成分w按照差分隐私dp安全协议进行加密处理以及对所述神经网络模型的模型参数的偏置成分b按照同态加密he安全协议进行加密处理。
10.根据第一方面的技术方案的一种可能的实现方式,本技术实施例还提供了,所述神经网络模型的更新是基于至少一个第三节点所提供的加密后更新数据,所述至少一个第三节点不同于所述第二节点,所述至少一个第三节点与所述第二节点在所述神经网络模型的更新过程中的数据交互是基于对所述神经网络模型的模型参数按照复合安全协议进行加密处理,其中,对所述神经网络模型的模型参数按照该复合安全协议进行加密处理包括对所述神经网络模型的模型参数的线性成分w按照dp安全协议进行加密处理以及对所述神经网络模型的模型参数的偏置成分b按照he安全协议进行加密处理。
11.根据第一方面的技术方案的一种可能的实现方式,本技术实施例还提供了,所述至少一个第三节点与所述第一节点不属于同一平台、不属于同一系统、不在同一地理位置或者不属于同一网络。
12.根据第一方面的技术方案的一种可能的实现方式,本技术实施例还提供了,包括所述第一节点和所述第二节点的该网络是云网络,所述第一节点和所述第二节点均是该云网络的网络节点,所述第二节点包括云服务器或者提供云计算服务或者提供云资源的接
入。
13.根据第一方面的技术方案的一种可能的实现方式,本技术实施例还提供了,所述神经网络模型的应用场景包括以下至少之一:智能交通、医疗健康、图像处理、自然语言处理和隐私计算,所述推理任务用于完成所述神经网络模型的应用场景下的一个或者多个任务。
14.根据第一方面的技术方案的一种可能的实现方式,本技术实施例还提供了,所述第一随机数序列和/或第二随机数序列是通过对零明文进行至少一次加密得到的至少一个零密文。
15.第二方面,本技术实施例提供了一种非瞬时性计算机可读存储介质。所述计算机可读存储介质存储有计算机指令,该计算机指令被处理器执行时实现根据第一方面中任一项所述的方法。
16.第二方面所描述的技术方案,因为实现了第一节点和第二节点之间的双向的数据安全隐私保护所以不需要第二节点也就是提供计算服务的一方为可信第三方或者具有tee的要求,而且也保护了第二节点的模型参数等的数据隐私,并且具有较好的计算效率和较低的计算复杂度,从而可以充分利用既有的各种云资源和网络资源例如公有云等,有利于在云计算和云网络以及其它网络上隐私计算的产品及服务。
17.第三方面,本技术实施例提供了一种电子设备。所述电子设备包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器通过运行所述可执行指令以实现根据第一方面中任一项所述的方法。
18.第三方面所描述的技术方案,因为实现了第一节点和第二节点之间的双向的数据安全隐私保护所以不需要第二节点也就是提供计算服务的一方为可信第三方或者具有tee的要求,而且也保护了第二节点的模型参数等的数据隐私,并且具有较好的计算效率和较低的计算复杂度,从而可以充分利用既有的各种云资源和网络资源例如公有云等,有利于在云计算和云网络以及其它网络上隐私计算的产品及服务。
19.第四方面,本技术实施例提供了一种用于隐私计算的云计算网络。所述云计算网络包括第一节点和第二节点,其中所述第一节点提供多个输入数据用于与持有计算模型的所述第二节点协作完成推理任务,所述云计算网络完成所述推理任务的操作包括:针对所述多个输入数据的每一个输入数据:所述第一节点和所述第二节点分别生成与该输入数据对应的第一随机数序列和第二随机数序列;所述第一节点利用所述第一随机数序列以及所述第二节点利用所述第二随机数序列和所述计算模型的模型参数从而协作生成与该输入数据对应的模型随机数序列;所述第一节点利用所述第一随机数序列加密该输入数据得到加密后输入数据并将该加密后输入数据发送给所述第二节点;所述第二节点根据该加密后输入数据、所述第二随机数序列和所述计算模型的模型参数生成中间结果并将该中间结果发送给所述第一节点;和所述第一节点根据该中间结果和所述模型随机数序列生成与该输入数据对应的所述推理任务的计算结果。
20.第四方面所描述的技术方案,因为实现了第一节点和第二节点之间的双向的数据安全隐私保护所以不需要第二节点也就是提供计算服务的一方为可信第三方或者具有tee的要求,而且也保护了第二节点的模型参数等的数据隐私,并且具有较好的计算效率和较低的计算复杂度,从而可以充分利用既有的各种云资源和网络资源例如公有云等,有利于
在云计算和云网络以及其它网络上隐私计算的产品及服务。
21.根据第四方面的技术方案的一种可能的实现方式,本技术实施例还提供了,所述计算模型是神经网络模型,所述神经网络模型的模型参数的线性成分w是所述神经网络模型的线性层的线性成分,所述神经网络模型的模型参数的偏置成分b是所述神经网络模型的线性层的偏置成分。
22.根据第四方面的技术方案的一种可能的实现方式,本技术实施例还提供了,所述神经网络模型的训练是基于至少一个第三节点所提供的加密后训练数据,所述至少一个第三节点不同于所述第二节点,所述至少一个第三节点与所述第二节点在所述神经网络模型的训练过程中的数据交互是基于对所述神经网络模型的模型参数按照复合安全协议进行加密处理,其中,对所述神经网络模型的模型参数按照该复合安全协议进行加密处理包括对所述神经网络模型的模型参数的线性成分w按照差分隐私dp安全协议进行加密处理以及对所述神经网络模型的模型参数的偏置成分b按照同态加密he安全协议进行加密处理。
23.根据第四方面的技术方案的一种可能的实现方式,本技术实施例还提供了,所述第二节点包括云服务器或者提供云计算服务或者提供云资源的接入,所述至少一个第三节点属于相对于所述云计算网络的另一云计算网络。
24.根据第四方面的技术方案的一种可能的实现方式,本技术实施例还提供了,所述神经网络模型的应用场景包括以下至少之一:智能交通、医疗健康、图像处理、自然语言处理和隐私计算,所述推理任务用于完成所述神经网络模型的应用场景下的一个或者多个任务。
附图说明
25.为了说明本技术实施例或背景技术中的技术方案,下面将对本技术实施例或背景技术中所需要使用的附图进行说明。
26.图1示出了本技术实施例提供的网络节点协作方法的流程示意图。
27.图2示出了本技术实施例提供的云计算网络的框图。
28.图3示出了本技术实施例提供的用于图1的网络节点协作方法的电子设备的框图。
具体实施方式
29.本技术实施例为了解决现有的隐私保护技术难以在计算效率和安全性各方面做到均衡这样的技术难题,提出了一种用于隐私计算的网络节点协作方法及云计算网络。其中,所述方法应用于包括第一节点和第二节点的网络。所述方法包括:所述第一节点提供多个输入数据用于与持有计算模型的所述第二节点协作完成推理任务,针对所述多个输入数据的每一个输入数据:所述第一节点和所述第二节点分别生成与该输入数据对应的第一随机数序列和第二随机数序列;所述第一节点利用所述第一随机数序列以及所述第二节点利用所述第二随机数序列和所述计算模型的模型参数从而协作生成与该输入数据对应的模型随机数序列;所述第一节点利用所述第一随机数序列加密该输入数据得到加密后输入数据并将该加密后输入数据发送给所述第二节点;所述第二节点根据该加密后输入数据、所述第二随机数序列和所述计算模型的模型参数生成中间结果并将该中间结果发送给所述第一节点;和所述第一节点根据该中间结果和所述模型随机数序列生成与该输入数据对应
的所述推理任务的计算结果。本技术实施例具有以下有益技术效果:能够在计算效率和安全性各方面做到均衡,还能够豁免要求提供计算资源或云资源的一方为可信第三方或者具有tee的要求,从而可以充分利用既有的各种云资源和网络资源例如公有云等,有利于在云计算和云网络以及其它网络上隐私计算的产品及服务。
30.本技术实施例可用于以下应用场景,包括但是不限于,适用隐私保护计算或隐私计算或其他隐私保护相关技术的任意深度学习应用场景,如金融、政务、智能交通、医疗健康、图像处理、自然语言等采用深度学习技术且适合通过在线服务如公有云服务来协同多个参与方的应用场景,任意的适合利用公有云服务或者其他难以满足可信第三方要求的服务来实现多个参与方之间的协同模型训练及推理的应用场景等。
31.应当理解的是,本技术实施例所提及的网络节点协作方法及云计算网络,包括各个实施例、实施方式及它们的组合或变体,可适用于联邦学习的应用场景,还可以结合行业应用场景,例如用于智能交通的出行管理时预测行驶路径,以及在金融领域用于股票交易系统中提供对股票和期货市场的价格预测。
32.本技术实施例可以依据具体应用环境进行调整和改进,此处不做具体限定。
33.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术的实施例进行描述。
34.图1示出了本技术实施例提供的网络节点协作方法的流程示意图。所述方法应用于包括第一节点和第二节点的网络。如图1所示,所述方法包括以下步骤。
35.步骤s102:所述第一节点提供多个输入数据用于与持有计算模型的所述第二节点协作完成推理任务。
36.其中,第一节点提供输入数据,第二节点提供计算模型,这样的协作示例可以轻易推广到任意数量的第一节点和任意数量的第二节点之间的应用场景。并且,网络的具体架构、配置和类型也是可以变化的。第一节点和第二节点之间的通讯手段也是可以变化的。应理解为可以涵盖以任意合适的网络架构、网络连接方式、通讯连接手段等实现数据交互和通讯的应用场景。例如,可能存在两种或更多种不同的网络架构,两种或者更多种不同的网络连接方式,两种或者更多种不同的通讯连接手段,这些可以共存于同一个应用场景,并且可以都适用本技术各实施例。应当理解的是,适用的网络架构或者说网络配置可以包括星形配置、令牌环配置或其他配置。适用的网络连接方式可以包括有线连接方式如以太网、同轴电缆、光纤电缆等,也可以包括无线连接方式如wi-fi、蓝牙或其他无线技术。适用的通讯连接手段可以包括公共网络(如互联网)、专用网络(如局域网(lan)或广域网(wan))、有线网络(如以太网)、无线网络(如802.11网络、wi-fi网络或无线lan(wlan))、蜂窝网络(如5g网络、长期演进(lte)网络等)、路由器、集线器、交换机、服务器计算机或它们的组合。
37.另外,推理任务可以理解为通过该计算模型和输入数据来生成相应的计算结果。例如,将输入数据导入深度神经网络模型并输出相应的计算结果例如预测结果、分类结果或者多任务处理结果等。推理任务的具体内涵可以结合实际应用场景来设定,例如用于智能交通的出行管理时,推理任务可能是预测行驶路径;以及在金融领域用于股票交易系统中,提供对股票和期货市场的价格预测推理任务。
38.步骤s104:针对所述多个输入数据的每一个输入数据,所述第一节点和所述第二节点分别生成与该输入数据对应的第一随机数序列和第二随机数序列。
39.其中,在一种可能的实施方式中,所述第一随机数序列是r,所述第二随机数序列是s。应当理解的是,为了保护隐私信息,第一节点所生成的第一随机数序列r的明文对第二节点是不可见的,也就是说第一随机数序列r只能是在加密后才能离开第一节点。类似地,第二节点所生成的第二随机数序列s的明文对第一节点也是不可见的。这样有助于后续通过第一随机数序列r保护第一节点的数据隐私,以及通过第二随机数序列s保护第二节点的数据隐私。
40.步骤s106:所述第一节点利用所述第一随机数序列以及所述第二节点利用所述第二随机数序列和所述计算模型的模型参数从而协作生成与该输入数据对应的模型随机数序列。
41.其中,在一种可能的实施方式中,所述计算模型的模型参数包括线性成分w和偏置成分b,与该输入数据对应的模型随机数序列是w
·
r+b-s。这里,计算模型的模型参数也是第二节点需要保护的数据隐私,也就是说第二节点的计算模型的模型参数应该对第一节点不可见。因此,在步骤s106,为了能协作完成推理任务的同时保证彼此的数据隐私的安全性,设计了模型随机数序列。该模型随机数序列的生成是独立于输入数据的计算,可以看做是预处理过程。也就是说,第一节点和第二节点可以在第一节点获得或者提供输入数据之前就先生成第一随机数序列r、第二随机数序列s以及生成该模型随机数序列。上面提到的所述计算模型的模型参数包括线性成分w和偏置成分b,与该输入数据对应的模型随机数序列是w
·
r+b-s,仅仅是一种可行的计算方式。可以看出,该模型随机数序列是所述第一节点利用所述第一随机数序列以及所述第二节点利用所述第二随机数序列和所述计算模型的模型参数从而协作生成,也因此包含了来自第一节点的第一随机数序列r的信息,以及来自第二节点的第二随机数序列s的信息,还有来自该计算模型的模型参数的线性成分w和偏置成分b的信息。应当理解的是,为了保护第一节点的数据隐私,这里用于生成该模型随机数序列的来自第一节点的第一随机数序列r的信息是加密后的。也就是说,所述第一节点利用所述第一随机数序列从而协作生成该模型随机数序列,包括了第一节点对第一随机数序列r进行加密后传输给第二节点。然后由第二节点按照例如w
·
r+b-s的计算方式来计算出模型随机数序列。该模型随机数序列的计算方式可能有其他形式,只要能满足该模型随机数序列是所述第一节点利用所述第一随机数序列以及所述第二节点利用所述第二随机数序列和所述计算模型的模型参数从而协作生成,也因此包含了来自第一节点的第一随机数序列的信息,以及来自第二节点的第二随机数序列的信息,还有来自该计算模型的模型参数的信息。
42.步骤s108:所述第一节点利用所述第一随机数序列加密该输入数据得到加密后输入数据并将该加密后输入数据发送给所述第二节点。
43.其中,在一种可能的实施方式中,该输入数据是x,该加密后输入数据是x-r。如上所述,该输入数据的数据隐私需要得到保护,并且该输入数据的明文应该是对第二节点不可见。但是,如果将该输入数据进行同态加密,则会导致加密后的数据位宽大幅增加,从而给后续处理带来增加的计算开销和存储空间占用需求。为此,在步骤s108,通过例如计算x-r的方式来利用所述第一随机数序列加密该输入数据,就避免了同态加密所带来的不足,同时也有效地保护了该输入数据的隐私安全。另外,因为第一节点在步骤s108之前例如在预处理阶段也发送加密后的第一随机数序列r给第二节点,因此第二节点难以判断哪些是第
一随机数序列r而哪些是加密后输入数据。也可以采用其他方式来利用所述第一随机数序列加密该输入数据,例如用相加运算替代相减运算,并通过适应性调整其他运算表达。
44.步骤s110:所述第二节点根据该加密后输入数据、所述第二随机数序列和所述计算模型的模型参数生成中间结果并将该中间结果发送给所述第一节点。
45.步骤s112:所述第一节点根据该中间结果和所述模型随机数序列生成与该输入数据对应的所述推理任务的计算结果。
46.其中,在一种可能的实施方式中,该中间结果是w
·
(x-r)+s。与该输入数据对应的所述推理任务的计算结果是w
·
x+b。这里,因为第一节点在步骤s106已经协作生成与该输入数据对应的模型随机数序列,例如上面提到的是w
·
r+b-s。因此,在步骤s110,第一节点结合与该输入数据对应的模型随机数序列w
·
r+b-s以及该中间结果w
·
(x-r)+s,可以得出所需要的与该输入数据对应的所述推理任务的计算结果,也就是w
·
x+b。如上所述,可以用其他方式来利用所述第一随机数序列加密该输入数据,只要适应性调整后续的运算表达式,就可以通过与该输入数据对应的模型随机数序列来在步骤s112得到与该输入数据对应的所述推理任务的计算结果。这是因为,该模型随机数序列是所述第一节点利用所述第一随机数序列以及所述第二节点利用所述第二随机数序列和所述计算模型的模型参数从而协作生成,也因此包含了来自第一节点的第一随机数序列的信息,以及来自第二节点的第二随机数序列的信息,还有来自该计算模型的模型参数的信息。
47.请参阅上面步骤s102至步骤s112,通过第一随机数序列和第二随机数序列,使得第一节点和第二节点可以各自保护自身的数据隐私安全,并且通过在预处理阶段或者导入输入数据之前协作生成与该输入数据对应的模型随机数序列,使得后续可以在第一节点和第二节点之间协作完成推理任务。而且因为是利用所述第一随机数序列加密该输入数据,所以避免了同态加密所带来的不足,同时也有效地保护了该输入数据的隐私安全。另外,该模型随机数序列是所述第一节点利用所述第一随机数序列以及所述第二节点利用所述第二随机数序列和所述计算模型的模型参数从而协作生成,也因此包含了来自第一节点的第一随机数序列的信息,以及来自第二节点的第二随机数序列的信息,还有来自该计算模型的模型参数的信息。如此,后续可以便利地利用该模型随机数序列在第一节点处恢复得到与该输入数据对应的所述推理任务的计算结果,这样就实现了在第一节点和第二节点之间的协作。这样的网络节点协作方法,因为实现了第一节点和第二节点之间的双向的数据安全隐私保护,所以不需要第二节点也就是提供计算服务的一方为可信第三方或者具有tee的要求,而且也保护了第二节点的模型参数等的数据隐私,并且具有较好的计算效率和较低的计算复杂度,从而可以充分利用既有的各种云资源和网络资源例如公有云等,有利于在云计算和云网络以及其它网络上隐私计算的产品及服务。另外,上面的步骤是针对每个输入数据而言,因此面对不同的输入数据还有不同的第一随机数序列、不同的第二随机数序列,这样有利于提供更好的安全保护。
48.在一种可能的实施方式中,所述计算模型是神经网络模型,所述神经网络模型的模型参数的线性成分w是所述神经网络模型的线性层的线性成分,所述神经网络模型的模型参数的偏置成分b是所述神经网络模型的线性层的偏置成分。所述线性层包括卷积层和/或全连接层,或者,所述线性层指示了包括卷积运算和/或全连接运算的线性转换。常见的神经网络模型,例如卷积神经网络(convolutional neural networks,cnn)和深度神经网
络(deep neural networks,dnn)以及多层感知器(multilayer perceptron,mlp)的基本架构中包括两部分,一部分是线性层另一部分是非线性层。线性层用于提供线性转换,线性层的例子包括卷积层和全连接层,非线性层的例子包括池化层如最大池化层以及激活函数等。dnn和cnn的训练过程就是前向传播和反向传播的交替进行。新的训练数据被导入输入层然后逐层向下传递直到输出层,这样的前向传播过程中在线性层进行相应的线性转换并在非线性层进行相应的非线性转换,例如在某个隐含层是基于上一层的输出和该隐含层的权重参数来计算该隐含层的输出结果并传输给下一层。反向传播过程指的是计算损失函数对各参数的梯度例如通过随机梯度下降算法,并根据梯度按照与前向传播相反的方向来逐层进行参数的更新。
49.在一种可能的实施方式中,所述神经网络模型的训练是基于至少一个第三节点所提供的加密后训练数据,所述至少一个第三节点不同于所述第二节点,所述至少一个第三节点与所述第二节点在所述神经网络模型的训练过程中的数据交互是基于对所述神经网络模型的模型参数按照复合安全协议进行加密处理,其中,对所述神经网络模型的模型参数按照该复合安全协议进行加密处理包括对所述神经网络模型的模型参数的线性成分w按照差分隐私dp安全协议进行加密处理以及对所述神经网络模型的模型参数的偏置成分b按照同态加密he安全协议进行加密处理。这里,采用不同的加密手段而构建的复合安全协议,一方面通过he安全协议提供了良好的隐私保护,另一方面通过dp安全协议简化了整体计算复杂度。dp安全协议下的加密处理可以是任意合适的添加dp噪声的加密手段,例如通过添加全局dp噪声的方式。因为dp安全协议下的加密处理意味着直接将dp噪声加入到计算结果,所以不同于he安全协议下的加密处理将明文数据转化为密文数据,这里直接将要保护的明文数据加上了dp噪声所以仍可以看做是明文数据或者说具有明文数据相应的计算复杂度。另外,因为线性成分仅进行了dp安全协议下的加密处理,也就使得该线性成分所代表的数据的大小与明文数据相当,相比于进行he安全协议下的加密处理会导致较大的密文数据大小或者说大整数位宽的密文数据,这样处理可以节省存储空间。另一方面,因为对偏置成分进行该he安全协议下的加密处理,相当于隐匿了所述深度学习模型的线性层中的偏置成分。
50.在一种可能的实施方式中,所述神经网络模型的更新是基于至少一个第三节点所提供的加密后更新数据,所述至少一个第三节点不同于所述第二节点,所述至少一个第三节点与所述第二节点在所述神经网络模型的更新过程中的数据交互是基于对所述神经网络模型的模型参数按照复合安全协议进行加密处理,其中,对所述神经网络模型的模型参数按照该复合安全协议进行加密处理包括对所述神经网络模型的模型参数的线性成分w按照dp安全协议进行加密处理以及对所述神经网络模型的模型参数的偏置成分b按照he安全协议进行加密处理。上面提及的训练方面的改进,也适用于更新模型,因此也具有类似的技术效果,在此不再赘述。在一种可能的实施方式中,所述至少一个第三节点与所述第一节点不属于同一平台、不属于同一系统、不在同一地理位置或者不属于同一网络。应当理解的是,可以采用任意合适的网络架构、网络连接方式、通讯连接手段等实现数据交互和通讯。另外,在另一种可能的实施方式中,所述至少一个第三节点可以与所述第一节点属于同一个网络,甚至可能与所述第一节点以及所述第二节点都属于同一个网络。
51.在一种可能的实施方式中,包括所述第一节点和所述第二节点的该网络是云网
络,所述第一节点和所述第二节点均是该云网络的网络节点,所述第二节点包括云服务器或者提供云计算服务或者提供云资源的接入。其中,第二节点可以自身是云服务器或者通过其他方式来提供云计算服务,还可以提供云资源的接入。上述的网络节点协作方法因为实现了第一节点和第二节点之间的双向的数据安全隐私保护所以不需要第二节点也就是提供计算服务的一方为可信第三方或者具有tee的要求,这样就使得第二节点可以是来自于公共云资源或者商务云资源,这样有利于利用既有的云资源。应当理解的是,其他网络类型也可以使用本技术实施例所提及的网络节点协作方法。例如,在一些实施例中,第一节点提供输入数据,第一节点可以是持有私有数据的数据源方或者负责采集数据的客户端等。第二节点提供计算模型,第二节点可以是提供计算服务的云服务器如公有云服务器等。视乎具体应用场景,第一节点和第二节点的具体定义可以有不同的内涵,只要满足上面各个实施例所提及的网络节点协作方法的有关细节。
52.在一种可能的实施方式中,所述神经网络模型的应用场景包括以下至少之一:金融、政务、智能交通、医疗健康、图像处理、自然语言处理和隐私计算,所述推理任务用于完成所述神经网络模型的应用场景下的一个或者多个任务。
53.在一种可能的实施方式中,所述第一随机数序列和/或第二随机数序列是通过对零明文进行至少一次加密得到的至少一个零密文。其中,通过同态加密或者其他带有随机性的加密方式,可以对同样的明文数据也就是零明文进行多次加密并且每次得到不一样的零密文。这样生成的零密文,因为本身携带的明文数据的信息为零,所以在数据格式和处理上都较为便利,这样可以进一步提升整体的计算效率。
54.应当理解的是,上述方法可以通过相应的执行主体或者载体来实现,可以采取硬件、软件、软硬结合、固件或者任意合适的形式实现。例如,可以通过加载在服务器上如公有云服务器上的应用程序的形式,或者通过加载在客户端如用户手机等智能终端上的应用程序的形式,又或者可以通过提供专用硬件如可拔插在数据中心电脑主板上的集成电路设备的形式,又或者通过在计算机上执行的计算机程序指令或代码来实现且这些指令或代码可以存储在包括非暂时性计算机可读介质的计算机程序产品上。在一些示例性实施例中,一种非瞬时性计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,该计算机指令被处理器执行时实现上述方法以及上述任意实施例、实施方式或者它们的组合。在一些示例性实施例中,一种电子设备,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器通过运行所述可执行指令以实现上述方法以及上述任意实施例、实施方式或者它们的组合。
55.图2示出了本技术实施例提供的云计算网络的框图。如图2所示,所述云计算网络包括第一节点210和第二节点220。其中所述第一节点210提供多个输入数据212用于与持有计算模型222的所述第二节点220协作完成推理任务。所述云计算网络完成所述推理任务的操作包括:针对所述多个输入数据212的每一个输入数据:所述第一节点210和所述第二节点220分别生成与该输入数据对应的第一随机数序列和第二随机数序列;所述第一节点210利用所述第一随机数序列以及所述第二节点220利用所述第二随机数序列和所述计算模型222的模型参数从而协作生成与该输入数据对应的模型随机数序列;所述第一节点210利用所述第一随机数序列加密该输入数据得到加密后输入数据并将该加密后输入数据发送给所述第二节点220;所述第二节点220根据该加密后输入数据、所述第二随机数序列和所述
计算模型222的模型参数生成中间结果并将该中间结果发送给所述第一节点210;所述第一节点210根据该中间结果和所述模型随机数序列生成与该输入数据对应的所述推理任务的计算结果。
56.图2所示的云计算网络,因为采用了上述的完成所述推理任务的操作,实现了第一节点和第二节点之间的双向的数据安全隐私保护所以不需要第二节点也就是提供计算服务的一方为可信第三方或者具有tee的要求,而且也保护了第二节点的模型参数等的数据隐私,并且具有较好的计算效率和较低的计算复杂度,从而可以充分利用既有的各种云资源和网络资源例如公有云等,有利于在云计算和云网络以及其它网络上隐私计算的产品及服务。
57.应当理解的是,图2所示的云计算网络可以轻易推广到任意数量的第一节点和任意数量的第二节点之间的应用场景。并且,网络的具体架构、配置和类型也是可以变化的。第一节点和第二节点之间的通讯手段也是可以变化的。应理解为可以涵盖以任意合适的网络架构、网络连接方式、通讯连接手段等实现数据交互和通讯的应用场景。例如,可能存在两种或更多种不同的网络架构,两种或者更多种不同的网络连接方式,两种或者更多种不同的通讯连接手段,这些可以共存于同一个应用场景,并且可以都适用本技术各实施例。应当理解的是,适用的网络架构或者说网络配置可以包括星形配置、令牌环配置或其他配置。适用的网络连接方式可以包括有线连接方式如以太网、同轴电缆、光纤电缆等,也可以包括无线连接方式如wi-fi、蓝牙或其他无线技术。适用的通讯连接手段可以包括公共网络(如互联网)、专用网络(如局域网(lan)或广域网(wan))、有线网络(如以太网)、无线网络(如802.11网络、wi-fi网络或无线lan(wlan))、蜂窝网络(如5g网络、长期演进(lte)网络等)、路由器、集线器、交换机、服务器计算机或它们的组合。
58.在一种可能的实施方式中,所述计算模型是神经网络模型,所述神经网络模型的模型参数的线性成分w是所述神经网络模型的线性层的线性成分,所述神经网络模型的模型参数的偏置成分b是所述神经网络模型的线性层的偏置成分。
59.在一种可能的实施方式中,所述神经网络模型的训练是基于至少一个第三节点所提供的加密后训练数据,所述至少一个第三节点不同于所述第二节点,所述至少一个第三节点与所述第二节点在所述神经网络模型的训练过程中的数据交互是基于对所述神经网络模型的模型参数按照复合安全协议进行加密处理,其中,对所述神经网络模型的模型参数按照该复合安全协议进行加密处理包括对所述神经网络模型的模型参数的线性成分w按照差分隐私dp安全协议进行加密处理以及对所述神经网络模型的模型参数的偏置成分b按照同态加密he安全协议进行加密处理。
60.在一种可能的实施方式中,所述第二节点包括云服务器或者提供云计算服务或者提供云资源的接入,所述至少一个第三节点属于相对于所述云计算网络的另一云计算网络。
61.在一种可能的实施方式中,所述神经网络模型的应用场景包括以下至少之一:智能交通、医疗健康、图像处理、自然语言处理和隐私计算,所述推理任务用于完成所述神经网络模型的应用场景下的一个或者多个任务。
62.图3示出了本技术实施例提供的用于图1的网络节点协作方法的电子设备的框图。如图3所示,电子设备包括主处理器302,内部总线304,网络接口306,主存储器308,以及辅
助处理器310和辅助内存312,还有辅助处理器320和辅助内存322。其中,主处理器302与主存储器308连接,主存储器308可用于存储主处理器302可执行的计算机指令,从而可以实现图1的网络节点协作方法,包括其中部分或者全部步骤,也包括其中步骤的任意可能的组合或结合以及可能的替换或者变体。并且,该电子设备可以位于第一节点或者第二节点。网络接口306用于提供网络连接以及通过网络收发数据。内部总线304用于提供在主处理器302、网络接口306、辅助处理器310以及辅助处理器320之间的内部的数据交互。其中,辅助处理器310与辅助内存312连接并一起提供辅助计算能力,而辅助处理器320与辅助内存322连接并一起提供辅助计算能力。辅助处理器310和辅助处理器320可以提供相同或者不同的辅助计算能力,包括但是不限于,针对特定计算需求进行优化的计算能力如并行处理能力或者张量计算能力,针对特定算法或者逻辑结构进行优化的计算能力例如迭代计算能力或者图计算能力等。辅助处理器310和辅助处理器320可以包括特定类型的一个或者多个处理器,如数字信号处理器(dsp),专用集成电路(asic),现场可编程门阵列(fpga)等,从而可以提供定制化的功能和结构。在一些示例性实施例中,电子设备可以不包括辅助处理器,可以包括仅一个辅助处理器,还可以包括任意数量的辅助处理器且各自具有相应的定制化功能及结构,在此不做具体限定。图3中所示出的两个辅助处理器的架构仅为说明性而不应解释为限制性。另外,主处理器302可以包括单核或者多核的计算单元,用于提供本技术实施例所必需的功能和操作。另外,主处理器302和辅助处理器(如图3中的辅助处理器310和辅助处理器320)可以具有不同的架构,也就是电子设备可以是基于异构架构的系统,例如主处理器302可以是基于指令集操作体系的通用型处理器如cpu,而辅助处理器可以是适合并行化计算的图形处理器gpu或者是适合神经网络模型相关运算的专用加速器。辅助内存(例如图3所示的辅助内存312和辅助内存322)可以用于配合各自对应的辅助处理器来实现定制化功能及结构。而主存储器308用于存储必要的指令、软件、配置、数据等从而可以配合主处理器302提供本技术实施例所必需的功能和操作。在一些示例性实施例中,电子设备可以不包括辅助内存,可以包括仅一个辅助内存,还可以包括任意数量的辅助内存,在此不做具体限定。图3中所示出的两个辅助内存的架构仅为说明性而不应解释为限制性。主存储器308以及可能的辅助内存可以包括以下一个或多个特征:易失性,非易失性,动态,静态,可读/写,只读,随机访问,顺序访问,位置可寻址性,文件可寻址性和内容可寻址性,并且可以包括随机存取存储器(ram),闪存,只读存储器(rom),可擦可编程只读存储器(eprom),电可擦可编程只读存储器(eeprom),寄存器,硬盘,可移动磁盘,可记录和/或可重写光盘(cd),数字多功能光盘(dvd),大容量存储介质设备或任何其他形式的合适存储介质。内部总线304可以包括不同总线结构中的任何一种或不同总线结构的组合,例如存储器总线或存储器控制器,外围总线,通用串行总线和/或利用多种总线体系结构中的任何一种的处理器或本地总线。应当理解的是,图3所示的电子设备,其所示的结构并不构成对有关装置或系统的具体限定,在一些示例性实施例中,电子设备可以包括比具体实施例和附图更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者具有不同的部件布置。
63.本技术提供的具体实施例可以用硬件,软件,固件或固态逻辑电路中的任何一种或组合来实现,并且可以结合信号处理,控制和/或专用电路来实现。本技术具体实施例提供的设备或装置可以包括一个或多个处理器(例如,微处理器,控制器,数字信号处理器(dsp),专用集成电路(asic),现场可编程门阵列(fpga)等),这些处理器处理各种计算机可
执行指令从而控制设备或装置的操作。本技术具体实施例提供的设备或装置可以包括将各个组件耦合在一起的系统总线或数据传输系统。系统总线可以包括不同总线结构中的任何一种或不同总线结构的组合,例如存储器总线或存储器控制器,外围总线,通用串行总线和/或利用多种总线体系结构中的任何一种的处理器或本地总线。本技术具体实施例提供的设备或装置可以是单独提供,也可以是系统的一部分,也可以是其它设备或装置的一部分。
64.本技术提供的具体实施例可以包括计算机可读存储介质或与计算机可读存储介质相结合,例如能够提供非暂时性数据存储的一个或多个存储设备。计算机可读存储介质/存储设备可以被配置为保存数据,程序器和/或指令,这些数据,程序器和/或指令在由本技术具体实施例提供的设备或装置的处理器执行时使这些设备或装置实现有关操作。计算机可读存储介质/存储设备可以包括以下一个或多个特征:易失性,非易失性,动态,静态,可读/写,只读,随机访问,顺序访问,位置可寻址性,文件可寻址性和内容可寻址性。在一个或多个示例性实施例中,计算机可读存储介质/存储设备可以被集成到本技术具体实施例提供的设备或装置中或属于公共系统。计算机可读存储介质/存储设备可以包括光存储设备,半导体存储设备和/或磁存储设备等等,也可以包括随机存取存储器(ram),闪存,只读存储器(rom),可擦可编程只读存储器(eprom),电可擦可编程只读存储器(eeprom),寄存器,硬盘,可移动磁盘,可记录和/或可重写光盘(cd),数字多功能光盘(dvd),大容量存储介质设备或任何其他形式的合适存储介质。
65.以上是本技术实施例的实施方式,应当指出,本技术具体实施例描述的方法中的步骤可以根据实际需要进行顺序调整、合并和删减。在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详细描述的部分,可以参见其他实施例的相关描述。可以理解的是,本技术实施例以及附图所示的结构并不构成对有关装置或系统的具体限定。在本技术另一些实施例中,有关装置或系统可以包括比具体实施例和附图更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者具有不同的部件布置。本领域技术人员将理解,在不脱离本技术具体实施例的精神和范围的情况下,可以对具体实施例记载的方法和设备的布置,操作和细节进行各种修改或变化;在不脱离本技术实施例原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本技术的保护范围。
技术特征:
1.一种用于隐私计算的网络节点协作方法,其特征在于,所述方法应用于包括第一节点和第二节点的网络,所述方法包括:所述第一节点提供多个输入数据用于与持有计算模型的所述第二节点协作完成推理任务,针对所述多个输入数据的每一个输入数据:所述第一节点和所述第二节点分别生成与该输入数据对应的第一随机数序列和第二随机数序列;所述第一节点利用所述第一随机数序列以及所述第二节点利用所述第二随机数序列和所述计算模型的模型参数从而协作生成与该输入数据对应的模型随机数序列;所述第一节点利用所述第一随机数序列加密该输入数据得到加密后输入数据并将该加密后输入数据发送给所述第二节点;所述第二节点根据该加密后输入数据、所述第二随机数序列和所述计算模型的模型参数生成中间结果并将该中间结果发送给所述第一节点;和所述第一节点根据该中间结果和所述模型随机数序列生成与该输入数据对应的所述推理任务的计算结果。2.根据权利要求1所述的网络节点协作方法,其特征在于,所述第一随机数序列是r,所述第二随机数序列是s,所述计算模型的模型参数包括线性成分w和偏置成分b,与该输入数据对应的模型随机数序列是w
·
r+b-s。3.根据权利要求2所述的网络节点协作方法,其特征在于,该输入数据是x,该加密后输入数据是x-r。4.根据权利要求3所述的网络节点协作方法,其特征在于,该中间结果是w
·
(x-r)+s。5.根据权利要求4所述的网络节点协作方法,其特征在于,与该输入数据对应的所述推理任务的计算结果是w
·
x+b。6.根据权利要求5所述的网络节点协作方法,其特征在于,所述计算模型是神经网络模型,所述神经网络模型的模型参数的线性成分w是所述神经网络模型的线性层的线性成分,所述神经网络模型的模型参数的偏置成分b是所述神经网络模型的线性层的偏置成分。7.根据权利要求6所述的网络节点协作方法,其特征在于,所述线性层包括卷积层和/或全连接层,或者,所述线性层指示了包括卷积运算和/或全连接运算的线性转换。8.根据权利要求6所述的网络节点协作方法,其特征在于,所述神经网络模型的训练是基于至少一个第三节点所提供的加密后训练数据,所述至少一个第三节点不同于所述第二节点,所述至少一个第三节点与所述第二节点在所述神经网络模型的训练过程中的数据交互是基于对所述神经网络模型的模型参数按照复合安全协议进行加密处理,其中,对所述神经网络模型的模型参数按照该复合安全协议进行加密处理包括对所述神经网络模型的模型参数的线性成分w按照差分隐私dp安全协议进行加密处理以及对所述神经网络模型的模型参数的偏置成分b按照同态加密he安全协议进行加密处理。9.根据权利要求6所述的网络节点协作方法,其特征在于,所述神经网络模型的更新是基于至少一个第三节点所提供的加密后更新数据,所述至少一个第三节点不同于所述第二节点,所述至少一个第三节点与所述第二节点在所述神经网络模型的更新过程中的数据交互是基于对所述神经网络模型的模型参数按照复合安全协议进行加密处理,其中,对所述
神经网络模型的模型参数按照该复合安全协议进行加密处理包括对所述神经网络模型的模型参数的线性成分w按照dp安全协议进行加密处理以及对所述神经网络模型的模型参数的偏置成分b按照he安全协议进行加密处理。10.根据权利要求8所述的网络节点协作方法,其特征在于,所述至少一个第三节点与所述第一节点不属于同一平台、不属于同一系统、不在同一地理位置或者不属于同一网络。11.根据权利要求1至10中任一项所述的网络节点协作方法,其特征在于,包括所述第一节点和所述第二节点的该网络是云网络,所述第一节点和所述第二节点均是该云网络的网络节点,所述第二节点包括云服务器或者提供云计算服务或者提供云资源的接入。12.根据权利要求6至10中任一项所述的网络节点协作方法,其特征在于,所述神经网络模型的应用场景包括以下至少之一:金融、政务、智能交通、医疗健康、图像处理、自然语言处理和隐私计算,所述推理任务用于完成所述神经网络模型的应用场景下的一个或者多个任务。13.根据权利要求1至10中任一项所述的网络节点协作方法,其特征在于,所述第一随机数序列和/或第二随机数序列是通过对零明文进行至少一次加密得到的至少一个零密文。14.一种非瞬时性计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,该计算机指令被处理器执行时实现根据权利要求1至13中任一项所述的网络节点协作方法。15.一种电子设备,其特征在于,所述电子设备包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器通过运行所述可执行指令以实现根据权利要求1至13中任一项所述的网络节点协作方法。16.一种用于隐私计算的云计算网络,其特征在于,所述云计算网络包括第一节点和第二节点,其中所述第一节点提供多个输入数据用于与持有计算模型的所述第二节点协作完成推理任务,所述云计算网络完成所述推理任务的操作包括:针对所述多个输入数据的每一个输入数据:所述第一节点和所述第二节点分别生成与该输入数据对应的第一随机数序列和第二随机数序列;所述第一节点利用所述第一随机数序列以及所述第二节点利用所述第二随机数序列和所述计算模型的模型参数从而协作生成与该输入数据对应的模型随机数序列;所述第一节点利用所述第一随机数序列加密该输入数据得到加密后输入数据并将该加密后输入数据发送给所述第二节点;所述第二节点根据该加密后输入数据、所述第二随机数序列和所述计算模型的模型参数生成中间结果并将该中间结果发送给所述第一节点;和所述第一节点根据该中间结果和所述模型随机数序列生成与该输入数据对应的所述推理任务的计算结果。17.根据权利要求16所述的云计算网络,其特征在于,所述计算模型是神经网络模型,所述神经网络模型的模型参数的线性成分w是所述神经网络模型的线性层的线性成分,所
述神经网络模型的模型参数的偏置成分b是所述神经网络模型的线性层的偏置成分。18.根据权利要求17所述的云计算网络,其特征在于,所述神经网络模型的训练是基于至少一个第三节点所提供的加密后训练数据,所述至少一个第三节点不同于所述第二节点,所述至少一个第三节点与所述第二节点在所述神经网络模型的训练过程中的数据交互是基于对所述神经网络模型的模型参数按照复合安全协议进行加密处理,其中,对所述神经网络模型的模型参数按照该复合安全协议进行加密处理包括对所述神经网络模型的模型参数的线性成分w按照差分隐私dp安全协议进行加密处理以及对所述神经网络模型的模型参数的偏置成分b按照同态加密he安全协议进行加密处理。19.根据权利要求18所述的云计算网络,其特征在于,所述第二节点包括云服务器或者提供云计算服务或者提供云资源的接入,所述至少一个第三节点属于相对于所述云计算网络的另一云计算网络。20.根据权利要求17至19中任一项所述的云计算网络,其特征在于,所述神经网络模型的应用场景包括以下至少之一:金融、政务、智能交通、医疗健康、图像处理、自然语言处理和隐私计算,所述推理任务用于完成所述神经网络模型的应用场景下的一个或者多个任务。
技术总结
本申请涉及一种用于隐私计算的网络节点协作方法及云计算网络,可用于联邦学习。方法包括:第一节点提供输入数据用于与持有计算模型的第二节点协作;第一节点和第二节点分别生成第一随机数序列和第二随机数序列;第一节点利用第一随机数序列以及第二节点利用第二随机数序列和计算模型的模型参数从而协作生成与该输入数据对应的模型随机数序列;第一节点利用第一随机数序列加密该输入数据并将该加密后输入数据发送给第二节点;第二节点根据该加密后输入数据、第二随机数序列和计算模型的模型参数生成中间结果并将该中间结果发送给第一节点;第一节点根据该中间结果和模型随机数序列生成所述推理任务的计算结果。如此改进了计算效率和安全性。了计算效率和安全性。了计算效率和安全性。
技术研发人员:李晋杰
受保护的技术使用者:深圳致星科技有限公司
技术研发日:2022.03.14
技术公布日:2023/9/22
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
航空商城 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/
上一篇:电路板加工控制方法与流程 下一篇:一种房屋建筑梁板碳纤维加固装置及其使用方法与流程