姚天俊&李青作者汇量技术 来源

移动广告反作弊: 如何利用深度学习进行Bots安装作弊检测

作弊给广告主造成了广告预算浪费的同时,也对广告平台造成了不良影响。Bots作弊是当前较难识别的,同时也是占比较大的一种作弊类型。针对这一现象,Mobvista的反作弊算法团队分享了如何利用深度学习进行Bots安装作弊检测。

背景

近年来,随着移动互联网技术的快速发展以及智能移动设备的兴起和不断普及。移动广告行业迅速发展,根据eMarketer报告[1],2019年全球移动广告总支出已高达2410亿美元,预计2020年将持续增长至2865亿美元。

随着移动广告预算的持续增长,移动应用安装作弊也在持续增长。作弊给广告主造成了广告预算浪费的同时,也对广告平台造成了不良影响。在所有的移动应用安装作弊各种作弊类型当中,Bots作弊是当前较难识别的,同时也是占比较大的一种作弊类型。根据Appsflyer2019年的一份报告[2], Appsfly在2017年至2019年三年期间检测到超过15亿次安装作弊,其中Bots作弊安装高达9亿次。

图1:Appsflyer在2017年至2019年期间检测各作弊类型的安装作弊次数(摘自Appsflyer官网

Bots安装作弊是指作弊者通过Bots来模拟真实用户的应用安装行为,从而窃取广告主的广告预算。Bots安装作弊难以检测是因为Bots看起来很像真实用户,它具有真实的IP、Device等等,甚至可以进行应用内的事件(例如在指定时间打开应用,加购等)。

本文主要介绍Mobvista的反作弊算法团队针对移动广告作弊中的Bots作弊安装检测问题而提出的基于GBDT和DNN相融合的反作弊模型。

模型

1、 问题定义

我们将Bots作弊安装检测问题看作一个二分类问题,即根据App安装发生时的Context信息(例如安装时间、渠道(Channel)、网络类型、IP地址、Device等)进行分类,判断此次App安装是否是Bots作弊安装。

2、模型结构

模型结构如图2所示。我们通过LightGBM训练得到一个GBDT模型;基于Pre-trained GBDT模型实现原始特征中稀疏特征(ID类特征,例如Device brand、Device language、OS Version等)和稠密特征(统计类特征,例如Channel历史的Bots作弊安装占比、安装小时分布等)之间的高阶特征组合,这里说的高阶特征即每棵树的叶子节点的索引。各类特征(包括稀疏特征、稠密特征、叶子节点index等)经过相应的embedding处理后作为MLP模型的输入,各个特征的embedding是在模型训练过程当中学习得到的。

对于叶子节点index的embedding聚合方式定义如下公式所示:

我们尝试了Concatenate、Average、LSTM三种聚合方式;由于三种聚合方式的效果没有明显的差异,基于模型训练效率的考虑,我们最终采用了Average的聚合方式。

图2:MLP + leaf embedding模型结构

3、模型训练

模型训练采用Mini-batch的方式,损失函数采用交叉熵损失(Cross Entropy Loss)函数:

实验

1、离线评测

我们在10个时间窗口的数据上进行T+1的离线评测。同样时间窗口,采用15天数据训练模型,T+1天的数据作为测试集,评估指标:Recall@X Precision(注:对于实际业务来说,必须保持较高的模型精度,以尽量避免误判的情况;所以X通常取值为90%、85%、80%等较大的值)。

离线实验结果如图3所示(注:出于业务保密考虑,此处未给出具体的recall数值)。由图3数据可知:相对两个baseline模型(MLP和LightGBM)来说,MLP+ leaf embedding模型的在Recall上提升还是比较明显的,而且MLP + leaf embedding模型的表现也更为稳定。

图3. 离线评测结果

2、实验分析

前文中我们提到通过GBDT来实现原始特征中稀疏特征和稠密特征的高阶组合,以提升模型的泛化能力。图4展示了模型第一个线性层hidden neuron的激活程度(注:为了方便展示,在此我们只展示了前30个hidden neuron),颜色越深激活程度越低;其中每一行对应了一个hidden neuron,每一列对应一维特征(最后的64个特征为叶子节点的leaf embedding向量)。从图中可以看出,各个hidden neuron对leaf embedding特征的激活程度通常高于其他特征,说明leafembedding特征相比其他特征更为重要。

图4. MLP +leaf embedding模型的第一个线性层的参数激活图(仅显示前30个hidden neuron)

图5展示的是MLP +leaf embedding及MLP模型的最后一层输入向量的t-SNE[3]可视化结果;其中蓝色点代表正常安装,红色点代表Bots作弊安装。由图5可以看出,MLP+ leaf embedding模型相对于MLP模型更有区分度,说明MLP + leaf embedding模型能够更好识别Bots作弊模式。

图5. MLP +leaf embedding模型和MLP模型最后一层输入向量的t-SNE可视化结果

总结与展望

在本文中我们为大家介绍了Mobvista针对移动广告作弊中的Bots作弊检测模型,并通过离线评测说明了其有效性。我们将持续探索的新模型,以及进行针对实际业务场景的适配。例如我们采用了图神经网络(GNN)模型,并且根据公司业务特点对现有的图神经网络模型[4][5]进行改进,相关的工作成果已经投稿到国际顶级学术会议。

参考文献:

[1] eMarketer.2019. Worldwide mobile ad spending increases to 240.95 billion dollars in 2019.

https://www.emarketer.com/forecasts/5a4e4662d8690c0c28d1f233

[2] AppsFlyer.2019. 2019 Fraud Trends Uncover Fascinating Results.

https://www.appsflyer.com/blog/mobile-ad-fraud-trends/

[3] Maaten, Laurens van der, and Geoffrey Hinton.Visualizing data using t-SNE. Journal of machine learning research 9.Nov (2008): 2579-2605

[4] ThomasN. Kipf and Max Welling. 2017. Semi-supervised classification with graphconvolutional networks. In ICLR.

[5] WillHamilton, Zhitao Ying, and Jure Leskovec. 2017. Inductive representationlearning on large graphs. In NIPS. 1024–1034.

产业深度学习
1
相关数据
交叉熵技术

交叉熵(Cross Entropy)是Loss函数的一种(也称为损失函数或代价函数),用于描述模型预测值与真实值的差距大小

参数技术

在数学和统计学裡,参数(英语:parameter)是使用通用变量来建立函数和变量之间关系(当这种关系很难用方程来阐述时)的一个数量。

损失函数技术

在数学优化,统计学,计量经济学,决策理论,机器学习和计算神经科学等领域,损失函数或成本函数是将一或多个变量的一个事件或值映射为可以直观地表示某种与之相关“成本”的实数的函数。

分类问题技术

分类问题是数据挖掘处理的一个重要组成部分,在机器学习领域,分类问题通常被认为属于监督式学习(supervised learning),也就是说,分类问题的目标是根据已知样本的某些特征,判断一个新的样本属于哪种已知的样本类。根据类别的数量还可以进一步将分类问题划分为二元分类(binary classification)和多元分类(multiclass classification)。

图神经网络技术

图网络即可以在社交网络或其它基于图形数据上运行的一般深度学习架构,它是一种基于图结构的广义神经网络。图网络一般是将底层图形作为计算图,并通过在整张图上传递、转换和聚合节点特征信息,从而学习神经网络基元以生成单节点嵌入向量。生成的节点嵌入向量可作为任何可微预测层的输入,并用于节点分类或预测节点之间的连接,完整的模型可以通过端到端的方式训练。

推荐文章
暂无评论
暂无评论~