CN109698822A - 基于公有区块链和加密神经网络的联合学习方法及*** - Google Patents
基于公有区块链和加密神经网络的联合学习方法及*** Download PDFInfo
- Publication number
- CN109698822A CN109698822A CN201811440930.3A CN201811440930A CN109698822A CN 109698822 A CN109698822 A CN 109698822A CN 201811440930 A CN201811440930 A CN 201811440930A CN 109698822 A CN109698822 A CN 109698822A
- Authority
- CN
- China
- Prior art keywords
- neural network
- encryption
- data
- identification code
- server
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- General Health & Medical Sciences (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- Biomedical Technology (AREA)
- Artificial Intelligence (AREA)
- Computer Hardware Design (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种基于公有区块链和加密神经网络的联合学习方法及***,所述方法包括:终端下载服务器上预先构建的通用神经网络模型,使用本地数据进行训练,获取梯度更新数据后对其加密,获取加密数据和第一识别码,将加密数据发送至服务器,并计算出第一识别码的哈希值上传至区块链,服务器对加密数据解密,获取第二识别码以及梯度更新数据的和,计算第二识别码的哈希值,然后验证第一识别码的哈希值与第二识别码的哈希值是否一致,若一致,使用梯度更新数据的和对通用神经网络模型进行更新,否则,不更新,重复上述步骤,直至模型满足预设的收敛条件。本发明在完成深度网络训练的过程中,可防止用户信息被泄露,保证传输数据***露、不被篡改。
Description
技术领域
本发明涉及区块链技术领域,特别涉及一种基于公有区块链和加密神经网络的联合学习方法及***。
背景技术
深度学习是机器学习领域的一种常用学习方法,其特点是利用深度神经网络和大量数据对模型进行训练。其中不可缺少的就是训练数据,目前训练数据的来源很多都是用户在使用产品的过程中所产生,其中涉及到一些用户的使用习惯,如使用频率,使用时间,个人偏好等等。传统的深度学习项目都是将用户的这些数据收集到服务器端然后再进行大规模的训练,这样就让用户对个人数据的隐私问题产生了担忧。
联合学习(federated learning)是美国Google公司提出的一种能使多台客户端计算设备以协作的形式,训练共享的预测模型。联合学习通常的训练过程是首先服务器端给客户端计算设备下发初始模型,之后客户端计算设备根据本地自身的数据对模型进行训练,训练完成后将模型的梯度更新发送到服务端,服务端整合所有发送过来的梯度更新数据,作为模型的一次更新,然后将更新后的模型再次发送到客户端计算设备,重复之前的训练过程,直到服务器端的模型收敛,这样就达到了在不传输个人数据的同时完成了模型的训练,保证了用户数据的安全。然而即使只传输梯度信息,仍然在一定程度上可能泄漏用户信息,因此如何保证客户端计算设备传输的梯度信息***露就成为了联合学习的一个亟待解决的问题。
联合学习的另一个问题是:虽然有考虑到用户的隐私问题,但是在客户端计算设备和服务端通信过程中数据存在被篡改可能,无法确保客户端计算设备发送的数据与服务端接收到的数据的一致性。
近几年区块链技术的研究与应用呈现出迅猛增长态势。区块链技术通过去中心化,运用数据加密、时间戳、分布式共识和经济激励等手段,在节点无需互相信任的分布式***中实现基于去中心化信用的点对点交易、协调与协作,从而为解决中心化机构普遍存在的高成本、低效率和数据存储不安全等问题提供了解决方案。区块链具有可溯源、不可篡改、匿名等优势。其中公有链是完全去中心化的,没有任何个人或者机构可以控制或篡改其中数据的读写。
综上所述,如何在完成深度网络训练的过程中,***漏用户信息,以及保证传输数据不被篡改等问题亟需解决。
发明内容
为了解决现有技术的问题,本发明实施例提供了一种基于公有区块链和加密神经网络的联合学习方法及***,以克服现有技术中如何在完成深度网络训练的过程中,***漏用户信息,以及保证传输数据***露、不被篡改等问题。
为解决上述技术问题,本发明采用的技术方案是:
一方面,提供了一种基于公有区块链和加密神经网络的联合学习方法,所述方法包括如下步骤:
S1:终端下载服务器上预先构建的通用神经网络模型,使用本地数据进行训练,获取梯度更新数据;
S2:所述终端对所述梯度更新数据进行加密,获取加密数据和第一识别码,并将所述加密数据发送至所述服务器;
S3:所述终端通过预定义的哈希函数计算出所述第一识别码的哈希值,并上传至区块链;
S4:所述服务器对所述加密数据进行解密,获取第二识别码以及梯度更新数据的和,使用预定义的哈希函数计算所述第二识别码的哈希值;
S5:所述服务器读取区块链上所述第一识别码的哈希值,验证所述第一识别码的哈希值与所述第二识别码的哈希值是否一致,若一致,使用所述梯度更新数据的和对所述通用神经网络模型进行更新,否则,不更新;
S6:重复步骤S2至S5,直至所述通用神经网络模型满足预设的收敛条件。
进一步的,所述方法还包括:
在所述终端对所述梯度更新数据进行加密之前,训练一组加密解密神经网络,其中,所述加密神经网络部署在所述终端上,所述解密神经网络部署在所述服务器上。
进一步的,所述步骤S1具体包括:
S1.1:所述终端接收训练任务指令;
S1.2:所述终端到所述服务器上下载预先构建的通用神经网络模型;
S1.3:所述终端使用本地数据对所述通用神经网络模型进行训练,获取梯度更新数据。
进一步的,所述步骤S2具体包括:
所述终端使用所述加密神经网络对所述梯度更新数据进行加密,获取加密数据和第一识别码,并将所述加密数据发送至所述服务器。
进一步的,所述步骤S4具体包括:
所述服务器使用所述解密神经网络对所述加密数据进行解密,获取第二识别码以及梯度更新数据的和
另一方面,提供了一种基于公有区块链和加密神经网络的联合学习***,所述***包括:终端,所述终端包括:
训练模块,用于下载服务器上预先构建的通用神经网络模型,使用本地数据进行训练,获取梯度更新数据;
加密模块,用于对所述梯度更新数据进行加密,获取加密数据和第一识别码,并将所述加密数据发送至所述服务器;
第一计算模块,用于通过预定义的哈希函数计算出所述第一识别码的哈希值,并上传至区块链;
服务器,所述服务器包括:
存储模块,用于存储预先构建的通用神经网络模型;
解密模块,用于对所述加密数据进行解密,获取第二识别码以及梯度更新数据的和;
第二计算模块,用于所述哈希函数计算所述第二识别码的哈希值;
验证模块,用于验证所述第二识别码的哈希值与第一识别码的哈希值是否一致;
模型更新模块,用于使用所述梯度更新数据的和对所述通用神经网络模型进行更新;
区块链,用于存储第一识别码的哈希值。
进一步的,所述***还包括:
构建模块,用于在所述终端对所述梯度更新数据进行加密之前,训练一组加密解密神经网络,其中,所述加密神经网络部署在所述终端上,所述解密神经网络部署在所述服务器上。
进一步的,所述训练模块包括:
指令接收单元,用于接收训练任务指令;
模型获取单元,用于到所述服务器上下载预先构建的通用神经网络模型;
模型训练单元,用于使用本地数据对所述通用神经网络模型进行训练,获取梯度更新数据。
进一步的,所述加密模块包括:
加密单元,用于使用所述加密神经网络对所述梯度更新数据进行加密,获取加密数据和第一识别码;
发送单元,用于将所述加密数据发送至所述服务器。
进一步的,所述解密模块具体用于:
使用所述解密神经网络对所述加密数据进行解密,获取第二识别码以及梯度更新数据的和。
本发明实施例提供的技术方案带来的有益效果是:
1、本发明实施例提供的基于公有区块链和加密神经网络的联合学习方法及***,通过使用终端的本地数据对神经网络模型进行训练,可以在不发送用户数据的情况下,安全有效地完成神经网络模型的训练通过,避免泄漏用户信息;
2、本发明实施例提供的基于公有区块链和加密神经网络的联合学习方法及***,使用加密神经网络同时对梯度更新数据进行加密和识别码生成,而解密神经网络可以完全重构识别码且智能重构出所有终端的梯度更新数据的和。这样在整个传输过程中以及服务器端梯度更新数据均不可见,保护了用户的梯度更新数据;
3、本发明实施例提供的基于公有区块链和加密神经网络的联合学习方法及***,通过将计算出的识别码写入区块链,保证了终端传输的梯度更新数据没有被篡改;
4、本发明实施例提供的基于公有区块链和加密神经网络的联合学习方法及***,由于深度神经网络强大的表达能力和学习能力,可以很方便地将该计算方法及***应用到各种场景中,而不产生明显的额外工作与研究。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据一示例性实施例示出的基于公有区块链和加密神经网络的联合学习方法的流程图;
图2是根据一示例性实施例示出的终端下载服务器上预先构建的通用神经网络模型,使用本地数据进行训练,获取梯度更新数据的流程图;
图3是根据一示例性实施例示出的基于公有区块链和加密神经网络的联合学习***的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1是根据一示例性实施例示出的基于公有区块链和加密神经网络的联合学习方法的流程图,参照图1所示,其包括如下步骤:
S1:终端下载服务器上预先构建的通用神经网络模型,使用本地数据进行训练,获取梯度更新数据。
具体的,在服务器上预先构建一个通用神经网络模型供终端下载使用。终端可以包括若干个,参与训练的终端下载服务器当前的通用神经网络模型,然后使用各终端的本地数据对通用神经网络模型进行训练,获取本次训练对模型参数的梯度更新数据。这样,可以在不传输用户数据的同时完成通用神经网络模型的训练,保证了用户数据的安全。
S2:所述终端对所述梯度更新数据进行加密,获取加密数据和第一识别码,并将所述加密数据发送至所述服务器。
具体的,为保证梯度更新数据在传输过程中的安全,终端在将梯度更新数据发送给服务器前,会对梯度更新数据进行加密,获取加密数据和第一识别码,然后将加密数据发送至所述服务器。
进一步的,在所述终端对所述梯度更新数据进行加密之前,训练一组加密解密神经网络,其中,所述加密神经网络部署在终端上,所述解密神经网络部署在服务器上。
进一步的,所述终端使用所述加密神经网络对所述梯度更新数据进行加密,获取加密数据和第一识别码,并将所述加密数据发送至所述服务器。
具体的,在每个终端上均部署有加密神经网络,加密神经网络的输入为每个终端设备的梯度更新数据,输出为加密数据和第一识别码,分别传输给服务器和区块链。而解密神经网络部署在服务器上,用于对加密数据进行解密。这里需要说明的是,在整个传输过程中只传输加密后的梯度更新数据(即加密数据)以及第一识别码,而没有原始梯度更新数据,因此保护了终端设备的梯度更新数据在传输中的安全。
S3:所述终端通过预定义的哈希函数计算出所述第一识别码的哈希值,并上传至区块链。
具体的,预先定义一个哈希函数,各终端通过预定义的哈希函数计算出所述第一识别码的哈希值,将此哈希值传输到区块链上。作为优选,本发明实施例中,取哈希函数为双SHA256。
S4:所述服务器对所述加密数据进行解密,获取第二识别码以及梯度更新数据的和,使用所述哈希函数计算所述第二识别码的哈希值。
具体的,服务器收到各终端发送来的加密数据后,会先对加密数据进行解密,获取各个终端对应的第二识别码和梯度更新数据的和,然后使用预定义的哈希函数计算所述第二识别码的哈希值。
进一步的,所述服务器使用所述解密神经网络对所述加密数据进行解密,获取第二识别码和梯度更新数据的和。
具体的,解密神经网络部署在服务器上,输入为各个终端发送来的加密数据,输出有两组,分别为各终端对应的第二识别码以及重构出的梯度更新数据的和,其中第二识别码用来在区块链上校验梯度更新数据是否被篡改,而其中重构出的梯度更新数据的和用来进行模型权重更新。这里需要说明的是,解密神经网络只能重构出梯度更新的和而不能重构出独立的各个终端设备的梯度更新数据,因此保护了终端设备的梯度更新数据在服务器上的安全,使得用户信息不被泄露。
S5:所述服务器读取区块链上所述第一识别码的哈希值,验证所述第一识别码的哈希值与所述第二识别码的哈希值是否一致,若一致,使用所述梯度更新数据的和对所述通用神经网络模型进行更新,否则,不更新。
具体的,服务器读取区块链上之前由终端设备上传的第一识别码的哈希值,验证第一识别码的哈希值与第二识别码的哈希值是否一致。如果一致则表明梯度更新数据传输完整,未被篡改,继续后续流程,即使用梯度更新数据的和对通用神经网络模型进行更新。如果不一致,则说明数据已经被篡改,无法使用,放弃该终端设备的梯度更新数据,重新等待数据。
S6:重复步骤S2至S5,直至所述通用神经网络模型满足预设的收敛条件。
具体的,重复步骤S2至S5,终端设备重新获取通用神经网络模型,继续训练,每一次迭代都会更新服务器端的通用神经网络模型。在进行多轮次的迭代后,服务端的模型会逐渐收敛,最终得到一个效果理想的模型。
图2是根据一示例性实施例示出的终端下载服务器上预先构建的通用神经网络模型,使用本地数据进行训练,获取梯度更新数据的流程图,参照图2所示,其包括如下步骤:
S1.1:所述终端接收训练任务指令。
具体的,终端包括若干个,例如,可以选择100个终端设备参与训练。参与训练的各终端需先接收训练任务指令。
S1.2:所述终端到所述服务器上下载预先构建的通用神经网络模型。
具体的,各终端接收到训练任务指令后,到服务器上下载预先构建的通用神经网络模型。
S1.3:所述终端使用本地数据对所述通用神经网络模型进行训练,获取梯度更新数据。
具体的,各终端使用本地数据对所述通用神经网络模型进行训练,获取本次训练对模型参数的梯度更新数据。这样,可以在不传输用户数据的同时完成通用神经网络模型的训练,保证了用户数据的安全。
作为优选,本发明实施例中,定义加密神经网络E(W),其中W为梯度更新数据,输出为加密数据C和第一识别码L。选择加密数据C为4096维浮点型数据,识别码L为256维布尔型数据。定义解密神经网络D(C1,C2..Cn),其中C1,C2,…,Cn分别为每个终端设备发送来的的加密数据,输出为梯度更新数据的和Y,其维度与梯度更新数据W相同,是对输入的梯度更新数据(W1,W2,…Wn)的集成。作为优选,本发明实施例中取这些梯度更新数据的和以及每个终端设备的对应的第二识别码X1,X2,..Xn,其中,第二识别码X1,X2,..Xn维度与L相同。
除此之外,优化方程为其中ly,lx分别对应重构的损失函数,λ为两个损失函数的权重。作为优选,本发明实施例中取ly为RMSE误差(即均方根误差),而lx取交叉熵误差,λ=1e-6。由于实际应用中识别码要求精确重构,而梯度更新数据可以存在一定误差,因此将识别码损失权重加大。优化该方程,得到加密神经网络E(W)和解密神经网络D(C1,C2...Cn)。
图3是根据一示例性实施例示出的基于公有区块链和加密神经网络的联合学习***的结构示意图,参照图3所示,该***包括:
终端,所述终端包括:
训练模块,用于下载服务器上预先构建的通用神经网络模型,使用本地数据进行训练,获取梯度更新数据;
加密模块,用于对所述梯度更新数据进行加密,获取加密数据和第一识别码,并将所述加密数据发送至所述服务器;
第一计算模块,用于通过预定义的哈希函数计算出所述第一识别码的哈希值,并上传至区块链;
服务器,所述服务器包括:
存储模块,用于存储预先构建的通用神经网络模型;
解密模块,用于对所述加密数据进行解密,获取第二识别码以及梯度更新数据的和;
第二计算模块,用于使用所述哈希函数计算所述第二识别码的哈希值;
验证模块,用于验证所述第二识别码的哈希值与第一识别码的哈希值是否一致;
模型更新模块,用于使用所述梯度更新数据的和对所述通用神经网络模型进行更新;
区块链,用于存储第一识别码的哈希值。
在一示例性实施例中,本发明提供的基于联合学习和神经网络的公有区块链计算***还包括:
构建模块,用于在所述终端对所述梯度更新数据进行加密之前,训练一组加密解密神经网络,其中,所述加密神经网络部署在所述终端上,所述解密神经网络部署在所述服务器上。
进一步的,所述训练模块包括:
指令接收单元,用于接收训练任务指令;
模型获取单元,用于到所述服务器上下载预先构建的通用神经网络模型;
模型训练单元,用于使用本地数据对所述通用神经网络模型进行训练,获取梯度更新数据。
进一步的,所述加密模块包括:
加密单元,用于使用所述加密神经网络对所述梯度更新数据进行加密,获取加密数据和第一识别码;
发送单元,用于将所述加密数据发送至所述服务器。
进一步的,所述解密模块具体用于:
使用所述解密神经网络对所述加密数据进行解密,获取第二识别码以及梯度更新数据的和。
综上所述,本发明实施例提供的技术方案带来的有益效果是:
1、本发明实施例提供的基于公有区块链和加密神经网络的联合学习方法及***,通过使用终端的本地数据对神经网络模型进行训练,可以在不发送用户数据的情况下,安全有效地完成神经网络模型的训练通过,避免泄漏用户信息;
2、本发明实施例提供的基于公有区块链和加密神经网络的联合学习方法及***,使用加密神经网络同时对梯度更新数据进行加密和识别码生成,而解密神经网络可以完全重构识别码且智能重构出所有终端的梯度更新数据的和。这样在整个传输过程中以及服务器端梯度更新数据均不可见,保护了用户的梯度更新数据;
3、本发明实施例提供的基于公有区块链和加密神经网络的联合学习方法及***,通过将计算出的识别码写入区块链,保证了终端传输的梯度更新数据没有被篡改;
4、本发明实施例提供的基于公有区块链和加密神经网络的联合学习方法及***,由于深度神经网络强大的表达能力和学习能力,可以很方便地将该计算方法及***应用到各种场景中,而不产生明显的额外工作与研究。
需要说明的是:上述实施例提供的基于公有区块链和加密神经网络的联合学习***在触发计算业务时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将***划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的基于公有区块链和加密神经网络的联合学习***与基于公有区块链和加密神经网络的联合学习方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。另外,上述实施例提供的基于公有区块链和加密神经网络的联合学习***也可以是基于上述实施例提供的基于公有区块链和加密神经网络的联合学习方法来构建的。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种基于公有区块链和加密神经网络的联合学习方法,其特征在于,所述方法包括如下步骤:
S1:终端下载服务器上预先构建的通用神经网络模型,使用本地数据进行训练,获取梯度更新数据;
S2:所述终端对所述梯度更新数据进行加密,获取加密数据和第一识别码,并将所述加密数据发送至所述服务器;
S3:所述终端通过预定义的哈希函数计算出所述第一识别码的哈希值,并上传至区块链;
S4:所述服务器对所述加密数据进行解密,获取第二识别码以及梯度更新数据的和,使用所述哈希函数计算所述第二识别码的哈希值;
S5:所述服务器读取区块链上所述第一识别码的哈希值,验证所述第一识别码的哈希值与所述第二识别码的哈希值是否一致,若一致,使用所述梯度更新数据的和对所述通用神经网络模型进行更新,否则,不更新;
S6:重复步骤S2至S5,直至所述通用神经网络模型满足预设的收敛条件。
2.根据权利要求1所述的基于公有区块链和加密神经网络的联合学习方法,其特征在于,所述方法还包括:
在所述终端对所述梯度更新数据进行加密之前,训练一组加密解密神经网络,其中,所述加密神经网络部署在所述终端上,所述解密神经网络部署在所述服务器上。
3.根据权利要求1或2所述的基于公有区块链和加密神经网络的联合学习方法,其特征在于,所述步骤S1具体包括:
S1.1:所述终端接收训练任务指令;
S1.2:所述终端到所述服务器上下载预先构建的通用神经网络模型;
S1.3:所述终端使用本地数据对所述通用神经网络模型进行训练,获取梯度更新数据。
4.根据权利要求2所述的基于公有区块链和加密神经网络的联合学习方法,其特征在于,所述步骤S2具体包括:
所述终端使用所述加密神经网络对所述梯度更新数据进行加密,获取加密数据和第一识别码,并将所述加密数据发送至所述服务器。
5.根据权利要求2所述的基于公有区块链和加密神经网络的联合学习方法,其特征在于,所述步骤S4具体包括:
所述服务器使用所述解密神经网络对所述加密数据进行解密,获取第二识别码和梯度更新数据的和。
6.一种基于公有区块链和加密神经网络的联合学习***,其特征在于,所述***包括:
终端,所述终端包括:
训练模块,用于下载服务器上预先构建的通用神经网络模型,使用本地数据进行训练,获取梯度更新数据;
加密模块,用于对所述梯度更新数据进行加密,获取加密数据和第一识别码,并将所述加密数据发送至所述服务器;
第一计算模块,用于通过预定义的哈希函数计算出所述第一识别码的哈希值,并上传至区块链;
服务器,所述服务器包括:
存储模块,用于存储预先构建的通用神经网络模型;
解密模块,用于对所述加密数据进行解密,获取第二识别码以及梯度更新数据的和;
第二计算模块,用于使用所述哈希函数计算所述第二识别码的哈希值;
验证模块,用于验证所述第二识别码的哈希值与第一识别码的哈希值是否一致;
模型更新模块,用于使用所述梯度更新数据的和对所述通用神经网络模型进行更新;
区块链,用于存储第一识别码的哈希值。
7.根据权利要求6所述的基于公有区块链和加密神经网络的联合学习***,其特征在于,所述***还包括:
构建模块,用于在所述终端对所述梯度更新数据进行加密之前,训练一组加密解密神经网络,其中,所述加密神经网络部署在所述终端上,所述解密神经网络部署在所述服务器上。
8.根据权利要求6或7所述的基于公有区块链和加密神经网络的联合学习***,其特征在于,所述训练模块包括:
指令接收单元,用于接收训练任务指令;
模型获取单元,用于到所述服务器上下载预先构建的通用神经网络模型;
模型训练单元,用于使用本地数据对所述通用神经网络模型进行训练,获取梯度更新数据。
9.根据权利要求7所述的基于公有区块链和加密神经网络的联合学习***,其特征在于,所述加密模块包括:
加密单元,用于使用所述加密神经网络对所述梯度更新数据进行加密,获取加密数据和第一识别码;
发送单元,用于将所述加密数据发送至所述服务器。
10.根据权利要求7所述的基于公有区块链和加密神经网络的联合学习***,其特征在于,所述解密模块具体用于:
使用所述解密神经网络对所述加密数据进行解密,获取第二识别码以及梯度更新数据的和。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811440930.3A CN109698822A (zh) | 2018-11-28 | 2018-11-28 | 基于公有区块链和加密神经网络的联合学习方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811440930.3A CN109698822A (zh) | 2018-11-28 | 2018-11-28 | 基于公有区块链和加密神经网络的联合学习方法及*** |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109698822A true CN109698822A (zh) | 2019-04-30 |
Family
ID=66230245
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811440930.3A Pending CN109698822A (zh) | 2018-11-28 | 2018-11-28 | 基于公有区块链和加密神经网络的联合学习方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109698822A (zh) |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110490305A (zh) * | 2019-08-22 | 2019-11-22 | 腾讯科技(深圳)有限公司 | 基于区块链网络的机器学习模型处理方法及节点 |
CN110874484A (zh) * | 2019-10-16 | 2020-03-10 | 众安信息技术服务有限公司 | 基于神经网络和联邦学习的数据处理方法和*** |
US20200193295A1 (en) * | 2018-12-13 | 2020-06-18 | Hella GmbH & Co., KGaA | Verifizierung und identifizierung eines neuronalen netzes |
CN111327674A (zh) * | 2020-01-20 | 2020-06-23 | 杭州加密矩阵科技有限公司 | 一种适用于区块链工作量证明的单边缘服务器缓存算法 |
CN111428881A (zh) * | 2020-03-20 | 2020-07-17 | 深圳前海微众银行股份有限公司 | 识别模型的训练方法、装置、设备及可读存储介质 |
CN111860832A (zh) * | 2020-07-01 | 2020-10-30 | 广州大学 | 一种基于联邦学习的增强神经网络防御能力的方法 |
WO2020224205A1 (zh) * | 2019-05-07 | 2020-11-12 | 清华大学 | 基于区块链的安全协作深度学习方法及装置 |
CN112183612A (zh) * | 2020-09-24 | 2021-01-05 | 重庆邮电大学 | 一种基于参数扩充的联合学习方法、装置及*** |
CN112383440A (zh) * | 2020-12-01 | 2021-02-19 | 苏州中德双智科创发展有限公司 | 云端模型准确性提高方法、装置、电子设备及存储介质 |
WO2021074773A1 (en) * | 2019-10-16 | 2021-04-22 | International Business Machines Corporation | Learning pattern dictionary from noisy numerical data in distributed networks |
CN112860800A (zh) * | 2021-02-22 | 2021-05-28 | 深圳市星网储区块链有限公司 | 基于区块链和联邦学习的可信网络应用方法和装置 |
WO2021103901A1 (zh) * | 2019-11-28 | 2021-06-03 | 支付宝(杭州)信息技术有限公司 | 基于多方安全计算的神经网络模型训练及预测方法、装置 |
WO2021114929A1 (zh) * | 2019-12-09 | 2021-06-17 | 支付宝(杭州)信息技术有限公司 | 基于区块链的模型联合训练方法及装置 |
CN113094761A (zh) * | 2021-04-25 | 2021-07-09 | 中山大学 | 一种联邦学习数据防篡改监测方法及相关装置 |
CN113657609A (zh) * | 2021-08-18 | 2021-11-16 | 深圳技术大学 | 基于区块链与联邦迁移学习的数据管理方法及*** |
CN113792872A (zh) * | 2021-08-24 | 2021-12-14 | 浙江数秦科技有限公司 | 基于区块链的神经网络训练容器和托管训练方法 |
CN113988254A (zh) * | 2020-07-27 | 2022-01-28 | 腾讯科技(深圳)有限公司 | 用于多个环境的神经网络模型的确定方法及装置 |
WO2022021421A1 (zh) * | 2020-07-31 | 2022-02-03 | Oppo广东移动通信有限公司 | 模型管理方法、***、装置、通信设备及存储介质 |
US11604986B2 (en) | 2020-02-28 | 2023-03-14 | International Business Machines Corporation | Blockchain-enabled decentralized ecosystem for secure training of deep neural networks using trusted execution environments |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106548092A (zh) * | 2016-10-31 | 2017-03-29 | 杭州嘉楠耘智信息科技有限公司 | 一种文件处理方法及装置 |
KR101787611B1 (ko) * | 2017-01-16 | 2017-10-18 | 주식회사 더디엔에이시스템 | 딥 러닝 기반의 자가 적응 학습 엔진 모듈 |
CN107316239A (zh) * | 2017-07-14 | 2017-11-03 | 众安信息技术服务有限公司 | 一种基于区块链的信息认证和溯源方法及*** |
CN108712260A (zh) * | 2018-05-09 | 2018-10-26 | 曲阜师范大学 | 云环境下保护隐私的多方深度学习计算代理方法 |
-
2018
- 2018-11-28 CN CN201811440930.3A patent/CN109698822A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106548092A (zh) * | 2016-10-31 | 2017-03-29 | 杭州嘉楠耘智信息科技有限公司 | 一种文件处理方法及装置 |
KR101787611B1 (ko) * | 2017-01-16 | 2017-10-18 | 주식회사 더디엔에이시스템 | 딥 러닝 기반의 자가 적응 학습 엔진 모듈 |
CN107316239A (zh) * | 2017-07-14 | 2017-11-03 | 众安信息技术服务有限公司 | 一种基于区块链的信息认证和溯源方法及*** |
CN108712260A (zh) * | 2018-05-09 | 2018-10-26 | 曲阜师范大学 | 云环境下保护隐私的多方深度学习计算代理方法 |
Non-Patent Citations (1)
Title |
---|
KONEČNÝ J, MCMAHAN HB, RAMAGE D: "Federated optimization: distributed", 《ARXIV PREPRINT》 * |
Cited By (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200193295A1 (en) * | 2018-12-13 | 2020-06-18 | Hella GmbH & Co., KGaA | Verifizierung und identifizierung eines neuronalen netzes |
US11715005B2 (en) * | 2018-12-13 | 2023-08-01 | Cariad Se | Verification and identification of a neural network |
WO2020224205A1 (zh) * | 2019-05-07 | 2020-11-12 | 清华大学 | 基于区块链的安全协作深度学习方法及装置 |
CN110490305A (zh) * | 2019-08-22 | 2019-11-22 | 腾讯科技(深圳)有限公司 | 基于区块链网络的机器学习模型处理方法及节点 |
WO2021074773A1 (en) * | 2019-10-16 | 2021-04-22 | International Business Machines Corporation | Learning pattern dictionary from noisy numerical data in distributed networks |
CN110874484A (zh) * | 2019-10-16 | 2020-03-10 | 众安信息技术服务有限公司 | 基于神经网络和联邦学习的数据处理方法和*** |
GB2604467A (en) * | 2019-10-16 | 2022-09-07 | Ibm | Learning pattern dictionary from noisy numerical data in distributed networks |
CN114503505A (zh) * | 2019-10-16 | 2022-05-13 | 国际商业机器公司 | 从分布式网络中的有噪声的数值数据学习模式字典 |
WO2021103901A1 (zh) * | 2019-11-28 | 2021-06-03 | 支付宝(杭州)信息技术有限公司 | 基于多方安全计算的神经网络模型训练及预测方法、装置 |
WO2021114929A1 (zh) * | 2019-12-09 | 2021-06-17 | 支付宝(杭州)信息技术有限公司 | 基于区块链的模型联合训练方法及装置 |
CN111327674A (zh) * | 2020-01-20 | 2020-06-23 | 杭州加密矩阵科技有限公司 | 一种适用于区块链工作量证明的单边缘服务器缓存算法 |
CN111327674B (zh) * | 2020-01-20 | 2022-09-06 | 杭州加密矩阵科技有限公司 | 一种适用于区块链工作量证明的单边缘服务器缓存方法 |
US11604986B2 (en) | 2020-02-28 | 2023-03-14 | International Business Machines Corporation | Blockchain-enabled decentralized ecosystem for secure training of deep neural networks using trusted execution environments |
CN111428881A (zh) * | 2020-03-20 | 2020-07-17 | 深圳前海微众银行股份有限公司 | 识别模型的训练方法、装置、设备及可读存储介质 |
CN111428881B (zh) * | 2020-03-20 | 2021-12-07 | 深圳前海微众银行股份有限公司 | 识别模型的训练方法、装置、设备及可读存储介质 |
CN111860832A (zh) * | 2020-07-01 | 2020-10-30 | 广州大学 | 一种基于联邦学习的增强神经网络防御能力的方法 |
CN113988254B (zh) * | 2020-07-27 | 2023-07-14 | 腾讯科技(深圳)有限公司 | 用于多个环境的神经网络模型的确定方法及装置 |
CN113988254A (zh) * | 2020-07-27 | 2022-01-28 | 腾讯科技(深圳)有限公司 | 用于多个环境的神经网络模型的确定方法及装置 |
WO2022021421A1 (zh) * | 2020-07-31 | 2022-02-03 | Oppo广东移动通信有限公司 | 模型管理方法、***、装置、通信设备及存储介质 |
CN112183612A (zh) * | 2020-09-24 | 2021-01-05 | 重庆邮电大学 | 一种基于参数扩充的联合学习方法、装置及*** |
CN112183612B (zh) * | 2020-09-24 | 2023-01-24 | 重庆邮电大学 | 一种基于参数扩充的联合学习方法、装置及*** |
CN112383440A (zh) * | 2020-12-01 | 2021-02-19 | 苏州中德双智科创发展有限公司 | 云端模型准确性提高方法、装置、电子设备及存储介质 |
CN112860800A (zh) * | 2021-02-22 | 2021-05-28 | 深圳市星网储区块链有限公司 | 基于区块链和联邦学习的可信网络应用方法和装置 |
CN113094761A (zh) * | 2021-04-25 | 2021-07-09 | 中山大学 | 一种联邦学习数据防篡改监测方法及相关装置 |
CN113657609A (zh) * | 2021-08-18 | 2021-11-16 | 深圳技术大学 | 基于区块链与联邦迁移学习的数据管理方法及*** |
CN113657609B (zh) * | 2021-08-18 | 2024-05-03 | 深圳技术大学 | 基于区块链与联邦迁移学习的数据管理方法及*** |
CN113792872A (zh) * | 2021-08-24 | 2021-12-14 | 浙江数秦科技有限公司 | 基于区块链的神经网络训练容器和托管训练方法 |
CN113792872B (zh) * | 2021-08-24 | 2024-05-28 | 浙江数秦科技有限公司 | 基于区块链的神经网络训练容器和托管训练方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109698822A (zh) | 基于公有区块链和加密神经网络的联合学习方法及*** | |
KR102373685B1 (ko) | 블록체인 iot장치를 위한 동작 시스템 | |
CN109412794B (zh) | 一种适应电力业务的量子密钥自动充注方法及*** | |
CN103546576B (zh) | 一种嵌入式设备远程自动升级方法和*** | |
CN110061845A (zh) | 区块链数据加密方法、装置、计算机设备及存储介质 | |
CN113033828B (zh) | 模型训练方法、使用方法、***、可信节点及设备 | |
CN105071927B (zh) | 一种移动设备数据本地存储方法 | |
KR102614209B1 (ko) | 디바이스들 사이에 안전하게 통신하기 위한 방법 및 디바이스 | |
CN113515760B (zh) | 横向联邦学习方法、装置、计算机设备和存储介质 | |
CN106059757A (zh) | 视音频监控设备及其数据加解密方法、视音频展示设备 | |
CN105025012A (zh) | 面向云存储服务平台的访问控制***及其访问控制方法 | |
CN110061840A (zh) | 数据加密方法、装置、计算机设备及存储介质 | |
CN111582508A (zh) | 一种基于联邦学习框架的策略制定方法、装置和电子设备 | |
CN107707562B (zh) | 一种非对称动态令牌加、解密算法的方法、装置 | |
CN106060073B (zh) | 信道密钥协商方法 | |
WO2019242645A1 (zh) | 密钥生成装置、加密解密装置、密钥生成和分发***以及信息安全传递*** | |
CN104580246A (zh) | WiFi环境下动态智能安全密钥产生和管控***及方法 | |
CN115603934A (zh) | 基于区块链的多用户可搜索加密方法和装置 | |
CN115037438B (zh) | 基于神经网络预定义时间同步控制的安全通信方法及*** | |
CN112749812A (zh) | 一种联合学习***、训练结果聚合的方法及设备 | |
CN112133386A (zh) | 一种基于区块链的信息处理方法、装置、设备及介质 | |
CN105306200B (zh) | 网络账号密码的加密方法和装置 | |
CN104618380A (zh) | 一种适用于物联网的密钥更新方法 | |
CN103118351B (zh) | 充值卡数据的生成方法和装置 | |
KR20230148200A (ko) | 멀티소스 데이터의 데이터 처리 방법, 장치 및 전자 기기, 저장 매체 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190430 |