阿里妹导读:有人的地方就有江湖。广告作为互联网公司商业变现最为直接快捷的途径,广告作弊已经形成了一个有完整链条的黑产行业。如何通过技术手段识别并防范广告作弊?本文通过介绍常见的广告计费模式和虚假流量的获益形式和发生机制,分析广告点击反作弊的核心问题,分享相关的反作弊实践经验,详解反作弊技术体系及核心算法。
本文作者:黎伟斌(德策),张红春(樊迟),孟晓楠(潇楠),周洋(贾让)。
虚假流量的存在,让广告效果、品牌安全等方面都难以实现广告主的投放初衷,会导致获客成本的增加,直接造成了广告主的经济损失。
无效流量掩盖了真实用户。从结果上看,虚假流量提升了流量数据,虚增的曝光次数实际对广告主并无价值,无法提升客户与商机的数量、无法提升真实的用户留存和真实的用户活跃。
数字广告行业遭受前所未有的信任危机。因为不良的竞争及短期的利益驱使,加上广告主对数字广告营销效果的困惑、混乱,造成广告主对数据广告的信誉危机。
Click fraud occurs in pay per click online advertising when a person, automated script or computer program imitates a legitimate user of a web browser clicking on an ad, for the purpose of generating an improper charge per click.
广告主:将自己产品的广告触达到用户,通过广告在受众群体或目标用户中产生一定的品牌影响力,进一步使得用户成为其服务或产品的消费者。
广告代理/销售:比较专业的广告推广操盘手,帮广告主管理账号,提供专业的营销服务。
广告交易平台:是一个连接互联网媒体和广告主的广告系统平台,不仅会给广告主提供广告营销工具和广告投放服务,而且会借助互联网媒体的流量实现广告的商业价值。比如有大量用户和流量的搜索引擎公司、电商公司、社交公司。
媒体:媒体一般为互联网网站或互联网信息与服务的提供商。互联网广告投放的媒体通过用户在其网站浏览信息或者使用服务的过程中完成广告信息的传播,媒体一般也叫联盟。比如一些小网站,如博客。
用户:在互联网上浏览信息或使用服务的人,也是广告主的潜在的广告客户。
定性方面:业务发展和风险如同汽车的引擎和刹车,是有机的组成。引擎负责向前,刹车负责避免风险。
定量方面:业务如同放贷,而技术风险就是放贷的利率。利率高了,业务就跑不动了;利率低了,是要有泡沫破灭的大风险的。利率的高低是需要数据和艺术来平衡的。”
道高一尺魔高一丈,作弊和反作弊都在不断迭代升级,如果没能过滤新型大规模攻击将非常影响客户体验和对平台的信任,怎么持续做到“上医治未病”、“防范于未然”,保障客户体验和避免平台资损。后续我们会介绍事前我们的“主动发现作弊机制”,以及事后升级规则和模型。
缺少置信样本,怎么在保证召回作弊的情况下控制平台的资损。后续“样本工程”部分介绍我们的有监督模型是怎么选样本的。
用什么指标衡量业务做得好?我们用准召率和召回率两个指标,准确率分两种,一种是新策略的准确率,计算逻辑为“大盘点击的转化率/新策略单独识别点击的转化率”;另一种是线上所有策略的准确率,计算逻辑为“大盘点击的转化率/所有策略识别点击的转化率”。召回率指客户赔付总次数和金额。
广告主:虽然广告主是最初的金主,但也存在作弊的强烈动机。比如在竞价环境下希望尽快消耗竞争对手的广告从而使自己容易拿到量,或者对自己作弊从而提升自己的点击率。
广告交易平台:广告交易平台还有被动的作弊,因为还有很多流量来自于其它媒体的引流,这些媒体参差不齐,广告交易平台和媒体之间的结算以点击来结算,所以媒体也有足够的动力作弊。而这些点击完全不会有任何转化。
机器作弊:使用机器或程序来模拟广告行为,或者通过木马和肉鸡模拟用户的广告行为。为了使点击行为不被规则类发现还会控制ip分布和时间。机器作弊有如下的方法:模拟器、Proxy(网关,修改ISP,IP,UA,设备类型等)、爬虫(各家搜索引擎大量爬取着整个网络,依然会消耗巨大的广告预算)。
人工作弊:雇人用真实的设备进行广告的各种行为操作,主要方式为众包。
业务刚开始的作弊主要是机器作弊,一些人机识别、爬虫识别、黑名单即可识别大部分作弊。我们称之为单点反作弊。
随后作弊者升级到人工作弊,比如大规模人工点击(期间还不断清除介质),或者只点没有转化的行为序列异常,我们会升级到计数、比例、分布等统计策略和行为序列模型TextCNN、BiLSTM,已经能拦截大部分的个人作弊。我们称之为线上反作弊。
接着作弊者又会升级高级的人工作弊,模拟人的点击,尽可能的各种特征上不集中,但是毕竟作弊者要达到收益的话,需要有一定的作弊量,而他们不知道正常点击的真实分布,自然的会在一些维度上出现异常。我们反作弊算法升级到无监督相对熵模型,再后面有样本了升级到有监督的GBDT和Wide&Deep,均是从多个维度和特征上识别作弊。我们称之为面上反作弊。
再后面作弊难度更大了,他们会有众包团伙作弊,我们也升级联通图、图神经网络GraphSage等模型,识别作弊团伙。我们称之为体反作弊。
投诉反馈是与广告主反馈无效点击的通道。
主动发现作弊是我们离线运行一些达不到上线准确率的策略,以在广告主感知到之前主动发现作弊,提升客户体验。由于准确率达不到上线标准,故需要较多的人力分析挖掘的疑似作弊。在后面的主动发现作弊环境会详细介绍思路。
数据沉淀包括两方面,一是识别的无效点击用于后续训练有监督模型识别作弊,二是识别无效点击,以便下游广告算法等清洗数据。
前面提到我们是电商场景,所以有转化数据,而且前期有统计规则的过滤点击,故可以用规则圈一些较准确的样本(即转化率较低的样本)。
基于经验构造样本,也就是在其他场景的反作弊经验的迁移应用。
使用SMOTE[4]生成样本,我尝试过SMOTE生成样本的实验,召回上略有提升。当作弊样本较少,SMOTE相当于差值法,生成作弊样本使得取值分布更全面。
使用GAN[5]生成样本,[6]用GAN生成欺诈样本用于训练有监督模型。下图是GAN生成作弊样本的思路。
平均访问深度:访问深度是用户一次浏览网站、APP的深度,它是衡量网站服务效率的重要指标之一。以刷量为目的的虚假流量,用户访问深度通常非常低,因为他的目的是作弊,点完即走。当然造成用户访问深度不够的原因有多种,如新投放的落地页的失败引导。因此我们在观察此指标时,应率先排除产品较大改动造成的访问深度不足等特殊情况,或者与其他渠道的流量数据综合比较,进行科学评估。
平均访问时长:平均访问时长指标,主要用来衡量用户与网站、APP 交互的深度。交互越深,相应停留的时长也越长。显然虚假流量追求的是“量”,而非“时长”,因此平均访问时长也可以配合几个网站参与度指标一起分析。比如机器点击的访问时间会比较集中。
用户行为路径:用户在网站中的访问行为路径,用户路径的分析模型可以将用户行为进行可视化展示。因此通常用户通过渠道来到。网站后会有不同的行为,他们一般会从落地页开始进行分流,会访问不同的页面,并在不同的页面结束对网站的访问。显然, 用户行为序列分布是没规律的,而对于虚假流量,虽然通过某些方式完成点击,但也是预先设定,有迹可循的。后面的TextCNN和BiLSTM模型解决的就是行为序列异常的作弊,有相应的作弊case,用户基本只访问homepage和detail,没有访问其他页面。
鼠标点击位置:虚假流量用户的鼠标点击位置通常是集中的,借助热力图工具可以较为容易地发现问题。
计数:如策略“IP近1天点击次数”,超过一定阈值是则是作弊。适用于过滤大规模攻击。
比例:如策略“IP下平均访问时长小于等于0秒的点击数占比为Y”,Y过大也是作弊。适用于“可列特征取值的某一个值占比异常的情况”。
分布:如下图所示是作弊点击和正常点击在访问时长的分布。我们可以用相对熵或者卡方分布计算其异常度。适用于“可列特征取值是多个值”。
Distinct:如策略“ip维度设备介质的数目”,该例子解决换设备作弊。适用于维度对象去重后值较多,如cookie的个数,行业的个数,国家的个数等值较分散的场景。
集中度:比如策略“广告主维度top K的ip的点击占比”,该例子解决特定ip攻击广告主的情况,适用于不可列特征值的top K值较集中的场景。
子维度Distinct数目分布:比如策略“广告主主维度下的IP子维度下不同cookie数目的分布”——该例子解决换cookie攻击Memberid的。这里广告主是主维度,IP是子维度。适用于子维度换ip,换useragent,换设备介质等,子维度下某个特征取值分布于基准有差异。
计数分布:比如策略“IP维度设备介质子维度点击次数的分布”,该例子解决机器均匀点击作弊。适用于子维度点击次数与基准差异,主要是多次点击。
异常检测。[7]和[8]分别是之前我整理的中文和英文版“从时间序列、统计、距离、线性方法、分布、树、图、行为序列、有监督机器学习和深度学习模型等多个角度的异常检测方法”。我们用这些方法结合上述特征工程环节的维度、特征、类型,提前发现异常。比如“memberid的点击率和推广时长的变化,或者某些维度下的其他的广告指标”。如果策略准确率达到上线要求则部署到线上,否则需要对挖掘的数据做进一步分析,针对发现的作弊调研策略。
运营人员去市场上调研作弊器。
自己构建各种作弊数据模拟攻击反作弊系统,观察其鲁棒性。
蜜罐。收集作弊者的更多信息。
TextCNN通过不同的滑动窗口可以获取不同位置的上下文的特征,在测试集上效果比BiLSTM+Attention好。
Bert的双向结构和多头机制可以从多个角度获取上下文特征,在测试集上效果比TextCNN好。
我们是ICBU算法团队,负责阿里巴巴国际贸易平台(www.alibaba.com )上搜索/推荐/买家增长/供应链相关产品的算法。ICBU业务已连续三年翻倍增长,今年疫情更是加速跨境贸易的线上化进程。来这里,你将有机会深度接触到业界领先的计算平台和深度学习算法,解决全球化买卖家不同时区、不同语言如何高效沟通,如何处理B类复杂的定制需求表达,如何准确计算全球物流费用和跟进全球物流履约进展等问题,帮助平台上买卖家快速达成生意。
团队诚招P6/P7/P8算法同学,内推咨询直达邮箱:hongchun.zhc@alibaba-inc.com
附录 [1]神策数据:数字广告投放中虚假流量的排查与判定 [2]https://wiki.mbalib.com/wiki/%E5%B8%B8%E8%A7%81%E5%B9%BF%E5%91%8A%E6%94%B6%E8%B4%B9%E6%A8%A1%E5%BC%8F%E5%A4%A7%E5%85%A8 [3]https://www.weiyangx.com/335277.html [4]Nitesh VC, Kevin WB, Lawrence OH, Kegelmeyer W. SMOTE: synthetic minority over-sampling technique. J Artif Intellig Res. 2002;16:321–57. [5]Ian Goodfellow, Jean Pouget-Abadie, Mehdi Mirza, Bing Xu, David Warde-Farley, Sherjil Ozair, Aaron Courville, and Yoshua Bengio. Generative adversarial nets. In NeurIPS, 2014. [6]Fiore U , Santis A D , Perla F , et al. Using Generative Adversarial Networks for Improving Classification Effectiveness in Credit Card Fraud Detection[J]. Information Sciences, 2017:S0020025517311519. [7] https://mp.weixin.qq.com/s/w7SbAHxZsmHqFtTG8ZAXNg.异常检测的N种方法,阿里工程师都盘出来了 [8]https://www.alibabacloud.com/blog/alibaba-engineers-have-worked-out-loads-of-methods-to-detect-anomalies_595452.Alibaba Engineers Have Worked out Loads of Methods to Detect Anomalies By Li Weibin, Hu Yi, and Wang Hao. [9]Yoon Kim. Convolutional neural networks for sentence classification. In Proceedings of the 2014 Conference on Empirical Methods in Natural Language Processing (EMNLP), pages 1746–1751, Doha, Qatar, Oct. 2014. Association for Computational Linguistics. [10]. Sepp Hochreiter and Jurgen Schmidhuber. 1997. Long short-term memory. Neural computation, 9(8):1735–1780. [11].Vaswani A, Shazeer N, Parmar N, et al. Attention is all you need[C]//Advances in neural information processing systems. 2017: 5998-6008. [12].Devlin J, Chang M W, Lee K, et al. Bert: Pre-training of deep bidirectional transformers for language understanding[J]. arXiv preprint arXiv:1810.04805, 2018. [13].Cheng H T, Koc L, Harmsen J, et al. Wide & Deep Learning for Recommender Systems, ACM Computing Surveys. 2016 [14]. Jie Zhou, Ganqu Cui, Zhengyan Zhang, Cheng Yang, Zhiyuan Liu, and Maosong Sun. Graph neural networks: A review of methods and applications. CoRR, abs/1812.08434, 2018. [15]. Z. Wu, S. Pan, F. Chen, G. Long, C. Zhang, and P. S. Yu. A comprehensive survey on graph neural networks. arXiv preprint arXiv:1901.00596, 2019. [16]. Ziwei Zhang, Peng Cui, and Wenwu Zhu. 2018. Deep learning on graphs: A survey. arXiv preprint arXiv:1812.04202 (2018). [17]. Will Hamilton, Zhitao Ying, and Jure Leskovec. Inductive representation learning on large graphs. In Advances in Neural Information Processing Systems, pages 1025–1035, 2017.
有一台云服务器可以做什么?阿里云开发者成长计划通过真实的云环境、6大业务场景和专业指导,帮助开发者深入体验学习云开发技术,全面掌握云上技能。新用户还可优惠专享轻量应用服务器,1核2G 5M,内置WordPress等8种主流环境,轻松满足学习需要!
点击 “阅读原文” ,快去体验吧~