携程商旅基于图网络的注册风控实践

新闻 开发
本文介绍了一种当前在携程商旅应用的基于注册图网络的恶意账户聚集检测模型。

一、背景

注册风控是企业风控场景中重要的一环,黑产用户想要进行各式各样的欺诈行为,首先需要注册账户。通常,这些黑产用户会采用技术手段批量注册虚假账号,而后进行一系列恶意行为。那么,如何准确快速地识别注册用户是否是异常聚集的黑产用户,这是注册风控场景中需要解决的一个问题。

因此,本文介绍了一种当前在携程商旅应用的基于注册图网络的恶意账户聚集检测模型。

二、前置知识

2.1 图的定义

图是由顶点的集合和顶点之间的边的集合组成,通常表示为:G(V,E),其中,G表示一个图,V是图G中顶点的集合,E是图G中边的集合。

2.2 图的类型

1)有向图/无向图 (Undirected graphs / Directed graphs)

若顶点到之间的边没有方向,则称这条边为无向边,用无序对(,)来表示。如果图中任意两个顶点之间的边都是无向边,则称该图为无向图;

若顶点到之间的边有方向,则称这条边为有向边,用有序对<,>来表示。如果图中任意两个顶点之间的边都是有向边,则称该图为有向图。

图片

图1:无向图和有向图

2)同构图/异构图 (Homogeneous Graph / Heterogeneous Graph)

同构图:节点的类型和边的类型只有一种

如社交网络中可以考虑节点只有“人”这一个类型,边只有“认识”这一种连接关系,就是一种同构图;

异构图:节点的类型+边的类型 > 2

如论文引用网络中,存在着作者节点和论文节点,边的关系有作者-作者之间的共同创作关系连边、作者-论文之间的从属关系、论文-论文之间的引用关系。

三、数据挖掘

3.1 用户设备维度

1)设备聚集性

我们对用户所使用的设备进行了分析,这里的设备指的是一种广义的设备,包括IP地址、手机号、设备号等。黑产用户处于金钱和时间成本,会希望在尽量低的成本下完成获利,那么在设备维度就会出现聚集的现象。一般来说,普通用户的一台设备上通常不会登录多个账户,因此某些设备频繁切换不同账号是相当可疑的。

如下图所示,当IP地址数从0-5增加到5-10时,用户数占比骤降,60%的用户只使用过0-5个IP地址;超过90%的用户只使用过一个手机号;超过70%的用户只使用1个或2个设备。

图片

图2:IP数量-用户分布图

图片

图3:手机号/设备号数量-用户分布图

2)地理位置和设备版本

IP地址和电话号码都可以映射到一个大概的地理位置。我们可以判断每个注册用户的两个地理位置是否相同,不同的时候为黑产用户的概率相对更大。

此外,我们也对设备版本进行了分析,发现大多数从过时操作系统版本注册的账户都是假账户,Android和iOS都存在这种现象,原因可能是攻击者使用脚本自动注册假账户,而操作系统版本并未更新。

3.2 注册特征维度

1)注册时间

我们对正常用户和黑产用户的注册时间进行了对比,发现黑产用户更倾向于傍晚和夜间进行注册(17点-次日6点)。

图片

图4:不同注册时间的用户分布

2)注册填写信息

基于商旅的背景下,用户在进行注册时需要填写公司名称、邮箱等信息,我们会判断用户所填写的信息是否是真实的企业信息(如填写的公司名是否是正常的公司名、邮箱是否正常、是否是随机填写等),这些对注册填写信息相关的解析也会作为模型的特征。

四、模型设计

模型主要包括了四个步骤:特征提取、无监督权重学习、构建用户注册图和恶意账户监测。

图片

图 5:模型流程图

4.1 特征提取

根据上述数据挖掘部分提取用户的相关特征,对于连续的特征进行分箱处理使其离散化。

4.2 无监督权重学习

1)构建用户-特征异构图

