(12)发明专利申请
(10)申请公布号 CN 111680099 A(43)申请公布日 2020.09.18
(21)申请号 202010318931.1(22)申请日 2020.04.21
(71)申请人 广州中科易德科技有限公司
地址 510000 广东省广州市南沙区环市大
道西221号之一501房(自编01室)(72)发明人 李引
(74)专利代理机构 广州容大专利代理事务所
(普通合伙) 44326
代理人 潘素云(51)Int.Cl.
G06F 16/27(2019.01)G06K 9/62(2006.01)G06Q 20/38(2012.01)
权利要求书2页 说明书6页 附图2页
(54)发明名称
一种基于决策树模型训练的区块链共识方法和系统(57)摘要
本发明公开了一种基于决策树模型训练的区块链共识方法和系统,该系统包括共识算法调度器、参数和数据获取器、决策树模型训练器和共识验证器;该系统可与现有的区块链系统进行对接,取代POW/POS/POA等共识算法。本发明将区块链过剩的算力引入决策树模型的训练中,通过区块链的激励机制,使得投资人能够将矿机用于进行人工智能模型的训练,能够引导将资金、算力、能源投入到更加有意义的工作上,解决算力不足费用昂贵的问题。本发明将区块链的POW算力用来进行大数据的决策树计算,降低了成本,节约了社会资源,将算力用到了有意义的工作上。
CN 111680099 ACN 111680099 A
权 利 要 求 书
1/2页
1.一种基于决策树模型训练的区块链共识方法,其特征在于,包括如下步骤:主体生成大数据采集信息发送给节点,节点将该大数据采集信息广播到相邻节点;采用决策树模型训练共识算法进行计算和验证,节点验证大数据采集信息的有效性,将其放入缓存池,直到缓冲池中的数据集合A的数量n达到阈值α;
节点用参数和数据获取器获取链上存储的所有大数据采集信息Z,与缓冲池中当前的数据集合A进行合并后生成D,并将D中包含的项映射到矩阵Mnp上;采用决策树算法,分别计算Aj(1≤j≤p)作为分类类别,{A1,A2,…Aj-1,Aj+1,…Ap}作为特征属性决策树;
节点完成决策树模型的计算,将决策树模型参数存储到区块头,生成第一条区块铸币交易用于记录该节点获得记账奖励,同时将数据集合A生成n条数据采集交易和其他转账交易一起进行打包成区块体,将区块头与区块体进行合并生成区块并进行全网广播;
其他节点收到新区块的信息,共识验证器对其进行验证;当采用的决策树模型时,节点将利用参数和数据获取器获取链上存储的所有大数据采集信息Z,与本节点缓冲池中当前的数据集合B进行合并后生成D’,利用该决策树模型来预测D’中对Aj进行分类的正确率,验证该正确率是否大于参数要求;如果达到正确率参数指标,则将该区块放入本地区块链中。
2.根据权利要求1所述的基于决策树模型训练的区块链共识方法,其特征在于,采用决策树模型训练共识算法进行计算和验证之前,还包括:
节点共识算法调度器选择共识算法,如果为决策树模型训练共识算法,则采用决策树模型训练共识算法进行计算和验证,否则采用传统区块链共识算法进行计算和验证。
3.根据权利要求1所述的基于决策树模型训练的区块链共识方法,其特征在于,数据信息直接以数据贡献交易的方式存储在区块链上,数据贡献交易的形式表达为{主体钱包地址,数据采集奖励金额,数据信息};或者数据信息将其进行梳理整理后放入外部数据存储系统,返回一个数据存储的资源定位符。
4.根据权利要求1所述的基于决策树模型训练的区块链共识方法,其特征在于,底层区块链如果基于比特币、莱特币的区块链,那么将扩展新的数据贡献交易类型,这里的数据信息采用比特币交易中预留字段来进行存储;如果基于以太坊、EOS的具有智能合约机制的区块链平台,则数据信息是将数据信息封装后作为参数并对智能合约的方法调用,当该数据信息经过智能合约验证通过之后,再通过智能合约往主体钱包地址转账,金额为数据采集奖励金额。
5.根据权利要求1所述的基于决策树模型训练的区块链共识方法,其特征在于,阈值α通过智能合约的方式由所有节点参与者投票决定,正确率参数通过智能合约的方式由所有节点参与者投票决定。
6.根据权利要求1所述的基于决策树模型训练的区块链共识方法,其特征在于,决策树采用ID3、C4.5、C5.0或者扩展算法进行计算。
7.一种基于决策树模型训练的区块链共识系统,其特征在于,包括:参数和数据获取器,用于主体生成大数据采集信息发送给节点,节点将该大数据采集信息广播到相邻节点;
决策树模型训练器,用于采用决策树模型训练共识算法进行计算和验证,节点验证大数据采集信息的有效性,将其放入缓存池,直到缓冲池中的数据集合A的数量n达到阈值α;节点用参数和数据获取器获取链上存储的所有大数据采集信息Z,与缓冲池中当前的数据
2
CN 111680099 A
权 利 要 求 书
2/2页
集合A进行合并后生成D,并将D中包含的项映射到矩阵Mnp上;采用决策树算法,分别计算Aj(1≤j≤p)作为分类类别,{A1,A2,…Aj-1,Aj+1,…Ap}作为特征属性决策树;节点完成决策树模型的计算,将决策树模型参数存储到区块头,生成第一条区块铸币交易用于记录该节点获得记账奖励,同时将数据集合A生成n条数据采集交易和其他转账交易一起进行打包成区块体,将区块头与区块体进行合并生成区块并进行全网广播;
共识验证器,用于其他节点收到新区块的信息对其进行验证;当采用的决策树模型时,节点将利用参数和数据获取器获取链上存储的所有大数据采集信息Z,与本节点缓冲池中当前的数据集合B进行合并后生成D’,利用该决策树模型来预测D’中对Aj进行分类正确率,验证该正确率是否大于参数要求;如果达到正确率参数指标,则将该区块放入本地区块链中。
8.根据权利要求7所述的基于决策树模型训练的区块链共识系统,其特征在于,所述基于决策树模型训练的区块链共识系统还包括:
共识算法调度,用于节点选择共识算法,如果为决策树模型训练共识算法,则采用决策树模型共识算法进行计算和验证,否则采用传统区块链共识算法进行计算和验证。
9.根据权利要求7所述的基于决策树模型训练的区块链共识系统,其特征在于,数据信息直接以数据贡献交易的方式存储在区块链上,数据贡献交易的形式表达为{主体钱包地址,数据采集奖励金额,数据信息};或者数据信息将其进行梳理整理后放入外部数据存储系统,返回一个数据存储的资源定位符;
底层区块链如果基于比特币、莱特币的区块链,那么将扩展新的数据贡献交易类型,这里的数据信息采用比特币交易中预留字段来进行存储;如果基于以太坊、EOS的具有智能合约机制的区块链平台,则数据信息是将数据信息封装后作为参数并对智能合约的方法调用,当该数据信息经过智能合约验证通过之后,再通过智能合约往主体钱包地址转账,金额为数据采集奖励金额。
10.根据权利要求7所述的基于决策树模型训练的区块链共识系统,其特征在于,决策树采用ID3、C4.5、C5.0或者扩展算法进行计算,阈值α通过智能合约的方式由所有节点参与者投票决定,正确率参数通过智能合约的方式由所有节点参与者投票决定。
3
CN 111680099 A
说 明 书
一种基于决策树模型训练的区块链共识方法和系统
1/6页
技术领域
[0001]本发明涉及区块链技术领域,具体涉及一种基于决策树模型训练的区块链共识方法和系统。
背景技术
[0002]区块链技术的发展已经得到国内外企业、研究机构、高校等普遍认同,认为其是下一代价值互联网的核心。主流的区块链平台比特币、以太坊、莱特币等,一般采用POW共识算法,通过矿机重复的进行散列值运算来确定出块的节点,哪个节点投入算力更高,将有更大的概率获得出块奖励。这种机制使得能够通过机器和算法来实现信任的建立和价值共识,投资人投入大量的金钱用来购买矿机和电力,截止2019年9月,比特币全网的算力已经达到70EH/S,这些算力和能源被投资者用来进行散列值运算从而获得奖励,这种模式下的算力和能源的浪费被极大的诟病。[0003]决策树(Decision Tree)是在已知各种情况发生概率的基础上,通过构成决策树来求取净现值的期望值大于等于零的概率,评价项目风险,判断其可行性的决策分析方法,是直观运用概率分析的一种图解法。由于这种决策分支画成图形很像一棵树的枝干,故称决策树。在机器学习中,决策树是一个预测模型,他代表的是对象属性与对象值之间的一种映射关系。
[0004]主流的区块链普遍采用POW等共识算法,用来确定出块节点,存在能源和算力浪费的问题。
发明内容
[0005]有鉴于此,为了解决现有技术中区块链的共识算法存在能源和算力浪费的问题,本发明提出一种基于决策树模型训练的区块链共识方法和系统。[0006]本发明通过以下技术手段解决上述问题:[0007]一方面,本发明提供一种基于决策树模型训练的区块链共识方法,包括如下步骤:[0008]主体生成大数据采集信息发送给节点,节点将该大数据采集信息广播到相邻节点;
[0009]采用决策树模型训练共识算法进行计算和验证,节点验证大数据采集信息的有效性,将其放入缓存池,直到缓冲池中的数据集合A的数量n达到阈值α;[0010]节点用“参数和数据获取器”获取链上存储的所有大数据采集信息Z,与缓冲池中当前的数据集合A进行合并后生成D,并将D中包含的项映射到矩阵Mnp上;采用决策树算法,分别计算Aj(1≤j≤p)作为分类类别,{A1,A2,…Aj-1,Aj+1,…Ap}作为特征属性决策树;[0011]节点完成决策树模型的计算,将决策树模型参数存储到区块头,生成第一条区块铸币交易用于记录该节点获得记账奖励,同时将数据集合A生成n条数据采集交易和其他转账交易一起进行打包成区块体,将区块头与区块体进行合并生成区块并进行全网广播;[0012]其他节点收到新区块的信息,“共识验证器”对其进行验证;当采用的决策树模型
4
CN 111680099 A
说 明 书
2/6页
时,节点将利用“参数和数据获取器”获取链上存储的所有大数据采集信息Z,与本节点缓冲池中当前的数据集合B进行合并后生成D’,利用该决策树模型来预测D’中对Aj进行分类的正确率,验证该正确率是否大于参数要求;如果达到正确率参数指标,则将该区块放入本地区块链中。
[0013]进一步地,采用决策树模型训练共识算法进行计算和验证之前,还包括:[0014]节点“共识算法调度器”选择共识算法,如果为决策树模型训练共识算法,则采用决策树模型训练共识算法进行计算和验证,否则采用传统区块链共识算法进行计算和验证。
[0015]进一步地,数据信息直接以数据贡献交易的方式存储在区块链上,数据贡献交易的形式表达为{主体钱包地址,数据采集奖励金额,数据信息};或者数据信息将其进行梳理整理后放入外部数据存储系统,返回一个数据存储的资源定位符。[0016]进一步地,底层区块链如果基于比特币、莱特币的区块链,那么将扩展新的数据贡献交易类型,这里的“数据信息”采用比特币交易中预留字段来进行存储;如果基于以太坊、EOS的具有智能合约机制的区块链平台,则“数据信息”是将数据信息封装后作为参数并对智能合约的方法调用,当该数据信息经过智能合约验证通过之后,再通过智能合约往“主体钱包地址”转账,金额为“数据采集奖励金额”。[0017]进一步地,阈值α通过智能合约的方式由所有节点参与者投票决定,正确率参数通过智能合约的方式由所有节点参与者投票决定。[0018]进一步地,决策树采用ID3、C4.5、C5.0或者扩展算法进行计算。[0019]另一方面,本发明提供一种基于决策树模型训练的区块链共识系统,包括:[0020]参数和数据获取器,用于主体生成大数据采集信息发送给节点,节点将该大数据采集信息广播到相邻节点;[0021]决策树模型训练器,用于采用决策树模型训练共识算法进行计算和验证,节点验证大数据采集信息的有效性,将其放入缓存池,直到缓冲池中的数据集合A的数量n达到阈值α;节点用“参数和数据获取器”获取链上存储的所有大数据采集信息Z,与缓冲池中当前的数据集合A进行合并后生成D,并将D中包含的项映射到矩阵Mnp上;采用决策树算法,分别计算Aj(1≤j≤p)作为分类类别,{A1,A2,…Aj-1,Aj+1,…Ap}作为特征属性决策树;节点完成决策树模型的计算,将决策树模型参数存储到区块头,生成第一条区块铸币交易用于记录该节点获得记账奖励,同时将数据集合A生成n条数据采集交易和其他转账交易一起进行打包成区块体,将区块头与区块体进行合并生成区块并进行全网广播;[0022]共识验证器,用于其他节点收到新区块的信息对其进行验证;当采用的决策树模型时,节点将利用“参数和数据获取器”获取链上存储的所有大数据采集信息Z,与本节点缓冲池中当前的数据集合B进行合并后生成D’,利用该决策树模型来预测D’中对Aj进行分类正确率,验证该正确率是否大于参数要求;如果达到正确率参数指标,则将该区块放入本地区块链中。
[0023]进一步地,所述基于决策树模型训练的区块链共识系统还包括:[0024]共识算法调度,用于节点选择共识算法,如果为决策树模型训练共识算法,则采用决策树模型共识算法进行计算和验证,否则采用传统区块链共识算法进行计算和验证。[0025]进一步地,数据信息直接以数据贡献交易的方式存储在区块链上,数据贡献交易
5
CN 111680099 A
说 明 书
3/6页
的形式表达为{主体钱包地址,数据采集奖励金额,数据信息};或者数据信息将其进行梳理整理后放入外部数据存储系统,返回一个数据存储的资源定位符;[0026]底层区块链如果基于比特币、莱特币的区块链,那么将扩展新的数据贡献交易类型,这里的“数据信息”采用比特币交易中预留字段来进行存储;如果基于以太坊、EOS的具有智能合约机制的区块链平台,则“数据信息”是将数据信息封装后作为参数并对智能合约的方法调用,当该数据信息经过智能合约验证通过之后,再通过智能合约往“主体钱包地址”转账,金额为“数据采集奖励金额”。[0027]进一步地,决策树采用ID3、C4.5、C5.0或者扩展算法进行计算,阈值α通过智能合约的方式由所有节点参与者投票决定,正确率参数通过智能合约的方式由所有节点参与者投票决定。
[0028]与现有技术相比,本发明的有益效果至少包括:[0029]本发明针对个人大数据、企业大数据、环境大数据等,提出了将这些大数据决策树模型的挖掘用来作为区块链共识达成的方法,能够将算力应用到有价值的模型挖掘上。[0030]本发明将区块链过剩的算力引入决策树模型的训练中,通过区块链的激励机制,使得投资人能够将矿机用于进行人工智能模型的训练,能够引导将资金、算力、能源投入到更加有意义的工作上,解决算力不足费用昂贵的问题。
[0031]本发明将区块链的POW算力用来进行大数据的决策树计算,降低了成本,节约了社会资源,将算力用到了有意义的工作上。附图说明
[0032]为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0033]图1是本发明基于决策树模型训练的区块链共识方法的流程图;[0034]图2是本发明基于决策树模型训练的区块链共识系统的结构示意图。
具体实施方式
[0035]为使本发明的上述目的、特征和优点能够更加明显易懂,下面将结合附图和具体的实施例对本发明的技术方案进行详细说明。需要指出的是,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。[0036]实施例1
[0037]如图1所示,本发明提供一种基于决策树模型训练的区块链共识方法,包括如下步骤:
[0038]步骤S110:主体生成大数据采集信息发送给节点,节点将该信息广播到相邻节点。数据信息直接以数据贡献交易的方式存储在区块链上,数据贡献交易的形式可以表达为{主体钱包地址,数据采集奖励金额,数据信息}。[0039]底层区块链如果基于比特币、莱特币等区块链,那么将扩展新的数据贡献交易类
6
CN 111680099 A
说 明 书
4/6页
型,这里的“数据信息”可以采用比特币交易中预留字段来进行存储;如果基于以太坊、EOS等具有智能合约机制的区块链平台,则“数据信息”是将数据信息封装后作为参数并对智能合约的方法调用,当该数据信息经过智能合约验证通过之后,再通过智能合约往“主体钱包地址”转账,金额为“数据采集奖励金额”。[0040]可替换的,该数据信息也可以将其进行梳理整理后放入外部数据存储系统,返回一个数据存储的资源定位符。[0041]步骤S120:节点“共识算法调度器”选择共识算法,如果为决策树模型训练共识算法,则跳到步骤S130,否则采用传统区块链共识算法进行计算和验证。[0042]步骤S130:节点验证数据采集信息的有效性,将其放入缓存池,直到缓冲池中的数据集合A的数量n达到阈值α。阈值α可以通过智能合约等方式由所有节点参与者投票决定。[0043]步骤S140:节点用“参数和数据获取器”获取链上存储的所有大数据采集信息Z,与缓冲池中当前的数据集合A进行合并后生成D,并将D中包含的项映射到矩阵Mnp上,如表1所示。采用决策树算法,分别计算Aj(1≤j≤p)作为分类类别,{A1,A2,…Aj-1,Aj+1,…Ap}作为特征属性决策树。决策树采用ID3、C4.5、C5.0或者扩展算法等算法进行计算。[0044]表1矩阵Mnp示例
[0045]
[0046]
注:数据来源不限于个人大数据,企业大数据、环境大数据等都可以。在本例中,矩
阵列的属性不限于使用应用app,可以扩展到任意个人大数据,比如“每天走步”、“购买XX股票”等。
[0048]步骤S150:节点完成决策树模型的计算,将决策树模型参数存储到区块头,生成第一条区块铸币交易用于记录该节点获得记账奖励,同时将数据集合A生成n条数据采集交易和其他转账交易一起进行打包成区块体,将区块头与区块体进行合并生成区块并进行全网广播。
[0049]步骤S160:其他节点收到新区块的信息,“共识验证器”对其进行验证。当采用的决策树模型时,节点将利用“参数和数据获取器”获取链上存储的所有大数据采集信息Z,与本节点缓冲池中当前的数据集合B进行合并后生成D’,利用该决策树模型来预测D’中对Aj进行分类正确率,验证该正确率是否大于参数要求。如果达到正确率参数指标,则将该区块放入本地区块链中。正确率参数可以通过智能合约等方式由所有节点参与者投票决定。[0050]实施例2
[0047]
7
CN 111680099 A[0051]
说 明 书
5/6页
如图2所示,本发明还提供一种基于决策树模型训练的区块链共识系统,包括参数
和数据获取器、共识算法调度器、决策树模型训练器和共识验证器。[0052]参数和数据获取器,用于主体生成大数据采集信息发送给节点,节点将该信息广播到相邻节点。数据信息直接以数据贡献交易的方式存储在区块链上,数据贡献交易的形式可以表达为{主体钱包地址,数据采集奖励金额,数据信息}。[0053]底层区块链如果基于比特币、莱特币等区块链,那么将扩展新的数据贡献交易类型,这里的“数据信息”可以采用比特币交易中预留字段来进行存储;如果基于以太坊、EOS等具有智能合约机制的区块链平台,则“数据信息”是将数据信息封装后作为参数并对智能合约的方法调用,当该数据信息经过智能合约验证通过之后,再通过智能合约往“主体钱包地址”转账,金额为“数据采集奖励金额”。[0054]可替换的,该数据信息也可以将其进行梳理整理后放入外部数据存储系统,返回一个数据存储的资源定位符。[0055]共识算法调度器,用于节点选择共识算法,如果为决策树模型训练共识算法,则采用决策树模型训练共识算法进行计算和验证,否则采用传统区块链共识算法进行计算和验证。
[0056]决策树模型训练器,用于节点验证数据采集信息的有效性,将其放入缓存池,直到缓冲池中的数据集合A的数量n达到阈值α。阈值α可以通过智能合约等方式由所有节点参与者投票决定。[0057]节点用“参数和数据获取器”获取链上存储的所有大数据采集信息Z,与缓冲池中当前的数据集合A进行合并后生成D,并将D中包含的项映射到矩阵Mnp上,如表1所示。采用决策树算法,分别计算Aj(1≤j≤p)作为分类类别,{A1,A2,…Aj-1,Aj+1,…Ap}作为特征属性决策树。决策树采用ID3、C4.5、C5.0或者扩展算法等算法进行计算。[0058]表1矩阵Mnp示例
[0059]
注:数据来源不限于个人大数据,企业大数据、环境大数据等都可以。在本例中,矩
阵列的属性不限于使用应用app,可以扩展到任意个人大数据,比如“每天走步”、“购买XX股票”等。
[0061]节点完成决策树模型的计算,将决策树模型参数存储到区块头,生成第一条区块铸币交易用于记录该节点获得记账奖励,同时将数据集合A生成n条数据采集交易和其他转账交易一起进行打包成区块体,将区块头与区块体进行合并生成区块并进行全网广播。
8
[0060]
CN 111680099 A[0062]
说 明 书
6/6页
共识验证器,用于其他节点收到新区块的信息对其进行验证。当采用的决策树模
型时,节点将利用“参数和数据获取器”获取链上存储的所有大数据采集信息Z,与本节点缓冲池中当前的数据集合B进行合并后生成D’,利用该决策树模型来预测D’中对Aj进行分类正确率,验证该正确率是否大于参数要求。如果达到正确率参数指标,则将该区块放入本地区块链中。正确率参数可以通过智能合约等方式由所有节点参与者投票决定。[0063]本发明提出了采用决策树达成区块链节点共识的方法和系统,分为“共识算法调度器”、“参数和数据获取器”、“决策树模型训练器”、“共识验证器”。该系统可与现有的区块链系统进行对接,取代POW/POS/POA等共识算法。[0064]本发明针对个人大数据、企业大数据、环境大数据等,提出了将这些大数据决策树模型的挖掘用来作为区块链共识达成的方法,能够将算力应用到有价值的模型挖掘上。[0065]本发明将区块链过剩的算力引入决策树模型的训练中,通过区块链的激励机制,使得投资人能够将矿机用于进行人工智能模型的训练,能够引导将资金、算力、能源投入到更加有意义的工作上,解决算力不足费用昂贵的问题。
[0066]本发明将区块链的POW算力用来进行大数据的决策树计算,降低了成本,节约了社会资源,将算力用到了有意义的工作上。
[0067]以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
9
CN 111680099 A
说 明 书 附 图
1/2页
图1
10
CN 111680099 A
说 明 书 附 图
2/2页
图2
11
因篇幅问题不能全部显示,请点此查看更多更全内容