今天的博客主要参考了《Heterogeneous Graph Neural Networks for Malicious Account Detection》和《GeniePath: Graph Neural Networks with Adaptive Receptive Paths》,都来自阿里的蚂蚁金服团队,都使用了当下最流行的Graph Neural Network的相关知识。
其实有关GCN的相关基础知识在网上都查的到,特别是后面涉及到的数学知识还是十分复杂的,这里就不详细推导每一个步骤了。这里就给出一个最终的结论,也是Kipf and Welling在2016年GCN领域最经典的paper《Semi-supervised classification with graph convolutional net- works.》里对原始的基于拉普拉斯谱变换进行了一些简化得到最终的图卷积公式如下:
H(t+1)=σ(AuH(t)W(t))H^{(t+1)}=\sigma (A^{u} H^{(t)}W^{(t)})H(t+1)=σ(AuH(t)W(t)),其中AuA^uAu是一个对称归一化矩阵,Au=D∗−1/2A∗D∗−1/2A^u=D^{*-1/2}A^*D^{*-1/2}Au=D∗−1/2A∗D∗−1/2,A∗=A+IA^*=A+IA∗=A+I,其中III是单位矩阵,AAA是临接矩阵,D∗D^*D∗是矩阵A∗A^*A∗的对角度矩阵,H(t)∈RN,KH^{(t)} \in R^{N,K}H(t)∈RN,K是第t层的中间隐层表示。H(0)=XH^{(0)}=XH(0)=X,即初始的输入是每一个node节点的embedding表示,这样最后GCN输出的最后一层节点的Embedding包不但包含了节点的初始特征还包含了网络的拓扑特征。从GCN最基本的变换公式可以看出,我们需要做的是结合业务场景定义的是临接矩阵AuA^uAu和节点的初始状态H(0)=XH^{(0)}=XH(0)=X。
上面其实是最基本的GCN的函数形式,以后所有的GCN变体都是在这个基础之上进行衍生,比方说当Au=D∗−1A∗A^u=D^{*-1}A^*Au=D∗−1A∗的时候,就是另一种形式的GCN。
介绍完了GCN的一些基础知识,下面开始正式讲解paper。
首先讲的paper是《Heterogeneous Graph Neural Networks for Malicious Account Detection》,即在异构网络中使用Graph Neural network去进行欺诈。首先作者根据分析出的欺诈账户规律,总结出了黑产用户活动的2个规律:1 Device aggregation(设备聚集性,这里的设备是一个 抽象的概念,具体化可以有IP,设备ID,账户等信息。设备聚集性说的是黑产手中的设备资源是有限的); 2 Activity aggregation(活动方式的聚集性,即由于黑产设备是在同一批的控制之下活动的,那么这些账户之间一定存在着较大的共线性)。理解这两个黑产活动规律是很重要的,后面的模型都是针对这两个规律构建的。
正如paper标题中所说的,论文提出的是一个异构网络,即网络中的节点包括了2类:Account(账户) 和 Device(设备资源)。如果网络中某一个节点account i在设备节点device j上有登录或者注册等行为(这里的account可以认为是主维度字段,device可以认为是关联维度字段),那么节点i和j之间就有一条边(个人认为这样的定义有点太宽松了,应该加上时间窗口),这样N个account和device的节点就可以形成一个网络GGG,其临接矩阵的表征形式为AG∈{ 0,1}N,NA ^G\in \{0,1\}^{N,N}AG∈{ 0,1}N,N。由于这里面的设备是一个抽象的概念,如果具体的话可以有IP,设备ID,阿里设备指纹等形式(假设具体的设备字段个数为D),所有针对某一类具体的设备字段ddd会有一个sub-graph即GdG^dGd,而GdG^dGd的邻居矩阵维度即顶点数和GGG一样,只不过只留下了和当前type d有关系的边。
接下来我们要定义节点的初始状态矩阵X∈RN,p+∣D∣X\in R^{N,p+|D|}X∈RN,p+∣D∣,这里可以发现矩阵的行数是节点的数量N,而列数是p+∣D∣p+|D|p+∣D∣。其中p是当节点为account时,将数据按照时间划分出ppp个time slot(在实际工程中,可以加入其它和节点相关的特征进去),并统计每一个time slot中的操作次数;而DDD则是当节点为device不同关联维度的种类数即type d的数量,这里采用的是one-hot编码的方式。由于是异构网络,即一个矩阵中存在含义不同的节点,但是为了保证每一个节点的维度都一致,多余的维度即针对account 节点来说就多余了DDD为,对于device 节点来说就多余了ppp维,都采用填充0的方式进行对齐。下面就是图神经网络的递推迭代公式:
H(0)=0(矩阵)H^{(0)}=0(矩阵)H(0)=0(矩阵) 公式一
H(t)=σ(XW+1∣D∣∑d=1∣D∣A(d)H(t−1)Vd)H^{(t)}=\sigma (XW+\frac{1}{|D|}\sum_{d=1}^{|D|}A^{(d)}H^{(t-1)}V_d)H(t)=σ(XW+∣D∣

本文探讨了图神经网络(GNN)在恶意账户检测中的应用,通过异构图神经网络和GeniePath算法,有效捕捉设备聚集性和活动聚集性特征,实现精准欺诈检测。
最低0.47元/天 解锁文章
1078