构建用户-特征的无向图来捕获注册账户和提取特征之间的关系,用G(V,E) 表示,其中V是所有的节点集合,包括用户节点R和特征节点F,即每个F节点都表示某个特征;E 表示边。用户节点R与特征节点F存在边等价于该用户节点R拥有此F特征。

图片

图6:用户-特征异构图

2)用户节点和特征节点初始权重的计算

  • 把特征分成A、B两类

A类特征:除去B类的其他特征。

B类特征:该特征如果被大量账户共享,则认为是异常的,如ip地址、手机号、设备号等。

  • 计算特征节点初始权重

对于任意的特征节点x,初始权重图片计算如下:

图片

其中:

图片

其中Pre_A和Pre_B分别表示第一步中的A类特征和B类特征,ratio(x)表示该特征节点值的在其所属特征中的频率,pre(x)表示该特征节点所属的特征,如特征节点IP-113.xxxxxxxx属于IP特征;mode(pre(x))表示该特征节点所属特征中频率最高的特征节点。

  • 计算用户节点初始权重

按照上一步计算好每一个特征节点的初始特征后,每个用户节点的初始特征即为其所有邻居特征节点的均值。

3)更新节点权重

对所有节点的权重通过线性信念传播进行迭代更新,权重的迭代公式参考文献[2]和[3]的思想并做了改进优化。优化思路是基于每一次权重的迭代是对上一次节点权重的结果加上各邻居节点权重的平均影响,并且每次的权重在仍保持在0-1之间,由此得到如下的迭代公式,对比验证了优化后的公式在后续构造用户-用户同构图的过程中边关系更具稳定性:

图片

其中图片为节点u的初始权重,图片表示节点u第t次迭代的权重,Γ(u)表示u的所有邻居节点的集合,|Γ(u)|表示u的邻居节点数量。 

4.3 构建用户注册同构图

1)算两两用户节点之间的相似度

我们的分析主体在注册用户上,而上述构建出来的图是一个异构的二部图,转化为同构图的步骤为计算节点之间的相似度,并且将此相似度作为注册用户之间的边的权重,即

图片

2)构建用户-用户同构图

两个用户节点相似度为公共的特征节点的权重之和,即若上述相似度大于设定的阈值(相似度阈值),则两个用户节点连上边。这时若只考虑用户节点和用户节点之间的边,即成为了一个同构的用户图。

  • 相似度阈值的设置方式

当阈值设置为0时,所有的用户都互相连接,随着阈值的不断增大,用户和用户的边逐渐减少,当阈值足够大时,不存在任何边。通过对历史数据的分析,我们发现能够使得异常用户相连接的相似度阈值会存在一个小范围的稳定区间,因此阈值设置的逻辑为使得用户-用户同构图的边关系稳定(小区间内保持边关系不改变)的最小阈值。

我们的实际设置方式为:先将阈值设置成一个较小的值α,此时几乎所有的用户都互相连接,再将阈值每次增加δ,观察最大连通子图的节点数量,若该数量在连续n次的阈值增加的过程中几乎保持不变,则第n次的阈值α+nδ设置为当前模型的相似度阈值。

4.4 恶意账户监测—找出异常聚集的连通子图

找出所有的连通子图,当连通子图用户节点大于某个数值(聚集用户数阈值)时,则该连通子图的所有用户为异常聚集。图8展示了异常聚集用户和正常用户的边关系状态。

  • 聚集用户数阈值的设置方式

聚集用户数的阈值是根据模型的效果来确定的,可以通过不同值的模型效果来确定最佳值,具体可以根据准确率、召回率、F1值等的收敛情况来进行衡量确定。通常情况下注册风控选择的聚集用户数阈值建议在10-30区间为佳。

图片

图7:用户-用户同构图

五、实时策略

对于每天注册进来的新用户,如何高效迅速地识别注册用户是否是异常聚集的黑产用户呢?这里介绍商旅注册风控场景下的实时策略。

首先,每注册一个新用户会触发模型的更新(模型的数据取近24~72小时的注册用户),同时每n分钟更新一次模型参数作为兜底。模型需要保存的参数一般有:坏用户节点、坏用户的所有特征节点及其权重、相似度阈值。

