CN110991622A - 基于区块链网络的机器学习模型处理方法及节点 - Google Patents
基于区块链网络的机器学习模型处理方法及节点 Download PDFInfo
- Publication number
- CN110991622A CN110991622A CN201911295577.9A CN201911295577A CN110991622A CN 110991622 A CN110991622 A CN 110991622A CN 201911295577 A CN201911295577 A CN 201911295577A CN 110991622 A CN110991622 A CN 110991622A
- Authority
- CN
- China
- Prior art keywords
- machine learning
- learning model
- node
- participant
- blockchain network
- 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.)
- Granted
Links
- 238000010801 machine learning Methods 0.000 title claims abstract description 325
- 238000003672 processing method Methods 0.000 title claims abstract description 33
- 238000012549 training Methods 0.000 claims abstract description 54
- 238000000034 method Methods 0.000 claims abstract description 29
- 238000003860 storage Methods 0.000 claims abstract description 29
- 238000013475 authorization Methods 0.000 claims description 80
- 230000015654 memory Effects 0.000 claims description 31
- 238000012795 verification Methods 0.000 claims description 22
- 230000004044 response Effects 0.000 claims description 10
- 238000009826 distribution Methods 0.000 claims description 7
- 230000008901 benefit Effects 0.000 claims description 4
- 238000012545 processing Methods 0.000 abstract description 14
- 230000007246 mechanism Effects 0.000 description 19
- 230000006870 function Effects 0.000 description 12
- 230000008569 process Effects 0.000 description 12
- 238000004891 communication Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 238000007726 management method Methods 0.000 description 7
- 238000013528 artificial neural network Methods 0.000 description 4
- 238000013473 artificial intelligence Methods 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000003062 neural network model Methods 0.000 description 3
- 238000013524 data verification Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000012417 linear regression Methods 0.000 description 1
- 238000007477 logistic regression Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000013011 mating Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 238000007637 random forest analysis Methods 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- 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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2365—Ensuring data consistency and integrity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- Databases & Information Systems (AREA)
- Evolutionary Computation (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computer Security & Cryptography (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供了一种基于区块链网络的机器学习模型处理方法、节点及存储介质;方法包括:将需求方节点发送的加密的机器学习模型存储至区块链网络;生成与被授权的各参与方节点一一对应的密钥对,并将密钥对发送至对应的参与方节点;响应于参与方节点发送的查询请求,将加密的机器学习模型发送至参与方节点,以使参与方节点根据持有的密钥对中的私钥,对加密的机器学习模型进行解密,并根据持有的密钥对中的公钥对更新后的机器学习模型进行加密;将参与方节点发送的加密的机器学习模型存储至区块链网络。通过本发明,能够在多方参与的机器学习模型训练场景中,提升训练数据和机器学习模型自身的安全性,同时提升机器学习模型的处理效率。
Description
本申请是申请号为201910776690.2,申请日为2019年08月22日,名称为:基于区块链网络的机器学习模型处理方法及节点的分案申请。
技术领域
本发明涉及人工智能和区块链技术,尤其涉及一种基于区块链网络的机器学习模型处理方法、区块链网络的节点及存储介质。
背景技术
人工智能(AI,Artificial Intelligence)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。机器学习(ML,Machine Learning)是一门多领域交叉学科,是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及各个领域。
训练数据是决定机器学习模型能否有效使用的关键资产,对于不同的公司、企业或政府机构部门来说,一般都拥有自己的独特训练数据,根据来源的不同,这些训练数据往往分布在独立的“数据孤岛”中。在相关技术提供的方案中,通常是建立一个数据集市或大数据平台,在其上共享和交易训练数据,从而可根据不同来源的大量训练数据对机器学习模型进行更新,机器学习模型自身也处于对外公开状态。
但是,机器学习模型的应用场景日趋复杂化,例如可能会有多个业务主体参与训练过程,相关技术提供的训练方案无法满足安全性和效率的需求。
发明内容
本发明实施例提供一种基于区块链网络的机器学习模型处理方法、节点及存储介质,能够保证在多方参与的机器学习模型训练场景中的安全性和效率。
本发明实施例的技术方案是这样实现的:
本发明实施例提供一种基于区块链网络的机器学习模型处理方法,包括:
获取需求方节点发送的通过公钥加密的机器学习模型,将加密的所述机器学习模型存储至区块链网络;
生成与被授权的各参与方节点一一对应的密钥对,并将所述密钥对发送至对应的所述参与方节点;其中,所述密钥对包括所述公钥,且不同所述参与方节点对应的密钥对中的私钥不同;
响应于参与方节点发送的对所述机器学习模型的查询请求,将加密的所述机器学习模型发送至所述参与方节点,以使
所述参与方节点根据持有的密钥对中的私钥,对加密的所述机器学习模型进行解密,并根据持有的密钥对中的公钥对更新后的所述机器学习模型进行加密;其中,所述机器学习模型通过所述参与方节点自身的训练数据进行更新;
获取所述参与方节点发送的加密的所述机器学习模型,将加密的所述机器学习模型存储至所述区块链网络。
在上述方案中,所述将加密的所述机器学习模型存储至区块链网络,包括:
所述区块链网络包括用于统一存储不同的机器学习模型的区块链,将加密的所述机器学习模型存储到所述区块链网络的所述区块链中;或者,
所述区块链网络包括多个与不同类型的机器学习模型对应的通道,将加密的所述机器学习模型存储到对应类型通道的区块链中。
本发明实施例提供一种区块链网络的节点,包括:
模型获取模块,用于获取需求方节点发送的通过公钥加密的机器学习模型,将加密的所述机器学习模型存储至区块链网络;
密钥发送模块,用于生成与被授权的各参与方节点一一对应的密钥对,并将所述密钥对发送至对应的所述参与方节点;其中,所述密钥对包括所述公钥,且不同所述参与方节点对应的密钥对中的私钥不同;
模型交易模块,用于响应于参与方节点发送的对所述机器学习模型的查询请求,将加密的所述机器学习模型发送至所述参与方节点,以使
所述参与方节点根据持有的密钥对中的私钥,对加密的所述机器学习模型进行解密,并根据持有的密钥对中的公钥对更新后的所述机器学习模型进行加密;其中,所述机器学习模型通过所述参与方节点自身的训练数据进行更新;
更新存储模块,用于获取所述参与方节点发送的加密的所述机器学习模型,将加密的所述机器学习模型存储至所述区块链网络。
在上述方案中,所述模型获取模块,还用于:
所述区块链网络包括用于统一存储不同的机器学习模型的区块链,将加密的所述机器学习模型存储到所述区块链网络的所述区块链中;或者,
所述区块链网络包括多个与不同类型的机器学习模型对应的通道,将加密的所述机器学习模型存储到对应类型通道的区块链中。
本发明实施例提供一种区块链网络的节点,包括:
存储器,用于存储可执行指令;
处理器,用于执行所述存储器中存储的可执行指令时,实现本发明实施例提供的机器学习模型处理方法。
本发明实施例提供一种存储介质,存储有可执行指令,用于引起处理器执行时,实现本发明实施例提供的机器学习模型处理方法。
本发明实施例具有以下有益效果:
本发明实施例将区块链网络作为机器学习模型的共享平台,由需求方节点向区块链网络提交机器学习模型,由参与方节点向区块链网络查询机器学习模型,在本地对机器学习模型进行更新,并向区块链网络提交更新后的机器学习模型,能够在多方参与的机器学习模型训练场景中,提升机器学习模型的处理效率,并且通过存储加密的机器学习模型,提升了训练数据和机器学习模型本身的安全性。
附图说明
图1是本发明实施例提供的基于区块链网络的机器学习模型处理系统的一个可选的架构示意图;
图2是本发明实施例提供的区块链网络的一个可选的功能架构示意图;
图3是本发明实施例提供的区块链网络的节点的一个可选的结构示意图;
图4是本发明实施例提供的基于区块链网络的机器学习模型处理方法的一个可选的流程示意图;
图5是本发明实施例提供的基于区块链网络的机器学习模型处理方法的另一个可选的流程示意图;
图6是本发明实施例提供的基于区块链网络的机器学习模型处理方法的另一个可选的流程示意图;
图7是本发明实施例提供的基于区块链网络的机器学习模型处理方法的另一个可选的流程示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,所描述的实施例不应视为对本发明的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
在以下的描述中,所涉及的术语“第一\第二\第三”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本发明实施例能够以除了在这里图示或描述的以外的顺序实施。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本发明实施例的目的,不是旨在限制本发明。
对本发明实施例进行进一步详细说明之前,对本发明实施例中涉及的名词和术语进行说明,本发明实施例中涉及的名词和术语适用于如下的解释。
1)交易(Transaction),等同于计算机术语“事务”,交易包括了需要提交到区块链网络执行的操作,并非单指商业语境中的交易,鉴于在区块链技术中约定俗成地使用了“交易”这一术语,本发明实施例遵循了这一习惯。
例如,部署(Deploy)交易用于向区块链网络中的节点安装指定的智能合约并准备好被调用;调用(Invoke)交易用于通过调用智能合约在区块链中追加交易的记录,并对区块链的状态数据库进行操作,包括更新操作(包括增加、删除和修改状态数据库中的键值对)和查询操作(即查询状态数据库中的键值对)。
2)区块链(Blockchain),是由区块(Block)形成的加密的、链式的交易的存储结构。
例如,每个区块的头部既可以包括区块中所有交易的哈希值,同时也包含前一个区块中所有交易的哈希值,从而基于哈希值实现区块中交易的防篡改和防伪造;新产生的交易被填充到区块并经过区块链网络中节点的共识后,会被追加到区块链的尾部从而形成链式的增长。
3)区块链网络(Blockchain Network),通过共识的方式将新区块纳入区块链的一系列的节点的集合。
4)账本(Ledger),是区块链(也称为账本数据)和与区块链同步的状态数据库的统称。
其中,区块链是以文件系统中的文件的形式来记录交易;状态数据库是以不同类型的键(Key)值(Value)对的形式来记录区块链中的交易,用于支持对区块链中交易的快速查询。
5)智能合约(Smart Contracts),也称为链码(Chaincode)或应用代码,部署在区块链网络的节点中的程序,节点执行接收的交易中所调用的智能合约,来对账本数据库的键值对数据进行更新或查询的操作。
6)共识(Consensus),是区块链网络中的一个过程,用于在涉及的多个节点之间对区块中的交易达成一致,达成一致的区块将被追加到区块链的尾部,实现共识的机制包括工作量证明(PoW,Proof of Work)、权益证明(PoS,Proof of Stake)、股份授权证明(DPoS,Delegated Proof-of-Stake)、消逝时间量证明(PoET,Proof of Elapsed Time)等。
7)机器学习模型,指根据经验数据组织已有的知识结构,从而不断改善自身性能的模型,例如线性回归模型、随机森林模型及神经网络模型等。机器学习模型的训练,需要对训练数据进行处理,并在一定的约束条件下,学习出最优的满足约束条件的数学表示。本文涉及的机器学习模型主要包括模型的结构(例如神经网络结构)以及模型的参数(例如神经网络各个层之间的连接权重参数,逻辑回归的各个特征项的权重参数)。
下面说明本发明实施例提供的区块链网络的示例性应用,参见图1,图1是本发明实施例提供的基于区块链网络的机器学习模型处理系统的架构示意图,包括区块链网络200(示例性示出了包括节点210-1至节点210-3)、认证中心300、业务主体400(示例性示出归属于业务主体400的需求方节点410及其图形界面420)和业务主体500(示例性示出归属于业务主体500的参与方节点510及其图形界面520),其中,需求方节点410和参与方节点510均为区块链网络200内的客户端节点,图1所示仅是为了便于说明本发明实施例的内容,而并不是指需求方节点410和参与方节点510独立于区块链网络200存在。另外,认证中心可独立于区块链网络,也可作为区块链网络中的认证节点存在。下面分别进行说明。
区块链网络200的类型是灵活多样的,例如可以为公有链、私有链或联盟链中的任意一种。以公有链为例,任何业务主体的电子设备例如用户终端和服务器,都可以在不需要授权的情况下接入区块链网络200;以联盟链为例,业务主体在获得授权后其下辖的电子设备(例如终端/服务器)可以接入区块链网络200,并成为区块链网络200中的客户端节点。
需要指出地,客户端节点可以只提供支持业务主体发起交易(例如,用于上链存储数据或查询链上数据)功能,而对于区块链网络200的常规(原生)节点210的功能,例如下文所述的排序功能、共识服务和账本功能等,客户端节点可以缺省或者有选择性(例如,取决于业务主体的具体业务需求)地实现。从而,可以将业务主体的数据和业务处理逻辑最大程度迁移到区块链网络200中,通过区块链网络200实现数据和业务处理过程的可信和可追溯。
区块链网络200接收来自不同业务主体(例如图1中示出的业务主体400和业务主体500)的客户端节点(例如,图1中示出的归属于业务主体400的需求方节点410、以及归属于业务主体500的参与方节点510)提交的交易,执行交易以更新账本或者查询账本,并在客户端节点的用户界面(例如,需求方节点410的图形界面420、参与方节点510的图形界面520)显示执行交易的各种中间结果或最终结果。
下文以多个业务主体接入区块链网络以实现机器学习模型的处理为例,说明区块链网络的示例性应用。
参见图1,业务主体400通过需求方节点410接入区块链网络200,业务主体500通过参与方节点510接入区块链网络200。业务主体400的业务人员在需求方节点410的图形界面420中输入机器学习模型,需求方节点410生成对应的提交操作的交易,在交易中指定了实现提交操作需要调用的智能合约、以及向智能合约传递的参数,交易还携带了需求方节点410签署的数字签名(例如,使用认证中心300颁发的数字证书中的私钥,对交易的摘要进行加密得到),并将交易广播到区块链网络200。
区块链网络200中的节点210中接收到交易时,对交易携带的数字签名进行验证,数字签名验证成功后,根据交易中携带的需求方节点410的身份,确认需求方节点410是否是具有交易权限,数字签名和权限验证中的任何一个验证判断失败都将导致交易失败。验证成功后签署节点210自己的数字签名(例如,使用节点210-1的数字证书中的私钥对交易的摘要进行加密得到),并继续在区块链网络200中广播。
区块链网络200中具有排序功能的节点210接收到验证成功的交易后,将交易填充到新的区块中,并广播到区块链网络200中提供共识服务的节点。
区块链网络200中的提供共识服务的节点210对新区块进行共识过程以达成一致,提供账本功能的节点210将新区块追加到区块链的尾部,并执行新区块中的交易:即对于提交机器学习模型的交易,在账本数据库中添加机器学习模型对应的键值对。
同理,业务主体500的业务人员可以在参与方节点510的图形界面520中输入机器学习模型/机器学习模型查询请求,参与方节点510根据机器学习模型/机器学习模型查询请求生成对应更新操作/查询操作的交易,并将交易广播到区块链网络200。
经区块链网络200中的节点210对该交易进行广播、排序及共识后,区块链200中的提供账本功能的节点210将该交易对应的新区块追加到区块链的尾部,并执行新区块中的交易:对于查询机器学习模型的交易,从账本数据库中查询机器学习模型对应的键值对,并返回查询结果;对于提交更新后的机器学习模型的交易,更新账本数据库中机器学习模型对应的键值对。值得说明的是,参与方节点510提交的更新后的机器学习模型,可以是参与方节点利用自身的训练数据,对查询的机器学习模型进行更新得到的。
可以理解地,业务主体在区块链网络200中能够查询/更新的数据,可以通过约束业务主体能够发起的交易的权限来实现,例如,当业务主体400具有发起提交机器学习模型的交易的权限时,业务主体400的业务人员可以在需求方节点410的图形界面420中输入机器学习模型,并由需求方节点410生成用于提交机器学习模型的交易广播到区块链网络200中,以在区块链网络200的账本中添加机器学习模型。
当业务主体500具有发起更新/查询机器学习模型的交易的权限时,业务主体500的业务人员可以在参与方节点510的图形界面520中输入机器学习模型的更新/查询请求,并由参与方节点510生成用于更新/查询机器学习模型的交易广播到区块链网络200中,以在区块链网络200的账本中更新机器学习模型,或从区块链网络200中获取相应的机器学习模型。
下面说明本发明实施例提供的区块链网络的示例性的功能架构,参见图2,图2是本发明实施例提供的区块链网络200的功能架构示意图,包括应用层201、共识层202、网络层203、数据层204和资源层205,下面分别进行说明。
资源层205封装了实现区块链网络200中的各个节点210的计算资源、存储资源和通信资源,例如计算机、服务器/集群和云中的计算资源、存储资源和通信资源,进行抽象并向数据层204提供统一的接口以屏蔽实现资源层205的底层硬件的差异性。
计算资源包括各种形式的处理器,例如中央处理器(CPU)、应用专用集成电路(ASIC,Application Specific Integrated Circuit)、专用集成电路和现场可编程门阵列(FPGA,Field-Programmable Gate Array)的各种形式的处理器。
存储资源包括各种易失性存储器和非易失性存储器等各种类型的存储介质。其中,非易失性存储器可以是只读存储器(ROM,Read Only Memory)、可编程只读存储器(PROM,Programmable Read-Only Memory)。易失性存储器可以是随机存取存储器(RAM,Random Access Memory),其用作外部高速缓存。
通信资源包括用于供区块链网络的节点210之间、区块链网络200与业务主体之间通信的各种链路。
数据层204封装了实现账本的各种数据结构,包括以文件系统中的文件实现的区块链,键值型的状态数据库和存在性证明(例如区块中交易的哈希树)。
网络层203封装了点对点(P2P,Point to Point)网络协议、数据传播机制和数据验证机制、接入认证机制和业务主体身份管理的功能。
其中,P2P网络协议实现区块链网络200中节点210之间的通信,数据传播机制保证了交易在区块链网络200中的传播,数据验证机制用于基于加密学方法(例如数字证书、数字签名、公/私钥对)实现节点210之间传输数据的可靠性;接入认证机制用于根据实际的业务场景对加入区块链网络200的业务主体的身份进行认证,并在认证通过时赋予业务主体接入区块链网络200的权限;业务主体身份管理用于存储允许接入区块链网络200的业务主体的身份、以及权限(例如能够发起的交易的类型)。
共识层202封装了区块链网络200中的节点210对区块达成一致性的机制(即共识机制)、交易管理和账本管理的功能。
共识机制包括POS、POW和DPOS等共识算法,支持共识算法的可插拔。
交易管理用于验证节点210接收到的交易中携带的数字签名,验证业务主体的身份信息,并根据身份信息判断确认其是否具有权限进行交易(从业务主体身份管理读取相关信息);对于获得接入区块链网络200的授权的业务主体而言,均拥有认证中心颁发的数字证书,业务主体利用自己的数字证书中的私钥对提交的交易进行签名,从而声明自己的合法身份。
账本管理:用于维护区块链和账本数据库。对于取得共识的区块,追加到区块链的尾部;执行取得共识的区块中的交易,当交易包括更新操作时更新状态数据库中的键值对,当交易包括查询操作时查询账本数据库中的键值对并向业务主体返回查询结果。支持对账本数据库的多种维度的查询操作,包括:根据区块序列号(例如交易的哈希值)查询区块;根据区块哈希值查询区块;根据交易序列号查询区块;根据交易序列号查询交易;根据业务主体的账号(序列号)查询业务主体的账号数据;根据通道名称查询通道中的区块链。
应用层201封装了区块链网络能够实现的各种业务,包括交易的溯源、存证和验证等。
下面说明实现本发明实施例的区块链网络的节点的示例性结构,可以理解地,区块链网络200中的任一类型的节点的硬件结构可以根据下文说明的硬件结构而实施。
参见图3,图3是本发明实施例提供区块链网络200中的节点210的结构示意图,图3所示的节点210包括:至少一个处理器2110、存储器2140和至少一个网络接口2120。节点210中的各个组件通过总线系统2130耦合在一起。可理解,总线系统2130用于实现这些组件之间的连接通信。总线系统2130除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图3中将各种总线都标为总线系统2130。
处理器2110可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(DSP,Digital Signal Processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
存储器2140可以是可移除的,不可移除的或其组合。示例性的硬件设备包括固态存储器,硬盘驱动器,光盘驱动器等。存储器2140可选地包括在物理位置上远离处理器2110的一个或多个存储设备。
存储器2140包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。非易失性存储器可以是只读存储器(ROM,Read Only Me mory),易失性存储器可以是随机存取存储器(RAM,Random Access Memor y)。本发明实施例描述的存储器2140旨在包括任意适合类型的存储器。
在一些实施例中,存储器2140能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,下面示例性说明。
操作系统2141,包括用于处理各种基本系统服务和执行硬件相关任务的系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务;
网络通信模块2142,用于经由一个或多个(有线或无线)网络接口2120到达其他计算设备,示例性的网络接口2120包括:蓝牙、无线相容性认证(W iFi)、和通用串行总线(USB,Universal Serial Bus)等;
在一些实施例中,本发明实施例提供的区块链网络的节点可以采用软件方式实现,图3示出了存储在存储器2140中的软件模块2143,其可以是程序和插件等形式的软件,包括以下模块:模型获取模块21431、模型交易模块21432、共识模块21433及更新存储模块21434,这些模块是逻辑上的,因此根据所实现的功能可以进行任意的组合或进一步拆分。将在下文中说明各个模块的功能。
下文将结合本发明实施例提供的区块链网络的示例性应用和实施,说明本发明实施例提供的基于区块链网络的机器学习模型处理方法。
参见图4,图4是本发明实施例提供的基于区块链网络的机器学习模型处理方法的一个可选的流程示意图,将结合图4示出的步骤进行说明。
在步骤401中,区块链网络获取需求方节点发送的机器学习模型,将所述机器学习模型进行存储。
这里,需求方节点以客户端节点的形式存在于区块链网络内部。需求方节点归属于业务主体,对于业务主体来说,首先需要接入区块链网络,根据区块链网络的类型不同,业务主体的接入情况也不同,例如在区块链网络为公有链的情况下,业务主体可不经验证,直接接入区块链网络;在区块链网络为联盟链的情况,可设置接入条件,只有在业务主体满足接入条件时,才允许业务主体接入,成为区块链网络中的客户端节点,例如,可设置接入条件为注册时间3年以上的业务主体。
业务主体接入区块链网络所形成的节点及区块链网络的其他节点在初始化时,向认证中心进行请求,从而配置相同认证中心颁发的根证书以及数字证书,如此,区块链网络中的节点在向其他节点发送信息时,在信息中附上数字证书,数字证书中包括利用身份信息签署的数字签名,作为接收方的节点在接收到信息后,根据自身持有的根证书中的公钥对数字签名进行解密,从而验证数字证书中的公钥是否为数字证书所声明的用户持有,保障信息的可信度。
需求方节点发起提交机器学习模型的交易,交易携带有需求方节点的数字证书以及需求方节点对于交易的数字签名(与上述利用身份信息签署的数字签名不同),区块链网络中的其他节点中接收到交易时,对交易携带的数字证书及数字签名进行验证,数字证书及数字签名验证成功后,验证需求方节点的身份,确认需求方节点是否是具有交易权限,数字证书、数字签名和权限验证中的任何一个验证判断失败都将导致交易失败。验证成功后,该节点签署自己的数字签名,在交易中携带数字签名及自身的数字证书,继续在区块链网络中广播交易。区块链网络中具有排序功能的节点接收到验证成功的交易后,将交易填充到新的区块中,并广播到区块链网络中提供共识服务的节点。区块链网络中的提供共识服务的节点对新区块进行共识过程以达成一致,提供账本功能的节点将新区块追加到区块链的尾部,并执行新区块中的交易:即对于提交机器学习模型的交易,在账本数据库中添加机器学习模型对应的键值对。值得说明的是,本发明实施例中的账本可以包括区块链本身以及与区块链同步的状态数据库,并且本发明实施例对涉及到的共识机制不做限定。
在一些实施例中,在任意步骤之间,所述机器学习模型处理方法还包括:所述区块链网络获取所述需求方节点发送的需求信息,所述需求信息与所述机器学习模型对应;将所述需求信息进行存储。
除了机器学习模型本身之外,需求方节点还可向区块链网络发送机器学习模型对应的需求信息,该需求信息即为机器学习模型的训练要求。例如,需求信息指示归属于某类特定业务主体(如互联网企业)的节点对机器学习模型进行更新,或者,需求信息指示拥有某类特定训练数据(如通讯软件聊天数据)的节点对机器学习模型进行更新。同样地,在通过广播、验证及共识等操作后,区块链网络存储共识成功的需求信息,其中,可将需求信息与对应的机器学习模型存储于一个区块,便于查看。完成存储后,操作参与方节点的业务主体可通过获取需求信息,判断参与方节点是否符合需求,从而判断是否参与对机器学习模型的更新。通过上述的存储需求信息的方式,提升了更新机器学习模型的有效性,减少不符合需求的参与方节点对机器学习模型进行更新的几率。
在一些实施例中,还可以通过这样的方式实现上述的将所述机器学习模型进行存储:所述区块链网络包括用于统一存储不同的机器学习模型的区块链,将所述机器学习模型存储到所述区块链网络的所述区块链中;或者,所述区块链网络包括多个与不同类型的机器学习模型对应的通道,将所述机器学习模型存储到对应类型通道的区块链中。
本发明实施例提供了两种存储机制,在一种存储机制中,区块链网络包括用于统一存储不同的机器学习模型的区块链,在获取到需求方节点发送的机器学习模型时,将该机器学习模型存储至该区块链。在另一种存储机制中,在区块链网络中设置多个通道,每个通道对应一种类型的机器学习模型,并且,每个通道内包括与机器学习模型相关,即提交模型及参与训练的节点。区块链网络在获取到需求方节点发送的机器学习模型后,经过广播、验证及共识,在共识成功时,将该机器学习模型存储至区块链网络中的与该机器学习模型对应类型通道的区块链中,以使该通道内的参与方节点对该机器学习模型进行查询及更新。值得说明的是,参与方节点和需求方节点可以是多个通道共有的成员节点,取决于节点参与哪些机器学习模型的训练,即一个参与方节点可能同时位于通道A和通道B。一个参与方节点退出一个机器学习模型的训练,即退出一个通道时,仍然可以参与其他通道的机器学习模型的训练,并将更新后的机器学习模型发送至区块链网络。通过上述方式,提升了存储机器学习模型的灵活性,可根据实际应用场景确定区块链网络的存储机制。
在步骤402中,所述区块链网络响应于参与方节点发送的对所述机器学习模型的查询请求,将所述机器学习模型发送至所述参与方节点。
这里,参与方节点同样是区块链网络内部的客户端节点,参与方节点可向区块链网络发送对机器学习模型的查询请求,区块链网络对该查询请求进行广播、验证及共识等操作。当区块链网络对查询请求共识成功时,区块链网络根据该查询请求,将存储于区块链网络的机器学习模型发送至参与方节点本地。
在步骤403中,所述参与方节点根据自身的训练数据,对所述机器学习模型进行更新。
这里,参与方节点对机器学习模型执行的更新操作与区块链网络无关,从而实现对自身训练数据的保护。根据机器学习模型的类型不同,参与方节点对其进行更新的过程也不同,例如,当机器学习模型为神经网络模型时,参与方节点可根据训练数据对神经网络模型中的神经网络结构进行优化,同时对神经网络结构中各层之间的连接权重参数进行优化,此处不再赘述。
在步骤404中,所述区块链网络获取所述参与方节点发送的更新后的所述机器学习模型,对更新后的所述机器学习模型进行共识。
在参与方节点完成对机器学习模型的更新后,参与方节点可向区块链网络发起提交更新后的机器学习模型的交易,区块链网络同样对该交易进行广播、验证及共识等操作。
在步骤405中,当共识成功时,所述区块链网络将更新后的所述机器学习模型进行存储。
当区块链网络对该交易共识成功时,区块链网络根据该交易,将更新后的机器学习模型存储至区块链网络中,以使区块链网络中的节点能够查看更新后的机器学习模型。
在一些实施例中,可以通过这样的方式实现上述的对更新后的所述机器学习模型进行共识:所述区块链网络将更新后的所述机器学习模型在所述区块链网络中进行广播,以使所述区块链网络中的节点将更新后的所述机器学习模型填充至更新区块,并对所述更新区块进行一致性验证。
参与方节点将更新后的机器学习模型广播至区块链网络中的原生节点,同时携带数字签名及数字证书。区块链网络中的原生节点在接收到更新后的机器学习模型、数字签名及数字证书后,对数字签名及数字证书进行验证,并在验证成功后,签署自身的数字签名及数字证书,并继续将更新后的机器学习模型在区块链网络中进行广播。
区块链网络中具有排序功能的节点获取更新后的机器学习模型,在确认对应的数字签名及数字证书已验证成功的基础上,将更新后的机器学习模型填充到新的区块中,为了便于区分,将填充得到的区块命名为更新区块,并将更新区块广播到区块链网络中的共识服务节点。区块链网络中的共识服务节点对更新区块进行一致性验证,以达成一致。
可以通过这样的方式实现上述的将更新后的所述机器学习模型,存储至所述区块链网络:将所述更新区块追加至区块链的尾部。
当一致性验证成功时,区块链网络中提供账本功能的节点将更新区块追加到区块链的尾部,该区块链存在于区块链网络中。通过上述方式实现了更新后的机器学习模型的上链存储。
通过发明实施例对于图4的上述示例性实施可知,本发明实施例将区块链网络作为机器学习模型的共享平台,同时将根据训练数据更新机器学习模型的过程,交由参与方节点在节点内部进行,从而提升了参与方节点持有的训练数据的安全性,有效地避免了训练数据泄露,同时提升了对机器学习模型的处理效率。
在一些实施例中,参见图5,图5是本发明实施例提供的基于区块链网络的机器学习模型处理方法的另一个可选的流程示意图,基于图4,在步骤402之前,还可以在步骤501中,所述区块链网络确定被授权的参与方节点。
区块链网络可以根据需求方节点的指示,对参与方节点进行授权,并在本步骤中确定被授权的参与方节点,当然也根据其他方式确定,本发明实施例对此不做限定。
在一些实施例中,在步骤501之前,还包括:所述区块链网络获取所述需求方节点发送的需要授权的参与方节点的信息,所述参与方节点的信息包括身份信息、接入所述区块链网络的有效期及能够训练的机器学习模型;当通过所述需求方节点部署到所述区块链网络的智能合约,确定所述参与方节点的信息满足授权条件时,将所述需要授权的参与方节点的信息进行存储。
在本发明实施例中,区块链网络可根据需求方节点的指示对参与方节点进行授权。具体地,区块链网络获取需求方节点发送的需要授权的参与方节点的信息,该参与方节点的信息包括身份信息、接入所述区块链网络的有效期及能够训练的机器学习模型,身份信息如参与方节点归属的业务主体的单位名称及单位性质等,有效期是指参与方节点在区块链网络中的未来存在时长,能够训练的机器学习模型可通过机器学习模型的标识,如名称或序列号等,在参与方节点的信息中进行表示。其中,在参与方节点的信息未配置有效期时,默认参与方节点未来一直存在于区块链网络中;在未配置能够训练的机器学习模型时,默认参与方节点可对所有种类的机器学习模型进行训练。值得说明的是,上述的节点信息仅为示例,在实际应用场景中,节点信息可包括更多和更少的内容。
当区块链网络通过需求方节点部署到区块链网络的节点的智能合约,确定参与方节点的信息满足授权条件时,将需要授权的参与方节点的信息填充至新区块,并在新区块共识成功时,将新区块追加至区块链中,在存在状态数据库的情况下,同时更新状态数据库,通过上述方式实现了参与方节点的信息的上链,提升了参与方节点的信息的可查性和可追溯性。
在一些实施例中,在步骤402之前,还包括:所述区块链网络响应于参与方节点发送的对所述机器学习模型的查询请求之前,验证所述查询请求的数字签名;当验证通过时,在所述区块链网络中已经授权的参与方节点的信息中,查询发送所述查询请求的参与方节点的信息;当查询到发送所述查询请求的参与方节点的信息时,确定响应所述查询请求。
参与方节点向区块链网络发起包括查询请求的交易,该交易携带数字签名,该数字签名是对该交易的摘要进行加密后得到的。区块链网络的节点在获取到包括查询请求的交易时,验证对应的数字签名,具体由节点对该交易本身进行处理得到第一摘要,同时对交易携带的数字签名进行解密得到第二摘要,当第一摘要与第二摘要相同时,确定数字签名验证通过。当验证通过时,区块链网络在存储的已经授权的参与方节点的信息中,查询发送查询请求的参与方节点的信息,当查询到发送查询请求的参与方节点的信息时,确定响应查询请求。通过上述的查询参与方节点的信息的方式,前置判断是否响应查询请求,节省了区块链网络的处理资源。
在一些实施例中,所述当通过所述需求方节点部署到所述区块链网络的智能合约,确定所述参与方节点的信息满足授权条件时,将所述需要授权的参与方节点的信息进行存储之前,还包括:所述区块链网络获取所述需求方节点发送的包括授权条件的智能合约,所述授权条件与所述机器学习模型对应;将所述授权条件进行部署。
对于判断是否对参与方节点的信息进行授权的授权条件,可预先部署至区块链网络中。具体地,需求方节点向区块链网络发送部署交易,该部署交易用于将包括授权条件的智能合约部署至区块链网络中的节点,区块链网络对该部署交易进行广播、验证及共识等操作,在共识成功时,区块链网络根据该部署交易,将该授权条件(智能合约)部署至区块链网络中的节点。如此,在后续需求方节点授权参与方节点时,需求方节点可发起针对参与方节点的信息的调用交易,并在交易中调用已部署的该智能合约,以使区块链网络对符合授权条件的参与方节点的信息进行上链操作。
在步骤502中,所述区块链网络生成与被授权的各所述参与方节点一一对应的授权码,并将所述授权码发送至对应的所述参与方节点,所述授权码用于所述参与方节点查询所述机器学习模型。
对于每个被授权的参与方节点,区块链网络生成一个唯一的授权码,并将该授权码发送至该参与方节点,保证不同参与方节点拥有的授权码不一致,从而便于识别身份,其中,授权码用于作为参与方节点在区块链网络中查询机器学习模型的凭证。值得说明的是,步骤501至步骤502在图5中的执行顺序仅为示例,根据实际应用场景的不同,可以更多的执行顺序进行执行,例如步骤501至步骤502可以在步骤401之前执行。
在图5中,图4的步骤402可以通过步骤503至步骤505实现,将结合各步骤进行说明。
在步骤503中,所述区块链网络获取所述参与方节点发送的查询请求及授权码。
对于获取到授权码的参与方节点,向区块链网络发送对机器学习模型的查询请求,携带数字签名及数字证书,同时还发送授权码。区块链网络对查询请求对应的数字证书及数字签名进行验证,并在数字证书及数字签名均验证成功的基础上,对该授权码进行验证。
在步骤504中,所述区块链网络根据所述授权码进行权限认证。
区块链网络根据授权码,判断参与方节点是否具有查询机器学习模型的权限。
在一些实施例中,可以通过这样的方式实现上述的所述区块链网络根据所述授权码进行权限认证:所述区块链网络根据所述参与方节点对所述机器学习模型的历史更新次数、模型提升度、贡献数据量及历史查询次数,生成所述授权码的授权参数;当所述授权参数满足设定的参数条件时,确定权限认证成功。
在本发明实施例中,对于该授权码对应的参与方节点,区块链网络可获取该参与方节点对机器学习模型的历史更新次数、模型提升度、贡献数据量及历史查询次数,其中,模型提升度是指参与方节点对机器学习模型进行更新后,根据更新后的机器学习模型进行数据处理的准确率提升度,主要用于衡量参与方节点的训练数据对于机器学习模型的有效性,为了便于量化,模型提升度可体现于在应用更新后的机器学习模型后,对具体业务的提升度,例如对投放成功率或点击率等的提升度;贡献数据量可指参与方节点对机器学习模型进行更新时所用训练数据的总数量,也可指参与方节点所用训练数据的总数量与更新次数之间的比值,即在每次更新时所用的训练数据的平均数量。上述的历史更新次数、模型提升度、贡献数据量及历史查询次数可存储于区块链网络的账本中,从而便于获取。
然后,通过函数G’(S)=f’(历史更新次数,模型提升度,贡献数据量,历史查询次数)得到授权参数G’(S),其中,历史更新次数、模型提升度及贡献数据量与G’(S)之间均成正相关关系,历史查询次数与G’(S)之间成负相关关系,通过加权求和的方式,得到授权参数G’(S)。当授权参数满足设定的参数条件时,确定权限认证成功,授权码对应的参与方节点具有查询机器学习模型的权限;当授权参数不满足参数条件时,确定权限认证失败,其中,参数条件如授权参数大于零。上述的通过授权参数进行权限认证的方式,实则是为参与方节点设置了激励机制,即参与方节点只有积极参与对机器学习模型的更新,才能获得更多的查询(使用)次数,从而鼓励更多的参与方节点参与到机器学习模型的更新中,提升机器学习模型的更新效果。
在步骤505中,当权限认证成功时,所述区块链网络响应于所述查询请求,将所述机器学习模型发送至所述参与方节点。
当权限认证成功时,区块链网络根据查询请求,将对应的机器学习模型发送至参与方节点;当权限认证失败时,区块链网络对查询请求不做响应,即不发送机器学习模型。
在一些实施例中,在步骤505之后,还包括:所述区块链网络获取所述参与方节点发送的参与信息,其中,所述参与信息与所述参与方节点对所述机器学习模型进行的更新操作相关;将所述参与信息进行存储。
参与方节点除了向区块链网络发送更新后的机器学习模型外,还可发送与更新操作相关的参与信息,举例来说,参与信息可包括参与方节点此次更新的贡献数据量,以及机器学习模型的更新程度等信息。区块链网络获取参与方节点发送的参与信息,并对参与信息进行广播、验证及共识等操作。其中,结合上述内容,区块链网络可将需求方节点提交的需求信息、参与方节点提交的更新后的机器学习模型以及参与信息构建为一个区块,并对构建的该区块进行共识。
在共识成功的情况下,区块链网络将参与信息进行存储,使得在确定参与方节点的授权参数或其他情况时,区块链网络能够从参与信息中获取相关的信息,如贡献数据量。
在一些实施例中,在任意步骤之间,所述机器学习模型处理方法还包括:所述区块链网络确定所述机器学习模型的模型收益;根据所述参与方节点对所述机器学习模型的历史更新次数、模型提升度及贡献数据量,确定所述参与方节点的贡献参数;根据各所述参与方节点的贡献参数确定对应的模型收益,将所述模型收益分配至各所述参与方节点。
区块链网络可确定机器学习模型的模型收益,并对模型收益进行分配,模型收益可为将机器学习模型应用至生产领域而得到的经济收益,也可为其他形式的收益,本发明实施例对此不做限定。具体地,可通过函数G(S)=f(历史更新次数,模型提升度,贡献数据量)得到贡献参数G(S),该贡献参数体现了参与方节点对最终的机器学习模型的贡献程度,其中,历史更新次数、模型提升度及贡献数据量与G(S)之间均成正相关关系,通过加权求和的方式,得到贡献参数G(S)。除此之外,在确定贡献参数时,还可考虑到参与方节点的历史查询次数的因素,即,在本发明实施例中,可将上述的授权参数作为贡献参数。值得说明的是,上述的历史更新次数、模型提升度及贡献数据量可以由节点填充到区块,并在经过共识后存储于区块链,在此基础上,如果在区块链网络中设置有通道,则将历史更新次数、模型提升度及贡献数据量存储至相应通道的区块链中,以备查询。
按照贡献程度的不同,区块链网络将模型收益分配至各参与方节点。具体地,分配至参与方节点Si的模型收益benefit(Si)=机器学习模型的模型收益*G(Si)/(G(S1)+G(S2)+……+G(Sn)),其中,n为参与机器学习模型更新的参与方节点的总数。值得说明的是,区块链网络可通过执行相应的智能合约进行模型收益的分配,具体地,区块链网络获取需求方节点发送的包含智能合约的部署交易,并将智能合约部署至区块链网络的节点中,该智能合约是用于分配模型收益的智能合约。在部署完成后,区块链网络获取需求方节点发送的对智能合约的调用交易,从而根据智能合约,确定机器学习模型的模型收益,确定参与方节点的贡献参数,根据贡献参数确定各参与方节点对应的模型收益,并将模型收益分配至各参与方节点。上述的分配模型收益的方式,实则是设置的另一种激励机制,通过收益鼓励参与方节点对机器学习模型进行更新,从而提升机器学习模型的更新效果。在一些实施例中,可以通过这样的方式实现上述的将所述模型收益分配至各所述参与方节点:所述区块链网络将各所述参与方节点的模型收益的分配信息进行存储,并向所述各参与方节点发送相应模型收益在所述区块链网络中的标识;其中,所述模型收益包括以下至少之一:接入所述区块链网络的有效期,在所述区块链网络中的可用存储空间,在所述区块链网络中查询或存储机器学习模型的频率。
在本发明实施例中,区块链网络在确定各参与方节点对应的模型收益后,可将各参与方节点的模型收益的分配信息进行存储,并向各参与方节点发送相应模型收益在区块链网络中的标识,以使参与方节点根据标识在区块链网络中查询模型收益,其中,可对分配信息进行哈希操作得到标识,当然标识也可根据其他方式进行设置。模型收益除了经济收益外,还可设置为包括以下至少之一:参与方节点接入区块链网络的有效期,如10天,在区块链网络中的可用存储空间,如1千兆字节,在区块链网络中查询或存储机器学习模型的频率,如最多1天3次。通过上述的在区块链网络存储模型收益的分配信息的方式,提升了模型收益的可追溯性。
通过发明实施例对于图5的上述示例性实施可知,本发明实施例通过授权码进行权限认证,仅使具有权限的参与方节点能够查询得到机器学习模型,提升了机器学习模型的查询安全性。
在一些实施例中,参见图6,图6是本发明实施例提供的机器学习模型处理方法的另一个可选的流程示意图,基于图4,在步骤402之前,还可以在步骤601中,所述区块链网络确定被授权的参与方节点。
在本发明实施例中,可设置加密机制保障机器学习模型本身的数据安全。具体地,区块链网络根据需求方节点的指示,确定被授权的参与方节点,当然,被授权的参与方节点也可根据其他方式确定。
在步骤602中,所述区块链网络生成与被授权的各所述参与方节点一一对应的密钥对,并将所述密钥对发送至对应的所述参与方节点。
在图6中,区块链网络获取到的来自需求方节点的机器学习模型使用公钥进行加密,故区块链网络针对被授权的各参与方节点,通过非对称加密算法,生成包括该公钥及与该公钥配套的唯一私钥的密钥对,并将密钥对发送至对应的参与方节点,除此之外,还单独生成一套密钥对,发送至需求方节点。举例来说,公钥为A,被授权的参与方节点包括节点1和节点2,则生成包括公钥A和配套的私钥B1的密钥对,将该密钥对发送至节点1;生成包括公钥A和配套的私钥B2的密钥对,将该密钥对发送至节点2。值得说明的是,上述的密钥对也可由参与方节点生成。值得说明的是,步骤601至步骤602在图6中的执行顺序仅为示例,根据实际应用场景的不同,可应用不同的执行顺序进行执行,例如步骤601至步骤602可以在步骤401之前执行。
在图6中,图4示出的步骤403可更新为:
在步骤403中,所述参与方节点根据持有的密钥对中的私钥,对所述需求方节点发送的加密的所述机器学习模型进行解密,根据自身的训练数据,对所述机器学习模型进行更新,并根据持有的密钥对中的公钥对更新后的所述机器学习模型进行加密。
参与方节点在查询到使用公钥加密的机器学习模型后,根据自身持有的密钥对中的私钥,对机器学习模型进行解密。完成解密后,参与方节点根据自身的训练数据,对机器学习模型进行更新,并使用密钥对中的公钥对更新后的机器学习模型进行加密。由于被授权的各参与方节点持有的公钥均相同,故更新后的机器学习模型在存储至区块链网络后,能够被其他参与方节点成功解密。
在此基础上,当需求方节点向区块链网络提交需求信息时,由于需求信息通常无须进行保密,故需求方节点可向区块链网络提交原始的,即未加密的需求信息。另外,对于参与方节点向区块链网络提交的参与信息,可根据实际应用场景设置是否用公钥对其进行加密。对于已设置用公钥对参与信息进行加密的情况,区块链网络中构建的一个区块可包括:1)需求方节点提交的需求信息,采用公开明文发布;2)机器学习模型,具体包括模型的结构信息及参数信息,采用加密发布;3)参与方节点提交的参与信息,采用加密发布。
通过发明实施例对于图6的上述示例性实施可知,本发明实施例通过公钥对机器学习模型进行加密,保证区块链网络存储的机器学习模型不会被未持有对应私钥的节点成功解密,提升了存储机器学习模型的安全性。
下面,将说明本发明实施例在实际的应用场景中的示例性应用。
如图7所示,本发明实施例提供了机器学习模型处理方法的另一个可选的流程示意图,为了便于理解,后文以编号形式对图7进行说明。
1)需求方节点发起请求,将需求信息存储至区块链网络。
需求方节点为区块链网络内部的节点,在需要进行模型训练时,向区块链网络发起请求,将需求信息发送至区块链网络,由区块链网络对需求信息进行存储,其中,需求信息可包括机器学习模型的相关细节以及对训练数据的需求。
2)需求方节点发布初始的机器学习模型,将该机器学习模型加密存储至区块链网络。
需求方节点使用公钥对初始的机器学习模型进行加密,并将加密后的机器学习模型发送至区块链网络,由区块链网络对其进行存储。
3)参与方节点根据自身的训练数据,确定是否参与对机器学习模型的训练。
参与方节点从区块链网络中查询得到需求信息,并判断自身的训练数据是否与需求信息匹配。例如,需求信息指示需求的训练数据是通讯软件聊天数据,而参与方节点自身的训练数据是游戏数据,则参与方节点确定自身的训练数据与需求信息不匹配,不参与对机器学习模型的训练。
4)参与方节点从区块链网络中查询得到加密后的机器学习模型,根据持有的私钥对加密后的机器学习模型进行解密;根据自身的训练数据对机器学习模型进行更新。
对于加密所用的公钥,区块链网络或参与方节点生成与该公钥配套的多个唯一私钥,构成多个密钥对,并将多个密钥对一一发送至不同的具有权限的参与方节点。参与方节点在确定参与对机器学习模型的训练时,从区块链网络中查询得到加密后的机器学习模型,根据持有的私钥对加密后的机器学习模型进行解密,然后,根据自身的训练数据对机器学习模型进行更新。
5)参与方节点记录与更新操作相关的参与信息,将更新后的机器学习模型以及参与信息加密存储至区块链网络。
参与方节点记录更新机器学习模型时产生的参与信息,例如,参与信息可包括参与方节点的贡献数据量,以及对机器学习模型的更新程度。完成更新后,参与方节点将更新后的机器学习模型以及参与信息通过私钥进行加密,并通过共识机制将其存储至区块链网络。结合上述内容,区块链中的区块可包括如下信息:加密发布的需求信息、加密发布的机器学习模型以及加密发布的参与信息。在后续过程中,参与方节点可确定是否继续参与对机器学习模型的训练。
通过发明实施例对于图7的上述示例性实施可知,本发明实施例将区块链网络作为共享机器学习模型的网络平台,使得有权限的节点能够进行对机器学习模型的存储、更新及查询,同时,将根据训练数据更新机器学习模型的过程,交由参与方节点在节点内部进行,从而提升了参与方节点持有的训练数据的安全性,有效地避免了训练数据泄露。
下面继续说明本发明实施例提供的区块链网络的节点实施为软件模块的示例性结构,在一些实施例中,如图3所示,存储在存储器2140的软件模块2143可以包括:模型获取模块21431,用于获取需求方节点发送的机器学习模型,将所述机器学习模型存储至区块链网络;模型交易模块21432,用于响应于参与方节点发送的对所述机器学习模型的查询请求,将所述机器学习模型发送至所述参与方节点,以使所述参与方节点根据自身的训练数据,对所述机器学习模型进行更新;共识模块21433,用于获取所述参与方节点发送的更新后的所述机器学习模型,对更新后的所述机器学习模型进行共识;更新存储模块21434,用于当共识成功时,将更新后的所述机器学习模型,存储至所述区块链网络。
在一些实施例中,软件模块2143还包括:第一节点确定模块,用于确定被授权的参与方节点;授权模块,用于生成与被授权的各所述参与方节点一一对应的授权码,并将所述授权码发送至对应的所述参与方节点,所述授权码用于所述参与方节点查询所述机器学习模型。
在一些实施例中,模型交易模块21432,还用于:获取所述参与方节点发送的授权码;根据所述授权码进行权限认证;当权限认证成功时,将所述机器学习模型发送至所述参与方节点。
在一些实施例中,所述根据所述授权码进行权限认证,包括:根据所述参与方节点对所述机器学习模型的历史更新次数、模型提升度、贡献数据量及历史查询次数,生成所述授权码的授权参数;当所述授权参数满足设定的参数条件时,确定权限认证成功。
在一些实施例中,软件模块2143还包括:信息获取模块,用于获取所述需求方节点发送的需要授权的参与方节点的信息,所述参与方节点的信息包括身份信息、接入所述区块链网络的有效期及能够训练的机器学习模型;信息存储模块,用于当通过所述需求方节点部署到所述区块链网络的智能合约,确定所述参与方节点的信息满足授权条件时,将所述需要授权的参与方节点的信息存储到所述区块链网络中。
在一些实施例中,软件模块2143还包括:验证模块,用于响应于参与方节点发送的对所述机器学习模型的查询请求之前,验证所述查询请求的数字签名;信息查询模块,用于当验证通过时,在所述区块链网络中已经授权的参与方节点的信息中,查询发送所述查询请求的参与方节点的信息;响应模块,用于当查询到发送所述查询请求的参与方节点的信息时,确定响应所述查询请求。
在一些实施例中,软件模块2143还包括:合约获取模块,用于获取所述需求方节点发送的包括授权条件的智能合约,所述授权条件与所述机器学习模型对应;合约部署模块,用于将所述授权条件部署到所述区块链网络中。
在一些实施例中,软件模块2143还包括:收益确定模块,用于确定所述机器学习模型的模型收益;贡献确定模块,用于根据所述参与方节点对所述机器学习模型的历史更新次数、模型提升度及贡献数据量,确定所述参与方节点的贡献参数;分配模块,用于根据各所述参与方节点的贡献参数确定对应的模型收益,将所述模型收益分配至各所述参与方节点。
在一些实施例中,所述将所述模型收益分配至各所述参与方节点包括:将各所述参与方节点的模型收益的分配信息存储到所述区块链网络中,并向所述各参与方节点发送相应模型收益在所述区块链网络中的标识;其中,所述模型收益包括以下至少之一:接入所述区块链网络的有效期,在所述区块链网络中的可用存储空间,在所述区块链网络中查询或存储机器学习模型的频率。
在一些实施例中,软件模块2143还包括:第二节点确定模块,用于确定被授权的参与方节点;密钥发送模块,用于生成与被授权的各所述参与方节点一一对应的密钥对,并将所述密钥对发送至对应的所述参与方节点,以使所述参与方节点根据持有的密钥对中的私钥,对所述需求方节点发送的加密的所述机器学习模型进行解密,并根据持有的密钥对中的公钥对更新后的所述机器学习模型进行加密,其中,不同所述参与方节点的密钥对中的私钥不同。
在一些实施例中,软件模块2143还包括:参与信息共识模块,用于获取所述参与方节点发送的参与信息,对所述参与信息进行共识,其中,所述参与信息与所述参与方节点对所述机器学习模型进行的更新操作相关;参与信息存储模块,用于当共识成功时,将所述参与信息存储至所述区块链网络。
在一些实施例中,软件模块2143还包括:需求信息获取模块,用于获取所述需求方节点发送的需求信息,所述需求信息与所述机器学习模型对应;需求信息存储模块,用于将所述需求信息存储至所述区块链网络。
在一些实施例中,共识模块21433还用于:将更新后的所述机器学习模型在所述区块链网络中进行广播,以使所述区块链网络中的节点将更新后的所述机器学习模型填充至更新区块,并对所述更新区块进行一致性验证;
更新存储模块21434还用于:将所述更新区块追加至区块链的尾部。
在一些实施例中,所述模型获取模块21431还用于:所述区块链网络包括用于统一存储不同的机器学习模型的区块链,将所述机器学习模型存储到所述区块链网络的所述区块链中;或者,所述区块链网络包括多个与不同类型的机器学习模型对应的通道,将所述机器学习模型存储到对应类型通道的区块链中。
本发明实施例提供一种存储有可执行指令的存储介质,其中存储有可执行指令,当可执行指令被处理器执行时,将引起处理器执行本发明实施例提供的方法,例如,如图4、5、6或7示出的机器学习模型处理方法。
在一些实施例中,存储介质可以是FRAM、ROM、PROM、EPROM、EEPROM、闪存、磁表面存储器、光盘、或CD-ROM等存储器;也可以是包括上述存储器之一或任意组合的各种设备。
在一些实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。
作为示例,可执行指令可以但不一定对应于文件系统中的文件,可以可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(HTML,Hyper TextMarkup Language)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。
作为示例,可执行指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。
综上所述,本发明实施例将区块链网络作为共享机器学习模型的网络平台,使得有权限的节点能够进行对机器学习模型的存储、更新及查询操作,同时,将根据训练数据更新机器学习模型的过程,交由参与方节点在节点内部进行,从而提升了参与方节点持有的训练数据的安全性,在多方参与的机器学习模型训练场景中,相较于传统的交易训练数据的方式,有效地避免了训练数据泄露,提升了训练数据的安全性,同时提升了机器学习模型的处理效率。
以上所述,仅为本发明的实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本发明的保护范围之内。
Claims (15)
1.一种基于区块链网络的机器学习模型处理方法,其特征在于,包括:
获取需求方节点发送的通过公钥加密的机器学习模型,将加密的所述机器学习模型存储至区块链网络;
生成与被授权的各参与方节点一一对应的密钥对,并将所述密钥对发送至对应的所述参与方节点;其中,所述密钥对包括所述公钥,且不同所述参与方节点对应的密钥对中的私钥不同;
响应于参与方节点发送的对所述机器学习模型的查询请求,将加密的所述机器学习模型发送至所述参与方节点,以使
所述参与方节点根据持有的密钥对中的私钥,对加密的所述机器学习模型进行解密,并根据持有的密钥对中的公钥对更新后的所述机器学习模型进行加密;其中,所述机器学习模型通过所述参与方节点自身的训练数据进行更新;
获取所述参与方节点发送的加密的所述机器学习模型,将加密的所述机器学习模型存储至所述区块链网络。
2.根据权利要求1所述的机器学习模型处理方法,其特征在于,所述生成与被授权的各参与方节点一一对应的密钥对,包括:
确定被授权的参与方节点;
通过非对称加密方式生成包括所述公钥及配套的私钥的密钥对;其中,所述密钥对与所述参与方节点对应。
3.根据权利要求1所述的机器学习模型处理方法,其特征在于,还包括:
获取所述参与方节点发送的加密的参与信息,其中,所述参与信息与所述参与方节点对所述机器学习模型进行的更新操作相关;所述参与信息通过所述参与方节点持有的密钥对中的公钥进行加密;
将加密的所述参与信息存储至所述区块链网络。
4.根据权利要求1所述的机器学习模型处理方法,其特征在于,所述将加密的所述机器学习模型存储至所述区块链网络,包括:
对加密的所述机器学习模型进行共识;
当共识成功时,将加密的所述机器学习模型,存储至所述区块链网络。
5.根据权利要求4所述的机器学习模型处理方法,其特征在于,
所述对加密的所述机器学习模型进行共识,包括:
将加密的所述机器学习模型在所述区块链网络中进行广播,以使
所述区块链网络中的节点将加密的所述机器学习模型填充至更新区块,并对所述更新区块进行一致性验证;
所述将加密的所述机器学习模型,存储至所述区块链网络,包括:
将所述更新区块追加至区块链的尾部。
6.根据权利要求1所述的机器学习模型处理方法,其特征在于,还包括:
确定被授权的参与方节点;
生成与被授权的各所述参与方节点一一对应的授权码,并将所述授权码发送至对应的所述参与方节点,所述授权码用于所述参与方节点查询所述机器学习模型。
7.根据权利要求6所述的机器学习模型处理方法,其特征在于,所述将加密的所述机器学习模型发送至所述参与方节点,包括:
获取所述参与方节点发送的授权码;
根据所述授权码进行权限认证;
当权限认证成功时,将加密的所述机器学习模型发送至所述参与方节点。
8.根据权利要求7所述的机器学习模型处理方法,其特征在于,所述根据所述授权码进行权限认证,包括:
根据所述参与方节点对所述机器学习模型的历史更新次数、模型提升度、贡献数据量及历史查询次数,生成所述授权码的授权参数;
当所述授权参数满足设定的参数条件时,确定权限认证成功。
9.根据权利要求6所述的机器学习模型处理方法,其特征在于,还包括:
获取所述需求方节点发送的需要授权的参与方节点的信息,所述参与方节点的信息包括身份信息、接入所述区块链网络的有效期及能够训练的机器学习模型;
当通过所述需求方节点部署到所述区块链网络的智能合约,确定所述参与方节点的信息满足授权条件时,将所述需要授权的参与方节点的信息存储到所述区块链网络中。
10.根据权利要求9所述的机器学习模型处理方法,其特征在于,还包括:
响应于参与方节点发送的对所述机器学习模型的查询请求之前,验证所述查询请求的数字签名;
当验证通过时,在所述区块链网络中已经授权的参与方节点的信息中,查询发送所述查询请求的参与方节点的信息;
当查询到发送所述查询请求的参与方节点的信息时,确定响应所述查询请求。
11.根据权利要求9所述的机器学习模型处理方法,其特征在于,还包括:
获取所述需求方节点发送的包括授权条件的智能合约,所述授权条件与所述机器学习模型对应;
将所述授权条件部署到所述区块链网络中。
12.根据权利要求1所述的机器学习模型处理方法,其特征在于,还包括:
确定所述机器学习模型的模型收益;
根据所述参与方节点对所述机器学习模型的历史更新次数、模型提升度及贡献数据量,确定所述参与方节点的贡献参数;
根据各所述参与方节点的贡献参数确定对应的模型收益,将各所述参与方节点的模型收益的分配信息存储到所述区块链网络中,并
向各所述参与方节点发送相应模型收益在所述区块链网络中的标识;
其中,所述模型收益包括以下至少之一:接入所述区块链网络的有效期,在所述区块链网络中的可用存储空间,在所述区块链网络中查询或存储机器学习模型的频率。
13.根据权利要求1所述的机器学习模型处理方法,其特征在于,还包括:
获取所述需求方节点发送的需求信息,所述需求信息与所述机器学习模型对应;
将所述需求信息存储至所述区块链网络。
14.一种区块链网络的节点,其特征在于,包括:
模型获取模块,用于获取需求方节点发送的通过公钥加密的机器学习模型,将加密的所述机器学习模型存储至区块链网络;
密钥发送模块,用于生成与被授权的各参与方节点一一对应的密钥对,并将所述密钥对发送至对应的所述参与方节点;其中,所述密钥对包括所述公钥,且不同所述参与方节点对应的密钥对中的私钥不同;
模型交易模块,用于响应于参与方节点发送的对所述机器学习模型的查询请求,将加密的所述机器学习模型发送至所述参与方节点,以使
所述参与方节点根据持有的密钥对中的私钥,对加密的所述机器学习模型进行解密,并根据持有的密钥对中的公钥对更新后的所述机器学习模型进行加密;其中,所述机器学习模型通过所述参与方节点自身的训练数据进行更新;
更新存储模块,用于获取所述参与方节点发送的加密的所述机器学习模型,将加密的所述机器学习模型存储至所述区块链网络。
15.一种区块链网络的节点,其特征在于,包括:
存储器,用于存储可执行指令;
处理器,用于执行所述存储器中存储的可执行指令时,实现权利要求1至13任一项所述的机器学习模型处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911295577.9A CN110991622B (zh) | 2019-08-22 | 2019-08-22 | 基于区块链网络的机器学习模型处理方法及节点 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911295577.9A CN110991622B (zh) | 2019-08-22 | 2019-08-22 | 基于区块链网络的机器学习模型处理方法及节点 |
CN201910776690.2A CN110490305B (zh) | 2019-08-22 | 2019-08-22 | 基于区块链网络的机器学习模型处理方法及节点 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910776690.2A Division CN110490305B (zh) | 2019-08-22 | 2019-08-22 | 基于区块链网络的机器学习模型处理方法及节点 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110991622A true CN110991622A (zh) | 2020-04-10 |
CN110991622B CN110991622B (zh) | 2021-06-04 |
Family
ID=68552751
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910776690.2A Active CN110490305B (zh) | 2019-08-22 | 2019-08-22 | 基于区块链网络的机器学习模型处理方法及节点 |
CN201911295577.9A Active CN110991622B (zh) | 2019-08-22 | 2019-08-22 | 基于区块链网络的机器学习模型处理方法及节点 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910776690.2A Active CN110490305B (zh) | 2019-08-22 | 2019-08-22 | 基于区块链网络的机器学习模型处理方法及节点 |
Country Status (1)
Country | Link |
---|---|
CN (2) | CN110490305B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111859415A (zh) * | 2020-06-18 | 2020-10-30 | 上海艾麒信息科技有限公司 | 神经网络模型加密系统和方法 |
CN112163034A (zh) * | 2020-09-03 | 2021-01-01 | 中国联合网络通信集团有限公司 | 一种模型共享方法、节点及区块链系统 |
CN112948875A (zh) * | 2021-02-25 | 2021-06-11 | 北京金山云网络技术有限公司 | 模型存储方法、模型使用方法、装置和电子设备 |
CN113612598A (zh) * | 2021-08-02 | 2021-11-05 | 北京邮电大学 | 基于秘密共享和联邦学习的车联网数据共享系统及方法 |
WO2022127474A1 (en) * | 2020-12-18 | 2022-06-23 | International Business Machines Corporation | Providing explainable machine learning model results using distributed ledgers |
CN114707663A (zh) * | 2022-04-15 | 2022-07-05 | 中国电信股份有限公司 | 分布式机器学习方法、装置、电子设备及存储介质 |
WO2022227959A1 (zh) * | 2021-04-27 | 2022-11-03 | 华为技术有限公司 | 模型分发的方法和装置 |
WO2023096637A1 (en) * | 2021-11-23 | 2023-06-01 | Visa International Service Association | Automatic model onboarding and searching-based optimization |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11966818B2 (en) | 2019-02-21 | 2024-04-23 | Hewlett Packard Enterprise Development Lp | System and method for self-healing in decentralized model building for machine learning using blockchain |
CN111062044B (zh) * | 2019-12-09 | 2021-03-23 | 支付宝(杭州)信息技术有限公司 | 基于区块链的模型联合训练方法及装置 |
US11748835B2 (en) | 2020-01-27 | 2023-09-05 | Hewlett Packard Enterprise Development Lp | Systems and methods for monetizing data in decentralized model building for machine learning using a blockchain |
US11218293B2 (en) | 2020-01-27 | 2022-01-04 | Hewlett Packard Enterprise Development Lp | Secure parameter merging using homomorphic encryption for swarm learning |
CN111753984A (zh) * | 2020-06-28 | 2020-10-09 | 中国银行股份有限公司 | 基于区块链进行分布式ai训练方法、装置及系统 |
CN111882074A (zh) * | 2020-07-30 | 2020-11-03 | 平安科技(深圳)有限公司 | 数据预处理系统、方法、计算机设备及可读存储介质 |
CN112699414B (zh) * | 2020-08-14 | 2024-03-15 | 武汉乾云软件开发中心(有限合伙) | 一种基于区块链的机器学习数据存证方法和系统 |
CN112016911B (zh) * | 2020-08-20 | 2021-08-27 | 河南盛世颂歌商业运营管理有限公司 | 基于区块链数字货币金融的信息管理方法及数字服务平台 |
CN112348063B (zh) * | 2020-10-27 | 2024-06-11 | 广东电网有限责任公司电力调度控制中心 | 一种物联网中基于联邦迁移学习的模型训练方法及装置 |
CN112801134A (zh) * | 2020-12-30 | 2021-05-14 | 杭州趣链科技有限公司 | 基于区块链和图像的手势识别模型训练与分发方法与装置 |
CN113420017B (zh) * | 2021-06-21 | 2023-10-13 | 上海特高信息技术有限公司 | 一种机器人导航算法训练数据集获取的区块链应用方法 |
CN114037086B (zh) * | 2021-10-19 | 2023-01-24 | 中国联合网络通信集团有限公司 | 基于区块链的机器学习任务分发方法、设备与系统 |
CN116566846B (zh) * | 2023-07-05 | 2023-09-22 | 中国电信股份有限公司 | 模型的管理方法、系统以及共享节点、网络节点 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180018590A1 (en) * | 2016-07-18 | 2018-01-18 | NantOmics, Inc. | Distributed Machine Learning Systems, Apparatus, and Methods |
CN108898219A (zh) * | 2018-06-07 | 2018-11-27 | 广东工业大学 | 一种基于区块链的神经网络训练方法、装置及介质 |
CN109493216A (zh) * | 2018-09-30 | 2019-03-19 | 北京小米移动软件有限公司 | 模型训练方法、装置、系统及存储介质 |
CN109543726A (zh) * | 2018-11-06 | 2019-03-29 | 联动优势科技有限公司 | 一种训练模型的方法及装置 |
CN109685511A (zh) * | 2018-05-30 | 2019-04-26 | 上海分壳信息技术股份有限公司 | 基于区块链的数据使用权交易方法 |
CN109802940A (zh) * | 2018-12-12 | 2019-05-24 | 北京众享比特科技有限公司 | 区块链数据库加密和解密方法、装置、设备及其存储介质 |
US20190182048A1 (en) * | 2017-08-05 | 2019-06-13 | Proclus Technologies Limited | Method and System for Securing a Blockchain with Proof-of-Transactions |
CN109891416A (zh) * | 2016-10-27 | 2019-06-14 | 株式会社电装 | 用于认证和授权装置的系统和方法 |
CN109922155A (zh) * | 2019-03-18 | 2019-06-21 | 众安信息技术服务有限公司 | 在区块链网络中实现智能代理的方法及装置 |
CN110034917A (zh) * | 2019-04-11 | 2019-07-19 | 鸿秦(北京)科技有限公司 | 一种基于同态加密算法的联盟链数据处理方法及装置 |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10490304B2 (en) * | 2012-01-26 | 2019-11-26 | Netspective Communications Llc | Device-driven non-intermediated blockchain system over a social integrity network |
CN108234127A (zh) * | 2016-12-22 | 2018-06-29 | 中国移动通信集团公司 | 一种基于区块链的物联方法及装置 |
US10270599B2 (en) * | 2017-04-27 | 2019-04-23 | Factom, Inc. | Data reproducibility using blockchains |
EP3503012A1 (en) * | 2017-12-20 | 2019-06-26 | Accenture Global Solutions Limited | Analytics engine for multiple blockchain nodes |
CN108270780B (zh) * | 2018-01-08 | 2020-12-29 | 中国电子科技集团公司第三十研究所 | 一种异构网络环境多中心数字身份管理方法 |
WO2019144353A1 (zh) * | 2018-01-25 | 2019-08-01 | 深圳前海达闼云端智能科技有限公司 | 基于区块链的数据训练方法、装置、存储介质及区块链节点 |
CN108563784A (zh) * | 2018-04-26 | 2018-09-21 | 福建中锐海沃科技有限公司 | 一种数字资源引用关系记录方法及系统 |
CN108768700B (zh) * | 2018-05-11 | 2021-09-03 | 北京奇虎科技有限公司 | 一种区块链中奖励分配方法、装置及系统 |
CN109034837B (zh) * | 2018-06-29 | 2020-12-29 | 山东华夏维康农牧科技有限公司 | 多码溯源防伪的方法及系统 |
CN109242636A (zh) * | 2018-09-26 | 2019-01-18 | 盈盈(杭州)网络技术有限公司 | 一种基于区块链的数据交易系统及其实现方法 |
CN109450856B (zh) * | 2018-10-12 | 2021-09-28 | 西安电子科技大学 | 基于区块链的数据链信息流转控制系统及方法 |
CN109167695B (zh) * | 2018-10-26 | 2021-12-28 | 深圳前海微众银行股份有限公司 | 基于联邦学习的联盟网络构建方法、设备及可读存储介质 |
CN109542856A (zh) * | 2018-11-26 | 2019-03-29 | 上海基诺联生物科技有限公司 | 一种基于区块链的分布式数据共享系统及方法 |
CN109698822A (zh) * | 2018-11-28 | 2019-04-30 | 众安信息技术服务有限公司 | 基于公有区块链和加密神经网络的联合学习方法及系统 |
CN109670583A (zh) * | 2018-12-27 | 2019-04-23 | 浙江省公众信息产业有限公司 | 去中心化的数据分析方法、系统以及介质 |
CN109711408B (zh) * | 2018-12-28 | 2023-05-26 | 天津智芯视界科技有限公司 | 一种用于建筑工地的人员识别系统 |
CN110020774B (zh) * | 2019-01-30 | 2023-08-01 | 创新先进技术有限公司 | 一种资源共享方法、系统、装置及电子设备 |
CN109873866B (zh) * | 2019-02-20 | 2020-10-09 | 北京邮电大学 | 一种基于区块链的数据共享方法、装置及电子设备 |
-
2019
- 2019-08-22 CN CN201910776690.2A patent/CN110490305B/zh active Active
- 2019-08-22 CN CN201911295577.9A patent/CN110991622B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180018590A1 (en) * | 2016-07-18 | 2018-01-18 | NantOmics, Inc. | Distributed Machine Learning Systems, Apparatus, and Methods |
CN109891416A (zh) * | 2016-10-27 | 2019-06-14 | 株式会社电装 | 用于认证和授权装置的系统和方法 |
US20190182048A1 (en) * | 2017-08-05 | 2019-06-13 | Proclus Technologies Limited | Method and System for Securing a Blockchain with Proof-of-Transactions |
CN109685511A (zh) * | 2018-05-30 | 2019-04-26 | 上海分壳信息技术股份有限公司 | 基于区块链的数据使用权交易方法 |
CN108898219A (zh) * | 2018-06-07 | 2018-11-27 | 广东工业大学 | 一种基于区块链的神经网络训练方法、装置及介质 |
CN109493216A (zh) * | 2018-09-30 | 2019-03-19 | 北京小米移动软件有限公司 | 模型训练方法、装置、系统及存储介质 |
CN109543726A (zh) * | 2018-11-06 | 2019-03-29 | 联动优势科技有限公司 | 一种训练模型的方法及装置 |
CN109802940A (zh) * | 2018-12-12 | 2019-05-24 | 北京众享比特科技有限公司 | 区块链数据库加密和解密方法、装置、设备及其存储介质 |
CN109922155A (zh) * | 2019-03-18 | 2019-06-21 | 众安信息技术服务有限公司 | 在区块链网络中实现智能代理的方法及装置 |
CN110034917A (zh) * | 2019-04-11 | 2019-07-19 | 鸿秦(北京)科技有限公司 | 一种基于同态加密算法的联盟链数据处理方法及装置 |
Non-Patent Citations (3)
Title |
---|
YI MU等: "《Identity-Based Broadcasting》", 《INDOCRYPT》 * |
庞辽军等: "《一个单方加密-多方解密的公钥加密方案》", 《计算机学报》 * |
智能观: "《区块链+机器学习,能突破数据的垄断,做可控的"摩洛克" 吗?》", 《HTTPS://BAIJIAHAO.BAIDU.COM/S?ID=1595092751387827508&WFR=SPIDER&FOR=PC》 * |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111859415A (zh) * | 2020-06-18 | 2020-10-30 | 上海艾麒信息科技有限公司 | 神经网络模型加密系统和方法 |
CN112163034A (zh) * | 2020-09-03 | 2021-01-01 | 中国联合网络通信集团有限公司 | 一种模型共享方法、节点及区块链系统 |
WO2022127474A1 (en) * | 2020-12-18 | 2022-06-23 | International Business Machines Corporation | Providing explainable machine learning model results using distributed ledgers |
GB2617945A (en) * | 2020-12-18 | 2023-10-25 | Ibm | Providing explainable machine learning model results using distributed ledgers |
CN112948875A (zh) * | 2021-02-25 | 2021-06-11 | 北京金山云网络技术有限公司 | 模型存储方法、模型使用方法、装置和电子设备 |
CN112948875B (zh) * | 2021-02-25 | 2024-08-20 | 北京金山云网络技术有限公司 | 模型存储方法、模型使用方法、装置和电子设备 |
WO2022227959A1 (zh) * | 2021-04-27 | 2022-11-03 | 华为技术有限公司 | 模型分发的方法和装置 |
CN113612598A (zh) * | 2021-08-02 | 2021-11-05 | 北京邮电大学 | 基于秘密共享和联邦学习的车联网数据共享系统及方法 |
CN113612598B (zh) * | 2021-08-02 | 2024-02-23 | 北京邮电大学 | 基于秘密共享和联邦学习的车联网数据共享系统及方法 |
WO2023096637A1 (en) * | 2021-11-23 | 2023-06-01 | Visa International Service Association | Automatic model onboarding and searching-based optimization |
CN114707663A (zh) * | 2022-04-15 | 2022-07-05 | 中国电信股份有限公司 | 分布式机器学习方法、装置、电子设备及存储介质 |
CN114707663B (zh) * | 2022-04-15 | 2024-02-23 | 中国电信股份有限公司 | 分布式机器学习方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110490305B (zh) | 2021-06-04 |
CN110991622B (zh) | 2021-06-04 |
CN110490305A (zh) | 2019-11-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110991622B (zh) | 基于区块链网络的机器学习模型处理方法及节点 | |
CN111047319B (zh) | 区块链网络的交易处理方法及区块链网络 | |
CN110532323B (zh) | 区块链网络中的学生身份信息处理方法、装置、电子设备及存储介质 | |
CN110636492B (zh) | 使用区块链切换移动服务提供商 | |
CN110516474B (zh) | 区块链网络中的用户信息处理方法、装置、电子设备及存储介质 | |
CN110599069B (zh) | 基于区块链网络的应用评价方法及装置 | |
WO2020001117A1 (zh) | 维护区块链的方法和装置、服务器和计算机可读存储介质 | |
CN110599213B (zh) | 一种基于区块链网络的物品管理方法、装置及电子设备 | |
CN111104686B (zh) | 区块链网络的管控方法、装置、设备及存储介质 | |
US10554407B1 (en) | Protocols for decentralized networks | |
US11769156B2 (en) | Automated data projection for smart contract groups on a blockchain | |
JP2021516004A (ja) | ランダム・シーケンスを生成および検証するための分散型台帳 | |
EP4216077A1 (en) | Blockchain network-based method and apparatus for data processing, and computer device | |
CN110769274B (zh) | 基于区块链网络的直播信息处理方法、装置、电子设备及存储介质 | |
CN112073413B (zh) | 在线化联盟链管理方法、装置、计算机设备及存储介质 | |
CN109995737B (zh) | 去中心化的数字证书管理方法及装置、节点、系统 | |
CN112163954A (zh) | 基于区块链的交易方法及装置 | |
CN112908442A (zh) | 医疗数据共享方法、装置、设备及计算机可读介质 | |
CN112910870B (zh) | 基于区块链的协同隐私计算数据通信方法 | |
CN114760071B (zh) | 基于零知识证明的跨域数字证书管理方法、系统和介质 | |
CN111062497A (zh) | 基于区块链网络的物业管理方法、平台及存储介质 | |
CN115705601A (zh) | 数据处理方法、装置、计算机设备及存储介质 | |
Amiri et al. | Separ: A privacy-preserving blockchain-based system for regulating multi-platform crowdworking environments | |
CN113014540B (zh) | 一种数据处理方法、装置、设备及存储介质 | |
CN115310886A (zh) | 一种基于区块链的企业孵化管理系统及方法 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |