广告点击欺诈预测的实践与探索
摘要:网络在线广告中以套取广告费为目的的点击欺诈检测是机器学习应用的重要内容之一。本文利用400000条广告点击作弊情况的数据资料,采用递归特征消除法来确定预测因子并使用梯度提升决策树(GBDT)、随机森林(RF)、Adaboost、KNN和Lgbmclassifier五种算法来训练单一分类器,比较各类分类器的预测性能。实验结果表明,随机森林、Lgbmclassifier和Adaboost算法的预测准确率最高,分别为87%、83%、79%,AUC值分别为0.90、0.87、0.81。本案例研究旨在帮助学员能够更好的理解机器学习中各类算法的应用,使学员能够借助大数据的思维来去分析和解决问题。
关键词:点击欺诈;多算法融合;递归特征消除
背景信息
互联网广告的主要收费模式是按点击次数付费。即广告投放者按照广告浏览者通过点击广告下载应用程序的次数支付费用。按点击次数付费模式下的无效点击会对广告计费产生较大影响,其中最需要防范和规避的是点击欺诈。通常情况下,将通过人工点击者自动点击的方式,恶意增加广告发布者收入以及广告主支出的点击称为点击欺诈。广告主可能对自己的广告进行欺诈性点击,从而提升自身曝光率,或是在竞价环境下消耗对手广告,使自己得到更多曝光量,亦或是向对手广告进行欺诈性点击,消费对手的广告费用,从而提高自身竞争力;媒体还存在被动的欺诈性点击行为,媒体会采纳许多引流来自各种复杂渠道的流量,并与渠道按照点击的用户数进行结算,奥鹏在线作业答案,因此这些引流方也会因此进行欺诈性点击行为。
广告欺诈是数字营销需要面临的重要挑战之一,点击会欺诈浪费广告主大量的金钱,同时对点击数据产生误导作用。点击欺诈预测适用于各种信息流广告投放,banner广告投放,以及百度网盟平台,帮助商家鉴别点击欺诈,锁定精准真实用户。针对以上问题本文提出一种基于机器学习的网络在线广告点击欺诈预测方法,在特征选择阶段,利用递归特征消除法,将特征重要性为0的变量去除,使用梯度提升决策树、随机森林、Adaboost、KNN和Lgbmclassifier五种算法来训练单一分类器,来比较哪种算法的预测结果最好。
案例正文
一、为何要进行广告点击欺诈预测
移动互联网蓬勃发展十几年来,不但创造了全新的社会生活方式,也影响着网民的生活方方面面。近年来互联网公司层出不穷并不断发展,他们的盈利模式逐渐分流成游戏、电商、广告等多种渠道,广告作为其中最方便快捷的途径,牢牢占据整个移动互联网行业的半壁江山。国内外各大互联网公司巨头,如脸书、谷歌、百度、阿里巴巴、腾讯及各抖音快手等小视频APP,广告收入占其总收入比例都极高。与此同时,移动互联网的发展也为广告主提供了更多的投放渠道。2020年9月29日,中国互联网络信息中心(CNNIC)在京发布的第46次《中国互联网络发展状况统计报告》显示,截至2020年6月,我国手机网民规模达9.32亿,与此同时,超过99%的网民使用手机上网,移动网络成为了我国最重要的网络接入模式。作为世界上最大的移动通信市场,我国移动互联网接入流量已经达到745亿GB。
移动互联网广告行业的发展主要得益于智能手机空前的普及,巨大的用户基数与接入流量使更多的广告主选择通过移动互联网投放广告。随着在移动互联网上投放的广告越来越多,移动互联网广告市场规模与日俱增。截至2019年,移动互联网广告的市场规模已经由五年前的375亿元人民币增至4149亿元人民币,复合年增长率达到61.7%。互联网广告的主要收费模式是按点击次数付费(Cost-per-click,CPC)。按点击次数付费的原理是,广告投放者按照广告浏览者通过点击广告下载应用程序的次数支付费用。
按点击次数付费模式下的无效点击会对广告计费产生较大影响,其中最需要防范和规避的是点击欺诈。一般来讲,将通过人工点击或者自动点击的方式,恶意增加广告发布者收入以及广告主支出的点击称为点击欺诈(ClickFraud)。广告主可能对自己的广告进行欺诈性点击,从而提升自身曝光率,或者在竞价环境下消耗对手广告,从而使自己得到更多曝光量,再或者向对手广告进行欺诈性点击,消费对手的广告费用,从而提高自身竞争力;媒体还存在被动的欺诈性点击行为,媒体会采纳许多引流来自各种复杂渠道的流量,并与渠道按照点击的用户数进行结算,因此这些引流方也会因此进行欺诈性点击行为。
根据移动广告效果监测平台AppFlyer最新的手机欺诈状况报告,仅2019年上半年,就有23亿美元的广告支出涉及效果类广告应用欺诈行为。效果类广告应用下载行为中,约有22.6%属于应用欺诈行为;德国某移动应用市场平台报告表示,该公司广告点击数据库中,移动广告约有40%的无效点击,其中有18%为欺诈性点击。移动广告投放是绝大多数移动互联网平台和APP最重要的盈利方式之一,基于巨大的用户基数与接入流量,移动广告平台也是广告主投放广告最高效的平台,但点击欺诈的存在,对移动互联网广告行业的生态和行业内信任度产生极大的伤害。
移动互联网广告的主要特征在于流量大、点击量高,并因此带来海量的数据。移动互联网行业的飞速发展,让各大网络社交及电商平台组成了庞大的数据库。每天生成的海量数据能够通过超级计算机和互联网强大的计算能力进行处理,并可以通过动态实时数据了解用户需求,进行及时、适时的广告推送。随着移动互联网广告为互联网带来巨大的资本和利益,恶性的资本竞争和商业欺诈行为逐渐普遍,这使点击欺诈行为逐渐受到各方关注。由于对移动互联网广告行业生态的破坏,点击欺诈行为的负面影响极大,
主要体现在以下两个方面:
(1)广告主利益受损:
由于现阶段广泛使用的按点击次数的收费方式,无论是由己方提出需求的广告投放链下游环节还是对手方进行的恶意点击欺诈行为,都会增加广告主的广告支出,承担没有收到相应收益的广告费用。
(2)行业生态受损:
媒体或其它中间平台对广告主投放的广告进行欺诈性点击,一旦被广告主或第三方检测机构检测出来,会导致广告主对媒体或中间平台失去信任,进而导致供应方平台、在线广告联盟和广告联盟交换平台失去广告主客户,移动互联网广告行业出现信任危机,损害整个行业生态。
二、广告点击欺诈预测流程
(一)数据预处理
数据预处理部分是通过分析数据以检查其是否含有缺失值和异常值。缺失值的处理方式:1)不对缺失值进行处理;2)删除缺失值;3)插值补全。常用插值补全法有均值、中位数、众数、压缩感知补全、建模预测等。本研究检查采集的数据时发现有少量的缺失值,采用最多次数项插值补全方式对缺失值进行了处理。异常值处理方式采用绘制箱型图进行分析并删除异常值。原始数据集整理如表1所示,各属性含义如表2所示:
表1原始数据集统计表
字段名
完整个数
缺失个数
最大值
最小值
极差
无效值个数
sid
400000
0
1999990
1000005
999985
0
package
400000
0
2324
0
2324
0
version
400000
0
11
0
11
0
android_id
400000
0
709892
0
709892
0
media_id
400000
0
1529
4
1525
0
apptype
400000
0
1241
95
1146
0
timestamp
400000
0
1560000000000
1560000000000
0
0
location
400000
0
330
-1
331
0
fea_hash
400000
72
4294941988
0
4294941988
72
fea1_hash
400000
0
4291920155
12400
4291907755
0
cus_type
400000
0
1380
297
1083
0
ntt
400000
0
7
0
7
0
carrier
400000
0
46003
-1
46004
0
os
400000
0
Android
Android
NA
0
osv
400000
5325
9
2.3
6.7
5325
lan
400000
146507
zh-TW
cn
NA
146507
dev_height
400000
0
9024
0
9024
0
dev_width
400000
0
8832
0
8832
0
dev_ppi
400000
0
666
0
666
0
表2各属性含义
字段
类型
说明
sid
string
样本id/请求会话sid
package
string
媒体信息,电大作业代做,包名(已加密)
version
string
媒体信息,app版本
android_id
string
媒体信息,对外广告位ID(已加密)
media_id
string
媒体信息,对外媒体ID(已加密)
apptype
int
媒体信息,app所属分类
timestamp
bigint
请求到达服务时间,单位ms
location
int
用户地理位置编码(精确到城市)
fea_hash
int
用户特征编码(具体物理含义略去)
fea1_hash
int
用户特征编码(具体物理含义略去)
cus_type
int
用户特征编码(具体物理含义略去)
ntt
int
网络类型0-未知,1-有线网,2-WIFI,3-蜂窝网络未知,4-2G,5-3G,6–4G
carrier
string
设备使用的运营商0-未知,46000-移动,46001-联通,46003-电信
os
string
操作系统,默认为android
osv
string
操作系统版本
lan
string
设备采用的语言,默认为中文
dev_height
int
设备高
dev_width
int
设备宽
dev_ppi
int
屏幕分辨率
label
int
是否为作弊行为,0-正常,1-作弊
为了将点击数据转换成适合挖掘及训练的形式,首先对原始数据集进行预处理,从表1中的基本特征出发,利用简单的统计性特征完整个数、缺失值个数、最大值、最小值、极差和无效值个数来构造的新特征,并计算相应的特征向量值。对几十万条点击数据进行清洗、整理并计算,此部分工作是整个实验过程中工作量最大也是最重要的一部分。上述数据中,首先在数据预处理过程中对lan和osv进行缺失值处理,对数据质量检测时:发现:osv和lan两列数据中均有5325和146507项缺失值,处理方式为将空值补位出现最多次数项,之后采用随机森林进行递归特征消除法选择特征向量,最终将变量重要性为0的timestamp和os去除。本案例借助美林平台完成操作,操作流程如图1所示:
图1缺失值处理
(二)预测试
第一步为属性过滤,过滤掉不直接影响是否作弊的因素,加快计算效率。
图2属性过滤
(三)模型筛选
本案例分别使用梯度提升决策树、随机森林、Adaboost、KNN和Lgbmclassifier五种算法训练单一分类器,比较各分类器预测性能,各单一分类器预测性能如表3所示。数据结果显示,梯度提升决策树等五种算法预测性能存在明显差异,预测准确率最低为63%、最高为87%,预测性能最高的三种算法依次为随机森林、Lgbmclassifier和Adaboost,准确率分别为87%、83%和79%。
表3多算法与单一算法预测性能比较
precision
recall
f1-score
Adaboost
0
0.79
0.81
0.80
1
0.79
0.77
0.78
macroavg
0.79
0.79
0.79
accuracy
0.79
RF
0
0.87
0.87
0.87
1
0.86
0.86
0.86
macroavg
0.87
0.87
0.87
accuracy
0.87
GBDT
0
0.73
0.70
0.72
1
0.69
0.72
0.71
macroavg
0.71
0.71
0.71
accuracy
0.71
KNN
0
0.68
0.52
0.59
1
0.59
0.74
0.66
macroavg
0.64
0.63
0.62
accuracy
0.63
Lgbmclassifier
0
0.82
0.85
0.84
1
0.83
0.81
0.82
macroavg
0.83
0.83
0.83
accuracy
0.83
以下是随机森林分类结果如图3所示,在此基础上本案例又给出各算法模型的ROC曲线图如图4所示,研究显示,RF、Lgbmclassifier、Adaboost、GBDT、KNN的AUC值分别为0.92、0.90、0.87、0.81、0.76。可以看出,随机森林算法对于点击欺诈预测的效果是最好的。
图3随机森林分类树
图4几种模型ROC曲线对比图
结语
为了提升了点击欺诈预测水平,减少广告欺诈产生的概率和降低因点击欺诈而导致广告主广告投放费用增加。本案例对比了击中机器学习算法的点击欺诈预测模型。利用递归特征消除法来确定预测因子,电大作业代做,利用基于机器学习的单一预测模型来挑选适合广告点击欺诈的预测模型。最终实现了广告点击欺诈行为的预测。实验结果显示,RF、Lgbmclassifier、Adaboost、GBDT、KNN的AUC值分别为0.92、0.90、0.87、0.81、0.76。可以看出,随机森林算法对于点击欺诈预测的效果是最好的。本研究有助于广告主节省大量资金,帮助商家鉴别点击欺诈和锁定精准真实用户有重要意义。
案例思考题
1.请思考随机森林的算法的定义以及在本文中是如何应用的。
2.结合案例,与随机森林算法比较,本案例提到的另外四种算法各自怎么应用。
3.本文评估几种算法的预测性能用了哪些方法?这些评估方法的优缺点?
4.谈谈从案例中可以看出关于目前广告欺诈问题都有哪些,进行广告点击欺诈预测有何意义?
教学目的
①了解和掌握目前广告点击反欺诈预测面临的主要问题,并且应该如何去解决这些问题。
②培养学员从宏观层面看待广告点击反欺诈预测的方法、流程。
③使学员形成数据分析的思维,特别是在做选择时能够客观地进行选择。
要点提示
相关理论:
梯度提升决策树算法
随机森林算法
Adaboost算法
KNN算法
Lgbmclassifier算法
关键知识点:机器学习、分类算法、随机森林算法。
关键能力点:理解广告点击反欺诈的内涵,了解预测流程和特征重要性的确定。
参考文献
[1] 刘国卿.一种新的点击欺诈防范算法[J]. 计算机工程,2011(s1):160-161.
[2] 龚尚福,姜晓旭.基于用户行为分析的广告欺诈点击检测[J].计算机应用与软件,2011,28(4):127-128
[3] Metwally A,Agrawal D,Abbadi A E.Detectives:detecting coalition hit inflation attacks in advertising networksstreams[C]//Proceedings of the 16th International Conference on World Wide Web.New York:ACM,2007:241-250.
[4] 乔晨蕊.网络广告中的点击欺诈检测方法研究[D]. 哈尔滨:哈尔滨工程大学,2016.
[5] 董亚楠.基于用户行为特征的在线广告点击欺诈检测研究[D].南京:南京工业大学,2016.
[6] Jochen Kruppa,AlexandraSchwarz,GerhardArminger,etal.Consumer Credit Risk:Individual Probability Estimates Using Machine Learning[J].Expert Systems with Applications,2013,40(13).
[7] Luo Cuicui,WuDesheng,WuDexiang.A Deep Learning Approach for Credit Scoring Using Credit Default Swaps[J]. Engineering Applications of Artificial Intelligence,2017,65(32).