CN109543726A - 一种训练模型的方法及装置 - Google Patents
一种训练模型的方法及装置 Download PDFInfo
- Publication number
- CN109543726A CN109543726A CN201811314282.7A CN201811314282A CN109543726A CN 109543726 A CN109543726 A CN 109543726A CN 201811314282 A CN201811314282 A CN 201811314282A CN 109543726 A CN109543726 A CN 109543726A
- Authority
- CN
- China
- Prior art keywords
- calculate node
- data
- data subset
- client device
- calculate
- 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
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例公开了一种训练模型的方法及装置,其中方法包括:通过从区块链系统中确定第一数据子集所在的M个计算节点,客户端设备可以从M个计算节点中选择K个计算节点进行模型训练,并获取K个计算节点中的P个计算节点的训练结果;进一步地,客户端设备可以根据Y个数据子集中每个数据子集的训练结果,得到模型参数。本申请实施例中,通过采用区块链系统中的计算节点训练模型,可以无需构建专属的机器学习算法群,从而可以节省成本,减少社会资源的浪费;且,通过选择区块链系统中具有较强存储和处理能力的计算节点运行算法,可以提高模型的训练效率,进而得到较好的模型训练效果。
Description
技术领域
本申请涉及数据处理技术领域,尤其涉及一种训练模型的方法及装置。
背景技术
现阶段,随着人工智能技术的深入发展,采用机器学习方法对模型进行训练逐渐成为算法开发领域的热门研究方向。具体地说,开发人员通常可以在客户端设备上开发可以用于训练模型的算法,并使用客户端设备获取的用于训练模型的数据集合和用于训练模型的算法进行模型训练,得到模型参数。然而,该种方法依赖于客户端设备的处理性能,对于比较复杂的算法或者处理量比较大的数据,若客户端设备的处理性能不够,可能会使得算法的运行时间较长,从而导致算法的运行效率较低,模型训练效果较差。
为了提高算法的运行效率,得到比较好的模型训练效果,很多科研机构通常会构建专属的机器学习算法集群,并采用专属的机器学习算法集群中的多个客户端设备对私有数据进行训练。采用该种方法,虽然能够保证客户端设备的处理性能满足要求,但是构建专属的机器学习算法集群需要耗费大量的人力和物力,使得开发的成本较高;且,由于专属的机器学习算法集群可能并不能够被其他的科研机构所使用,因此可能会使得不同的科研机构构建不同的机器学习算法集群,从而造成资源的浪费。
综上,目前亟需一种训练模型的方法,用于解决采用现有技术构建专属的机器学习算法集群训练模型参数所导致的成本较高、资源浪费的技术问题。
发明内容
本申请实施例提供一种训练模型的方法,用于解决采用现有技术构建专属的机器学习算法集群训练模型参数所导致的成本较高、资源浪费的技术问题。
本申请实施例提供的一种训练模型的方法,包括:
客户端设备获取用于训练模型的数据集合的标识和用于训练模型的算法;
所述客户端设备根据所述数据集合的标识,从区块链系统中获取与所述数据集合的标识对应的存储关系表,所述存储关系表包括所述数据集合的Y个数据子集的标识和所述Y个数据子集中每个数据子集所在的多个计算节点的标识;
针对于第一数据子集,所述客户端设备根据所述存储关系表,确定所述第一数据子集所在的M个计算节点,并根据所述M个计算节点的第一属性信息,从所述M个计算节点中选择K个计算节点;所述第一数据子集为所述Y个数据子集中的任一数据子集;所述M个计算节点中每个计算节点的第一属性信息包括所述计算节点的在线稳定性、计算性能、计算成本、所述计算节点的计算结果可信度中的一项或多项;所述客户端设备将所述算法和所述数据集合的标识发送给所述K个计算节点,以使所述K个计算节点分别使用所述第一数据子集中的数据和所述算法对模型进行训练;所述客户端设备获取所述K个计算节点中的P个计算节点对应的所述第一数据子集的训练结果;其中,M≥K≥P,P≥2,M、K和P均为整数;
所述客户端设备根据所述Y个数据子集中每个数据子集的训练结果,得到模型参数。
可选地,所述客户端设备获取所述K个计算节点中的P个计算节点对应的所述第一数据子集的训练结果之后,还包括:
所述客户端设备对所述P个计算节点对应的所述第一数据子集的训练结果进行分析,若确定所述P个计算节点存在训练结果不可信的第一计算节点,则向区块链系统发送第一信息,所述第一信息用于指示所述区块链系统对所述第一计算节点的计算结果可信度进行更新。
可选地,所述方法还包括:
所述客户端设备将第一收入分配策略分别发送给所述K个计算节点,所述第一收入分配策略包括训练模型所需时长最短的P个计算节点所能得到的收入。
本申请实施例提供的一种训练模型的方法,包括:
区块链系统中的计算节点接收客户端设备发送的用于训练模型的算法和所述数据集合的标识;
所述计算节点根据所述数据集合的标识,获取所述计算节点存储的所述数据集合的数据子集;
所述计算节点使用所述数据子集中的数据和所述算法,对所述模型进行训练,并将得到训练结果的指示信息发送给所述客户端设备;所述数据子集中的数据为通过下载网络上的公开数据得到的。
本申请实施例提供一种客户端设备,该客户端设备包括:
获取模块,用于获取用于训练模型的数据集合的标识和用于训练模型的算法;
根据所述数据集合的标识,从区块链系统中获取与所述数据集合的标识对应的存储关系表,所述存储关系表包括所述数据集合的Y个数据子集的标识和所述Y个数据子集中每个数据子集所在的多个计算节点的标识;
处理模块,用于针对于第一数据子集,根据所述存储关系表,确定所述第一数据子集所在的M个计算节点,并根据所述M个计算节点的第一属性信息,从所述M个计算节点中选择K个计算节点;所述第一数据子集为所述Y个数据子集中的任一数据子集;所述M个计算节点中每个计算节点的第一属性信息包括所述计算节点的在线稳定性、计算性能、计算成本、所述计算节点的计算结果可信度中的一项或多项;将所述算法和所述数据集合的标识发送给所述K个计算节点,以使所述K个计算节点分别使用所述第一数据子集中的数据和所述算法对模型进行训练;获取所述K个计算节点中的P个计算节点对应的所述第一数据子集的训练结果;其中,M≥K≥P,P≥2,M、K和P均为整数;
根据所述Y个数据子集中每个数据子集的训练结果,得到模型参数。
可选地,所述处理模块还用于:
对所述P个计算节点对应的所述第一数据子集的训练结果进行分析,若确定所述P个计算节点存在训练结果不可信的第一计算节点,则向区块链系统发送第一信息,所述第一信息用于指示所述区块链系统对所述第一计算节点的计算结果可信度进行更新。
可选地,所述处理模块还用于:
将第一收入分配策略分别发送给所述K个计算节点,所述第一收入分配策略包括训练模型所需时长最短的P个计算节点所能得到的收入。
本申请实施例提供一种计算节点,该计算节点包括:
收发模块,用于接收客户端设备发送的用于训练模型的算法和所述数据集合的标识;
获取模块,用于根据所述数据集合的标识,获取所述计算节点存储的所述数据集合的数据子集;
处理模块,用于使用所述数据子集中的数据和所述算法,对所述模型进行训练;所述数据子集中的数据为通过下载网络上的公开数据得到的;
所述收发模块,还用于将得到训练结果的指示信息发送给所述客户端设备。
本申请的上述实施例中,通过获取与数据集合的标识对应的存储关系表,客户端设备可以从区块链系统中确定第一数据子集所在的M个计算节点,并根据M个计算节点的第一属性信息,从M个计算节点中选择K个计算节点,进而将算法和数据集合的标识发送给K个计算节点;相应地,K个计算节点中的每一个计算节点可以使用第一数据子集中的数据和算法对模型进行训练,并将成功得到训练结果的指示信息发送给客户端设备,使得客户端设备可以获取K个计算节点中的P个计算节点对应的第一数据子集的训练结果;进一步地,客户端设备可以根据Y个数据子集中每个数据子集的训练结果,得到模型参数。本申请实施例中,通过采用区块链系统中的计算节点训练模型,可以无需构建专属的机器学习算法群,从而可以节省成本,减少资源的浪费;且,通过选择区块链系统中具有较强存储能力和处理能力的计算节点运行算法,可以保证算法的处理速度,提高模型的训练效率,进而得到较好的模型训练效果;由于区块链系统可以存储并更新每个计算节点的在线稳定性,平均历史处理时间和节点的计算结果可信度等信息,从而可以避免客户端设备和/或计算节点在模型训练的过程中进行造假,使得模型训练的过程变得公开、透明,进而能够有效地保证用户的权利。此外,通过将数据集合划分为Y个数据子集,并采用多个计算节点处理同一个数据子集,可以在提高计算节点处理效率的同时保证数据集合的安全,避免由一个计算节点处理数据集合或数据子集所造成的计算结果不准确;且,用于训练模型的数据集合可以为公开数据,通过采用区块链系统中的计算节点进行模型训练,可以无需客户端设备下载数据集合,极大地节省了模型训练的成本。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例适用的一种系统架构示意图;
图2为本申请实施例中一种训练模型的方法对应的流程示意图;
图3为本申请实施例提供的一种客户端设备的结构示意图;
图4为本申请实施例提供的一种计算节点的结构示意图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
图1为本申请实施例适用的一种系统架构示意图,如图1所示,该系统架构中可以包括区块链网络中的一个或多个计算节点(比如图1所示意出的计算节点101、计算节点102、计算节点103和计算节点104)和客户端设备200。其中,区块链网络中的一个或多个计算节点可以共同维护区块链网络。客户端设备200可以通过接入网络而与区块链网络中的一个或多个计算节点进行通信。
本申请实施例中,区块链网络可以是由多个计算节点组成的点对点(Peer ToPeer,P2P)网络。P2P是一种运行在传输控制协议(Transmission Control Protocol,TCP)协议之上的应用层协议,在区块链网络中的计算节点可以彼此对等,网络中不存在中心计算节点,因此每个计算节点都可以随机地连接其它计算节点。
具体实施中,区块链网络中的计算节点可以具有多种功能,比如,路由功能、交易功能、区块链功能和共识功能等。具体地说,区块链网络中的计算节点可以把其他计算节点传送过来的交易数据等信息传送给更多的计算节点以实现计算节点之间的通信;或者,区块链网络中的计算节点可以用于支持用户进行交易;或者,区块链网络中的计算节点可以用于记录历史上的所有交易;或者,区块链网络中的计算节点可以通过验证和记录交易生成区块链中的新区块。实际应用中,路由功能是区块链网络中的每个计算节点必须具有的功能,而其它功能可由本领域技术人员根据实际需要进行设置。
本申请实施例中,区块链网络中的一个计算节点可以在一台物理机(服务器)上,且一个计算节点具体可以是指服务器中运行的一个进程或者一系列进程。比如,区块链1网络中的计算节点101可以为一个服务器上运行的一个进程。
需要说明的是,本申请中所描述的计算节点可以是指计算节点所在的服务器。
基于图1所示意的系统架构,图2为本申请实施例提供的一种训练模型的方法对应的流程示意图,该方法包括:
步骤201,客户端设备获取用于训练模型的算法和用于训练模型的数据集合的标识。
此处,用于训练模型的数据集合中可以包括公开数据,公开数据是指在网络上公开的数据(比如,可以为视频数据、图像数据或者语音数据等),即可以通过搜索网络的方式来获取。本申请实施例中,用于训练模型的算法可以包括用户编写的代码程序,或者也可以为用户通过其他方式获取到的算法(比如用户通过网络下载),本申请实施例对此不做限定。
具体实施中,客户端设备获取用于训练模型的算法的方式可以有多种。在一个示例中,算法可以预先存储在客户端设备的硬盘中(或者也可以存储于内部存储器中),如此,客户端设备可以从硬盘直接获取到算法;在又一个示例中,客户端设备可以向设备a发送用于请求算法的请求消息,并接收设备a返回的响应消息,该响应消息中包括算法,如此,客户端设备可根据响应消息获取到算法。本申请实施例对此不做限定。
步骤202,客户端设备根据所述数据集合的标识,从所述区块链系统中获取与所述数据集合的标识对应的存储关系表,所述存储关系表包括所述数据集合的Y个数据子集的标识和所述Y个数据子集中每个数据子集所在的多个计算节点的标识。
本申请实施例中,区块链系统的多个计算节点中可以分别存储有数据集合的一份数据子集,比如,对于一份被划分为10个数据子集的公开图片集Test,计算节点1~计算节点20中可以存储有图片集Test的第1个数据子集,计算节点21~计算节点40中可以存储有图片集Test的第2个数据子集,……,计算节点181~计算节点200中可以存储有图片集Test的第10个数据子集。需要说明的是,一份数据子集可以存储在多个计算节点中,不同的数据子集可以存储在不同的计算节点中。在一个示例中,第二数据子集和第三数据子集为Y个数据子集中的任意两个数据子集,则存储第二数据子集的计算节点可以不同于存储第三数据子集的计算节点。如此,可以使得一个节点处理一份数据子集,避免采用同一个节点对多份数据子集进行处理而导致的处理速度较慢、处理效率不高的技术问题。
具体实施中,区块链系统中的第二计算节点可以预先通过网络获取用于训练模型的数据集合,并根据数据集合的数据量,将数据集合划分为Y个数据子集,进而将Y个数据子集分别发送给区块链系统的多个计算节点。需要说明的是,Y个数据子集中任意两个数据子集的数据量可以相同,或者也可以不同。
在一种可能的实现方式中,第二计算节点可以预先设置标准数据量,从而根据标准数据量将数据集合划分为Y个数据子集。举个例子,数据集合的数据量为95个字节,第二计算节点预先设置的标准数据量为10个字节,则第二计算节点可以根据标准数据量对数据集合中依次进行划分,得到10个数据子集,其中第1个数据子集至第9个数据子集的数据量和标准数据量相同,均为10个字节,第10个数据子集的数据量为5个字节。
本申请实施例中,第二计算节点可以为划分得到的每个数据子集选择一个或多个计算节点,并将该数据子集发送给一个或多个计算节点中的每一个计算节点。相应地,区块链系统中可以设置有存储关系表,存储关系表可以用于指示数据集合、数据集合的Y个数据子集和Y个数据子集中每一个数据子集所在的计算节点的对应关系。在一个示例中,如表1所示,存储关系表中可以包括数据集合的标识、数据集合的Y个数据子集的标识和所述Y个数据子集中每个数据子集所在的多个计算节点的标识。
表1:一种区块链系统的存储关系表示意
根据表1所示意出的存储关系表,数据集合的类型可以为Image,数据集合的标识可以为Test,且数据集合Test可以被划分为4个数据子集,这4个数据子集的标识分别为[Image]:[Test]:[1]、[Image]:[Test]:[2]、[Image]:[Test]:[3]和[Image]:[Test]:[4]。其中,数据子集[Image]:[Test]:[1]可以为数据子集Test划分得到的第1个数据子集,[Image]:[Test]:[2]为数据子集Test划分得到的第2个数据子集,[Image]:[Test]:[3]为数据子集Test划分得到的第3个数据子集,[Image]:[Test]:[4]为数据子集Test划分得到的第4个数据子集。根据表1所示,数据子集[Image]:[Test]:[1]所在的计算节点可以为计算节点J1、计算节点J2、计算节点J5、计算节点J13和计算节点J16,数据子集[Image]:[Test]:[2]所在的计算节点可以为计算节点J4、计算节点J9、计算节点J12、计算节点J14和计算节点J19,数据子集[Image]:[Test]:[3]所在的计算节点可以为计算节点J3、计算节点J8、计算节点J11、计算节点J18和计算节点J20,数据子集[Image]:[Test]:[4]所在的计算节点可以为计算节点J6、计算节点J7、计算节点J10、计算节点J15和计算节点J17。
本申请实施例中,客户端设备可以在获取到用于训练模型的数据集合的标识后,根据数据集合的标识,从区块链系统中获取与数据集合的标识对应的存储关系表。比如,客户端设备获取到的数据集合的标识为Test,则客户端设备可以通过和区块链系统进行通信,从区块链系统中获取到表1所示的存储关系表,该存储关系表中可以包括数据集合Test的4个数据子集的标识和4个数据子集中每个数据子集所在的5个计算节点的标识。
本申请实施例中,区块链系统中还可以存储有区块链系统的计算节点的相关信息,比如计算节点的在线稳定性、计算性能、处理吞吐量、数据的历史平均处理时间、计算节点的计算结果可信度和计算激励等。且,区块链系统还可以根据计算节点的业务繁忙程度和资源紧张程度等,对计算节点的相关信息中的多个信息进行更新。进一步地,客户端设备可以通过与区块链系统交互,获取区块链系统中存储的每个计算节点的相关信息。
步骤203,客户端设备获取Y个数据子集中任一数据子集的训练结果。
第一数据子集可以为Y个数据子集中的任一数据子集,下面以第一数据子集为例来描述客户端设备获取第一数据子集的训练结果的实现过程,客户端设备获取数据集合中的其它数据子集的训练结果的实现过程可以参照第一数据子集来处理。
本申请实施例中,客户端设备可以根据存储关系表,确定第一数据子集所在的M个计算节点,进而选择这M个计算节点组成第一备选计算节点集合。比如,基于表1所示意的存储关系表,若第一数据子集为数据子集[Image]:[Test]:[3],则数据子集[Image]:[Test]:[3]的第一备选计算节点集合可以为{计算节点J4,计算节点J9,计算节点J12,计算节点J14,计算节点J19}。
进一步地,客户端设备可以根据M个计算节点中每个计算节点的第一属性信息,从M个计算节点中选择K个计算节点,作为第一数据子集的待训练计算节点。其中,M个计算节点中每个计算节点的第一属性信息可以包括计算节点的在线稳定性、计算性能、计算成本、计算节点的计算结果可信度中的一项或多项。可选地,每个计算节点的第一属性信息还可以包括处理吞吐量和数据的历史平均计算处理时间。
本申请实施例中,客户端设备从M个计算节点中选择K个计算节点的方式可以有多种,比如,在示例1中,每个计算节点的第一属性信息可以包括计算节点的计算成本,如此,客户端设备可以根据M个计算节点中每个计算节点的计算成本,从M个计算节点中选择K个计算节点。在示例2中,每个计算节点的第一属性信息可以包括计算节点的在线稳定性、计算性能、计算成本、处理吞吐量、数据的历史平均计算处理时间和计算节点的计算结果可信度,如此,客户端设备可以根据M个计算节点中每个计算节点的在线稳定性、计算性能、计算成本、处理吞吐量、数据的历史平均计算处理时间和计算节点的计算结果可信度,从M个计算节点中选择K个计算节点。需要说明的是,本申请实施例中,每个计算节点的第一属性信息可以包括计算节点的在线稳定性、计算性能、计算成本、处理吞吐量、数据的历史平均计算处理时间和计算节点的计算结果可信度中的一项或多项,本申请实施例对此不做限定。
以上述示例2为例,在一种可能的实现方式中,客户端设备可以预先设置一个最高的计算成本(比如最高计算激励值为100),该计算成本可以用于指示客户端设备能够奖励给使用第一数据子集训练模型的计算节点的最高激励值。具体地,客户端设备可以获取M个计算节点中每个计算节点的计算成本,并将每个计算节点的计算成本与100进行对比,选择M个计算节点中存储成本不大于100的计算节点组成第二备选计算节点集合。举个例子,基于表1所示意的存储关系表,假设第一数据子集为数据子集[Image]:[Test]:[3],第一备选计算节点集合的5个计算节点中存在4个计算节点(比如,计算节点J4,计算节点J9,计算节点J14,计算节点J19)的计算成本不大于100,则第二备选计算节点集合中可以有计算节点J4,计算节点J9,计算节点J14,计算节点J19这4个计算节点。需要说明的是,若5个计算节点的计算成本均大于客户端设备设置的最高的计算成本,则客户端设备可以等待某一个计算节点的计算成本下降至客户端设备设置的最高的计算成本,或者客户端设备可以直接反馈给用户模型训练失败的信息。
需要说明的是,激励值可以为集群激励的一种表现形式,具体地说,即可以为客户端设备支出的、并可以用于奖励计算节点在存储客户端设备发送的数据子集(或者也可以为数据集合)和/或采用数据子集进行模型训练时所付出的成本。本申请实施例中,激励值可以为集群所有成员(此处,即区块链系统中的多个计算节点和一个或多个客户端设备)所公认的互联网或现实生活中的有价值的物体,或者也可以为集群所有成员所公认的互联网或现实生活中的一般等价物,本申请实施例对此不作具体限定。
进一步地,客户端设备可以通过与区块链系统进行交互,获取第二备选计算节点集合中各个计算节点的在线稳定性、计算性能、计算成本、处理吞吐量、数据的历史平均计算处理时间和算法的计算结果可信度等信息,并通过编写的算法为第一数据子集选择K个计算节点,作为待训练计算节点。其中,K大于等于2。
本申请实施例中,在为第一数据子集选择K个计算节点后,客户端设备可以将用于训练模型的算法和数据集合的标识分别发送给K个计算节点。相应地,针对于K个计算节点中的任一个计算节点(比如,计算节点J14),在接收到客户端设备发送的算法和数据集合的标识后,计算节点J14可以获取计算节点J14中保存的与数据集合Test的标识对应的第一数据子集。
需要说明的是,本申请实施例中,算法和数据集合的标识可以并行发送给不同的计算节点,也就是说,用于训练模型的算法和数据集合的标识可以同时发送给Y个数据子集中每一个数据子集对应的K个计算节点,如此,可以提升数据发送的效率、节省时间。
本申请实施例中,客户端设备在向K个计算节点发送算法和数据集合的标识的同时,还可以发送K个计算节点中P个计算节点的第一收入分配策略,其中,第一收入分配策略可以包括训练模型所需时长最短的P个计算节点所能得到的奖励。在一个示例中,客户端设备预先设置的第一收入分配策略对应的总激励值为500,且确定使用第一数据子集进行模型训练的3个计算节点(计算节点J4,计算节点J14,计算节点J19)中前2个得到训练结果的计算节点能够得到的激励值分别为300、200,则客户端设备可以将用于训练模型的算法、数据集合的标识和第一收入分配策略共同发送给这3个计算节点。相应地,针对于3个计算节点中的任一个计算节点(比如,计算节点J14),在得到计算节点J14中保存的第一数据子集后,计算节点J14可以使用第一数据子集中的数据和算法对模型进行训练,得到训练结果,进而将训练结果记录在区块链系统中;同时,计算节点J14可以将得到训练结果的指示信息发送给客户端设备。进一步地,客户端设备可以在接收到3个计算节点中前2个计算节点(比如,接收到指示信息的顺序依次为:计算节点J14、计算节点J4)分别发送的指示信息,并且在区块链系统网络上获取到前2个计算节点对应的第一数据子集的训练结果后,为计算节点J14奖励的激励值为300、为计算节点J4奖励的激励值为200。
需要说明的是,在P个计算节点使用第一数据子集中的数据和算法对模型进行训练的过程中,区块链系统可以记录P个计算节点中每个计算节点进行训练得到训练结果的时间,并更新每个计算节点的计算性能、处理吞吐量和数据的历史平均计算处理时间等指标。
本申请实施例中,客户端设备可以对P个计算节点对应的第一数据子集的训练结果进行分析,若确定P个计算节点存在训练结果不可信的第一计算节点,则可以向区块链系统发送第一信息。其中,第一信息可以用于指示区块链系统对第一计算节点的计算结果可信度进行更新。在一个示例中,若确定P个计算节点对应的P个训练结果的误差范围在预设范围内,则客户端设备可以确定P个训练结果均是可信的;若确定P个训练结果中存在一个或多个计算节点的训练结果与其他训练结果的误差较大,则客户端设备可以将包括一个或多个计算节点的训练结果有误的第一信息发送给区块链系统。相应地,区块链系统在接收到客户端发送的第一信息后,可以查询一个或多个计算节点的历史训练结果,若存在多次历史训练结果有误,即认为一个或多个计算节点在训练的过程中存在造假行为,则客户端设备可以降低一个或多个计算节点的计算结果可信度。若某一个计算节点的计算结果可信度降低到预设阈值,则该计算节点将不会再被主动提供给客户端设备进行计算或存储等服务。
步骤204,客户端设备根据Y个数据子集中每个数据子集的训练结果,得到模型的参数。
本申请实施例中,客户端设备可以查询区块链中记录的Y个数据子集中每个数据子集的P个训练结果,并根据Y*P个训练结果,得到模型的参数。具体实施中,模型的参数的确定方式可以有多种,在一种可能的实现方式中,客户端设备可以从Y个数据子集中每个数据子集的P个训练结果中选取一个最合适的训练结果,进而对Y个数据子集对应的Y个最合适的训练结果进行整合处理,得到模型的参数。在另一种可能的实现方式中,客户端设备也可以对Y个数据子集的Y*P个训练结果进行整合处理,得到模型的参数。在其他可能的实施例中,模型的参数也可以是对0~Y*P个训练结果中任意多个训练结果进行整合处理得到的,本申请实施例对此不作具体限定。
本申请的上述实施例中,通过获取与数据集合的标识对应的存储关系表,客户端设备可以从区块链系统中确定第一数据子集所在的M个计算节点,并根据M个计算节点的第一属性信息,从M个计算节点中选择K个计算节点,进而将算法和数据集合的标识发送给K个计算节点;相应地,K个计算节点中的每一个计算节点可以使用第一数据子集中的数据和算法对模型进行训练,并将成功得到训练结果的指示信息发送给客户端设备,使得客户端设备可以获取K个计算节点中的P个计算节点对应的第一数据子集的训练结果;进一步地,客户端设备可以根据Y个数据子集中每个数据子集的训练结果,得到模型参数。本申请实施例中,通过采用区块链系统中的计算节点训练模型,可以无需构建专属的机器学习算法群,从而可以节省成本,减少资源的浪费;且,通过选择区块链系统中具有较强存储能力和处理能力的计算节点运行算法,可以保证算法的处理速度,提高模型的训练效率,进而得到较好的模型训练效果;由于区块链系统可以存储并更新每个计算节点的在线稳定性,平均历史处理时间和节点的计算结果可信度等信息,从而可以避免客户端设备和/或计算节点在模型训练的过程中进行造假,使得模型训练的过程变得公开、透明,进而能够有效地保证用户的权利。此外,通过将数据集合划分为Y个数据子集,并采用多个计算节点处理同一个数据子集,可以在提高计算节点处理效率的同时保证数据集合的安全,避免由一个计算节点处理数据集合或数据子集所造成的计算结果不准确;且,用于训练模型的数据集合可以为公开数据,通过采用区块链系统中的计算节点进行模型训练,可以无需客户端设备下载数据集合,极大地节省了模型训练的成本。
图3为本申请实施例提供的一种客户端设备的结构示意图,包括:
获取模块301,用于获取用于训练模型的数据集合的标识和用于训练模型的算法;
根据所述数据集合的标识,从区块链系统中获取与所述数据集合的标识对应的存储关系表,所述存储关系表包括所述数据集合的Y个数据子集的标识和所述Y个数据子集中每个数据子集所在的多个计算节点的标识;
处理模块302,用于针对于第一数据子集,根据所述存储关系表,确定所述第一数据子集所在的M个计算节点,并根据所述M个计算节点的第一属性信息,从所述M个计算节点中选择K个计算节点;所述第一数据子集为所述Y个数据子集中的任一数据子集;所述M个计算节点中每个计算节点的第一属性信息包括所述计算节点的在线稳定性、计算性能、计算成本、所述计算节点的计算结果可信度中的一项或多项;将所述算法和所述数据集合的标识发送给所述K个计算节点,以使所述K个计算节点分别使用所述第一数据子集中的数据和所述算法对模型进行训练;获取所述K个计算节点中的P个计算节点对应的所述第一数据子集的训练结果;其中,M≥K≥P,P≥2,M、K和P均为正整数;
根据所述Y个数据子集中每个数据子集的训练结果,得到模型参数。
可选地,所述处理模块302还用于对所述P个计算节点对应的第一数据子集的训练结果进行分析,若确定所述P个计算节点存在训练结果不可信的第一计算节点,则向区块链系统发送第一信息,所述第一信息用于指示所述区块链系统对所述第一计算节点的计算结果可信度进行更新。
可选地,所述处理模块302还用于将第一收入分配策略分别发送给所述K个计算节点,所述第一收入分配策略包括训练模型所需时长最短的P个计算节点所能得到的收入。
图4为本申请实施例提供的一种区块链系统中的计算节点的结构示意图,包括:
收发模块401,用于接收客户端设备发送的用于训练模型的算法和所述数据集合的标识;
获取模块402,用于根据所述数据集合的标识,获取所述计算节点存储的所述数据集合的数据子集;
处理模块403,用于使用所述数据子集中的数据和所述算法,对所述模型进行训练;所述数据子集中的数据为通过下载网络上的公开数据得到的;
所述收发模块401,还用于将得到训练结果的指示信息发送给所述客户端设备。
从上述内容可以看出:本申请的上述实施例中,通过获取与数据集合的标识对应的存储关系表,客户端设备可以从区块链系统中确定第一数据子集所在的M个计算节点,并根据M个计算节点的第一属性信息,从M个计算节点中选择K个计算节点,进而将算法和数据集合的标识发送给K个计算节点;相应地,K个计算节点中的每一个计算节点可以使用第一数据子集中的数据和算法对模型进行训练,并将成功得到训练结果的指示信息发送给客户端设备,使得客户端设备可以获取K个计算节点中的P个计算节点对应的第一数据子集的训练结果;进一步地,客户端设备可以根据Y个数据子集中每个数据子集的训练结果,得到模型参数。本申请实施例中,通过采用区块链系统中的计算节点训练模型,可以无需构建专属的机器学习算法群,从而可以节省成本,减少资源的浪费;且,通过选择区块链系统中具有较强存储能力和处理能力的计算节点运行算法,可以保证算法的处理速度,提高模型的训练效率,进而得到较好的模型训练效果;由于区块链系统可以存储并更新每个计算节点的在线稳定性,平均历史处理时间和节点的计算结果可信度等信息,从而可以避免客户端设备和/或计算节点在模型训练的过程中进行造假,使得模型训练的过程变得公开、透明,进而能够有效地保证用户的权利。此外,通过将数据集合划分为Y个数据子集,并采用多个计算节点处理同一个数据子集,可以在提高计算节点处理效率的同时保证数据集合的安全,避免由一个计算节点处理数据集合或数据子集所造成的计算结果不准确;且,用于训练模型的数据集合可以为公开数据,通过采用区块链系统中的计算节点进行模型训练,可以无需客户端设备下载数据集合,极大地节省了模型训练的成本。
本领域内的技术人员应明白,本申请的实施例可提供为方法、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (8)
1.一种训练模型的方法,其特征在于,该方法包括:
客户端设备获取用于训练模型的数据集合的标识和用于训练模型的算法;
所述客户端设备根据所述数据集合的标识,从区块链系统中获取与所述数据集合的标识对应的存储关系表,所述存储关系表包括所述数据集合的Y个数据子集的标识和所述Y个数据子集中每个数据子集所在的多个计算节点的标识;
针对于第一数据子集,所述客户端设备根据所述存储关系表,确定所述第一数据子集所在的M个计算节点,并根据所述M个计算节点的第一属性信息,从所述M个计算节点中选择K个计算节点;所述第一数据子集为所述Y个数据子集中的任一数据子集;所述M个计算节点中每个计算节点的第一属性信息包括所述计算节点的在线稳定性、计算性能、计算成本、所述计算节点的计算结果可信度中的一项或多项;所述客户端设备将所述算法和所述数据集合的标识发送给所述K个计算节点,以使所述K个计算节点分别使用所述第一数据子集中的数据和所述算法对模型进行训练;所述客户端设备获取所述K个计算节点中的P个计算节点对应的所述第一数据子集的训练结果;其中,M≥K≥P,P≥2,M、K和P均为整数;
所述客户端设备根据所述Y个数据子集中每个数据子集的训练结果,得到模型参数。
2.根据权利要求1所述的方法,其特征在于,所述客户端设备获取所述K个计算节点中的P个计算节点对应的所述第一数据子集的训练结果之后,还包括:
所述客户端设备对所述P个计算节点对应的所述第一数据子集的训练结果进行分析,若确定所述P个计算节点存在训练结果不可信的第一计算节点,则向区块链系统发送第一信息,所述第一信息用于指示所述区块链系统对所述第一计算节点的计算结果可信度进行更新。
3.根据权利要求1至2中任一项所述的方法,其特征在于,所述方法还包括:
所述客户端设备将第一收入分配策略分别发送给所述K个计算节点,所述第一收入分配策略包括训练模型所需时长最短的P个计算节点所能得到的收入。
4.一种训练模型的方法,其特征在于,所述方法包括:
区块链系统中的计算节点接收客户端设备发送的用于训练模型的算法和所述数据集合的标识;
所述计算节点根据所述数据集合的标识,获取所述计算节点存储的所述数据集合的数据子集;
所述计算节点使用所述数据子集中的数据和所述算法,对所述模型进行训练,并将得到训练结果的指示信息发送给所述客户端设备;所述数据子集中的数据为通过下载网络上的公开数据得到的。
5.一种客户端设备,其特征在于,所述客户端设备包括:
获取模块,用于获取用于训练模型的数据集合的标识和用于训练模型的算法;
根据所述数据集合的标识,从区块链系统中获取与所述数据集合的标识对应的存储关系表,所述存储关系表包括所述数据集合的Y个数据子集的标识和所述Y个数据子集中每个数据子集所在的多个计算节点的标识;
处理模块,用于针对于第一数据子集,根据所述存储关系表,确定所述第一数据子集所在的M个计算节点,并根据所述M个计算节点的第一属性信息,从所述M个计算节点中选择K个计算节点;所述第一数据子集为所述Y个数据子集中的任一数据子集;所述M个计算节点中每个计算节点的第一属性信息包括所述计算节点的在线稳定性、计算性能、计算成本、所述计算节点的计算结果可信度中的一项或多项;将所述算法和所述数据集合的标识发送给所述K个计算节点,以使所述K个计算节点分别使用所述第一数据子集中的数据和所述算法对模型进行训练;获取所述K个计算节点中的P个计算节点对应的所述第一数据子集的训练结果;其中,M≥K≥P,P≥2,M、K和P均为整数;
根据所述Y个数据子集中每个数据子集的训练结果,得到模型参数。
6.根据权利要求5所述的客户端设备,其特征在于,所述处理模块还用于:
对所述P个计算节点对应的所述第一数据子集的训练结果进行分析,若确定所述P个计算节点存在训练结果不可信的第一计算节点,则向区块链系统发送第一信息,所述第一信息用于指示所述区块链系统对所述第一计算节点的计算结果可信度进行更新。
7.根据权利要求5至6中任一项所述的客户端设备,其特征在于,所述处理模块还用于:
将第一收入分配策略分别发送给所述K个计算节点,所述第一收入分配策略包括训练模型所需时长最短的P个计算节点所能得到的收入。
8.一种计算节点,其特征在于,所述计算节点包括:
收发模块,用于接收客户端设备发送的用于训练模型的算法和所述数据集合的标识;
获取模块,用于根据所述数据集合的标识,获取所述计算节点存储的所述数据集合的数据子集;
处理模块,用于使用所述数据子集中的数据和所述算法,对所述模型进行训练;所述数据子集中的数据为通过下载网络上的公开数据得到的;
所述收发模块,还用于将得到训练结果的指示信息发送给所述客户端设备。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811314282.7A CN109543726A (zh) | 2018-11-06 | 2018-11-06 | 一种训练模型的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811314282.7A CN109543726A (zh) | 2018-11-06 | 2018-11-06 | 一种训练模型的方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109543726A true CN109543726A (zh) | 2019-03-29 |
Family
ID=65846142
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811314282.7A Pending CN109543726A (zh) | 2018-11-06 | 2018-11-06 | 一种训练模型的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109543726A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110222010A (zh) * | 2019-06-11 | 2019-09-10 | 北京百度网讯科技有限公司 | 基于区块链的论文保存方法、设备及计算机可读存储介质 |
CN110991622A (zh) * | 2019-08-22 | 2020-04-10 | 腾讯科技(深圳)有限公司 | 基于区块链网络的机器学习模型处理方法及节点 |
CN111680793A (zh) * | 2020-04-21 | 2020-09-18 | 广州中科易德科技有限公司 | 一种基于深度学习模型训练的区块链共识方法和系统 |
CN111680799A (zh) * | 2020-04-08 | 2020-09-18 | 北京字节跳动网络技术有限公司 | 用于处理模型参数的方法和装置 |
WO2020210979A1 (zh) * | 2019-04-16 | 2020-10-22 | 华为技术有限公司 | 基于区块链网络的联合学习方法和联合学习设备 |
CN112181599A (zh) * | 2020-10-16 | 2021-01-05 | 中国联合网络通信集团有限公司 | 模型训练方法、装置及存储介质 |
CN112381158A (zh) * | 2020-11-18 | 2021-02-19 | 山东高速信息集团有限公司 | 基于人工智能的数据高效训练方法及系统 |
WO2022134809A1 (zh) * | 2020-12-24 | 2022-06-30 | 深圳壹账通智能科技有限公司 | 模型训练处理方法、装置、计算机设备及介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101719930A (zh) * | 2009-11-27 | 2010-06-02 | 南京邮电大学 | 一种基于云币的层次式云端计算系统激励方法 |
CN103345572A (zh) * | 2013-06-13 | 2013-10-09 | 东北大学 | 面向志愿计算环境的节点信任值评估方法 |
CN103746957A (zh) * | 2013-10-10 | 2014-04-23 | 安徽师范大学 | 一种基于隐私保护的信任评估系统及其构建方法 |
CN105808339A (zh) * | 2014-12-29 | 2016-07-27 | 华为技术有限公司 | 大数据并行计算方法及装置 |
EP3084604A1 (en) * | 2013-12-18 | 2016-10-26 | Telefonaktiebolaget LM Ericsson (publ) | Resource prediction for cloud computing |
CN106815644A (zh) * | 2017-01-26 | 2017-06-09 | 北京航空航天大学 | 机器学习方法和从节点 |
CN108323200A (zh) * | 2018-01-25 | 2018-07-24 | 深圳前海达闼云端智能科技有限公司 | 基于区块链的数据训练方法、装置、存储介质及区块链节点 |
CN108664222A (zh) * | 2018-05-11 | 2018-10-16 | 北京奇虎科技有限公司 | 一种区块链系统及其应用方法 |
-
2018
- 2018-11-06 CN CN201811314282.7A patent/CN109543726A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101719930A (zh) * | 2009-11-27 | 2010-06-02 | 南京邮电大学 | 一种基于云币的层次式云端计算系统激励方法 |
CN103345572A (zh) * | 2013-06-13 | 2013-10-09 | 东北大学 | 面向志愿计算环境的节点信任值评估方法 |
CN103746957A (zh) * | 2013-10-10 | 2014-04-23 | 安徽师范大学 | 一种基于隐私保护的信任评估系统及其构建方法 |
EP3084604A1 (en) * | 2013-12-18 | 2016-10-26 | Telefonaktiebolaget LM Ericsson (publ) | Resource prediction for cloud computing |
CN105808339A (zh) * | 2014-12-29 | 2016-07-27 | 华为技术有限公司 | 大数据并行计算方法及装置 |
CN106815644A (zh) * | 2017-01-26 | 2017-06-09 | 北京航空航天大学 | 机器学习方法和从节点 |
CN108323200A (zh) * | 2018-01-25 | 2018-07-24 | 深圳前海达闼云端智能科技有限公司 | 基于区块链的数据训练方法、装置、存储介质及区块链节点 |
CN108664222A (zh) * | 2018-05-11 | 2018-10-16 | 北京奇虎科技有限公司 | 一种区块链系统及其应用方法 |
Non-Patent Citations (2)
Title |
---|
吴大器: "《2016年上海国际金融中心建设蓝皮书》", 31 December 2012 * |
青岛英谷教育科技股份有限公司: "《云计算与大数据概论》", 31 August 2017, 西安电子科技大学出版社 * |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020210979A1 (zh) * | 2019-04-16 | 2020-10-22 | 华为技术有限公司 | 基于区块链网络的联合学习方法和联合学习设备 |
CN112166445A (zh) * | 2019-04-16 | 2021-01-01 | 华为技术有限公司 | 基于区块链网络的联合学习方法和联合学习设备 |
CN110222010A (zh) * | 2019-06-11 | 2019-09-10 | 北京百度网讯科技有限公司 | 基于区块链的论文保存方法、设备及计算机可读存储介质 |
CN110991622A (zh) * | 2019-08-22 | 2020-04-10 | 腾讯科技(深圳)有限公司 | 基于区块链网络的机器学习模型处理方法及节点 |
CN111680799A (zh) * | 2020-04-08 | 2020-09-18 | 北京字节跳动网络技术有限公司 | 用于处理模型参数的方法和装置 |
CN111680799B (zh) * | 2020-04-08 | 2024-02-20 | 北京字节跳动网络技术有限公司 | 用于处理模型参数的方法和装置 |
US11809429B2 (en) | 2020-04-08 | 2023-11-07 | Beijing Bytedance Network Technology Co., Ltd. | Method for processing model parameters, and apparatus |
CN111680793B (zh) * | 2020-04-21 | 2023-06-09 | 广州中科易德科技有限公司 | 一种基于深度学习模型训练的区块链共识方法和系统 |
CN111680793A (zh) * | 2020-04-21 | 2020-09-18 | 广州中科易德科技有限公司 | 一种基于深度学习模型训练的区块链共识方法和系统 |
CN112181599A (zh) * | 2020-10-16 | 2021-01-05 | 中国联合网络通信集团有限公司 | 模型训练方法、装置及存储介质 |
CN112181599B (zh) * | 2020-10-16 | 2023-05-16 | 中国联合网络通信集团有限公司 | 模型训练方法、装置及存储介质 |
CN112381158A (zh) * | 2020-11-18 | 2021-02-19 | 山东高速信息集团有限公司 | 基于人工智能的数据高效训练方法及系统 |
WO2022134809A1 (zh) * | 2020-12-24 | 2022-06-30 | 深圳壹账通智能科技有限公司 | 模型训练处理方法、装置、计算机设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109543726A (zh) | 一种训练模型的方法及装置 | |
Xu et al. | Unleashing the power of edge-cloud generative ai in mobile networks: A survey of aigc services | |
CN111966698B (zh) | 一种基于区块链的可信联邦学习方法、系统、装置及介质 | |
Zhang et al. | Intelligent cloud resource management with deep reinforcement learning | |
CN108200203B (zh) | 基于双层网络的区块链系统 | |
Sudholt | Parallel evolutionary algorithms | |
CN102075352A (zh) | 一种网络用户行为预测的方法和装置 | |
CN109144731A (zh) | 数据处理方法、装置、计算机设备及存储介质 | |
US10166478B2 (en) | Predictive recommendations for skills development | |
Kumar et al. | Federated control with hierarchical multi-agent deep reinforcement learning | |
CN109766454A (zh) | 一种投资者分类方法、装置、设备及介质 | |
CN103106253A (zh) | 一种MapReduce计算模型中基于遗传算法的数据平衡方法 | |
Vuculescu et al. | How to solve problems with crowds: A computer‐based simulation model | |
CN110858973A (zh) | 小区网络流量预测方法及装置 | |
Villatoro et al. | Robust convention emergence in social networks through self-reinforcing structures dissolution | |
CN104092618A (zh) | 一种基于杜鹃搜索算法的对等网络流量特征选择方法 | |
US20210110248A1 (en) | Identifying and optimizing skill scarcity machine learning algorithms | |
US11551119B2 (en) | Machine learning based ranking of private distributed data, models and compute resources | |
Ma et al. | Discrete and continuous optimization based on hierarchical artificial bee colony optimizer | |
Kinneer et al. | Information reuse and stochastic search: Managing uncertainty in self-* systems | |
Cotta et al. | Memetic algorithms in planning, scheduling, and timetabling | |
Ahmed et al. | Deep reinforcement learning for multi-agent interaction | |
CN109543725A (zh) | 一种获取模型参数的方法及装置 | |
Nguyen et al. | A novel nature-inspired algorithm for optimal task scheduling in fog-cloud blockchain system | |
CN109558950A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190329 |