CN114169387A - 模型训练方法和装置、电子设备、存储介质 - Google Patents
模型训练方法和装置、电子设备、存储介质 Download PDFInfo
- Publication number
- CN114169387A CN114169387A CN202111217158.0A CN202111217158A CN114169387A CN 114169387 A CN114169387 A CN 114169387A CN 202111217158 A CN202111217158 A CN 202111217158A CN 114169387 A CN114169387 A CN 114169387A
- Authority
- CN
- China
- Prior art keywords
- model
- block
- block chain
- model parameters
- target
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Medical Informatics (AREA)
- Mathematical Physics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本实施例提供一种模型训练方法和装置、电子设备、存储介质,属于机器学习技术领域。该方法包括:通过将联邦学习与区块链技术进行结合,使想要记账的记账节点从原始区块链中获取记账权,不再依赖于单一的中心节点记账,提高模型训练的安全性,记账节点根据记账权更新本地模型的初始模型参数,得到目标模型参数,根据目标模型参数,记账节点将预记账的新区块添加至原始区块链中,得到当前区块,记账节点获取当前区块链的区块模型参数,根据区块模型参数的梯度更新本地模型,得到目标模型,通过不断更新区块模型参数来更新本地模型,得到目标模型,能够提升模型训练的准确度。
Description
技术领域
本发明涉及机器学习技术领域,尤其涉及一种模型训练方法和装置、电子设备、存储介质。
背景技术
机器学习算法通常通过获取更多数据来提升模型的性能,但是为了保证数据的安全隐私,导致数据间存在壁垒,数据孤岛的现象越来越严重,为了解决这一问题,可以考虑采用联邦学习的方法,通过引入中心节点与不同的边缘节点共享模型参数,以达到保护用户隐私的同时提升模型泛化能力的目的。从组织架构上来说,目前的联邦学习技术由一个中心节点和若干边缘节点组成,这样可能导致中心节点不会被边缘节点信任,或者恶意的边缘节点会参与到联邦学习的框架上,向中心节点反馈错误的模型参数,最终影响模型训练,导致模型的训练效果差。
发明内容
本公开实施例的主要目的在于提出一种模型训练方法和装置、电子设备、存储介质,能够提高模型的训练效果。
为实现上述目的,本公开实施例的第一方面提出了一种模型训练方法,包括:
根据记账权从原始区块链中获取原始数据;
根据所述原始数据对本地模型的初始模型参数进行更新,得到目标模型参数;
将所述目标模型参数同步到预记账的新区块;
将所述新区块添加至所述原始区块链中,得到当前区块链;
获取所述当前区块链的区块模型参数;
根据所述区块模型参数的梯度更新所述本地模型,得到目标模型。
在一些实施例,在所述根据记账权从原始区块链中获取原始数据之前,所述方法还包括:获取所述记账权,具体包括:
从所述原始区块链获取预先设置的算力难度;
获取随机数;
根据所述随机数和所述算力难度,从所述原始区块链获取记账权。
在一些实施例,所述根据所述原始数据对本地模型的初始模型参数进行更新,得到目标模型参数,包括:
根据所述原始数据对所述本地模型的所述初始模型参数进行加权处理,得到所述目标模型参数。
在一些实施例,所述将所述新区块添加至所述原始区块链中,得到当前区块链,包括:
通过哈希指针将所述新区块连接至所述原始区块链的目标区块,得到所述当前区块链;所述目标区块为当前最新加入所述原始区块链的区块。
在一些实施例,所述根据所述区块模型参数的梯度更新所述本地模型,得到目标模型,包括:
获取所述当前区块链中参与方节点的训练结果;其中所述参与方节点没有所述记账权;
根据所述训练结果和所述区块模型参数的梯度,更新所述目标模型参数;
根据更新后的所述目标模型参数更新所述本地模型,得到所述目标模型。
在一些实施例,在所述根据所述原始数据对本地模型的初始模型参数进行更新,得到目标模型参数之后,所述方法还包括:
将所述目标模型参数发送给所述原始区块链的参与方节点,以使所述参与方节点根据所述目标模型参数得到更新操作意见;其中所述更新操作意见包括同意更新操作;所述参与方节点没有所述记账权;
统计所述同意更新操作的同意数量;
若所述同意数量大于预设值,则执行所述将所述新区块添加至所述原始区块链中,得到当前区块链的步骤。
在一些实施例,在根据所述区块模型参数的梯度更新所述本地模型,得到目标模型之后,所述方法还包括:
对所述目标训练模型的更新质量进行评估,以得到评估结果;
根据所述评估结果生成对所述当前区块链的访问时限。
本公开实施例的第二方面提出了一种模型训练装置,包括:
第一获取模块:用于根据记账权从原始区块链中获取原始数据;
第一更新模块:用于根据所述原始数据对本地模型的初始模型参数进行更新,得到目标模型参数;
参数同步模块:用于将所述目标模型参数同步到预记账的新区块;
区块添加模块:用于将所述新区块添加至所述原始区块链中,得到当前区块链;
第二获取模块:用于获取所述当前区块链的区块模型参数;
第二更新模块:用于根据所述区块模型参数的梯度更新所述本地模型,得到目标模型。本公开实施例的第三方面提出了一种电子设备,包括:
至少一个处理器,以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器执行所述指令时实现如本申请第一方面实施例任一项所述的方法。
本公开实施例的第四方面提出了一种计算机可读存储介质,所述存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行如本申请第一方面实施例任一项所述的方法。
本公开实施例提出的模型训练方法和装置、电子设备、存储介质,通过将联邦学习与区块链技术进行结合,使想要记账的记账节点从原始区块链中获取记账权,不再依赖于单一的中心节点记账,提高模型训练的安全性,记账节点根据记账权更新本地模型的初始模型参数,得到目标模型参数,根据目标模型参数,记账节点将预记账的新区块添加至原始区块链中,得到当前区块,记账节点获取当前区块链的区块模型参数,根据区块模型参数的梯度更新本地模型,得到目标模型,通过不断更新区块模型参数来更新本地模型,得到目标模型,能够提升模型训练的准确度,从而提高模型的训练效果。
附图说明
图1是本公开实施例提供的模型训练方法的第一流程图;
图2是图1中的步骤S600的流程图;
图3是本公开实施例提供的模型训练方法的第二流程图;
图4为本公开实施例提供的模型训练方法的整体流程图;
图5为本公开实施例提供的模型训练装置的模块结构框图;
图6是本公开实施例提供的电子设备的硬件结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。
需要说明的是,虽然在装置示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于装置中的模块划分,或流程图中的顺序执行所示出或描述的步骤。说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本发明实施例的目的,不是旨在限制本发明。
首先,对本申请中涉及的若干名词进行解析:
人工智能(artificial intelligence,AI):是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学;人工智能是计算机科学的一个分支,人工智能企图了解智能的实质,并生产出一种新的能以人类智能相似的方式作出反应的智能机器,该领域的研究包括机器人、语言识别、图像识别、自然语言处理和专家系统等。人工智能可以对人的意识、思维的信息过程的模拟。人工智能还是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
联邦机器学习(Federated machine learning/Federated Learning):又名联邦学习,是一个机器学习框架,能有效帮助多个机构在满足用户隐私保护、数据安全和政府法规的要求下,进行数据使用和机器学习建模,联邦机器学习分为横向联邦学习、纵向联邦学习与联邦迁移学习。
区块链(Blockchain):从科技层面来看,区块链涉及数学、密码学、互联网和计算机编程等很多科学技术问题,从应用视角来看,区块链是一个分布式的共享账本和数据库,具有去中心化、不可篡改、全程留痕、可以追溯、集体维护、公开透明等特点,这些特点保证了区块链的“诚实”与“透明”,为区块链创造信任奠定基础。而区块链的应用场景,基本上都基于区块链能够解决信息不对称问题,实现多个主体之间的协作信任与一致行动。
分布式(Distribution):是计算机科学中一个研究方向,分布式研究如何把一个需要非常巨大的计算能力才能解决的问题分成许多小的部分,然后把这些部分分配给多个计算机进行处理,最后把这些计算结果综合起来得到最终的结果。分布式网络存储技术是将数据分散地存储于多台独立的机器设备上。分布式网络存储系统采用可扩展的系统结构,利用多台存储服务器分担存储负荷,利用位置服务器定位存储信息,不但解决了传统集中式存储系统中单存储服务器的瓶颈问题,还提高了系统的可靠性、可用性和扩展性。
共识机制(Consensus mechanism):是一种区块链事务达成分布式共识的算法,所谓“共识机制”,是通过特殊节点的投票,在很短的时间内完成对交易的验证和确认;对一笔交易,如果利益不相干的若干个节点能够达成共识,就可以认为全网对此也能够达成共识。
工作量证明(Proof-of-Work,POW):是一种对应服务与资源滥用、或是阻断服务攻击的经济对策。一般是要求用户进行一些耗时适当的复杂运算,并且答案能被服务方快速验算,以此耗用的时间、设备与能源作为担保成本,以确保服务与资源是被真正的需求所使用。
权益证明(Proof of Stake,POS):本质上是采用权益证明来代替POW的算力证明,记账权由最高权益的节点获得,而不是最高算力的节点。权益代表节点对特定数量的货币的所有权,称作币龄或币天数。币龄等于货币数量乘最后一次交易时间长度。采用POS共识机制的系统在特定时间点的币龄是有限的,长期持币者有更长的币龄,所以币龄可以视为其在系统中的权益。
股权委托证明机制(Delegated Proof of Stake,DPOS):在POS的基础上,将记账人的角色专业化。先以权益作为选票来选出记账人,然后记账人之间再轮流记账,所有持币者投票选出一定数量的节点,被选中的节点代理他们进行验证和记账,记账人必须保证90%在线。该共识机制中每个节点都能够自主决定其信任的授权节点,且由这些节点轮流记账生成新的区块。
授权拜占庭容错算法(Delegated Byzantine Fault Tolerance,DBFT):授权拜占庭容错算法,是基于持有权益比例来选出专门的记账人(记账节点),然后记账人之间通过拜占庭容错算法(即少数服从多数的投票机制)来达成共识,决定动态参与节点,DBFT可以容忍任何类型的错误,且专门的多个记账人使得每一个区块都有最终性、不会分叉。
哈希值:哈希值是哈希算法中将任意长度的二进制值映射成的固定长度的较小二进制值,是一段数据唯一且极其紧凑的数值表示形式。哈希值是根据文件的内容的数据通过逻辑运算得到的数值,不同的文件得到的哈希值是不同的,所以哈希值就成了每一个文件在电驴里的身份证。
SHA256算法:SHA256算法使用的哈希值长度是256位,且是一个抽象类。
哈希指针:哈希指针是一种数据结构,是一个指向数据存储位置及其位置数据的哈希值的指针。一个普通指针只能指向数据的位置,哈希指针除了能够指向数据的位置,还提供一种方法来验证数据是否被篡改过。
本申请实施例可以基于人工智能技术对相关的数据进行获取和处理。其中,人工智能 (Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、机器人技术、生物识别技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
为了获取更多数据来提升模型的性能,通常会采用机器学习的算法,为了保证数据的安全性,会导致数据的孤岛现象越来越严重,严重影响模型训练的效果,为了解决以上问题,可以考虑采用联邦学习的方法,通过引入中心节点的概念,中心节点有权限更新模型参数,中心节点与不同的边缘节点之间共享模型参数,以达到保护用户隐私的同时,避免数据孤岛的现象,但是中心节点可能不被边缘节点信任,或者恶意的边缘节点会参与到模型训练的过程,向中心节点反馈错误的模型参数,最终影响模型的训练,导致模型训练的效果差。
基于此,本公开实施例提供一种模型训练方法和装置、电子设备、存储介质,能够提高模型的训练效果。
本公开实施例提供模型训练方法和装置、电子设备、存储介质,具体通过如下实施例进行说明,首先描述本公开实施例中的模型训练方法。
本公开实施例提供的模型训练方法,涉及机器学习技术领域。本公开实施例提供的模型训练方法可应用于终端中,也可应用于服务器端中,还可以是运行于终端或服务器端中的软件。在一些实施例中,终端可以是智能手机、平板电脑、笔记本电脑、台式计算机或者智能手表等;服务器端可以配置成独立的物理服务器,也可以配置成多个物理服务器构成的服务器集群或者分布式系统,还可以配置成提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN以及大数据和人工智能平台等基础云计算服务的云服务器;软件可以是实现模型训练方法的应用等,但并不局限于以上形式。
本公开实施例可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
参照图1,根据本公开实施例第一方面实施例的模型训练方法,包括但不限于包括步骤 S100至步骤S500。
S100,根据记账权从原始区块链中获取原始数据;
S200,根据原始数据对本地模型的初始模型参数进行更新,得到目标模型参数;
S300,将目标模型参数同步到预记账的新区块;
S400,将新区块添加至原始区块链中,得到当前区块链;
S500,获取当前区块链的区块模型参数;
S600,根据区块模型参数的梯度更新本地模型,得到目标模型。
在步骤S100中,记账节点根据记账权从原始区块链中获取原始数据,其中原始区块链指一种去中心化的分布式账本系统,原始数据指当前原始区块链上的存储的数据。由于区块链中包含多个节点,点对点网络下会存在较高的网络延迟,各个节点所观察到的交易事务先后顺序不可能完全一致,因此在本申请的区块链中,需要设计一种机制,例如共识机制,利用共识机制对在某一个时间段内发生事务的先后顺序进行共识,共识机制在区块链中扮演着核心的地位,共识机制决定了谁有记账的权利,以及记账权利的选择过程和理由。记账节点为区块链中想要记账的节点,记账权指记账节点拥有在区块链中记账的权限,在基于区块链的联邦学习框架下,记账权指记账节点具有更新区块链的模型参数的权利,具体为:记账节点可以将新增的账本信息,例如新区块的区块信息,记录到区块链上,由区块链的其他节点对区块链中更新的区块信息进行同步,只有拥有记账权的节点才能够更新账本信息,没有拥有记账权的节点没有权限更新账本信息,通过记账权限制部分节点才能记账,能够提高安全性,防止在所有节点都有记账权的情况下,存在某些恶意节点向区块链更新虚假的信息,从而影响模型训练的效果。
需要说明的是,本申请实施例提到的共识机制包括但不限于POW、POS、DPOS和拜占庭容错等,在本申请实施例中,记账节点均可采用以上的共识机制来争夺记账权。
在步骤S200中,根据原始数据对本地模型的初始模型参数进行更新,得到目标模型参数,记账节点拥有记账权之后,就拥有了更新区块链信息的权利,在记账节点更新区块链信息之前,可以获取原始区块链的原始数据,根据原始数据更新记账节点对应的本地模型,即记账节点在本地存储的模型,此时本地模型还未共享到区块链上,初始模型参数指本地模型存储的模型参数,目标模型参数为记账节点根据更新算法对初始模型参数进行更新后的模型参数,本申请实施例的多种更新算法可以被设置,如加权平均,取最小值,取最大值,取中位数。例如,初始模型参数为ua,区块链中各节点对应的本地模型参数为ub1,ub2,ub3,…ubn,对初始模型参数进行更新后的目标模型参数uc可通过公式(1)或公式(2)或公式(3)得到:
uc=min(ua,ub1,ub2,ub3…un) (1)
uc=max(ua,ub1,ub2,ub3…un) (2)
uc=mean(ua,ub1,ub2,ub3…un) (3)
其中,公式(1)的目标模型参数uc是通过获取初始模型参数ua和各节点的本地模型参数ub1,ub2,ub3,…ubn中的最小值得到,公式(2)的目标模型参数uc是通过获取初始模型参数ua和各节点的本地模型参数ub1,ub2,ub3,…ubn中的最大值得到,公式(3)的目标模型参数uc是通过获取初始模型参数ua和各节点的本地模型参数ub1,ub2,ub3,…ubn 中的中位数得到。
在一些实施例中,步骤S200具体包括步骤:根据记账权对本地模型的初始模型参数进行加权处理,得到目标模型参数,其中进行加权处理的权重可根据实际需求设置,例如可将记账节点的初始模型参数的权重设置高一些,将区块链中其他节点的权重设置低一些,对本地模型的初始模型参数ua进行加权处理,得到的目标模型参数uc可通过公式(4)得到:
uc=ua*c0+ub1*c1+ub2*c2+ub3*c3....+ubn*cn (4)
其中,公式(4)的c0为初始模型参数ua的权值,c1为节点ub1的权值,c2为节点ub2的权值,c3为节点ub3的权值,cn为节点ubn的权值。
在步骤S300中,记账节点将目标模型参数同步到预记账的新区块。
在步骤S400中,将新区块添加至原始区块链中,得到当前区块链,换句话说,就是将新区块上链,以实现区块链的更新。
在一些实施例中,步骤S400具体包括步骤:记账节点通过哈希指针将新区块连接至原始区块链的目标区块,得到当前区块链;具体为:记账节点将更新过的目标模型参数同步至新区块,具体是将目标模型参数写入新区块的区块头中,然后通过新区块的哈希指针,将新区块指向原始区块链的目标区块,并且将新区块连接至目标区块,得到当前区块链,其中目标区块为当前最新加入原始区块的区块,当前区块链为原始区块链加入新区块后的区块。
在步骤S500中,记账节点获取当前区块链的区块模型参数,区块模型参数指区块链的训练模型对应的区块模型参数,其中区块模型参数是由区块链的各节点已上传至区块链的模型参数得到的,将各节点的模型参数结合在一起得到区块模型参数,并且由区块模型参数训练区块链的训练模型,结合多个节点的模型参数,使区块链的训练模型的结果更为准确。
在步骤S600中,记账节点根据区块模型参数的梯度更新本地模型,得到目标模型,具体为:通过区块模型参数的梯度变换,不断调整训练过程中的区块模型参数,使训练模型达到理想的效果,得到目标模型。
在一些实施例中,如图2所示,步骤S600具体包括步骤:
S610,获取当前区块链中参与方节点的训练结果;
S620,根据训练结果和区块模型参数的梯度,更新目标模型参数;
S630,根据更新后的目标模型参数更新本地模型,得到目标模型。
在步骤S610至步骤S630中,记账节点获取当前区块链中参与方节点的训练结果,其中参与方节点指没有拥有记账权的节点,参与方节点的训练过程为:从区块链中下载模型参数,例如区块链模型参数,参与方节点根据下载的模型参数,使用本地的数据训练模型参数,得到训练结果,参与方节点得到训练结果后,将训练结果上链以实现数据同步,其中区块链模型参数包括记账节点新上传的新区块的区块信息,新区块的区块信息指新区块的本地模型的模型参数,以及记账节点在记账过程中所处理的数据。记账节点获取各参与方节点的训练结果后,将这些训练结果进行汇聚,根据汇聚后的训练结果更新目标模型参数,通过更新后的目标模型参数更新本地模型,在更新本地模型的过程中,可以通过调整区块模型参数的梯度,对更新后的本地模型进行下一轮训练的迭代,直到满足理想的训练效果,停止训练,得到目标模型。
在一些实施例中,如图3所示,在步骤S100之前,记账节点获取记账权,具体包括步骤:
S710,从原始区块链获取预先设置的算力难度;
S720,获取随机数;
S730,根据随机数和算力难度,从原始区块链获取记账权。
在步骤S710至步骤S730中,以POW机制为例,记账节点获得记账权需要付出一定的计算代价,记账节点的计算成本越多,被其他节点信任的可能性越大,在本申请实施例基于区块链的联邦学习框架下,记账节点从原始区块链中获取预先设置的算力难度,算力难度是根据区块链的困难程度,衡量在给定目标下节点新挖掘一个区块所需要计算的难度有多大。采用POW共识的区块链网络必须解决非常复杂的计算问题才能查找新的区块并维持网络的运行,其中,计算问题指的是数学问题。POW规定,当一笔交易产生后,每一个想要记账的节点,都需要依靠自己的计算能力与他人竞争、争夺记账的权力,竞争的方式是每过一定的预设时间,就会进行一轮算力比赛,各个需要争夺记账权的节点通过不断地哈希碰撞去求解的一个数学值,具体为:通过获取随机数,然后验证这个随机数的合理性,节点们需要在算力难度内,例如在目标哈希的范围(小于或等于)内求得正确的随机数,来获取原始区块的记账权,如果记账节点在规定的求解时间中最先求得正确的随机数,则该记账节点拥有记账权,如果记账节点没有在规定的求解时间中求得正确的随机数,或者记账节点在规定的求解时间中求得正确的随机数但记账节点并不是求解最快的节点,则该记账节点不能拥有记账权。
需要说明的是,为了便于理解争夺记账权的原理,具体介绍区块链中区块的组成,区块是由区块头和区块体组成的,其中区块体记录交易数据,区块头通常包括以下六个部分:
第一部分:版本号,用于跟踪软件/协议的更新。
第二部分:区块链中该区块的上一个区块的哈希值,使用SHA256算法计算。
第三部分:Merkle根,为了在区块中体现出交易而做的一个计算,主要是解决账本中交易记录哈希计算的效率问题,该区块中交易的Merkle树根的哈希值,同样采用SHA256算法计算。
第四部分:时间戳,该区块产生的近似时间,即添加一个新的区块后变为新区块生成的时间,但是其是否有效需要其他节点的认可。
第五部分:难度目标,即Target是该区块工作量证明算法的目标值。
第六部分:Nonce,即随机常数,用于工作量证明算法的计数器,这个随机常数,是每次计算一次哈希值时就会改变一次。计算Nonce值的过程就是对区块头中的六个部分数据不断的计算哈希值,直至找到能使区块哈希小于Target的Nonce。
在一些实施例中,对本申请实施例的争夺记账权的过程进行举例,需要理解的是,下面描述仅是示例性说明,而不是对本申请的具体限制。
首先,记账节点获取难度目标Target,并且随机获取一个随机常数Nonce,然后计算区块头哈希值,得到哈希值后与Target进行对比,如果哈希值小于或等于Target,则运算结束,记账节点获得本轮的记账权,将当前的Nonce记录到新的区块头中,如果哈希值大于Target,则需要不断的修改Nonce值,例如重新获取随机值或者将Nonce值加1,然后重新计算区块头的哈希值,以此继续,直到哈希值小于或等于Target。谁先找到满足一定条件的Nonce值,且通知区块链中其他节点,获取其他节点的认可,谁就能获得记账权的权利。最终,获得记账权的记账节点,它所打包的新区块会连接到区块链的脸上,同时该节点处理的数据也会被全网的奇特节点计入各自的账本中,以达到信息的同步。
在一些实施例中,本申请提到的模型训练方法具体还包括步骤:
将目标模型参数发送给原始区块链的参与方节点,以使参与方节点根据目标模型参数得到更新操作意见;
统计同意更新操作的同意数量;
判断同意数量是否大于预设值;若判断结果为是,则执行步骤S400;若判断结果为否,则执行步骤S100;
具体地,在步骤“将目标模型参数发送给原始区块链的参与方节点,以使参与方节点根据目标模型参数得到更新操作意见,统计同意更新操作的同意数量”中,记账节点将目标模型参数发送给原始区块链的参与方节点,以使参与方节点根据目标模型参数得到更新操作意见,其中更新操作意见包括同意更新操作;参与方节点没有记账权,记账节点统计同意更新操作的同意数量,其中参与方节点在接收到新区块时,它将根据自己预设的规则列表对其进行验证,每个参与方节点用于验证的规则不一定相同,如果新区块没有通过参与方节点的验证,该区块将会被拒绝,参与方节点的更新操作意见为不同意更新操作,如果新区块通过参与方节点的验证,该区块将会被接受,参与方节点的更新操作意见为同意更新操作。在实际应用中,预设的规则主要包括如下内容:新区块的数据结构的语法是否正确、新区块的区块头哈希是否满足预设的算力难度、新区块的时间是否正确、新区块的大小是否在允许范围内、新区块中的所有交易是否有效等,各参与方节点可以自行设置不同的规则对新区块进行验证,在此不再赘述。
统计同意更新操作的同意数量之后,判断同意数量是否大于预设值;若判断同意数量大于预设值,则执行步骤S400,即将预记账的新区块添加至原始区块链中,得到当前区块链;若判断同意数量小于或等于预设值,则执行步骤S100,即记账节点重新获取并争夺记账权。
在一些实施例中,对本申请实施例的参与节点验证新区块的过程进行举例,需要理解的是,下面描述仅是示例性说明,而不是对本申请的具体限制。
当记账节点发起一次参数更新后,该记账节点立刻向附近的节点广播,附近节点会检查这次更新是否有效,如有效,附近节点会同意这次更新,并加入到广播中,当网络中半数以上节点同意后,这次更新被正式承认,写入区块中,当网络中半数及半数以下的节点同意,这次更新不会被正式承认,不能将新区块添加至区块链中,本申请实施例通过引入共识机制,当大部分节点同意更新后,才能更新区块链,能够有效防止在中心化网络中,中心节点可能产生的恶意行为,保证系统在没有中心化监督的情况下可以顺利运作,提升系统的鲁棒性。
在一些实施例中,本申请提到的模型训练方法具体还包括步骤:
对目标训练模型的更新质量进行评估,以得到评估结果;
根据评估结果生成对当前区块链的访问时限。
在步骤“对目标训练模型的更新质量进行评估,以得到评估结果,根据评估结果生成对当前区块链的访问时限”中,为了促进区块链中的各节点积极更新模型参数,通过记账来促进数据流转和保持高质量的数据,在记账过程中,记账节点会获得一定的奖励,例如组织方发放实物奖励,在对记账节点进行奖励之前,首先对记账节点更新的目标训练模型的更新质量进行评估,以得到评估结果,例如,目标训练模型的准确率比更新前的训练模型的准确率高,则认为记账节点进行了有效的更新,此时可以给予记账节点一定的奖励,如果目标训练模型的准确率比更新前的迅猛模型的准确率低,则认为记账节点进行了无效的更新,此时可以给记账节点一定的惩罚,在实际应用中,对记账节点的奖励可以转换为增加对区块链访问的时限,对记账节点的惩罚可以转换为减少对区块链访问的时间,记账节点通过经常地参与到记账过程,维持对区块链上最新的模型参数访问的权限,需要说明的是,具体的访问时限可以根据实际需求自行设置,在此不再赘述。
在一些实施例中,在链式联邦学习框架下,对记账节点的token奖励转化为对区块链访问的时限,其中token又称为代币,代币是附着于区块链系统并在该系统内产生和使用的记账单位,区块链中的token放在金融领域中,表示的是账单,放在游戏领域中,表示的是积分,是用于兑换某种权益的证明,token能促进区块链所有的转账交易,用于维护整个区块链网络的稳定性。
具体地,token奖励的释放公式(5)为:
y=x*a*b0+x*a*b1+x*a*b2+…+x*a*bn (5)
其中,x是奖励衰减的块间隔,a是每个块的初始奖励,b为衰减系数,n为时间,y是token总量。
在一些实施例中,可以将对每个节点的时间限制写入区块链协议中,该节点对区块信息的访问时间会被记账,具体的访问时间可由公式(6)计算得到:
T=α*t (6)
其中,T代表访问时间,t代表token量,α为兑换系数,节点对区块信息访问时长计入记账信息,当访问时间超出,所有尝试访问区块信息活动被认为非法。
在一些实施例中,为了防止记账节点恶意反馈错误的模型参数,在链式联邦学习框架初期,区块链的节点不多,区块更新可能被个别算力强势的节点主导,为了解决这一问题,可以给上链的模型梯度变换设置一定的阈值,阈值会随区块链中各节点的参与程度进行变换,随着参与到区块链的节点增多,节点获得记账权的难度将会增大,因此节点的恶意行为被其他节点信任的概率会变低,该措施预防能够预防某些节点恶意使用垃圾数据获得垃圾模型参数,再上传垃圾模型参数更新整个网络的参数,本申请实施例通过设置阈值,能够预防整个网络的参数有较大变化,对整个网络良好有突出贡献的节点,可以将其阈值设高,代表其被信任,对于刚参与的节点或提供不良数据不良参数的节点,其阈值会较低,代表其对整个网络的影响力较低。此外,还可以定期对参与到区块链更新的记账节点的行为进行评估,例如评估记账节点数据集合参数的更新质量、评估记账节点记账参与的活跃度等,其中对记账节点数据集和参数的更新质量可以通过预测准确率得到,具体为:将记账节点更新前的模型准确率与更新后模型准确率对比,利用更新后的模型参数训练更新前的数据,如果准确率变高,则为高质量参数,如果准确率变低,则为低质量参数。本申请实施例通过采取额外的奖惩措施,营造良性循环,进而提升模型训练的效果。
在一些实施例中,如图4所示,对本申请实施例的模型训练的整体流程进行举例,需要理解的是,下面描述仅是示例性说明,而不是对本申请的具体限制。
区块链的各分布式节点争夺记账权,将争夺记账权成功的节点作为记账节点,记账节点将更新本地模型的模型参数,并且将预记账的新区块上链,对记账节点的更新质量进行评估,得到评估结果,若记账节点的更新质量高,则能够获取一定的奖励,记账节点从区块链上获取更新后的模型参数,根据更新后的模型参数迭代训练本地的模型,直到满足预设的训练要求,通过不断使各节点参与到模型参数更新的过程,能够提升模型训练的准确度。
本公开实施例还提供一种模型训练装置,如图5所示,可以实现上述模型训练方法,该装置包括:第一获取模块810、第一更新模块820、参数同步模块830、区块添加模块840、第二获取模块850和第二更新模块860,第一获取模块810用于根据记账权从原始区块链中获取原始数据;第一更新模块820用于根据原始数据对本地模型的初始模型参数进行更新,得到目标模型参数;参数同步模块830于将目标模型参数同步到预记账的新区块;区块添加模块840用于将新区块添加至原始区块链中,得到当前区块链;第二获取模块850用于获取当前区块链的区块模型参数;第二更新模块860用于根据区块模型参数的梯度更新本地模型,得到目标模型。
本公开实施例提出的模型训练装置,通过实现上述模型训练方法,将联邦学习与区块链技术进行结合,使想要记账的记账节点从原始区块链中获取记账权,不再依赖于单一的中心节点记账,提高模型训练的安全性,记账节点根据记账权更新本地模型的初始模型参数,得到目标模型参数,根据目标模型参数,记账节点将预记账的新区块添加至原始区块链中,得到当前区块,记账节点获取当前区块链的区块模型参数,根据区块模型参数的梯度更新本地模型,得到目标模型,通过不断更新区块模型参数来更新本地模型,得到目标模型,能够提升模型训练的准确度。
本公开实施例还提供了一种电子设备,包括:
至少一个处理器,以及,
与至少一个处理器通信连接的存储器;其中,
存储器存储有指令,指令被至少一个处理器执行,以使至少一个处理器执行指令时实现如本申请第一方面实施例中任一项的方法。
下面结合图6对电子设备的硬件结构进行详细说明。该电子设备包括:处理器901、存储器902、输入/输出接口903、通信接口904和总线905。
处理器901,可以采用通用的CPU(CentralProcessin(Unit,中央处理器)、微处理器、应用专用集成电路(ApplicationSpecificIntegratedCircuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本公开实施例所提供的技术方案;
存储器902,可以采用ROM(ReadOnlyMemory,只读存储器)、静态存储设备、动态存储设备或者RAM(RandomAccessMemory,随机存取存储器)等形式实现。存储器902可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器902中,并由处理器901来调用执行本公开实施例的模型训练方法;
输入/输出接口903,用于实现信息输入及输出;
通信接口904,用于实现本设备与其他设备的通信交互,可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信;和
总线905,在设备的各个组件(例如处理器901、存储器902、输入/输出接口903和通信接口904)之间传输信息;
其中处理器901、存储器902、输入/输出接口903和通信接口904通过总线905实现彼此之间在设备内部的通信连接。
第四方面,本公开实施例还提供一种存储介质,该存储介质是计算机可读存储介质,该计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令用于使计算机执行如本申请第一方面实施例中任一项的方法。
存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序以及非暂态性计算机可执行程序。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施方式中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至该处理器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
本公开实施例提出的模型训练方法和装置、电子设备、存储介质,通过将联邦学习与区块链技术进行结合,使想要记账的记账节点从原始区块链中获取记账权,不再依赖于单一的中心节点记账,提高模型训练的安全性,记账节点根据记账权更新本地模型的初始模型参数,得到目标模型参数,根据目标模型参数,记账节点将预记账的新区块添加至原始区块链中,得到当前区块,记账节点获取当前区块链的区块模型参数,根据区块模型参数的梯度更新本地模型,得到目标模型,通过不断更新区块模型参数来更新本地模型,得到目标模型,能够提升模型训练的准确度。
本公开实施例描述的实施例是为了更加清楚的说明本公开实施例的技术方案,并不构成对于本公开实施例提供的技术方案的限定,本领域技术人员可知,随着技术的演变和新应用场景的出现,本公开实施例提供的技术方案对于类似的技术问题,同样适用。
本领域技术人员可以理解的是,图1-图4中示出的技术方案并不构成对本公开实施例的限定,可以包括比图示更多或更少的步骤,或者组合某些步骤,或者不同的步骤。
以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、设备中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。
本申请的说明书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
应当理解,在本申请中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“A 和/或B”可以表示:只存在A,只存在B以及同时存在A和B三种情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括多指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储程序的介质。
以上参照附图说明了本公开实施例的优选实施例,并非因此局限本公开实施例的权利范围。本领域技术人员不脱离本公开实施例的范围和实质内所作的任何修改、等同替换和改进,均应在本公开实施例的权利范围之内。
Claims (10)
1.模型训练方法,其特征在于,包括:
根据记账权从原始区块链中获取原始数据;
根据所述原始数据对本地模型的初始模型参数进行更新,得到目标模型参数;
将所述目标模型参数同步到预记账的新区块;
将所述新区块添加至所述原始区块链中,得到当前区块链;
获取所述当前区块链的区块模型参数;
根据所述区块模型参数的梯度更新所述本地模型,得到目标模型。
2.根据权利要求1所述的模型训练方法,其特征在于,在所述根据记账权从原始区块链中获取原始数据之前,所述方法还包括:获取所述记账权,具体包括:
从所述原始区块链获取预先设置的算力难度;
获取随机数;
根据所述随机数和所述算力难度,从所述原始区块链获取记账权。
3.根据权利要求1所述的模型训练方法,其特征在于,所述根据所述原始数据对本地模型的初始模型参数进行更新,得到目标模型参数,包括:
根据所述原始数据对所述本地模型的所述初始模型参数进行加权处理,得到所述目标模型参数。
4.根据权利要求1所述的模型训练方法,其特征在于,所述将所述新区块添加至所述原始区块链中,得到当前区块链,包括:
通过哈希指针将所述新区块连接至所述原始区块链的目标区块,得到所述当前区块链;所述目标区块为当前最新加入所述原始区块链的区块。
5.根据权利要求4所述的模型训练方法,其特征在于,所述根据所述区块模型参数的梯度更新所述本地模型,得到目标模型,包括:
获取所述当前区块链中参与方节点的训练结果;其中所述参与方节点没有所述记账权;
根据所述训练结果和所述区块模型参数的梯度,更新所述目标模型参数;
根据更新后的所述目标模型参数更新所述本地模型,得到所述目标模型。
6.根据权利要求1至5任一项所述的模型训练方法,其特征在于,在所述根据所述原始数据对本地模型的初始模型参数进行更新,得到目标模型参数之后,所述方法还包括:
将所述目标模型参数发送给所述原始区块链的参与方节点,以使所述参与方节点根据所述目标模型参数得到更新操作意见;其中所述更新操作意见包括同意更新操作;所述参与方节点没有所述记账权;
统计所述同意更新操作的同意数量;
若所述同意数量大于预设值,则执行所述将所述新区块添加至所述原始区块链中,得到当前区块链的步骤。
7.根据权利要求1至5任一项所述的模型训练方法,其特征在于,在根据所述区块模型参数的梯度更新所述本地模型,得到目标模型之后,所述方法还包括:
对所述目标训练模型的更新质量进行评估,以得到评估结果;
根据所述评估结果生成对所述当前区块链的访问时限。
8.模型训练装置,其特征在于,包括:
第一获取模块:用于根据记账权从原始区块链中获取原始数据;
第一更新模块:用于根据所述原始数据对本地模型的初始模型参数进行更新,得到目标模型参数;
参数同步模块:用于将所述目标模型参数同步到预记账的新区块;
区块添加模块:用于将所述新区块添加至所述原始区块链中,得到当前区块链;
第二获取模块:用于获取所述当前区块链的区块模型参数;
第二更新模块:用于根据所述区块模型参数的梯度更新所述本地模型,得到目标模型。
9.电子设备,其特征在于,所述电子设备包括存储器和处理器,其中,所述存储器中存储有程序,在所述程序被所述处理器执行时,所述处理器用于执行如权利要求1至7中任一项所述的方法。
10.计算机可读存储介质,其特征在于,所述计算机可读存储有计算机程序,在所述计算机程序被计算机执行时,所述计算机用于执行如权利要求1至7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111217158.0A CN114169387A (zh) | 2021-10-19 | 2021-10-19 | 模型训练方法和装置、电子设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111217158.0A CN114169387A (zh) | 2021-10-19 | 2021-10-19 | 模型训练方法和装置、电子设备、存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114169387A true CN114169387A (zh) | 2022-03-11 |
Family
ID=80476926
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111217158.0A Pending CN114169387A (zh) | 2021-10-19 | 2021-10-19 | 模型训练方法和装置、电子设备、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114169387A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115080968A (zh) * | 2022-06-08 | 2022-09-20 | 陕西天诚软件有限公司 | 一种带有智能安全防护的人工智能服务器 |
TWI818708B (zh) * | 2022-09-02 | 2023-10-11 | 英業達股份有限公司 | 驗證模型更新的方法 |
-
2021
- 2021-10-19 CN CN202111217158.0A patent/CN114169387A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115080968A (zh) * | 2022-06-08 | 2022-09-20 | 陕西天诚软件有限公司 | 一种带有智能安全防护的人工智能服务器 |
CN115080968B (zh) * | 2022-06-08 | 2023-06-02 | 陕西天诚软件有限公司 | 一种带有智能安全防护的人工智能服务器 |
TWI818708B (zh) * | 2022-09-02 | 2023-10-11 | 英業達股份有限公司 | 驗證模型更新的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109964446B (zh) | 一种基于投票的共识方法 | |
CN109426952B (zh) | 一种区块链架构 | |
CN113794675B (zh) | 基于区块链和联邦学习的分布式物联网入侵检测方法及系统 | |
Cocco et al. | Modeling and Simulation of the Economics of Mining in the Bitcoin Market | |
CN110580653B (zh) | 一种基于交易的区块链共识机制 | |
CN109981281B (zh) | 基于区块链提案随机共识确定候选元素的方法及装置 | |
US20200044854A1 (en) | Estimable proof-of-work for blockchain | |
Feng et al. | Towards random-honest miners selection and multi-blocks creation: Proof-of-negotiation consensus mechanism in blockchain networks | |
CN114169387A (zh) | 模型训练方法和装置、电子设备、存储介质 | |
CN109242535A (zh) | 基于参与度的共识机制dpop进行行为价值量化的方法和系统 | |
CN110611701A (zh) | 一种基于区块链的参数配置和交易处理方法 | |
Bugday et al. | Creating consensus group using online learning based reputation in blockchain networks | |
CN113570065A (zh) | 基于联盟链和联邦学习的数据管理方法、装置及设备 | |
CN112613601B (zh) | 神经网络模型更新方法、设备及计算机存储介质 | |
CN113553377B (zh) | 基于区块链和联邦学习的数据共享方法及装置 | |
CN113987080A (zh) | 基于信誉共识的区块链激励方法、装置及相关产品 | |
CN115622777A (zh) | 一种基于联盟链的多中心联邦学习数据共享方法 | |
CN112118138A (zh) | 区块链共识机制实现系统和方法 | |
CN111966971A (zh) | 版权产品的收益分配方法、装置、服务器及存储介质 | |
Aggarwal et al. | A Structural Analysis of Bitcoin Cash's Emergency Difficulty Adjustment Algorithm | |
Hsueh et al. | EPoW: Solving blockchain problems economically | |
CN111222885B (zh) | 数据处理请求背书方法、装置、计算机设备及存储介质 | |
CN112598132A (zh) | 模型训练方法及装置、存储介质、电子装置 | |
Ivanov et al. | Blockumulus: a scalable framework for smart contracts on the cloud | |
CN111814064A (zh) | 基于Neo4j的异常用户处理方法、装置、计算机设备和介质 |
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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40062550 Country of ref document: HK |