转自这里算法
流量做弊弥漫在互联网广告行业中,已经成为公开的秘密。数据库
黑格尔的哲学命题”存在即合理“,每每被人滥用,其原意是“合理即合符某种规律”,经过黑格尔辩证法,不存在不变的东西,这个命题也能够解释成“凡是存在的,都是应该会灭亡的”。 不知道虚假流量何时会灭亡,那时这篇文章就失去意义了,不过既然这篇文章如今存在,那么就是合理的(rational)。浏览器
今天的话题集中在移动流量做弊上面,做弊(反做弊)形式和技术与PC做弊不尽相同。PC的用户标识一般使用浏览器的Cookie;而移动的标识一般是IDFA(苹果),Google Ads ID(海外Android),IMEI(国内Android)。移动App有更多信号(机会)辨别真伪,PC浏览器的限制会比较多。安全
这篇文章就肤浅介绍一下虚假流量后的一些潜规律,不少分析都很浅显,所以叫作浅潜规则。服务器
1. 虚假流量的术语微信
本文聊的做弊流量,有好多种说法,侧重点也不尽相同。架构
做弊流量(Fraud Traffic) :大白话,容易明白,就是骗人的流量机器学习
非人为流量(No-Human Traffic ): 这种流量特指一些Bot流量,机器模拟的;对于一些劫持的流量,有些灰色地带,所以不够准确。模块化
非激励正常流量(No-Incentive Traffic):有些流量虽然是人为流量,但经常是由某种诱惑而来(例如不合理页面设计,奖券,红包,游戏点卡等),所以激励流量一般转化效果比较差。函数
无效流量(Invalid Traffic) :为了规避过于敏感的做弊(Fraud)而使用的术语,这样不容易得罪人,无效流量中既有故意为之,也有无心为之的。
异常流量(Abnormal Traffic) :相似于无效流量,强调流量的异常性。
这些术语之间并无太多包含关系(或不必严格细分),更多的是用在不一样的场景和角色。例如,有些研发人员关注No-Human Traffic(Bot Traffic) ;有些效果监测的公司更加关注计费的流量,所以愿意使用invalid traffic;早期,这些流量都称为Fraud Traffic,所以做弊流量也是一种经常使用说法。
2. 移动广告的业务模式图:
有钱的就地方就是做弊,常在河边走,哪有不湿鞋?看看钱是如何流动的就能够理解其中利益关系。钱流的上游是付钱的主,下游的机构总想放大收入,那么在付钱主的所能容忍范围内最大化收入就是各个环节优化的目标。这是一个在限制条件下,单优化目标的问题。
常见流量做弊的动机:
1.媒体:制造虚假流量,提高收入
2.广告代理/销售:运营虚假流量,保证合同,提高收入
3.交易平台:对虚假Supply审查不严格,提高收入
4.用户:为得到激励(红包,点卡等)而产生低(无)效果流量
5.广告主:恶意消耗竞争对手的预算
3. 移动广告目前的虚假流量比例
因为虚假流量过于复杂和敏感,你们在报数的时候都是很是谨慎当心的。尽管如此,最后你们报的数字千差万别,所以没法考证各个数据的置信度,你们参考一下就好。
1.ANA( Association of National Advertisers): “声誉差的交易平台做弊流量达到25-50%,声誉好的一般低于10%”。
2.AppFlyer:2016年,AppLift的报告指出34%的移动流量为有风险的虚假流量(Risk of fraud, 22%可疑,12%高风险) 。Android虚假流量比例大于iOS,系统版本约高,虚假比例越低。
2.秒针:2016年垂直网站与网盟媒体异常流量占比最高。其中,垂直类媒体曝光异常大幅增至 24.93%,点击异常中网盟类媒体最为明显,占比高达 71.07%。
3.AdMaster :2016年整年无效流量总体占比为30.2%;下半年出现小幅度恶化现象,无效流量增长3.7%;
4.移动虚假流量的分类
虚假流量有不少种分类,各类分类都会有灰色的领域,下面我试图用做弊的基本原理方式来分类,并且主要是针对移动的场景。更加全面和系统的分类,能够参考刘鹏老师的《互联网广告做弊十八般武艺》。
另一种分类能够按照设备和人为的四象限分类
5. 移动反虚假流量的模型
在讨论如何对付移动虚假流量的方法以前,咱们先看看移动做弊的一些主要黑技术,作到知己知彼。
移动做弊中涉及不少黑技术,其中包括一下一些:
模拟器:BlueStacks, AndyWin, GenyMotion
Spoofer: 不断的修改机器的IP , IMEI, MAC等
Proxy: 网关,修改ISP, IP, UA , 设备类型等
苹果: 没有模拟器,主要经过硬件和软件模拟
激励流量(incent Traffic ): 真实人流量,可是转化率差的流量
...
对于如何防范移动虚假流量,这确实是一个复杂的问题。并不是没有防范做弊的高端技术,也不是由于这个问题不够严重,最主要的缘由有三个。
精准打击反做弊的成本比较高
各类玩家的利益分配缘由
做弊者的受益高和风险低,大部分状况下,做弊者不会受到任何惩罚。
例如,最近友盟+在法院起诉某家App刷量公司,理由是影响了友盟统计计算的正确性和公正性。目前法院并无断定,我也不得知其诉讼的合理性。打个比方,有一个刷墙公司把路上全部广告牌都刷成某家公司,而后有一个品牌影响力排名公司去控告这个刷墙公司,严重影响了它的品牌排名公正性。总感受这个逻辑,不算太对。我也确实很是讨厌App刷量公司,可是从哪一个角度去批判和惩罚他们,确实值得法律法规上更多的讨论。
不聊伦理和法规,聊聊技术吧,我以为技术上能够按照以下模型来对付虚假流量,这里特指移动端。
硬件:手机拥有更多的硬件信息,所以经过硬件信息进行虚假流量的防范,能够防范经过非手机(即Bot,服务器等)的虚假流量。虽然,如今手机系统提供了有一些标准函数能够得到硬件信息,例如IMEI,MAC等,但这些函数很容易被一些通用软件工具所攻破。另外,这个硬件标识的信息,也没法在服务器端获得有效校验。所以,在虚假流量的斗争中,第一步每每就是识别流量的来源,是真实手机,仍是模拟器,服务器模拟等工具。
规则策略:规则每每是最简单有效的防范机制,例如,对于第一次访问全新流量,将虚假流量的可能性设置为高。对于天天多余X次的有规律访问,坚定抵制等等。规则有不少不少,不断的增长,修改,发展到最后,规则的匹配次序也成了一门艺术了。对于一些初级的造假者,每每会落到这些规则中。
机器学习:机器学习就是经过一些训练数据集合训练出一个分类器,对于一些特征,训练出一些权重信息,然后用于流量的分类识别上。作虚假识别的团队不少时候在这个方向会越作越深,使用更多的特征,使用更多数据,使用更加及时的数据,尝试更多的模型。这个领域工做很“苦”,作严格了,收入可能受影像,作宽松了,广告主投诉ROI降低,这种平衡有点里外不是人。
智勇双全:有些做弊并不是必定经过死板的技术手段完成的,其实有不少五花八门的方法。举例来讲,经过加大对于媒体的惩罚力度,能够提升媒体的做弊成本,从而下降做弊率。另外,还有一种有趣的反做弊方法,叫作Honey Ad(有时也叫Bluff Ad),这些广告有些特色(例如,预期点击率很低),经过观察点击率是否和预期同样,能够判断流量是不是机器流量(机器流量没法判断这些广告的贴点)。
6 识别虚假流量的技术流派
这一部分主要是集中在经过机器学习的办法辨识虚假流量的技术,有一大部份内容能够在相关的论文中找到。
6.1 分类方法
大部分算法工程师在处理虚假流量都是从分类技术开始的,构造一个分类器,找各类各样的特征,找到一些虚假流量的(例如转化率异常)训练数据。这种方法对于对于虚假流量的样本很是依赖,不一样的样本很容易训练出不一样的模型,容易过渡拟合。 对于新的虚假流量模式,不容易及时发现。
常见的有逻辑回归和贝叶斯方法,能够参考以下论文
《Measuring and Fingerprinting Click-Spam in Ad Networks》Vacha Dave etc.
6.2异常检查(Anomaly-Based Detection)
学术上有不少论文,讨论经过聚类的方案识别异常流量,在移动端,能够经过跟踪某一个用户标识的历史行为,各类上网行为,广告请求行为,浏览行为,特别是跨媒体的使用状况,以辨别这个流量是不是正常手机的使用轨迹。
基于历史信息和行业平均水平进行异常分析
基于时间的变化,发现一些突变点
这一技术在金融和交易的反欺诈,用的很是多,技术也很是繁多
经常使用方法能够聚类,分类或者内容分析;
《Using Co-Visitation Networks For Classifying Non-Intentional Traffic》 Ori Stitelman et al. Dstillery 2013.
6.3 APP的广告做弊的自动化检查
市面上有不少APP,那些APP是制做虚假流量的来源?有没有什么自动的检查方法? 微软有一篇论文就是介绍这方面的工做,经过自动运行APP,分析APP的广告状况:太多广告,广告大小太小,重叠广告等等。
2014,《DECAF: Detecting and Characterizing Ad Fraud in Mobile Apps》
6.4. 审计(Audit)
审计是一种传统的反欺诈方法,也是有效的,对于调查一些刷量问题也是有直接帮助的。
当有些在某些媒体(publisher) 点击发生点击
广告平台/广告主向媒体发送一些审计的请求,确认以前受到的点击的有效性(时间点,基本信息),然后进行对比。
6.5 伪广告验证(Honey Ads)
广告平台发送一些小比例的广告,例如一些信息提示,按道理,这些提示内容并无让用户Click的意图。
若是这些伪广告的点击率,仍然很高,像其它的广告点击率同样高,说明这些流量有问题。
6.6 设备ID的真伪辨别
在移动设备上,对于设备ID的辨别能够极大的帮助识别虚假流量。有两件事须要确认,第一,这个ID是有效的ID,第二,这个广告请求确实是来自这个ID所在的设备。
移动设备ID也比较多,国内安卓以IMEI的MD5/SHA256为主;IMEI一般也会带有制造商的一些基础信息。
如何肯定这个ID是来源于真实的设备,这就须要利用硬件的技术,或则经过历史数据的一些分析来看。例若有一个IMEI ,请求的IP来源忽悠不定,上午的IP在郑州,下午在杭州和南宁等,或则不熟悉的地方,那么这些广告请求中,一般有虚假的成分。所以,对ID进行辨别,对常见ID能够采用辅助的技术进行识别,包括访问频率,IP范围,浏览行为,搜索行为,APP事情状况等等,访问时间等,并且能够经过数据链的方式来断定请求的真实性。
6.7 分享一些反欺诈的论文
这里推荐老东家的一篇论文,《Click Fraud Detection: Adversarial Pattern Recognition over 5 Years at Microsoft》,这篇文章介绍了微软2014年以前的一些心路总结,从RuleBitmap 到 Model Fighting,如何定义Metric (Value per Click)。我有幸与部分做者一块儿工做,期间真心感到反欺诈的工做的无冕之艰辛。
我收集了一些Papers,有兴趣的同窗能够到个人主页上下载
7 反做弊技术公司
1) Integral Ad Science
2009年成立的反做弊公司,保护品牌安全等,这家公司和尼尔森有不少合做, 详情可见http://integralads.com
2. Solve Media
专业提供CAPTCHA( "Completely Automated Public Turing test to tell Computers and Humans Apart")的服务,也就是验证是不是人操做,而不是机器访问。
3.Double Verify
主要从事视频的可见性的检测,它和Facebook和Youtube都有合做,通过MRC的认真。
4. Forensiq
专业处理虚假流量的技术公司,在投前,投中,投后都可以提供解决方案。
8.最后不得不说的话
打击异常流量,是一件苦劳老是多于功劳的事情,处理不利经常遭到广告主的投诉以及平台的信誉度降低,若是过于激进,广告主消耗可能会显著减小,交易平台流水也会减小。反欺诈算法的同窗一般须要保守各类算法规则的秘密,不少时候,一些新的规则上线,也不能大肆宣扬,只能暗中观察效果,与非正常流量开始一波又一波的拉锯战斗。
最后,为长期打击反欺诈的同窗鼓掌加油!
个人相关参考文章
广告技术:
互联网广告的归因分析(Attribution Analysis) (新!)
两分钟搞明白Beacon,iBeacon和EddyStone
Java技术:
大数据分析:
做者介绍:
欧阳辰,小米MIUI商业产品部 架构师/主管,超过16年的互联网老兵,负责广告平台架构和数据平台,曾负责微软移动Contexual Ads广告平台,参与Bing搜索引擎IndexServe的核心模块研发,有空也会在我的微信公众号“互联居”中,分享一些互联网技术心得,订阅“互联居”公众号,与做者直接交流。