1.本发明涉及区块链虚拟货币领域,具体地,涉及模型构建方法、系统、装置、介质、交易身份识别方法。
背景技术:2.由于虚拟货币的交易具有匿名化的特点,有不法分子利用这一特点进行一些违法活动,如洗钱等,导致相关部门无法监管,为了便于相关部门对虚拟货币的交易进行监管则需要对虚拟货币的交易进行去匿名化处理。
3.现有技术中有采用机器学习的方式进行虚拟货币的交易去匿名化处理,传统的机器学习可以轻松处理上亿条数据,但是学习能力十分有限,需要大量的特征工程来增加模型的学习能力。但大量的特征工程耗时耗力同时并不一定会带来效果提升。因此,如何自动发现有效的特征、特征组合,弥补人工经验不足,缩短传统机器学习特征实验周期,是亟需解决的问题。
技术实现要素:4.为解决上述问题,本发明提供了模型构建方法、系统、装置、介质、交易身份识别方法,本发明能够解决虚拟货币地址的匿名性问题,自动识别不同虚拟货币地址的身份,从而提高安全执法部门的工作效率。
5.为实现上述目的,本发明提供了模型构建方法,所述方法包括:
6.采集虚拟货币交易数据,交易数据包括:虚拟货币地址数据和虚拟货币地址交易数据;
7.基于虚拟货币地址交易数据进行地址聚类构造虚拟货币实体,完成虚拟货币实体构造后提取虚拟货币实体数据与虚拟货币实体交易网络结构数据;
8.分别从虚拟货币地址、虚拟货币实体和虚拟货币实体交易网络结构三个方面在交易数据中构造特征向量,将构造的特征向量整合为联合特征向量;
9.将联合特征向量输入分类器中进行拟合,获得拟合后的分类器;
10.将训练数据输入拟合后的分类器得到叶子节点id,将叶子节点id编码构造叶子节点特征;其中,本方法中原始特征通过随机森林模型转换后,能够自动的挖掘一些重要特征以及重要特征组合,树模型上到叶子节点的每一条路径就相当于一种特征的组合,因此随机森林模型能够自动的做特征的非线性变换和特征组合,减少了大量的人为特征工程,主要作用是提升特征的准确性,筛选有效特征;
11.将所有的叶子节点特征输入多分类模型进行训练,得到分类器与多分类模型结合的虚拟货币匿名化交易身份识别模型。由于虚拟货币地址身份识别的场景属于多分类场景,此步骤的作用主要是用来对经过随机森林进行原始特征的非线性变换与特征组合的新特征进行比特币交易地址的多分类识别,锻炼混合算法的使用,避免单一算法的局限性。
12.优选的,本方法从虚拟货币交易系统中采集交易数据。
13.优选的,本方法通过独热编码器对叶子节点的id进行独热编码构造出叶子节点特征。原始数据经过随机森林转换过后的数据为每棵树的叶子节点id(每棵树一个对应的数字),不能直接输入softmax中进行训练,因此需要把叶子节点的数据向量化,利用热独编码可以将叶子节点的数据向量化,利用热度编码构造softmax的特征数据。
14.优选的,本方法中的多分类模型为softmax多分类模型。
15.优选的,本方法采用数据统计性描述方式构造特征向量。
16.优选的,本方法中的分类器为随机森林。
17.本发明还提供了模型构建系统,所述系统包括:
18.采集单元,用于采集虚拟货币交易数据,交易数据包括:虚拟货币地址数据和虚拟货币地址交易数据;
19.聚类单元,用于基于虚拟货币地址交易数据进行地址聚类构造虚拟货币实体,完成虚拟货币实体构造后提取虚拟货币实体数据与虚拟货币实体交易网络结构数据;
20.联合特征向量构造单元,用于分别从虚拟货币地址、虚拟货币实体和虚拟货币实体交易网络结构三个方面在交易数据中构造特征向量,将构造的特征向量整合为联合特征向量;
21.拟合单元,用于将联合特征向量输入分类器中进行拟合,获得拟合后的分类器;
22.叶子节点特征构造单元,用于将训练数据输入拟合后的分类器得到叶子节点id,将叶子节点id编码构造叶子节点特征;
23.训练单元,用于将所有的叶子节点特征输入多分类模型进行训练,得到分类器与多分类模型结合的虚拟货币匿名化交易身份识别模型。
24.本发明还提供了虚拟货币匿名化交易身份识别方法,所述方法包括:
25.获得待处理虚拟货币交易数据;
26.将待处理虚拟货币交易数据输入所述模型构建方法构建的虚拟货币匿名化交易身份识别模型中;
27.虚拟货币匿名化交易身份识别模型输出虚拟货币匿名化交易身份识别结果。
28.本发明还提供了一种模型构建装置,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现所述模型构建方法的步骤。
29.本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现所述模型构建方法的步骤。
30.本发明提供的一个或多个技术方案,至少具有如下技术效果或优点:
31.本发明通过随机森林生成的特征,可直接作为softmax逻辑回归模型的特征使用,省去人工处理分析特征的环节,lr的输入特征完全依赖于通过随机森林得到的特征,因此在特征工程中,依靠随机森林进行自动特征工程的工作,且随机森林算法的特点正好可以用来发掘有区分度的特征、特征组合,减少特征工程中人力成本。
附图说明
32.此处所说明的附图用来提供对本发明实施例的进一步理解,构成本发明的一部分,并不构成对本发明实施例的限定;
33.图1为模型构建方法的流程示意图;
34.图2为比特币交易示意图;
35.图3为随机森林+softmax模型流程示意图;
36.图4为模型构建系统的组成示意图。
具体实施方式
37.为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在相互不冲突的情况下,本发明的实施例及实施例中的特征可以相互组合。
38.在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述范围内的其他方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。
39.本领域技术人员应理解的是,在本发明的揭露中,术语“纵向”、“横向”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”“内”、“外”等指示的方位或位置关系是基于附图所示的方位或位置关系,其仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此上述术语不能理解为对本发明的限制。
40.可以理解的是,术语“一”应理解为“至少一”或“一个或多个”,即在一个实施例中,一个元件的数量可以为一个,而在另外的实施例中,该元件的数量可以为多个,术语“一”不能理解为对数量的限制。
41.实施例一
42.请参考图1,图1为模型构建方法的流程示意图,本发明实施例一提供了模型构建方法,所述方法包括:
43.采集虚拟货币交易数据,交易数据包括:虚拟货币地址数据和虚拟货币地址交易数据;
44.基于虚拟货币地址交易数据进行地址聚类构造虚拟货币实体,完成虚拟货币实体构造后提取虚拟货币实体数据与虚拟货币实体交易网络结构数据;
45.分别从虚拟货币地址、虚拟货币实体和虚拟货币实体交易网络结构三个方面在交易数据中构造特征向量,将构造的特征向量整合为联合特征向量;
46.将联合特征向量输入分类器中进行拟合,获得拟合后的分类器;
47.将训练数据输入拟合后的分类器得到叶子节点id,将叶子节点id编码构造叶子节点特征;
48.将所有的叶子节点特征输入多分类模型进行训练,得到分类器与多分类模型结合的虚拟货币匿名化交易身份识别模型。
49.其中,本发明实施例中虚拟货币为比特币。
50.其中,本发明实施例中,本方法从虚拟货币交易系统中采集交易数据,在具体实施过程中也可任意从其他途径获得交易数据,本发明对交易数据的获取方式、途径、手段不进行具体的限定。
51.其中,本发明实施例中,本方法通过独热编码器对叶子节点的id进行独热编码构
造出叶子节点特征。其中,在实际应用中也可以采用其他编码器或编码方式进行编码,本发明对具体的编码方式不进行具体的限定。
52.其中,本发明实施例中,本方法中的多分类模型为softmax多分类模型。在实际应用中也可以为其他类型的多分类模型,本发明对分类模型的具体类型不进行限定。
53.其中,本发明实施例中,本方法中的分类器为随机森林。在实际应用中也可以为其他类型的分类器,本发明对分类器的具体类型不进行限定。
54.下面以虚拟货币为比特币举例对本发明进行具体介绍:
55.图2为比特币交易示意图,数据直接来源于区块链全节点,并展示了比特币的流向。图2中的各个顶点代表了比特币链上的比特币地址(α1,α2,α3,...,α
n
)与相关交易(tx1,tx2,tx3,...,tx
n
),无数这样的交易形成庞大的交易网络拓扑图。在比特币交易系统中,一个用户会使用单个或多个地址,在本发明中申请人引入比特币交易实体的概念,实体(e1,e2,e3,...,e
n
)指的在逻辑上属于同一个用户的地址集合,也可理解成一个实体代表一个用户。
56.本方法包括特征抽取过程和模型构建过程。
57.特征抽取过程:在比特币交易系统中,当用户支付额度超过了用户钱包中每一个可用地址中比特币的数量时,为了避免执行多笔交易完成支付造成交易费用方面的损失,用户会从钱包中选择多个比特币地址聚合在一起进行匹配支付,实现多输入交易,因此这笔多输入地址的交易中的所有输入地址属于同一个实体(用户)。因此在构建比特币匿名化交易身份识别方法的时候,首先对地址进行实体聚类,然后分别从比特币地址、比特币实体、比特币实体交易网络结构(motif)的三个方面在海量的交易数据中去构造特征并整合成联合特征向量。
58.模型构建过程:首先将联合特征向量输入随机森林中进行拟合,然后就可以得到多棵已经非常了解样本数据的树。然后将训练数据通过随机森林,这样每个样本数据输入树模型中就会得到叶子节点的id,通过onehotencoder(独热编码器)对叶子节点的id进行onehot(独热)编码就可以构造出叶子节点特征。最后将所有的叶子节点特征输入softmax多分类模型进行训练,最终得到随机森林与softmax结合的模型。
59.实施例二
60.请参考图3,图3为随机森林+softmax模型流程示意图。本方法包括以下步骤:
61.步骤1:特征工程
62.本发明提出实体的概念,实体指的在逻辑上属于同一个用户的地址集合,也可理解成一个实体代表一个用户。首先把比特币地址聚合成实体,然后分别根据比特币地址、实体、实体交易网络结构进行特征抽取,并合并成联合向量,具体的特征抽取手段为数据统计性描述,抽取更能够解释业务场景的字段,详细的特征数据如表1
‑
表3所示。
63.表1地址特征
[0064][0065]
表2实体特征
[0066][0067][0068]
表3网络结构特征
[0069][0070]
步骤2:随机森林
[0071]
将联合特征向量输入随机森林中进行拟合,可以得到多棵已经非常了解样本数据的树。然后将训练数据通过随机森林,这样每个样本数据输入树模型中就会得到叶子节点的id,通过热度编码(onehotencoder)对叶子节点的id进行onehotencoder可以构造出叶子节点特征数据;原始特征通过随机森林模型转换后,能够自动的挖掘一些重要特征以及重要特征组合,树模型上到叶子节点的每一条路径就相当于一种特征的组合,因此随机森林模型能够自动的做特征的非线性变换和特征组合,减少了大量的人为特征工程,主要作用是提升特征的准确性,筛选有效特征。而原始数据经过随机森林转换过后的数据为每棵树的叶子节点id(每棵树一个对应的数字),不能直接输入softmax中进行训练,因此需要把叶子节点的数据向量化,而热独编码为常用的向量化方法,因此热度编码被选来构造softmax的特征数据。
[0072]
步骤3:softmax
[0073]
将随机森林拟合出来的叶子节点特征数据输入softmax模型进行训练得到比特币地址的多分类模型,从而达到比特币地址的身份识别。由于比特币地址身份识别的场景属于多分类场景,此步骤的作用主要是用来对经过随机森林进行原始特征的非线性变换与特征组合的新特征进行比特币交易地址的多分类识别,锻炼混合算法的使用,避免单一算法的局限性。
[0074]
本发明实施例与现有技术的区别在于提出了将实体概念对比特币地址进行聚类;并且为了提取到更全面,更有效的特征数据,本发明实施例提出联合特征的提取方法,构造联合特征向量;同时本发明实施例引用了随机森林与softmax模型相结合,从而达到通过模型自动发掘有区分度的特征、特征组合,减少特征工程中人力成本,其次锻炼混合算法的使用,避免单一算法的局限性。
[0075]
为了表面本发明的效果,申请人进行了相应的试验对比,对比结果如表4所示。
[0076]
表四:实验方案的明细结果
[0077][0078]
为了比较本发明提出的方法的优点与缺点,本发明实施例进行两个不同的实验。在第一个实验中,本发明建立一个比较简单的分类器,称为实体特征分类器,在这个分类器中,模型训练数据特征只包括从海量实体交易数据中提取的实体特征。在第二次实验中,本发明基于实体特征分类器,构建一个复杂的分类器,称为联合特征分类器,流程如图3所示,主要结合从海量比特币交易数据中提取出来的地址方面的特征、实体方面的特征与网络结构方面的特征作为模型的输入,然后输入不到不同的算法中进行训练。实验结果表4.
[0079]
1.通过实验对比查准率(precision)、召回率(recall)与f1分数(f1_score)三个评价指标,随机森林(rf)与softmax逻辑回归结合的方案优于单独使用随机森林(rf),表明采用随机森林(rf)的进行特征工程抽取出有效特征的技术手段,再结合多分类模型softmax逻辑回归进行训练,能够大幅提升分类器的准确率,避免使用单一算法的局限性。
[0080]
2.单一的使用实体特征的模型分类效果,远远低于使用联合向量的作为特征的模型,因此可表明采用联合特征构造方案的技术手段,能够更全面,更有效的描述比特币地址的交易行为
[0081]
实施例三
[0082]
请参考图4,图4为模型构建系统的组成示意图,本发明实施例三提供了模型构建系统,所述系统包括:
[0083]
采集单元,用于采集虚拟货币交易数据,交易数据包括:虚拟货币地址数据和虚拟货币地址交易数据;;
[0084]
聚类单元,用于基于虚拟货币地址交易数据进行地址聚类构造虚拟货币实体,完成虚拟货币实体构造后提取虚拟货币实体数据与虚拟货币实体交易网络结构数据;
[0085]
联合特征向量构造单元,用于分别从虚拟货币地址、虚拟货币实体和虚拟货币实体交易网络结构三个方面在交易数据中构造特征向量,将构造的特征向量整合为联合特征向量;
[0086]
拟合单元,用于将联合特征向量输入分类器中进行拟合,获得拟合后的分类器;
[0087]
叶子节点特征构造单元,用于将训练数据输入拟合后的分类器得到叶子节点id,将叶子节点id编码构造叶子节点特征;
[0088]
训练单元,用于将所有的叶子节点特征输入多分类模型进行训练,得到分类器与多分类模型结合的虚拟货币匿名化交易身份识别模型。
[0089]
实施例四
[0090]
本发明实施例四提供了虚拟货币匿名化交易身份识别方法,所述方法包括:
[0091]
获得待处理虚拟货币交易数据;
[0092]
将待处理虚拟货币交易数据输入所述模型构建方法构建的虚拟货币匿名化交易身份识别模型中;
[0093]
虚拟货币匿名化交易身份识别模型输出虚拟货币匿名化交易身份识别结果。
[0094]
实施例五
[0095]
本发明实施例五还提供了一种模型构建装置,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现所述模型构建方法的步骤。
[0096]
其中,所述处理器可以是中央处理器(cpu,central processing unit),还可以是其他通用处理器、数字信号处理器(digital signal processor)、专用集成电路(application specific integrated circuit)、现成可编程门阵列(fieldprogrammable gate array)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0097]
所述存储器可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的数据,实现发明中模型构建装置的各种功能。所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等。此外,存储器可以包括高速随机存取存储器、还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡,安全数字卡,闪存卡、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
[0098]
实施例六
[0099]
本发明实施例六还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现所述模型构建方法的步骤。
[0100]
所述模型构建装置如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序可存储于一计算机可读存介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码、对象代码形式、可执行文件或某些中间形式等。所述计算机可读取介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器、随机存储器、点载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减。
[0101]
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
[0102]
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精
神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。