开源 | HMGNN:异构小图神经网络及其在拉新裂变风控场景的应用
Posted OSC开源社区
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了开源 | HMGNN:异构小图神经网络及其在拉新裂变风控场景的应用相关的知识,希望对你有一定的参考价值。
背景
在流量为王的时代,拉新裂变是各大互联网公司争夺新用户的重要手段。活动可观的用户奖励(现金、会员卡等),也使其成为黑灰产的重点攻击目标之一。为了保障活动效果及用户质量,高准召的风控也显得日益重要。
黑灰产通常采用模拟器、多开分身、改机、设备农场、代理IP、接码平台、众包平台等工具批量伪造新用户参与活动,将活动奖励据为己有。造成公司资金损失、业务关键指标下降、正常用户体验受损等多方面影响。针对此类攻击,业界已有一些较为成熟的防御模型:
• 频繁集检测(FP-Growth):批量攻击往往会在设备、网络、时间、地点等维度或维度组合上出现大量聚集,此时频繁集检测是简单有效的检测与预警算法。
• 聚类/无监督:K-means、iForest等,一般提取行为特征后进行聚类或异常点检测,以找到行为相似异常聚集或异于正常行为的用户。具有较高的鲁棒性,但是准确率不易掌控。
• 有监督模型:LR、XGBoost等,提取手工特征,根据已知正负样本训练模型。准确率一般较高,但是泛化能力很差。
• 社区检测:Louvain、Fraudar、高密子图等,引入了关系信息,可提升对频繁换物料的攻击的识别能力,可以理解为频繁集检测的升级版,同时可以用于标签传播,提升召回。
• 图神经网络:GCN,GraphSage等,能够使特征信息在节点间传播,并发挥出神经网络对于特征的抽象能力,同时也支持只有部分标签进行半监督学习。
本文基于拉新裂变场景中普遍存在的关联数据(邀请关联、设备关联、网络关联等)以及业务场景特点,创新地提出了异构小图神经网络模型(HMGNN),进一步提升了对攻击的识别能力。
简介
业务场景
用户参加拉新活动,符合以下条件均可获得积分、奖品或现金:
• 老用户邀请新用户达到一定数量
• 用户参加各种激励活动(签到、下载、答题等)
一些典型的攻击方式包括:
• 伪造新设备:活动需通过设备id来判断新用户,通过模拟器、多开分身、改机、设备农场等,都可以伪装成新的设备,从而绕过一些简单的设备判新规则。
• 伪造新用户:活动需要通过手机号来验证新用户,通过虚拟小号、海外黑卡、私域黑卡等物料,辅助猫池、接码平台等工具,攻击者可以全自动化完成的手机号验证。
• IP:IP是经典的黑产与风控攻防维度,通过代理IP、秒拨IP等,可以绕过一些简单的IP策略。
建模与挑战
拉新活动包含了大量的用户关系,因此使用图模型是一个非常自然的想法。直接将参与活动的用户作为图模型中的节点。用户间的邀请关系、设备共享关系、网络环境参数共享关系等信息,则构成了节点间的边。例如:用户A邀请了用户B和用户C,那么图中用户A和B、A和C之间则各有一条“邀请”边。同理,若用户B和C共用了同一个设备,那么图中B和C节点间则连接一条“设备”边。值得一提的是,本文中的图为无向图,因此无需考虑边的方向。此外,图中每个节点(即每个用户)都附带了人工提取的业务特征。根据一些置信的专家策略、设备特征、情报特征等信息,少量节点带有标注。当然,绝大多数节点并没有标注信息。
近年来,图神经网络(Graph Neural Network,后文简称GNN)在处理图结构数据的任务上取得了不错的成绩。与本文高度相关的两种GNNs,一种是图卷积神经网络(Graph Convolutional Netweork,后文简称GCN),一种是异构图神经网络(Heterogeneous GNNs)。前者擅长处理标注量少的图结构数据,不过不能区分不同类型的连接关系。后者善于处理异构图结构数据,不过需要针对特定的图结构设计表征聚合机制。直接使用现有的算法,在拉新场景中往往表现欠佳。此外,传统的有监督机器学习算法,在此类任务上也难以取得可观的效果。
总结起来主要有以下几个难点:
• 小图多:在我们的拉新裂变场景中,形成的图网络往往由很多小的子图构成,90%的子图包含的节点数在25个以下,整个图的连通性比较差。不利于图中信息的传递与共享。
• 异构图:从上面的构图方式可知,图中包含各种不同类型的连接关系。如:拉新关系、网络共享关系、设备共享关系等等。将所有连接关系同等对待,显然不是最优的(甚至可能是有害的)。而独立处理每种关系则可能存在信息缺失,因为大量小规模的图(不连通)难以反映全局的关联信息。
• 标注少:训练样本中有标注数据占比约为5.7%。我们使用了LR,XBGoost作为baseline模型,但由于样本较少、黑样本天然存在有偏性、未包含关联信息等原因,实验效果略差于我们提出的方法。
图1:(左图)展示了拉新反作弊任务同构图中存在的大量小规模子图;(中图)展示了一个由多种关系连接的异构子图,不同颜色的边代表不同的连接关系;(右图)展示了子图规模的分布情况。
异构小图神经网络(HMGNN)
为了解决上面提到的难点,我们提出了“异构小图神经网络”算法(Heterogeneous Mini-Graph Neural Network,后续简称HMGNN)。其中小图(mini-graph)指拉新场景中存在的大量小规模子图。HMGNN首先引入了“超点”的概念,将零散的小图连接起来,便于节点间的信息传递与共享;然后引入了注意力机制,以区别不同连接关系之间的重要性;最后,透传原始特征有效防止了梯度消失或爆炸。
构建超图(Hyper-Graph)
零散的小图不利于图中节点间的信息共享,因此HMGNN在真实的节点和边的基础上,加入了“超点”(hyper-node)及更多的边构成超图(hyper-graph)。每个子图都会生成一个虚拟的超点,其特征向量是子图中所有的节点的特征向量的平均值。因此,超点可以看作整个子图的代表。
为了完成超图的构建,我们还需要新增两种边:超点和普通点之间的边、超点和超点之间的边。首先,将超点与所属子图中每个普通节点连接起来。这么做保证了信息传递的无偏性。然后,超点之间使用kNN算法,找到与每个超点最相似的k个超点,也建立起连接。这样,整个图的联通性就大大提升了,节点间的特征能得到更充分的传播,图2描述了超点的生成过程。
图2:超点的生成过程。图中展示三种类型的边,超点之间的边(红色)、普通点之间的边(灰色)、超点和普通点的边(绿色)。
我们在论文中证明了,上述过程构建的超图在很大概率是联通的。并且该过程可通过控制kNN算法的超参数k,控制超图的联通程度。
异构图卷积
拉新场景的图结构包含多种边的关系,不同的关系的强弱、形成的拓扑结构、与标注的相关性等都不一样。于是HMGNN使用多种关系,建立了多个图,再利用注意力机制,把多个图的结果聚合起来。这样模型就能学习到不同关系图的权重。图3描述了注意力机制的引入方式。
在模型训练时,HMGNN在每个卷积层的输出中,加入了原始特征矩阵,一起作为下一卷积层的输入。这种类似于ResNet的做法,在使用较多卷积层的模型中,能够有效防止梯度消失或爆炸,在实际实验中也取得了更好的分类效果。图3也描述了原始特征的透传过程。
图3:HMGNN的整体架构。左边部分阐述了超点的生成过程。我们将不同子图的超点构成的特征矩阵,拼接到原始的特征矩阵上,作为神经网络的输入特征矩阵。中间和右边部分阐述了基于注意力机制的异构卷积过程。我们在每个卷积层透传了原始特征矩阵,防止梯度消失或爆炸。
效果
爱奇艺业务数据集
在爱奇艺某业务的数据集上,我们对比了线性模型、树模型、图卷积模型和我们的HMGNN模型。下表展示实验数据,从各项指标来说,HMGNN都优于其他模型。
Cora数据集
基于公开数据集Cora,我们对比了原始GCN模型与HMGNN的效果。从训练收敛速度和准确率来看,HMGNN都要优于GCN。
图4:在Cora上对比HMGNN和GCN。
总结
据我们所知,HMGNN是第一个尝试通过图神经网络对欺诈邀请进行检测的方法。在GCN和异构图神经网络的基础上,HMGNN使用超图和异构图卷积克服了小图和异构图带来的问题。并在实际拉新场景中取得了不错的效果。此外,我们也在尝试将其应用到更广阔的场景中,比如金融反欺诈、关注&点赞反作弊等问题。
HMGNN开源项目剔除了爱奇艺相关集成部分后,核心代码开源在GitHub上https://www.github.com/iqiyi/HMGNN。欢迎使用、报告Issues、提交 Pull-Request。
论文:Heterogeneous Mini-Graph Neural Network and Its Application to FraudInvitation Detection
开源链接:https://github.com/iqiyi/HMGNN
发表于:ICDM 2020,DLG-KDD20
▼ 往期精彩回顾 ▼
觉得不错,请点个在看呀
以上是关于开源 | HMGNN:异构小图神经网络及其在拉新裂变风控场景的应用的主要内容,如果未能解决你的问题,请参考以下文章
完美整合Spring Cloud与异构微服务的框架!Spring Cloud Wii开源啦!
DTMO直播预告丨ChunJun 2022年开源规划&支持异构数据源