CN109558894A - 一种确定模型参数的方法及客户端设备 - Google Patents
一种确定模型参数的方法及客户端设备 Download PDFInfo
- Publication number
- CN109558894A CN109558894A CN201811315103.1A CN201811315103A CN109558894A CN 109558894 A CN109558894 A CN 109558894A CN 201811315103 A CN201811315103 A CN 201811315103A CN 109558894 A CN109558894 A CN 109558894A
- Authority
- CN
- China
- Prior art keywords
- node
- data subset
- data
- client device
- subset
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
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 Transfer Between Computers (AREA)
Abstract
本申请实施例公开了一种确定模型参数的方法及客户端设备,其中方法包括:通过将数据集合划分为Y个数据子集,客户端设备可以为每一个数据子集选择N个节点进行存储,且可以在接收到N个节点中的M个节点已成功存储的指示信息后,选择K个节点进行算法运行,并接收K个节点中的P个节点的训练结果;进一步地,客户端设备可以根据Y个数据子集中每个数据子集的训练结果,得到模型的参数。本申请实施例中,通过采用区块链***中的节点训练模型,可以无需构建专属的机器学习算法群,从而可以节省成本,减少社会资源的浪费;且,通过选择区块链***中具有较强存储和处理能力的节点运行算法,可以提高模型的训练效率,进而得到较好的模型训练效果。
Description
技术领域
本发明涉及数据处理技术领域,尤其涉及一种确定模型参数的方法及客户端设备。
背景技术
现阶段,随着人工智能技术的深入发展,采用机器学习方法对模型进行训练逐渐成为算法开发领域的热门研究方向。具体地说,开发人员通常可以在客户端设备上开发可以用于训练模型的算法,并使用该算法对存储在客户端设备上的用于训练模型的私有数据进行处理,得到模型参数。然而,该种方法依赖于客户端设备的处理性能,对于比较复杂的算法或者处理量比较大的数据,若客户端设备的处理性能不够,可能会使得算法的运行时间较长,从而导致算法的运行效率较低,模型训练效果较差。
为了提高算法的运行效率,得到比较好的模型训练效果,很多科研机构通常会构建专属的机器学习算法集群,并采用专属的机器学习算法集群中的多个客户端设备对私有数据进行训练。采用该种方法,虽然能够保证客户端设备的处理性能满足要求,但是构建专属的机器学习算法集群需要耗费大量的人力和物力,使得开发的成本较高;且,由于专属的机器学习算法集群可能并不能够被其他的科研机构所使用,因此可能会使得不同的科研机构构建不同的机器学习算法集群,从而造成资源的浪费。
综上,目前亟需一种确定模型参数的方法,用于解决采用现有技术构建专属的机器学习算法集群确定模型参数所导致的成本较高、资源浪费的技术问题。
发明内容
本申请实施例提供一种确定模型参数的方法,用于解决采用现有技术构建专属的机器学习算法集群确定模型参数所导致的成本较高、资源浪费的技术问题。
本申请实施例提供的一种确定模型参数的方法,包括:
客户端设备获取用于训练模型的数据集合和用于训练模型的算法;
所述客户端设备根据所述数据集合的数据量,将所述数据集合划分为Y个数据子集;
所述客户端设备根据区块链***的W个节点中每个节点的第一属性信息,从所述W个节点中选择Q个节点;所述W个节点中每个节点的第一属性信息包括所述节点的存储成本和/或所述节点的数据最长保存时间;
针对于第一数据子集,所述客户端设备根据所述Q个节点中每个节点的第二属性信息,从所述Q个节点中为所述第一数据子集选择N个节点,并将所述第一数据子集分别发送给所述N个节点;所述第一数据子集为所述Y个数据子集中的任一数据子集;所述Q个节点中每个节点的第二属性信息包括所述节点的在线稳定性、存储性能、存储成本、数据最长保存时间中的一项或多项;所述客户端设备在接收到所述N个节点中的M个节点分别发送的已成功存储所述第一数据子集的指示信息后,根据所述M个节点中每个节点的第三属性信息,从所述M个节点中选择K个节点;所述M个节点中每个节点的第三属性信息包括所述节点的在线稳定性、计算性能、计算成本、所述节点的计算结果可信度中的一项或多项;所述客户端设备将所述算法和所述数据集合的标识发送给所述K个节点,以使所述K个节点分别使用所述第一数据子集中的数据和所述算法对所述模型进行训练;所述客户端设备获取所述K个节点中的P个节点对应的所述第一数据子集的训练结果;其中,W≥Q≥N≥M≥K≥P,P≥2,W、Q、N、M、K、P均为整数;
所述客户端设备根据所述Y个数据子集中每个数据子集的训练结果,得到模型参数。
可选地,所述客户端设备获取所述K个节点中的P个节点对应的所述第一数据子集的训练结果之后,还包括:
所述客户端设备对所述P个节点对应的所述第一数据子集的训练结果进行分析,若确定所述P个节点存在训练结果不可信的第一节点,则向区块链***发送第一信息,所述第一信息用于指示所述区块链***对所述第一节点的计算结果可信度进行更新。
可选地,所述客户端设备将所述第一数据子集分别发送给所述N个节点,包括:
所述客户端设备采用第二节点的公钥对所述第一数据子集进行加密,并将加密后的第一数据子集发送给所述第二节点,所述第二节点为所述N个节点中的任一节点。
可选地,所述方法还包括:
所述客户端设备将第一收入分配策略分别发送给所述N个节点,所述第一收入分配策略包括存储所述第一数据子集所需时长最短的M个节点所能得到的收入;和/或,
所述客户端设备将第二收入分配策略分别发送给所述K个节点,所述第二收入分配策略包括训练模型所需时长最短的P个节点所能得到的收入。
可选地,所述客户端设备为第二数据子集选择的节点不同于为第三数据子集选择的节点;所述第二数据子集和所述第三数据子集为所述Y个数据子集中的任意两个数据子集。
本申请实施例提供一种客户端设备,该客户端设备包括:
获取模块,用于获取用于训练模型的数据集合和用于训练模型的算法;
划分模块,用于根据所述数据集合的数据量,将所述数据集合划分为Y个数据子集;
处理模块,用于根据区块链***的W个节点中每个节点的第一属性信息,从所述W个节点中选择Q个节点;所述W个节点中每个节点的第一属性信息包括所述节点的存储成本和/或所述节点的数据最长保存时间;
针对于第一数据子集,根据所述Q个节点中每个节点的第二属性信息,从所述Q个节点中为所述第一数据子集选择N个节点,并将所述第一数据子集分别发送给所述N个节点;所述第一数据子集为所述Y个数据子集中的任一数据子集;所述Q个节点中每个节点的第二属性信息包括所述节点的在线稳定性、存储性能、存储成本、数据最长保存时间中的一项或多项;在接收到所述N个节点中的M个节点分别发送的已成功存储所述第一数据子集的指示信息后,根据所述M个节点中每个节点的第三属性信息,从所述M个节点中选择K个节点;所述M个节点中每个节点的第三属性信息包括所述节点的在线稳定性、计算性能、计算成本、所述节点的计算结果可信度中的一项或多项;将所述算法和所述数据集合的标识发送给所述K个节点,以使所述K个节点分别使用所述第一数据子集中的数据和所述算法对所述模型进行训练;获取所述K个节点中的P个节点对应的所述第一数据子集的训练结果;其中,W≥Q≥N≥M≥K≥P,P≥2,W、Q、N、M、K、P均为整数;
根据所述Y个数据子集中每个数据子集的训练结果,得到模型参数。
可选地,所述处理模块,还用于:
对所述P个节点对应的所述第一数据子集的训练结果进行分析,若确定所述P个节点存在训练结果不可信的第一节点,则向区块链***发送第一信息,所述第一信息用于指示所述区块链***对所述第一节点的计算结果可信度进行更新。
可选地,所述处理模块还用于:
采用第二节点的公钥对所述第一数据子集进行加密,并将加密后的第一数据子集发送给所述第二节点,所述第二节点为所述N个节点中的任一节点。
可选地,所述处理模块还用于:
将第一收入分配策略分别发送给所述N个节点,所述第一收入分配策略包括存储所述第一数据子集所需时长最短的M个节点所能得到的收入;和/或,
将第二收入分配策略分别发送给所述K个节点,所述第二收入分配策略包括训练模型所需时长最短的P个节点所能得到的收入。
可选地,为第二数据子集选择的节点不同于为第三数据子集选择的节点;所述第二数据子集和所述第三数据子集为所述Y个数据子集中的任意两个数据子集。
本发明的上述实施例中,通过将数据集合划分为Y个数据子集,客户端设备可以根据Q个节点中每个节点的第二属性信息,为每一个数据子集选择N个节点进行存储;且可以在接收到Q个节点中的M个节点分别发送的已成功存储该数据子集的指示信息后,根据M个节点中每个节点的第三属性信息,从M个节点中为训练模型的算法选择K个节点进行算法运行,并可以接收K个节点中的P个节点返回的该数据子集的训练结果;进一步地,客户端设备可以根据Y个数据子集中每个数据子集的训练结果,得到模型的参数。本申请实施例中,通过采用区块链***中的节点训练模型,可以无需构建专属的机器学***均历史处理时间和节点的计算结果可信度等信息,从而可以避免客户端设备和/或计算节点在模型训练的过程中进行造假,使得模型训练的过程变得公开、透明,进而能够有效地保证用户的权利。此外,用于训练模型的数据集合可以为私有数据,通过采用计算节点的公钥对数据集合进行加密,可以保证在发送数据集合的过程中,数据集合不会被其他计算节点和/或其他客户端设备所窃取,从而可以保证数据集合的安全;且,通过将数据集合划分为Y个数据子集,并采用多个节点处理同一个数据子集,可以在提高节点处理效率的同时保证数据集合的安全,避免由一个节点处理数据集合或数据子集所造成的计算结果不准确。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例适用的一种***架构示意图;
图2为本申请实施例中一种确定模型参数的方法对应的流程示意图;
图3为本申请实施例提供的一种客户端设备的结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
图1为本申请实施例适用的一种***架构示意图,如图1所示,该***架构中可以包括区块链网络中的一个或多个节点(比如图1所示意出的节点101、节点102、节点103和节点104)和客户端设备200。其中,区块链网络中的一个或多个节点可以共同维护区块链网络。客户端设备200可以通过接入网络而与区块链网络中的一个或多个节点进行通信。
本申请实施例中,区块链网络可以是由多个节点组成的点对点(Peer To Peer,P2P)网络。P2P是一种运行在传输控制协议(Transmission Control Protocol,TCP)协议之上的应用层协议,在区块链网络中的节点可以彼此对等,网络中不存在中心节点,因此每个节点都可以随机地连接其它节点。
具体实施中,区块链网络中的节点可以具有多种功能,比如,路由功能、交易功能、区块链功能和共识功能等。具体地说,区块链网络中的节点可以把其他节点传送过来的交易数据等信息传送给更多的节点以实现节点之间的通信;或者,区块链网络中的节点可以用于支持用户进行交易;或者,区块链网络中的节点可以用于记录历史上的所有交易;或者,区块链网络中的节点可以通过验证和记录交易生成区块链中的新区块。实际应用中,路由功能是区块链网络中的每个节点必须具有的功能,而其它功能可由本领域技术人员根据实际需要进行设置。
本申请实施例中,区块链网络中的一个节点可以在一台物理机(服务器)上,且一个节点具体可以是指服务器中运行的一个进程或者一系列进程。比如,区块链1网络中的节点101可以为一个服务器上运行的一个进程。
需要说明的是,本申请中所描述的节点可以是指节点所在的服务器。
基于图1所示意的***架构,图2为本申请实施例提供的一种确定模型参数的方法对应的流程示意图,该方法包括:
步骤201,客户端设备获取用于训练模型的数据集合和用于训练模型的算法。
此处,用于训练模型的数据集合中可以包括私有数据,私有数据是指未在网络上公开的数据,即无法通过搜索网络的方式来获取。通常情况下,私有数据可以为用户标注的数据,或者也可以为用户处理的数据。进一步地,用于训练模型的算法可以包括用户编写的代码程序,或者也可以为用户通过其他方式获取到的算法(比如用户通过网络下载),本申请实施例对此不做限定。
本申请实施例中,客户端设备获取数据集合和算法的方式可以有多种。在一个示例中,数据集合和算法可以预先存储在客户端设备的硬盘中(或者也可以存储于内部存储器中),如此,客户端设备可以从硬盘直接获取到数据集合和算法;在又一个示例中,客户端设备可以向设备a发送用于请求数据集合和算法的请求消息,并接收设备a返回的响应消息,该响应消息中包括数据集合和算法,如此,客户端设备可根据响应消息获取到数据集合和算法;在又一个示例中,客户端设备可以从硬盘直接获取到数据集合,以及从其他设备(比如设备a)获取算法。本申请实施例对此不做限定。
步骤202,客户端设备根据数据集合的数据量,将数据集合划分为Y个数据子集。
本申请实施例中,客户端设备可以读取数据集合的数据量(即数据集合所包括的数据的字节个数),并可以根据数据集合的数据量,对数据集合进行划分,得到Y个数据子集。其中,Y个数据子集中任意两个数据子集的数据量可以相同,或者也可以不同。
具体实施中,将数据集合划分为Y个数据子集的方式可以有多种,在一个可能的实现方式中,可以预先设置标准数据量,从而根据标准数据量将数据集合划分为Y个数据子集。举个例子,数据集合的数据量为95个字节,预先设置的标准数据量为10个字节,进而可以根据标准数据量对数据集合中依次进行划分,得到10个数据子集,其中第1个数据子集至第9个数据子集的数据量和标准数据量相同,均为10个字节,第10个数据子集的数据量为5个字节。
需要说明的是,本申请实施例中,Y个数据子集的数据量可以相同或者也可以不同,对此不作具体限定。
进一步地,客户端设备在得到Y个数据子集之后,可以为Y个数据子集中的每一个数据子集设置标识。在一个示例中,Y个数据子集中每一个数据子集的标识可以包括客户端设备的标识、数据子集对应的数据集合的类型、数据子集对应的数据集合的标识以及用于指示数据子集划分顺序的信息。具体地,针对于Y个数据子集中的任一数据子集,可以为其命名为[T]:[Type]:[Name]:[Order],其中T为客户端设备的标识,Type为数据子集对应的数据集合的类型,Name为数据子集对应的数据集合的标识,Order为数据子集在数据集合中划分的顺序。举个例子,若客户端设备T1获取到一份私有的图像数据集Test,并将图像数据集Test划分为10个数据子集(比如,数据子集Y1-数据子集Y10),则数据子集Y1为划分得到的第1个数据子集,数据子集Y1的标识可以为[T1]:[Image]:[Test]:[1];数据子集Y10为划分得到的第10个数据子集,数据子集Y10的标识可以为[T1]:[Image]:[Test]:[10]。需要说明的是,客户端设备可以在划分完成后,将Y个数据子集的标识发送给区块链***,进而使得区块链***中的多个节点能够通过访问区块链***获取到Y个数据子集的标识。
步骤203,客户端设备根据区块链***的W个节点中每个节点的第一属性信息,从W个节点中选择Q个节点。
此处,W个节点中每个节点的第一属性信息可以包括节点的存储成本和/或节点的数据最长保存时间。在示例1中,每个节点的第一属性信息可以包括节点的存储成本,如此,客户端设备可以根据W个节点中每个节点的存储成本,从W个节点中选择Q个节点。在示例2中,每个节点的第一属性信息可以包括节点的数据最长保存时间,如此,客户端设备可以根据W个节点中每个节点的数据最长保存时间,从W个节点中选择Q个节点。在示例3中,每个节点的第一属性信息可以包括节点的存储成本和节点的数据最长保存时间,客户端设备可以根据W个节点中每个节点的存储成本和节点的数据最长保存时间,从W个节点中选择Q个节点。
以上述示例3为例,在一种可能的实现方式中,客户端设备可以预先设置一个最高的存储成本(比如最高存储激励值为60),该存储成本可以用于指示客户端设备能够奖励给存储数据子集的节点的最高激励值。客户端设备可以获取区块链***的W个节点中每个节点的存储成本,并将每个节点的存储成本与60进行对比,选择Y个节点中存储成本不大于60的节点组成第一备选存储节点集合。举个例子,区块链***中存在200个节点,其中,有180个节点的存储成本不大于60,则第一备选存储节点集合中可以有180个节点。本申请实施例中,若Y个节点的存储成本均大于客户端设备设置的最高的存储成本,则客户端设备可以等待某一个节点的存储成本下降至客户端设备设置的最高存储成本,或者客户端设备可以直接反馈给用户数据存储失败的信息。
需要说明的是,激励值可以为集群激励的一种表现形式,具体地说,即可以为客户端设备支出的、并可以用于奖励节点在存储客户端设备发送的数据子集(或者也可以为数据集合)和/或采用数据子集进行模型训练时所付出的成本。本申请实施例中,激励值可以为集群所有成员(此处,即区块链***中的多个节点和一个或多个客户端设备)所公认的互联网或现实生活中的有价值的物体,或者也可以为集群所有成员所公认的互联网或现实生活中的一般等价物,本申请实施例对此不作具体限定。
进一步地,客户端设备可以预先设置一个最短的数据保存时间(比如3h),该数据保存时间可以用于指示客户端设备需要存储数据子集的节点存储数据子集的最短时间。客户端设备可以获取第一备选存储节点集合中每个节点的数据最长保存时间(比如,可以通过查询每个节点的历史数据保存时间获取,或者也可以通过访问区块链***中存储的每个节点的信息进行获取),并将每个节点的数据最长保存时间与3h进行对比,选择180个节点中数据最长保存时间不小于3h的Q个节点组成第二备选存储节点集合。比如,在第一备选存储节点集合的180个节点中,有150个节点的数据最长保存时间不小于3h,则第二备选存储节点集合中可以有150个节点。需要说明的是,若第一备选存储节点集合中的所有节点的数据最长保存时间均小于客户端设备设置的最短的数据保存时间,则客户端设备可以等待某一个节点的数据最长保存时间上升至客户端设备设置的最短的数据保存时间,或者客户端设备可以直接反馈给用户数据存储失败的信息。
本申请实施例中,客户端设备通过获取每个节点的存储成本和数据最长保存时间,将满足客户端设备设置的最高存储成本和最短的数据保存时间的节点作为第二备选存储节点,使得客户端设备能够从第二备选存储节点中选择节点进行数据子集的存储,从而可以降低工作量,提高存储效率。
步骤204,客户端设备获取Y个数据子集中每个数据子集的训练结果。
第一数据子集可以为Y个数据子集中的任一数据子集,下面以第一数据子集为例来描述客户端设备获取第一数据子集的训练结果的实现过程,客户端设备获取数据集合中的其它数据子集的训练结果的实现过程可以参照第一数据子集来处理。
针对于第一数据子集,客户端设备可以根据Q个节点中每个节点的第二属性信息,从Q个节点中为第一数据子集选择N个节点,并可以将第一数据子集分别发送给N个节点。其中,Q个节点中每个节点的第二属性信息可以包括节点的在线稳定性、存储性能、存储成本、数据最长保存时间中的一项或多项,可选地,每个节点的第二属性信息还可以包括处理吞吐量和数据的历史平均存储处理时间。
在一个示例中,客户端设备可以通过与区块链***进行交互,获取Q个节点的在线稳定性、存储性能、存储成本、处理吞吐量、数据的历史平均存储处理时间和数据最长保存时间等信息,并通过相同的算法和指标为Y个数据子集中的每一个数据子集选择N个节点,其中,N大于等于2。
本申请实施例中,客户端设备可以为不同的数据子集选择不同的节点,比如,第二数据子集和第三数据子集为Y个数据子集中的任意两个数据子集,则客户端设备为第二数据子集选择的节点可以不同于为第三数据子集选择的节点。如此,可以使得一个节点处理一份数据子集,避免采用同一个节点对多份数据子集进行处理而导致的处理速度较慢、处理效率不高的技术问题。
本申请实施例中,在为第一数据子集选择N个节点后,客户端设备可以将第一数据子集分别发送给第一数据子集对应的N个节点。具体实施中,客户端设备可以采用第二节点的公钥对第一数据子集进行加密,并将加密后的第一数据子集发送给第二节点,其中,第二节点可以为N个节点中的任一节点。举个例子,若第二备选存储节点集合中有150个节点,客户端设备选择了节点J1~节点J12这12个节点保存第一数据子集,则客户端设备可以将第一数据子集分别用节点J1、节点J2、……,节点J12的公钥进行加密,并将加密后的第一数据子集分别发送给节点J1、节点J2、……,节点J11和节点J12;比如,客户端设备可以将第一数据子集用节点J1的公钥进行加密,将加密后的第一数据子集发送给节点J1。
需要说明的是,本申请实施例中,一个数据子集可以并行发送给该数据子集对应的多个节点(比如,第一数据子集可以同时发送给节点J1、节点J2、……,节点J12),和/或,多个数据子集中的任一数据子集可以并行发送给该数据子集对应的节点(比如,第一数据子集、第二数据子集、…、第Y数据子集可以同时发送给各自对应的节点),本申请实施例对此不作限定。如此,可以提升数据发送的效率、数据存储的效率,同时可以节省模型训练的时间。
本申请实施例中,客户端设备在向N个节点发送第一数据子集的同时,还可以发送数据保存时间(即客户端设备设定的节点可以保存第一数据子集的最长时间)和N个节点中M个节点的第一收入分配策略,其中,第一收入分配策略中可以包括存储第一数据子集所需时长最短的M个节点所能得到的奖励。举个例子,若客户端设备预先设置的第一收入分配策略中总激励值为250,且确定接收第一数据子集的12个节点中前8个最先保存第一数据子集的节点能够得到的激励值分别为55、45、40、35、30、25、20、15,则客户端设备可以将第一数据子集和第一收入分配策略共同发送给12个节点。相应地,针对于12个节点中的任一个节点(比如,节点J2),在接收到客户端设备发送的第一数据子集后,节点J2可以将第一数据子集存储在节点J2对应的服务器中,进而将保存结果记录在区块链***中,同时,节点J2还可以向客户端设备发送已成功存储第一数据子集的指示信息。进一步地,客户端设备可以在接收到12个节点中前8个节点(比如,接收到指示信息的顺序依次为:节点J8、节点J5、节点J2、节点J4、节点J12、节点J10、节点J3和节点J6)分别发送的已成功存储第一数据子集的指示信息,并且在区块链***上获取到前8个节点对应的第一数据子集的存储结果后,将总激励值分别奖励给这前8个节点,也就是说,客户端设备可以为节点J8奖励的激励值为55、为节点J5奖励的激励值为45、为节点J2奖励的激励值为40,为节点J4奖励的激励值为35,为节点J12奖励的激励值为30、为节点J10奖励的激励值为25,为节点J3奖励的激励值为20,为节点J6奖励的激励值为15。
需要说明的是,在M个节点保存第一数据子集的过程中,区块链***可以记录M个节点中每个节点保存第一数据子集的时间,并更新每个节点的存储性能、处理吞吐量和数据的历史平均存储处理时间等指标。进一步地,区块链***还可以记录数据集合的标识和存储第一数据子集的节点的对应关系,比如,区块链***中有一份记录为“[J10]-[T1]:[Image]:[Test]:[1]”,说明在节点J10中存储有客户端设备T1发送的数据集合类型为Image、数据集合的标识为Test的第一份数据子集。
本申请实施例中,客户端设备可以根据保存第一数据子集的M个节点中每个节点的第三属性信息,从M个节点中选择K个节点,并可以将算法和数据集合的标识发送给K个节点,以使K个节点分别使用第一数据子集中的数据和算法对模型进行训练。其中,M个节点中每个节点的第三属性信息可以包括节点的在线稳定性、计算性能、计算成本、节点的计算结果可信度中的一项或多项。可选地,每个节点的第三属性信息还可以包括处理吞吐量和数据的历史平均计算处理时间。
在一种可能的实现方式中,客户端设备可以预先设置一个最高的计算成本(比如最高计算激励值为100),最高计算激励值可以用于指示客户端设备能够奖励给使用第一数据子集训练模型的节点的最高激励值。具体地,客户端设备可以获取M个节点中每个节点的计算成本,并将每个节点的计算成本与100进行对比,选择M个节点中存储成本不大于100的节点组成第一备选计算节点集合。比如,8个节点中存在5个节点(比如,节点J8、节点J12、节点J2、节点J3和节点J6)的计算成本不大于100,则第一备选计算节点集合中可以有节点J8、节点J12、节点J2、节点J3和节点J6这5个节点。需要说明的是,若8个节点的计算成本均大于客户端设备设置的最高的计算成本,则客户端设备可以等待某一个节点的计算成本下降至客户端设备设置的最高的计算成本,或者客户端设备可以直接反馈给用户模型训练失败的信息。
进一步地,客户端设备可以通过与区块链***进行交互,获取第一备选计算节点集合中各个节点的在线稳定性、计算性能、计算成本、处理吞吐量、数据的历史平均计算处理时间和算法的计算结果可信度等信息,并通过编写的算法为第一数据子集选择K个节点,其中,K大于等于2。本申请实施例中,在为第一数据子集选择K个节点后,客户端设备可以将用于训练模型的算法和数据集合的标识分别发送给N个节点。需要说明的是,本申请实施例中,算法和数据集合的标识可以并行发送给不同的节点,也就是说,用于训练模型的算法和数据集合的标识可以同时发送给Y个数据子集中每一个数据子集对应的K个节点,如此,可以提升数据发送的效率、节省时间。
在一个示例中,客户端设备从第一备选计算节点中的5个节点中选择出节点J8、节点J12和节点J6这3个节点,并分别向节点J8、节点J12和节点J6发送算法和数据集合的标识。相应地,针对于5个节点中的任一个节点(比如,节点J8),在接收到客户端设备发送的算法和数据集合的标识后,节点J8可以通过与区块链***进行通信,查询区块链***中数据子集的标识和存储第一数据子集的节点的对应关系的记录,并获取到节点J8中保存的与数据集合Test的标识对应的第一数据子集。在一个示例中,J8中保存的第一数据子集可以为使用节点J8的公钥进行加密后的第一数据子集,此时,节点J8在接收到客户端设备发送的算法和数据集合的标识后,可以首先确定第一数据集合在节点J8中存储的时间是否已经超过节点J8设置的存储时间(比如,可能因为客户端设备损坏导致采用区块链***训练模型时,第一数据子集在节点J8上的存储时间超出客户端设备预设的最短存储时间),即判断第一数据子集在节点J8中的存储是否过期,若存储未过期,则节点J8可以使用节点J8的私钥对加密后的第一数据子集进行解密,得到第一数据子集;若存储已过期,则节点J8可以向客户端设备反馈模型训练失败的信息。
本申请实施例中,客户端设备在向K个节点发送算法和数据集合的标识的同时,还可以发送K个节点中P个节点的第二收入分配策略,其中,第二收入分配策略包括训练模型所需时长最短的P个节点所能得到的奖励。举个例子,若客户端设备预先设置的第二收入分配策略对应的总激励值为500,且确定使用第一数据子集进行模型训练的3个节点(节点J8、节点J12和节点J6)中前2个得到训练结果的节点能够得到的激励值分别为300、200(即为第二收入分配策略),则客户端设备可以将用于训练模型的算法、数据集合的标识和第二收入分配策略共同发送给这3个节点。相应地,针对于3个节点中的任一个节点(比如,节点J8),在得到节点J8中保存的第一数据子集后,节点J8可以使用第一数据子集中的数据和算法对模型进行训练,得到训练结果,进而将训练结果记录在区块链***中;同时,节点J8可以将已得到训练结果的指示信息发送给客户端设备。进一步地,客户端设备可以在接收到3个节点中前2个节点(比如,接收到指示信息的顺序依次为:节点J8、节点J6)分别发送的指示信息后,并且在区块链***上获取到前2个节点对应的第一数据子集的训练结果后,为节点J8奖励的激励值为300、为节点J6奖励的激励值为200。
需要说明的是,在P个节点使用第一数据子集中的数据和算法对模型进行训练的过程中,区块链***可以记录P个节点中每个节点进行训练得到训练结果的时间,并更新每个节点的计算性能、处理吞吐量和数据的历史平均计算处理时间等指标。
本申请实施例中,客户端设备可以对P个节点的训练结果进行分析,若确定P个节点存在训练结果不可信的第一节点,则可以向区块链***发送第一信息。其中,第一信息可以用于指示区块链***对第一节点的计算结果可信度进行更新。在一个示例中,若确定P个节点对应的P个训练结果的误差范围在预设范围内,则客户端设备可以确定P个训练结果均是可信的;若确定P个训练结果中存在一个或多个节点的训练结果与其他训练结果的误差较大,则客户端设备可以将包括一个或多个节点的训练结果有误的第一信息发送给区块链***。相应地,区块链***在接收到客户端发送的第一信息后,可以查询一个或多个节点的历史训练结果,若存在多次历史训练结果有误,即认为一个或多个节点在训练的过程中存在造假行为,则客户端设备可以降低一个或多个节点的计算结果可信度。若某一个节点的计算结果可信度降低到预设阈值,则该节点将不会再被主动提供给客户端设备进行计算或存储等服务。
步骤205,客户端设备根据Y个数据子集中每个数据子集的训练结果,得到模型的参数。
本申请实施例中,客户端设备可以查询区块链中记录的Y个数据子集中每个数据子集的P个训练结果,并根据Y*P个训练结果,得到模型的参数。具体实施中,模型的参数的确定方式可以有多种,在一种可能的实现方式中,客户端设备可以从Y个数据子集中每个数据子集的P个训练结果中选取一个最合适的训练结果,进而对Y个数据子集对应的Y个最合适的训练结果进行整合处理,得到模型的参数。在另一种可能的实现方式中,客户端设备也可以对Y个数据子集的Y*P个训练结果进行整合处理,得到模型的参数。在其他可能的实施例中,模型的参数也可以是对0~Y*P个训练结果中任意多个训练结果进行整合处理得到的,本申请实施例对此不作具体限定。
本发明的上述实施例中,通过将数据集合划分为Y个数据子集,客户端设备可以根据Q个节点中每个节点的第二属性信息,为每一个数据子集选择N个节点进行存储;且可以在接收到Q个节点中的M个节点分别发送的已成功存储该数据子集的指示信息后,根据M个节点中每个节点的第三属性信息,从M个节点中为训练模型的算法选择K个节点进行算法运行,并可以接收K个节点中的P个节点返回的该数据子集的训练结果;进一步地,客户端设备可以根据Y个数据子集中每个数据子集的训练结果,得到模型的参数。本申请实施例中,通过采用区块链***中的节点训练模型,可以无需构建专属的机器学***均历史处理时间和节点的计算结果可信度等信息,从而可以避免客户端设备和/或计算节点在模型训练的过程中进行造假,使得模型训练的过程变得公开、透明,进而能够有效地保证用户的权利。此外,用于训练模型的数据集合可以为私有数据,通过采用计算节点的公钥对数据集合进行加密,可以保证在发送数据集合的过程中,数据集合不会被其他计算节点和/或其他客户端设备所窃取,从而可以保证数据集合的安全;且,通过将数据集合划分为Y个数据子集,并采用多个节点处理同一个数据子集,可以在提高节点处理效率的同时保证数据集合的安全,避免由一个节点处理数据集合或数据子集所造成的计算结果不准确。
针对上述方法流程,本申请实施例还提供一种客户端设备,该客户端设备的具体内容可以参照上述方法实施。
图3为本申请实施例提供的一种客户端设备的结构示意图,包括:
获取模块301,用于获取用于训练模型的数据集合和用于训练模型的算法;
划分模块302,用于根据所述数据集合的数据量,将所述数据集合划分为Y个数据子集;
处理模块303,用于根据区块链***的W个节点中每个节点的第一属性信息,从所述W个节点中选择Q个节点;所述W个节点中每个节点的第一属性信息包括所述节点的存储成本和/或所述节点的数据最长保存时间;
针对于第一数据子集,根据所述Q个节点中每个节点的第二属性信息,从所述Q个节点中为所述第一数据子集选择N个节点,并将所述第一数据子集分别发送给所述N个节点;所述第一数据子集为所述Y个数据子集中的任一数据子集;所述Q个节点中每个节点的第二属性信息包括所述节点的在线稳定性、存储性能、存储成本、数据最长保存时间中的一项或多项;在接收到所述N个节点中的M个节点分别发送的已成功存储所述第一数据子集的指示信息后,根据所述M个节点中每个节点的第三属性信息,从所述M个节点中选择K个节点;所述M个节点中每个节点的第三属性信息包括所述节点的在线稳定性、计算性能、计算成本、所述节点的计算结果可信度中的一项或多项;将所述算法和所述数据集合的标识发送给所述K个节点,以使所述K个节点分别使用所述第一数据子集中的数据和所述算法对所述模型进行训练;获取所述K个节点中的P个节点对应的所述第一数据子集的训练结果;其中,W≥Q≥N≥M≥K≥P,P≥2,W、Q、N、M、K、P均为整数;
根据所述Y个数据子集中每个数据子集的训练结果,得到模型参数。
可选地,所述处理模块303,还用于:
对所述P个节点对应的所述第一数据子集的训练结果进行分析,若确定所述P个节点存在训练结果不可信的第一节点,则向区块链***发送第一信息,所述第一信息用于指示所述区块链***对所述第一节点的计算结果可信度进行更新。
可选地,所述处理模块303还用于:
采用第二节点的公钥对所述第一数据子集进行加密,并将加密后的第一数据子集发送给所述第二节点,所述第二节点为所述N个节点中的任一节点。
可选地,所述处理模块303还用于:
将第一收入分配策略分别发送给所述N个节点,所述第一收入分配策略包括存储所述第一数据子集所需时长最短的M个节点所能得到的收入;和/或,
将第二收入分配策略分别发送给所述K个节点,所述第二收入分配策略包括训练模型所需时长最短的P个节点所能得到的收入。
可选地,为第二数据子集选择的节点不同于为第三数据子集选择的节点;所述第二数据子集和所述第三数据子集为所述Y个数据子集中的任意两个数据子集。
从上述内容可以看出:本发明的上述实施例中,通过将数据集合划分为Y个数据子集,客户端设备可以根据Q个节点中每个节点的第二属性信息,为每一个数据子集选择N个节点进行存储;且可以在接收到Q个节点中的M个节点分别发送的已成功存储该数据子集的指示信息后,根据M个节点中每个节点的第三属性信息,从M个节点中为训练模型的算法选择K个节点进行算法运行,并可以接收K个节点中的P个节点返回的该数据子集的训练结果;进一步地,客户端设备可以根据Y个数据子集中每个数据子集的训练结果,得到模型的参数。本申请实施例中,通过采用区块链***中的节点训练模型,可以无需构建专属的机器学***均历史处理时间和节点的计算结果可信度等信息,从而可以避免客户端设备和/或计算节点在模型训练的过程中进行造假,使得模型训练的过程变得公开、透明,进而能够有效地保证用户的权利。此外,用于训练模型的数据集合可以为私有数据,通过采用计算节点的公钥对数据集合进行加密,可以保证在发送数据集合的过程中,数据集合不会被其他计算节点和/或其他客户端设备所窃取,从而可以保证数据集合的安全;且,通过将数据集合划分为Y个数据子集,并采用多个节点处理同一个数据子集,可以在提高节点处理效率的同时保证数据集合的安全,避免由一个节点处理数据集合或数据子集所造成的计算结果不准确。
本领域内的技术人员应明白,本发明的实施例可提供为方法、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本申请实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (10)
1.一种确定模型参数的方法,其特征在于,该方法包括:
客户端设备获取用于训练模型的数据集合和用于训练模型的算法;
所述客户端设备根据所述数据集合的数据量,将所述数据集合划分为Y个数据子集;
所述客户端设备根据区块链***的W个节点中每个节点的第一属性信息,从所述W个节点中选择Q个节点;所述W个节点中每个节点的第一属性信息包括所述节点的存储成本和/或所述节点的数据最长保存时间;
针对于第一数据子集,所述客户端设备根据所述Q个节点中每个节点的第二属性信息,从所述Q个节点中为所述第一数据子集选择N个节点,并将所述第一数据子集分别发送给所述N个节点;所述第一数据子集为所述Y个数据子集中的任一数据子集;所述Q个节点中每个节点的第二属性信息包括所述节点的在线稳定性、存储性能、存储成本、数据最长保存时间中的一项或多项;所述客户端设备在接收到所述N个节点中的M个节点分别发送的已成功存储所述第一数据子集的指示信息后,根据所述M个节点中每个节点的第三属性信息,从所述M个节点中选择K个节点;所述M个节点中每个节点的第三属性信息包括所述节点的在线稳定性、计算性能、计算成本、所述节点的计算结果可信度中的一项或多项;所述客户端设备将所述算法和所述数据集合的标识发送给所述K个节点,以使所述K个节点分别使用所述第一数据子集中的数据和所述算法对所述模型进行训练;所述客户端设备获取所述K个节点中的P个节点对应的所述第一数据子集的训练结果;其中,W≥Q≥N≥M≥K≥P,P≥2,W、Q、N、M、K、P均为整数;
所述客户端设备根据所述Y个数据子集中每个数据子集的训练结果,得到模型参数。
2.根据权利要求1所述的方法,其特征在于,所述客户端设备获取所述K个节点中的P个节点对应的所述第一数据子集的训练结果之后,还包括:
所述客户端设备对所述P个节点对应的所述第一数据子集的训练结果进行分析,若确定所述P个节点存在训练结果不可信的第一节点,则向区块链***发送第一信息,所述第一信息用于指示所述区块链***对所述第一节点的计算结果可信度进行更新。
3.根据权利要求1所述的方法,其特征在于,所述客户端设备将所述第一数据子集分别发送给所述N个节点,包括:
所述客户端设备采用第二节点的公钥对所述第一数据子集进行加密,并将加密后的第一数据子集发送给所述第二节点,所述第二节点为所述N个节点中的任一节点。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述客户端设备将第一收入分配策略分别发送给所述N个节点,所述第一收入分配策略包括存储所述第一数据子集所需时长最短的M个节点所能得到的收入;和/或,
所述客户端设备将第二收入分配策略分别发送给所述K个节点,所述第二收入分配策略包括训练模型所需时长最短的P个节点所能得到的收入。
5.根据权利要求1至4中任一项所述的方法,其特征在于,
所述客户端设备为第二数据子集选择的节点不同于为第三数据子集选择的节点;所述第二数据子集和所述第三数据子集为所述Y个数据子集中的任意两个数据子集。
6.一种客户端设备,其特征在于,所述客户端设备包括:
获取模块,用于获取用于训练模型的数据集合和用于训练模型的算法;
划分模块,用于根据所述数据集合的数据量,将所述数据集合划分为Y个数据子集;
处理模块,用于根据区块链***的W个节点中每个节点的第一属性信息,从所述W个节点中选择Q个节点;所述W个节点中每个节点的第一属性信息包括所述节点的存储成本和/或所述节点的数据最长保存时间;
针对于第一数据子集,根据所述Q个节点中每个节点的第二属性信息,从所述Q个节点中为所述第一数据子集选择N个节点,并将所述第一数据子集分别发送给所述N个节点;所述第一数据子集为所述Y个数据子集中的任一数据子集;所述Q个节点中每个节点的第二属性信息包括所述节点的在线稳定性、存储性能、存储成本、数据最长保存时间中的一项或多项;在接收到所述N个节点中的M个节点分别发送的已成功存储所述第一数据子集的指示信息后,根据所述M个节点中每个节点的第三属性信息,从所述M个节点中选择K个节点;所述M个节点中每个节点的第三属性信息包括所述节点的在线稳定性、计算性能、计算成本、所述节点的计算结果可信度中的一项或多项;将所述算法和所述数据集合的标识发送给所述K个节点,以使所述K个节点分别使用所述第一数据子集中的数据和所述算法对所述模型进行训练;获取所述K个节点中的P个节点对应的所述第一数据子集的训练结果;其中,W≥Q≥N≥M≥K≥P,P≥2,W、Q、N、M、K、P均为整数;
根据所述Y个数据子集中每个数据子集的训练结果,得到模型参数。
7.根据权利要求6所述的客户端设备,其特征在于,所述处理模块,还用于:
对所述P个节点对应的所述第一数据子集的训练结果进行分析,若确定所述P个节点存在训练结果不可信的第一节点,则向区块链***发送第一信息,所述第一信息用于指示所述区块链***对所述第一节点的计算结果可信度进行更新。
8.根据权利要求6所述的客户端设备,其特征在于,所述处理模块还用于:
采用第二节点的公钥对所述第一数据子集进行加密,并将加密后的第一数据子集发送给所述第二节点,所述第二节点为所述N个节点中的任一节点。
9.根据权利要求6所述的客户端设备,其特征在于,所述处理模块还用于:
将第一收入分配策略分别发送给所述N个节点,所述第一收入分配策略包括存储所述第一数据子集所需时长最短的M个节点所能得到的收入;和/或,
将第二收入分配策略分别发送给所述K个节点,所述第二收入分配策略包括训练模型所需时长最短的P个节点所能得到的收入。
10.根据权利要求6至9中任一项所述的客户端设备,其特征在于,
为第二数据子集选择的节点不同于为第三数据子集选择的节点;所述第二数据子集和所述第三数据子集为所述Y个数据子集中的任意两个数据子集。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811315103.1A CN109558894A (zh) | 2018-11-06 | 2018-11-06 | 一种确定模型参数的方法及客户端设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811315103.1A CN109558894A (zh) | 2018-11-06 | 2018-11-06 | 一种确定模型参数的方法及客户端设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109558894A true CN109558894A (zh) | 2019-04-02 |
Family
ID=65866018
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811315103.1A Pending CN109558894A (zh) | 2018-11-06 | 2018-11-06 | 一种确定模型参数的方法及客户端设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109558894A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110569909A (zh) * | 2019-09-10 | 2019-12-13 | 腾讯科技(深圳)有限公司 | 基于区块链的故障预警方法、装置、设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106534085A (zh) * | 2016-10-25 | 2017-03-22 | 杭州云象网络技术有限公司 | 一种基于区块链技术的隐私保护方法 |
CN106815644A (zh) * | 2017-01-26 | 2017-06-09 | 北京航空航天大学 | 机器学习方法和从节点 |
US20170286880A1 (en) * | 2012-09-28 | 2017-10-05 | Rex Wiig | System and method of a requirement, compliance and resource management |
CN108009823A (zh) * | 2017-11-03 | 2018-05-08 | 厦门快商通信息技术有限公司 | 基于区块链智能合约的分布式算力资源的调用方法和*** |
CN108323200A (zh) * | 2018-01-25 | 2018-07-24 | 深圳前海达闼云端智能科技有限公司 | 基于区块链的数据训练方法、装置、存储介质及区块链节点 |
CN108449401A (zh) * | 2018-03-12 | 2018-08-24 | 厦门益东智能科技有限公司 | 一种基于区块链技术的算力共享方法及*** |
-
2018
- 2018-11-06 CN CN201811315103.1A patent/CN109558894A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170286880A1 (en) * | 2012-09-28 | 2017-10-05 | Rex Wiig | System and method of a requirement, compliance and resource management |
CN106534085A (zh) * | 2016-10-25 | 2017-03-22 | 杭州云象网络技术有限公司 | 一种基于区块链技术的隐私保护方法 |
CN106815644A (zh) * | 2017-01-26 | 2017-06-09 | 北京航空航天大学 | 机器学习方法和从节点 |
CN108009823A (zh) * | 2017-11-03 | 2018-05-08 | 厦门快商通信息技术有限公司 | 基于区块链智能合约的分布式算力资源的调用方法和*** |
CN108323200A (zh) * | 2018-01-25 | 2018-07-24 | 深圳前海达闼云端智能科技有限公司 | 基于区块链的数据训练方法、装置、存储介质及区块链节点 |
CN108449401A (zh) * | 2018-03-12 | 2018-08-24 | 厦门益东智能科技有限公司 | 一种基于区块链技术的算力共享方法及*** |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110569909A (zh) * | 2019-09-10 | 2019-12-13 | 腾讯科技(深圳)有限公司 | 基于区块链的故障预警方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zhang et al. | Intelligent cloud resource management with deep reinforcement learning | |
Feng et al. | BAFL: A blockchain-based asynchronous federated learning framework | |
CN109543726A (zh) | 一种训练模型的方法及装置 | |
Xu et al. | BESIFL: Blockchain-empowered secure and incentive federated learning paradigm in IoT | |
CN102075352B (zh) | 一种网络用户行为预测的方法和装置 | |
CN106446067A (zh) | 一种获取交易数据的方法和装置 | |
US20190199693A1 (en) | Safe-Transfer Exchange Protocol Based on Trigger-Ready Envelopes Among Distributed Nodes. | |
Yeh et al. | Economic-based resource allocation for reliable Grid-computing service based on Grid Bank | |
CN110147967A (zh) | 风险防控方法及装置 | |
CN108920948A (zh) | 一种反欺诈流式计算装置及方法 | |
US20240205266A1 (en) | Epistemic uncertainty reduction using simulations, models and data exchange | |
CN103106253A (zh) | 一种MapReduce计算模型中基于遗传算法的数据平衡方法 | |
CN110009347A (zh) | 一种区块链交易信息审计的方法及装置 | |
Ahmed et al. | Deep reinforcement learning for multi-agent interaction | |
CN108573308A (zh) | 基于大数据的软件工程知识库的自动化构建方法及*** | |
Song et al. | EOS. IO blockchain data analysis | |
CN109558950A (zh) | 一种确定模型参数的方法及装置 | |
CN113689270B (zh) | 黑产设备的确定方法、电子设备、存储介质及程序产品 | |
CN109558894A (zh) | 一种确定模型参数的方法及客户端设备 | |
Jain et al. | Blockchain enabled trusted task offloading scheme for fog computing: A deep reinforcement learning approach | |
Nguyen et al. | A novel nature-inspired algorithm for optimal task scheduling in fog-cloud blockchain system | |
TWI763120B (zh) | 執行設備的計算機實現的方法、用於執行軟體實現應用的系統和用於為軟體實現應用生成動作選擇方針的裝置 | |
Hu et al. | The bus sightseeing problem | |
CN109543725A (zh) | 一种获取模型参数的方法及装置 | |
CN108446985A (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 |
Application publication date: 20190402 |
|
RJ01 | Rejection of invention patent application after publication |