[发明专利]一种基于前馈神经网络的智能合约自动分类方法有效
申请号: | 201611205891.X | 申请日: | 2016-12-23 |
公开(公告)号: | CN106778882B | 公开(公告)日: | 2019-11-05 |
发明(设计)人: | 刘振广;黄步添;陈建海;温琪;俞之贝;张维赛;杨文龙;王云霄 | 申请(专利权)人: | 杭州云象网络技术有限公司 |
主分类号: | G06K9/62 | 分类号: | G06K9/62;G06N3/04;G06N3/08;G06Q20/38 |
代理公司: | 杭州天勤知识产权代理有限公司 33224 | 代理人: | 胡红娟 |
地址: | 310012 浙江省杭州市*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 神经网络 智能 合约 自动 分类 方法 | ||
本发明公开了一种基于前馈神经网络的智能合约自动分类方法,能够实现机器对智能合约代码的自动分类;与当前传统的智能合约人工分类相比,本发明既节省了时间和经济成本,又能够胜任海量合约无法人工分类的任务。本发明采用前馈神经网络的训练方式可以在已贴标智能合约集合更新时,使用更新后的合约集合重新训练以使该自动分类器能够适应新的变化。
技术领域
本发明属于区块链技术领域,具体涉及一种基于前馈神经网络的智能合约自动分类方法。
背景技术
作为区块链技术支撑的应用之一,区块链智能合约允许用户在区块链上实现个性化的代码逻辑从而使得区块链技术更加的简单易用。然而,随着以太坊Ethereum等智能合约平台的迅速发展,区块链上智能合约代码数量快速增加。如今,大型的智能合约平台中均已积累了数以十万计的智能合约,且数量仍在指数增长。
当前,对于智能合约代码的管理与组织,因缺乏自动化分类工具,仍采用人工分类的方法进行分门别类。但是,当前十万级并不断增长的智能合约数量已经使得人工地对众多的智能合约分门别类耗时耗力。未来,当智能合约数量超过百万,人工贴标甚至变得不再可能。
发明内容
为高效管理和有效组织海量的智能合约代码,解决对海量智能合约人工分类面临的时间和经济成本过高的问题,本发明提供一种基于前馈神经网络的智能合约自动分类方法,能够实现计算机对智能合约代码的自动分类。
一种基于前馈神经网络的智能合约自动分类方法,包括如下步骤:
(1)获取一定数量的智能合约代码,并人工标记这些智能合约代码的类别;
(2)对所述智能合约代码进行预处理;
(3)提取智能合约代码的代码语义向量和交易信息向量,并将两者组合作为特征向量;
(4)以智能合约代码的特征向量作为输入,人工标记的类别作为输出,通过前馈神经网络训练得到关于智能合约代码的分类器;
(5)对于未知类别的智能合约代码,根据步骤(3)提取得到其特征向量并输入至所述分类器中,从而输出得到该智能合约代码的类别。
所述步骤(2)中对智能合约代码进行预处理的具体方法为:对于任一智能合约代码A,若其智能合约调用了另一个智能合约的函数,则将被调用的函数代码扩充到智能合约代码A中调用该函数的相应位置;对于递归调用,同样采用上述方式处理。
所述步骤(3)中提取智能合约代码的代码语义向量,具体过程为:首先,将智能合约代码完全展开后即对应得到了一个词序列;然后,利用词嵌入模型将该词序列中的每一个词对应映射成一个词嵌入向量;最后,将词序列中所有词对应的词嵌入向量输入LSTM(Long Short-Term Memory,长短时记忆)模型中,LSTM模型将这些词嵌入向量映射成一个代码语义向量,即智能合约代码的代码语义向量。
所述步骤(3)中提取智能合约代码的交易信息向量,即提取与智能合约代码相关的账号状态信息,包括账号的余额、关联交易总数量、PageRank值以及创建者的Nonce等,从而组合成所述交易信息向量。
所述步骤(4)中的前馈神经网络由输入层、隐藏层和输出层组成;其中,智能合约代码的特征向量[V,T]作为输入层,隐藏层的输出x表达如下:
x=α(Wh[V,T]+bh)
其中:Wh为隐藏层的权值系数矩阵,V和T分别为智能合约代码的代码语义向量和交易信息向量,bh为隐藏层的偏置系数矩阵,α()为激活函数;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州云象网络技术有限公司,未经杭州云象网络技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611205891.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:数字印花方法及装置
- 下一篇:一种基于模糊集合的证据理论智能巡检信息融合方法