GNN在反欺诈领域的落地应用

描述

GCN基础知识 ·

其实有关GCN的相关基础知识在网上都查的到,后面涉及到的数学知识还是十分复杂的,这里就不详细推导每一个步骤。这里就直接给出一个最终的结论,也是Kipf and Welling在2016年 GCN领域最经典的paper《Semi-supervised classification with graph convolutional networks.》里对原始的基于拉普拉斯谱变换进行了一些简化得到最终的图卷积公式:

,其中是一个对称归一化矩阵, ,,其中是单位矩阵,是临接矩阵,是矩阵 的对角度矩阵,是第t层的中间隐层表示。即初始的输入是每一个node节点的embedding表示,这样最后GCN输出的最后一层节点的Embedding包不但包含了节点的初始特征还包含了网络的拓扑特征。从GCN最基本的变换公式可以看出,我们需要做的是结合业务场景定义的是临接矩阵和节点的初始状态。

上面其实是最基本的GCN的函数形式,以后所有的GCN变体都是在这个基础之上进行衍生,比方说当的时候,就是另一种形式的GCN。

下面从2篇paper出发,讲解一下GNN在反欺诈领域的落地应用。

一、《Heterogeneous Graph Neural Networks for Malicious Account Detection》

即在异构网络中使用Graph Neural network去进行欺诈。根据分析出的欺诈账户规律,总结出黑产用户活动的2个规律:

Device aggregation:设备聚集性,即黑产手中的设备资源是有限的,这里的设备是一个抽象的概念,具体化可以有IP、设备ID、账户等信息。

Activity aggregation:活动方式的聚集性,即由于黑产设备是在同一批的控制之下活动的,那么这些账户之间一定存在着较大的共线性。

理解这两个黑产活动规律是很重要的,后面的模型都是针对这两个规律进行构建。

正如paper标题中所说的,论文提出的是一个异构网络,即网络中的节点包括了2类:Account(账户) 和 Device(设备资源)。如果网络中某一个节点account i在设备节点device j上有登录或者注册等行为(这里的account可以认为是主维度字段,device可以认为是关联维度字段),那么节点i和j之间就有一条边(个人认为这样的定义有点太宽松了,应该加上时间窗口),这样N个account和device的节点就可以形成一个网络,其临接矩阵的表征形式为。由于这里面的设备是一个抽象的概念,如果具体的话可以有IP、设备ID、阿里设备指纹等形式(假设具体的设备字段个数为D),所有针对某一类具体的设备字段会有一个sub-graph即,而的邻居矩阵维度即顶点数和一样,只不过只留下了和当前type d有关系的边。

接下来我们要定义节点的初始状态矩阵,这里可以发现矩阵的行数是节点的数量N,而列数是。其中是当节点为account时,将数据按照时间划分出个time slot(在实际工程中,可以加入其它和节点相关的特征进去),并统计每一个time slot中的操作次数;而则是当节点为device不同关联维度的种类数即type d的数量,这里采用的是one-hot编码的方式。由于是异构网络,即一个矩阵中存在含义不同的节点,但是为了保证每一个节点的维度都一致,多余的维度即针对account 节点来说就多余了为,对于device 节点来说就多余了维,都采用填充0的方式进行对齐。

下面就是图神经网络的递推迭代公式:

其中属于图神经网络的中间层输出,和属于模型参数,随着模型一起学习。最后的损失函数,即当T层之后,可以使用少部分标注数据进行网络参数的学习,最终的损失函数是交叉熵形式为:

这里作者发现,在公式一中,可以使用attention机制来优化效果,即优化升级公式二引入attention机制,得到

其中,,其中。

二、《GeniePath: Graph Neural Networks with Adaptive Receptive Paths》

从题目中可以看到“Adaptive Receptive Paths”,即自适应的最佳搜索路径。

这也是本篇paper最大的创新点和贡献点,创新点是相对于基础的GCN来讲的,从上面可知基础的GCN迭代公式形式为:,如果神经网络的层数为T,那么T层的节点输出就是考虑了距离当前节点t距离为T的所有邻居,为了增加考虑的邻居数,可以不断的增加T,但是过多的层数会导致模型参数量过大,导致模型在训练的时候难以收敛,故有些paper会结合残差网络的概念引入残差网络,即

但是这样依然是会有2个比较显著的缺陷:

并不是所有邻居都是同等重要的(对应paper里的breadth 方向的Adaptive Receptive Paths);

并不是所有深度搜索的路径都是一样重要的(对应paper里的depth方向的Adaptive Receptive Paths)。

上图形象的说明了adaptive receptive path的概念,即目标target节点周围的邻居以及对应更远的hop的路径重要程度是不一样的,图中有浅蓝色底色的区域就是adaptive receptive path。哪些邻居节点和更远的延伸路径是adaptive receptive path,这就是本篇paper要解决的问题。

基于此,paper提出了基于breadth 和depth两个方向自适应优化的算法框架:

//这里需要注意的是, breadth function需要具备permutation invariant的性质,即无论邻居节点输入的顺序如何, breadth function生成的结果都是一样的

具体来说:breadth function 形式:,其中

depth function 形式(很大程度上借鉴了LSTM的信息流控制形式):

对于每一个节点i来讲,这两个步骤的具体表现如下图所示:

网络安全

图中操作代表了

另一种综合考虑breadth function和depth function的变体Variant形式

即将depth function的操作推迟,首先仅仅按照breadth function操作对原始输入数据进行T层转换,得到每一层的输出结果向量,接下来将序列输入到下述变换公式中:

   

其中

这两年GNN以及GCN的概念还是非常火的,个人经验是,我们在运用的时候,网络层间的迭代公式使用目前常用的几种就可以,作为算法工程师的我们唯一需要注意的地方就是:

定义好临接矩阵AA的形式;

定义好节点特征状态XX的初始形式。

接下来就可以使用GCN来直接进行节点的分类,或者提取节点的全面特征,供后续的分类所用。

作者有话说·

本文主要参考了阿里蚂蚁金服团队的《Heterogeneous Graph Neural Networks for Malicious Account Detection》和《GeniePath: Graph Neural Networks with Adaptive Receptive Paths》,两篇论文均使用了当下最流行的Graph Neural Network 相关知识。

随着GNN技术应用于反欺诈领域,GNN以及相关变种模型以强大的网络拓扑表征能力,挖掘出具有欺诈社区属性的黑产团伙,也使得反欺诈挖掘算法迈上了一个新的台阶。

原文标题:“芯”分享 | GNN在反欺诈领域的落地应用

文章出处:【微信公众号:芯盾时代】欢迎添加关注!文章转载请注明出处。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分