如图9所示,对于一个新注册用户,获取到其特征后,计算该用户与当前最新模型中的坏用户节点的相似度(即与坏用户特征节点的公共节点权重之和),若与任意一个坏用户节点的相似度大于模型的相似度阈值,则输出为异常聚集,否则认为是正常用户。

图片

图8:用户注册实时策略图

六、实际应用效果

6.1 数据模型指标

历史模型以天为单位,下图展示部分日期模型的准确率和召回率。

图片

图9:历史数据模型效果

6.2 线上业务指标

1)注册拦截率

用户在注册时若模型识别为异常,则需要用户进行身份验证(姓名和证件号),若用户验证失败或放弃注册则认为注册拦截,下表展示了2023年以来的月注册拦截率(未完成注册的用户数 / 注册时识别有风险需要验证的用户)的数据。

注册月份

月注册拦截率

   1月

    100.0%

   2月

    83.7%

   3月

    78.1%

   4月

    93.2%

   5月

    99.9%

2)黑产用户注册时的风险识别率

商旅对于各个产线都有不同的风控场景识别,这些识别出来的黑产用户有些在注册时已被本文的模型识别为异常,但后续通过了身份验证也会成功注册。因此考虑黑产用户在注册时的风险识别率也是衡量模型效果的一个指标。下表展示了部分风控场景中的注册时风险识别率(注册时识别异常的黑产用户数 / 黑产用户数)的数据。

风控场景

注册时风险识别率

跟团游场景

        99.8%

机票场景

        91.7%

酒店场景1

        74.3%

酒店场景2

        63.3%

七、不足和思考

7.1 节点初始权重的计算

每更新一次模型,初始权重都会基于公式(4.1)重新进行计算,即当前模型节点的初始权重只和当前模型有关(每次模型的时间选取为近24小时),没有去学习历史的权重结果。实际上,对于历史模型认为异常的用户,其特征节点在当前模型中出现时被赋予更高的初始权重可能是更优的方案。

7.2 邻居影响力

节点的最终权重是根据公式(4.2)进行迭代更新的,从公式可以看出,对于每个节点,每一次权重的迭代是对上一次节点权重的结果加上各邻居节点权重的平均影响力得到的。若能根据节点连接情况或历史数据,对不同邻居的影响力进行加权平均可能是更优的方案。

八、参考文献

  • Zhou J, Cui G, Hu S, et al. Graph neural networks: A review of methods and applications[J]. AI Open, 2020, 1:57-81. 
  • Liang X, Yang Z, Wang B, et al. Unveiling Fake Accounts at the Time of Registration: An Unsupervised Approach[C]// KDD21: The 27th ACM SIGKDD Conference on Knowledge Discovery and Data Mining. ACM, 2021.
  • Wang B, Jia J, Zhang L, et al. Structure-based Sybil Detection in Social Networks via Local Rule-based Propagation[J]. IEEE Transactions on Network Science & Engineering, 2018, PP(99):1-1.
责任编辑:张燕妮 来源: 携程技术
相关推荐

2023-09-15 07:28:02

2023-12-29 09:42:28

携程开发

2016-12-15 21:41:15

大数据

2017-02-23 21:17:00

致远

2016-09-04 15:14:09

携程实时数据数据平台

2022-06-27 09:36:29

携程度假GraphQL多端开发

2023-05-29 08:04:08

2022-05-19 17:50:31

bookie集群延迟消息存储服务

2023-12-15 10:05:58

携程网络

2022-06-27 09:42:55

携程金融nebula图平台

2023-06-28 14:01:13

携程实践

2022-07-15 12:58:02

鸿蒙携程华为

2022-05-13 09:27:55

Widget机票业务App

2023-07-31 07:43:29

保险反欺诈前沿技术

2022-08-20 07:46:03

Dynamo携程数据库

2023-07-07 12:26:39

携程开发

2023-11-24 09:44:07

数据携程

2023-02-08 16:34:05

数据库工具

2022-07-15 09:20:17

性能优化方案
点赞
收藏

51CTO技术栈公众号