1.一种基于人工智能的区块链异常交易检测方法,其特征在于,包括:
S1、获取区块链交易数据,并构建区块链交易图G;
所述区块链交易数据包括:交易发起方、交易接收方、交易哈希、交易发起方的地址、交易接收方的地址、交易金额、交易费用、交易签名、交易时间戳、区块高度、确认数、交易类型、交易关联信息;
S2、对于每次交易,以交易节点为中心从区块链交易图G中抽取出子图g,分别对交易节点信息和交易节点的邻近信息进行编码,分别得到交易节点特征向量hego和邻近节点特征向量hnei;
S21:对子图g中所有节点进行拼接,得到子图g的节点序列的特征向量hv;
S22:将单位矩阵I中除对角线以外元素置为负无穷,让每个节点只关注自身的信息,而不关注周围节点的信息,得到掩码矩阵E,根据掩码矩阵E和子图g的节点序列的特征向量hv使用Attention机制进行节点信息编码,得到交易节点的特征向量hego;
S23:根据子图g中每个节点的连接情况,构建邻接矩阵Madj,其维度为|V|×|V|,|V|表示子图g中的节点数量,若图中第i个节点vi与图中第j个节点vj之间存在边,则Aadj[i,j]=
1,否则Aadj[i,j]=0;
S24:使用Flody算法,根据邻接矩阵Madj计算出子图g的距离矩阵Mdis,其维度为|V|×|V|,Mdis[i,j]表示节点vi与节点vj的最短路径距离;
S25:利用邻接矩阵Madj和距离矩阵Mdis,通过GCN模型对交易节点的邻近节点信息进行编码,得到邻近节点特征向量hnei;
S3、将hego与hnei拼接后送入前馈神经网络进行二分类,预测本次交易是否为异常交易。
2.根据权利要求1所述的一种基于人工智能的区块链异常交易检测方法,其特征在于,构建区块链交易图G,包括:将区块链交易中的交易发起者和交易接收方作为图节点,根据两者的地址将两个节点之间连接成一条边,将交易哈希、交易金额、交易费用、交易签名、交易时间戳、区块高度、确认数、交易类型、交易关联信息作为每个节点的特征向量,得到区块链交易图G。
3.根据权利要求2所述的一种基于人工智能的区块链异常交易检测方法,其特征在于,所述区块链交易图G的图节点,包括:vi={x1,x2,…,xn}
其中,vi表示第i个图节点,xn表示图节点特征向量的第n个元素,n表示图节点特征向量的维度。
4.根据权利要求1所述的一种基于人工智能的区块链异常交易检测方法,其特征在于,对子图g中所有节点进行拼接,得到子图g的节点序列的特征向量hv,包括:hv=[v0,v1,…,v|V|]
其中,vi表示子图g中第i个节点,维度为1×n,hv表示图g节点序列的特征向量,维度为|V|×n,|V|表示子图g中的节点数量,n表示图节点特征向量的维度。
5.根据权利要求1所述的一种基于人工智能的区块链异常交易检测方法,其特征在于,根据掩码矩阵E和子图g的节点序列的特征向量hv使用Attention机制进行节点信息编码,得到交易节点的特征向量hego,包括:其中,hego表示交易节点的特征向量,维度为1×n,W1、W2分别表示维度为n×128的第一、第二特征转换矩阵,W3表示维度为n×n的第三特征转换矩阵,⊙表示逐元素乘法操作,|V|表示子图g中的节点数量,hv表示图g节点序列的特征向量,T表示矩阵转置,E表示掩码矩阵,n表示图节点特征向量的维度。
6.根据权利要求1所述的一种基于人工智能的区块链异常交易检测方法,其特征在于,利用邻接矩阵Madj和距离矩阵Mdis,通过GCN模型对交易节点的邻近节点信息进行编码,得到邻近节点特征向量hnei,包括:通过距离矩阵Mdis构建子图g的2‑hop邻接矩阵
将邻接矩阵Madj和2‑hop邻接矩阵 的对角线元素置为0,使得每个节点在消息传递时不关注节点本身,只关注周围节点信息;
根据邻接矩阵Madj和2‑hop邻接矩阵 使用GCN模型进行节点邻近信息编码,得到邻近节点特征向量hnei。
7.根据权利要求6所述的一种基于人工智能的区块链异常交易检测方法,其特征在于,通过距离矩阵Mdis构建子图g的2‑hop邻接矩阵 包括其中,Mdis[i,j]表示节点vi与节点vj的最短路径距离。
8.根据权利要求6所述的一种基于人工智能的区块链异常交易检测方法,其特征在于,根据邻接矩阵Madj和2‑hop邻接矩阵 使用GCN模型进行节点邻近信息编码,得到邻近节点特征向量hnei,包括:其中,hnei表示邻近节点特征向量,每个节点的特征向量都来自其周围的节点,维度为1×n, 表示Madj+E的度矩阵, 表示 的度矩阵,I表示单位矩阵,M表示在模型进行邻近信息传递时排除节点自身的信息的矩阵,其对角线元素为0,其余元素为1,矩阵维度为|V|×|V|,n表示图节点特征向量的维度。
9.根据权利要求1所述的一种基于人工智能的区块链异常交易检测方法,其特征在于,将hego与hnei拼接后送入前馈神经网络进行二分类,预测本次交易是否为异常交易,包括:Output=argmax(Wout[hego,hnei])
其中,Output表示前馈神经网络输出的二分类预测结果,Output=0表示此次交易不是异常交易,Output=1表示此次交易属于异常交易;Wout表示特征转换矩阵,维度为2n×2,[hego,hnei]表示将交易节点特征向量hego与邻近节点特征向量hnei在隐藏层维度进行拼接,维度为1×2n;argmax( )表示argmax函数,n表示图节点特征向量的维度。