网站联盟广告上的数据挖掘
在网站联盟广告上存在大量数据,再加上联盟网站上用户的访问信息,每天都会产生海量的数据。
通过之文章中提及的网站日志分析,我们可以掌握到很多与网站和访客相关的信息。再进一步分析访客在网站主和访客点击广告的后续行为,我们可以对访客的属性,包括年龄、性别、学历、收入、籍贯和兴趣爱好等各种信息作出大致的判断。访客属性的判断对于每个人不是100%准确,但是我们做数据挖掘本来就是在统计学的范畴之上的。如果一个判断的准确度在75%,那么我们可以认为这个判断做的还是比较准的。如果在90%的情况下是正确的,那么我们可以认为这个判断是相当精准的。
数据助力网盟广告
网站联盟广告本身包含了大量的数据,包括所有的网站内容信息、行业、领域、每天的平均访问量、Alexa排名、展示的广告内容、广告整体展示次数、广告点击次数、访客信息等。而对于点击之后的用户行为分析,我们还要有更多的信息,包括跳出率、二跳率、活跃时间、停留时间、转化率等。
通过数据分析广告投放质量
在本节中我们主要是看如何通过数据信息来分析广告投放质量。我们首先来看跳出率和二跳率。
- 跳出率(Bounce Rate)是互联网上的一个常用指标,指的是进入某一个网站之后不再继续浏览,而直接离开网站的访客比例。通常来说,跳出率越高,网站的粘性就越低。
- 当网站页面展开后,用户在页面上产生的首次点击被称为“二跳”,二跳的次数即为“二跳量”。二跳量与浏览量的比值称为页面的二跳率。
跳出率和二跳率是用来衡量外部流量质量的重要指标。简单来说,跳出率越低越好,而二跳率是越高越好的。0%的跳出率和100%的二跳率当然是最好的,但是这样的数字只是在理论中存在。在实际应用中,50%的跳出率和50%的二跳率就已经很值得庆幸了。
如图1是一个网站某个时间段的浏览量和跳出率列表,为说明简单,这里并没有列出包括来源、二跳率和停留时间等其他信息。我们可以从图中看到,跳出率平均在30%到50%左右,高于普通的企业网站,说明页面的优化和内容做得还是可以的。其中跳出率最高的页面是告诉客户联络方式的页面:而跳出率最低的两个页面都是临时性的优惠促销信息。
图1:页面跳出率示意图
我们之前提到过的Google分析(Google Analytics)工具是在国外使用比较广泛的一个网站分析工具。当网站主在他们的网站上布置了Google分析的代码之后,下面这些信息会很直观显现在你面前:
- 多少访客在什么时间段访问你的网站;
- 访客访问网站的频率是怎样的;
- 网站中哪些页面是吸引最多用户的;
- 用户采用哪些搜索关键词(组合)来到网站;
- 用户的来源主要来自哪些地方。
在中国,因为Google网站访问不稳定,这个工具的使用率被大大降低了。如果你的公司里需要做网站分析,而网站的服务器主要是在中国,那么笔者建议还是选取其他类似的站长工具,虽然功能没有Google分析这么强大。
Google分析除了访问的稳定性之外,还有一些其他的限制。以下信息你可以从Google的官方网站中获得http://support.google.com/analytics/
- 最关键的问题是Google不保证在什么时间点把数据放到报告中。一般来说在2小时内访客数据能在网站报告中体现,但有时会延迟至48小时。如果你对网站数据的实时性要求很高,那么这个延迟是无法接受的。
- 如果网站平均每个月的访问量超过1000万PV,那么Google不保证超出部分会被处理。
- 因为Google分析是免费的,所以Google不提供任何形式的客户服务热线。如果你的网站分析系统或者数据出了什么问题,那么只能自求多福了。
关于访客的信息包括访客的年龄、性别、学历等可以从大量的网页浏览记录和网络行为中识别出来。如图2至图4是我们根据一个月的数据统计的某一个联盟网站的访客信息。图2中显示的是网站访客性别比例;图3显示的是网站访客的年龄分布;图4显示的是网站访客的学历分布。
上面这些图中的数据对于广告商来说是非常有价值的。如某一款针对男性的产品在这个网站上投放广告的价值会比较高,因为访客中有60%是男性;但是如果一款产品是针对高端人群的,就不太适合在这个网站上做投放,因为只有约16%的人群具有本科或者以上的学历。
通过定向和优化提高广告投放质量
除了对人群进行分析之外,我们还可以根据时间段、地区和访问来源区分,使广告投放更加精准。而这样的区分又被称为定向,所以我们对于访问端可以做人群定向、时间定向和区域定向。
另外,针对投放广告的网站本身和网站内容我们也可以做选择,这样的选择称为内容定向。下面我们来看一个定向广告投放的实例。
这是我们操作过的某个针对上班族的广告,我们对于客户的网盟广告投放做以下的限制:
- 主要投放在中国经济最发达的地区:北京、上海以及沿海的经济发达地区。
- 只在上班的黄金时间(早上10点到下午6点)投放。
- 不接受网吧或者游戏网站流量的广告投放。
当然,这样的限制会导致一部分潜在用户的流失,我们也可以视广告主的预算和效果要求而调整投放计划。如果在上面这个例子中的广告主有充分的预算,那么我们可以把有上述限制的投放做成一个广告计划,设定每天一定的广告投入预算,而另外开设一个全网全时间段的广告计划来接受辅助流量,设置较少的预算作为前一个广告投放计划的补充。
综合该广告主一周的流量,我们得到如图5所示的地域分布图。主要统计广告被显示抓取到的这部分访客的地域来源。即分析比较分布在不同地域的访客行为。
图5 地域分布示意图
从图5中我们可以看出,该广告的浏览量来源广东省约占15%,浙江、江苏和山东其次,约各占7%~8%左右。来自中国经济发达的沿海地区的流量占据整张流量图的50%以上,证明我们的投放计划设置还是比较合理的。
互联网上网站的种类繁多,大致的种类有门户、IT类网站、新闻网站、财经网站、房地产网站、游戏网站、汽车网站、生活服务、地方网站、社区网站、视频网站、女性网站、医疗健康和亲子母婴等。图6是该广告主这一周投放的媒体分布图。我们可以看到在垂直类网站上的投放占据最高的比例,其次是新闻媒体类网站、生活与服务类网站和音乐影视类网站。这个流量分布也可以说明我们针对上班族的投放策略大致是正确的。
图6 媒体种类分布示意图
我们再来看一个高端母婴类产品的广告主。该广告主是从访客的兴趣点入手,如图7就展示了他们一个典型客户对于网站内容的兴趣特征。而每个网站也都有一张类似于图6的表格标识出该网站的普通访客的兴趣特征。通过典型客户的兴趣特征和网站平均访客的兴趣特征之间做的相似比较算法,我们就可以得出该网站的平均访客是否和该广告主的典型客户兴趣一致,从而得出是否要在该网站上投放广告的结论。
我们再来看该广告主某一天的广告浏览情况。如图8所示。
网站联盟上的这些数据对于广告商和网站主都是很有价值的。一方面对于广告主来说,他们可以选择针对他们目标人群的网站群来做投放;另一方面对于网站主,他们可以针对广告主做优化,尽量提高点击率以提高总体收入。我们来看一个广告主在网站联盟上一个阶段投放广告的数据分析,如图9所示。
图9 网盟广告投放转化漏斗示意图
这个广告主所有的广告在网站联盟各个位置以各种形式一共展示了3,534,727次,被点击了2686次,对应的点击率是0.076%。而这些点击为它的网站一共带来1912次访问。这些访问的结果是319次在线咨询。这次投放的效果总结如图10所示。
图10–广告投放效果总结
从表格中可以看出,这次投放整体的效果还是不错的。在网站联盟这种广告形式下,展现量本身是不收费的。这里的ACP(Average Click Price)是平均点击价格。
广告成本=ACP×点击量
所以该客户的总体费用是3035.18。
转化成本=广告成本/转化次数
平均转化成本,也就是获取每一个客户的成本是9.515人民币。
请读者注意的是,刚才我们列出的点击量乃至9.4节中所有关于网站联盟的访客数据都是独立访客的点击量和独立访客的统计信息。对网站信息统计来说,独立访客指的是在一天之内(00:00~24:00)访问网站的上网计算机数量(以Cookie为依据)。
一天内同一台计算机多次点击网站联盟的加盟网站的同一广告只被计算1次。
我们再来看下这次投放中在小说阅读网站投放广告的效果,如图11所示。
图9和图11展示的是同一次投放中广告出现在全部网站和其中在小说阅读网站上的相应点击率、访问量和转化率的对比。这里我们可以看到,点击率0.195%,要比平均值高出两倍,而转化率3.5%只有平均值的五分之一左右。
再分析原因,可能是因为该广告主的目标人群和小说阅读网站的浏览人群不一致造成的。为了尽量提高投资回报率,作为调整的一个步骤,该广告主下一个阶段的广告投放会把小说阅读类网站排除在投放媒体之外。
图11网盟广告投放小说阅读网站转化漏斗示意图
除了上面这些信息以外,还有一些数据分析报表可以用来分析广告主和网站主的具体广告投放数据信息。比如有以下这些报表。
时段报表:以常规分析的数据为基础,根据用户自行选取的时间划分方式,进行时间切片式的统计。这样的统计有利于统计数据的定向分析,帮助用户更精确地分析流量数据在时间轴上的纵向分布。统计广告主网站按月、按周、按日或者按小时段的流量分析情况。
频次报表:频次是指广告在特定时间内被显示的次数。比如说一个广告在一天中,5个独立访客观看,每个人观看了广告2次,其中每人产生了一次点击,那么这则广告今日2频次显示数为10,2频次点击数为5,2频次点击率为:5/10=50%。
- 点击决策报表:点击决策时间指广告从展现到受众点击广告之间的时间差。
- 搜索引擎流量分析:在流量来源分类统计数据的基础上,进一步地对从搜索引擎而来的流量进行分析,给出指定时间范围内流量趋势、各大搜索引擎的流量数据对比,并可选择查看时间范围内的每日明细或对单个搜索引擎的流量按来源关键字查看数据。
- 广告效果分析报表:统计由各媒体广告投放带到目标网站的整体流量情况。可以通过不同媒体数据的比较从而区分出媒体的优劣度。
- 页面转化:统计由各媒体广告投放带到网站目标页面的流量情况及转化效果。通过页面转化能了解到网站目标页面的转化率以及广告显示点击的转化情况。
- 目标渠道分析:“渠道”是指访客在达到目标转换之前必须通过的一系列页面(只针对广告主网站内的转化)。我们跟踪导向目标的各网页的访客流失率,而此报表名称来源于到达每个页面的访客图表。第一页显示的访客数量最多,在后续页面上,由于访客在到达最终目标之前会不断离开,因此人数也逐渐减少。
- 覆盖度报表:覆盖度是在特定排期和时间段内所覆盖的绝对唯一访客。覆盖度报表统计的是根据Cookie识别,统计在一定时间段内观看广告的唯一绝对访客(另外也可统计广告主网站的唯一绝对访客)。
- 覆盖度报表:统计不同排期和媒体在选择时段内拥有的重复访客或者是相同排期不同频道在选择时间内拥有的重复访客。根据Cookie来判定重复访客。
- 影响度报表:广告影响度是指广告投放结束后一段时间内广告的显示、点击以及后续行为分析的数据追踪。根据Cookie追踪那些访客的后续行为,也可以判断这些Cookie的广告投放结束后是通过何种途径过来的。此报表只显示广告投放结束到所选时间点的数据,比如说广告投放是10月5日结束,所选时间点10月10日,那么我们只统计10月5日至10日之间的广告影响度。充分利用这些报表可以使我们的广告投放更有针对性,更有效果,因而广告投放的最终性价比可以达到最高。
如何应对网盟广告作弊
在网站联盟上大规模的点击作弊手段五花八门,但是基本上可以分成两类,一种是通过点击机器人,另一种是雇佣廉价劳动力的人为点击。道高一尺魔高一丈,应该说现今的作弊技术比以前的形式更加复杂,而侦查的难度也有所增加。我们随便在网上搜一下,就可以看到类似图12的信息。网站主只需要花很少的钱,就可以用作弊软件在他们放置谷歌、百度网盟、腾讯搜搜的页面上自动点击广告来增加收入。
图12-网盟作弊示意图
如图12所示,点击作弊的方式多种多样。而网站联盟识别点击作弊的方法也随着作弊手段的变化而不断发展,已经有几类行之有效的成熟方法。各家网站联盟都积累了大量的相关数据,但是因为数据涉及多个概念层次的维度,所以人工探测基本不可行。应该来说各家网站联盟公司的作弊识别方法并不相同,而且各网盟也不会把自己防作弊方法的具体细节公布出来。然而,主要的防作弊方法无外乎以下三类:基于异常组分析的方法;基于规则的识别方法;基于分类的方法。
基于异常值分析的方法
异常值(Anomaly)的定义是基于某种度量,异常值是指样本中的个别值,其数值明显偏离它(或它们)所属样本的其余观测值。网络作弊行为即使行为再隐蔽(Cloaking),和普通网民的人工行为还是有相当不同的。在网站联盟上用来识别网站的基于异常值分析的方法,根据不同理论的异常值检测方法,可以分成以下几种:
基于统计学的异常值检测
在统计学中,假设数据集服从正态分布,那些与均值之间的偏差达到或超过3倍标准差的数据对象就可称之为异常值。根据这个定律,可以衍生出一套点击欺诈检测方案。我们对点击率、转化率、对话时间差这些单个指标都进行分析,根据不同行业类型的网站和广告做了统计分析,如果某个网站一定时间段内的数据超出标准,即可怀疑点击欺诈。
基于距离和密度的异常值检测
基于统计分布的方法有一个缺陷,它只能检测单个变量,即每次检测只能局限于单个指标,此时若采用基于距离和基于密度的方法,就可结合多指标进行分析。我们目前主要是针对点击率、转化率、对话时间差这些单个指标做基于统计学的分析,但是也可以把这三个指标综合起来用基于距离的方法做分析。
基于偏差的异常值检测
该方法的基本思想是通过检查数据的主要特征来确定异常对象。如果一个对象的特征过分偏离给定的数据特征,则该对象被认为是异常对象。在广告作弊算法中我们主要关注的是OLAP 数据立方体方法。我们可以利用在大规模的多维数据中采用数据立方体(Data Cube)确定反常区域,如果一个立方体的单元值明显不同于根据统计模型得到的期望值,该单元值被认为是一个孤立点。结合点击欺诈识别分析,基于偏差的方法最主要的是点击流分析,通过点击流分析,我们可以发现那些不规则的点击过程,这些自然可以作为点击欺诈的怀疑对象。
基于规则的识别方法
一个对行业熟悉的联盟平台商对各种作弊手段必然了如指掌,通常能够根据经验设定一些作弊防范规则,比如:
- 同一IP的用户单日点击次数超过多少即可作为作弊;
- 如果某个广告位的点击率突然大幅增加也可能存在作弊。
制定防作弊规则的优点是方便,在一定程度上也能起到防范作弊的作用,然而这种方法显得比较片面也不能与时俱进,必须要随时间变化而不断更改。
这种基于规则的识别方法相对于其他识别方法来说执行起来要简单很多,而其实这种方法从某种程度上来说也是一种简化了的决策树算法。
基于分类的方法
这种方法主要是根据数据挖掘分类算法对历史数据进行模拟,通过构建分类器来对点击行为进行预测。这种方法的缺点在于需要事先对历史点击行为进行分类,即标注出作弊的数据。另外,该方法对数据的完整性和质量要求很高,在我国目前的情况下,大多数网盟平台还不具备满足条件。例如访客在广告主网站的转化数据是识别点击作弊的一个非常重要的因素,但是广告主一般不会将真实数据反馈给联盟平台,造成了这一数据的缺失,而且点击数据一般也都很稀疏,这些因素都会对分类器的实际效果造成影响。
这里列出的第一和第二种方法在很多条件上会存在一定的相通性,因为很多规则也是根据异常值分析得出的。
我们介绍了三种作弊识别方法,那么在现实中,应该采用哪种方法呢。初学者在接触数据挖掘时都会对高级挖掘算法盲目崇拜,觉得方法越复杂,它的实际效果就越好。但实际情况并非如此。现实中很多成功的数据挖掘项目之所以成功往往并不是因为它采用了多么复杂多么先进的理论,当然,这里并不是说高级算法不实用,而是希望告诫每一位数据挖掘工作者,所有的数据挖掘工作都应该紧紧围绕业务为目的来展开,什么方法能在保证最低成本的要求下最大程度的解决问题,那它就是好方法。
纵观各大广告联盟,无论是Google、百度这样的大型联盟平台还是一些中小联盟平台,在点击作弊识别上几乎主要采用的都是基于异常值分析和基于规则的识别方法。这些方法看起来非常简单,但实际效果却很好。美国纽约大学的Alexander Tuzhilin教授在对Google的防作弊措施进行研究后,曾经结合长尾分布对这个现象进行解释。Alexander Tuzhilin教授惊讶于Google的简单的基于规则的方法的巨大作用,所做出的解释是大量的点击作弊行为其实都是那些最常用的作弊方法,所以只要不断对点击作弊的表现形式进行分析就能够识别出大部分作弊的规则。这其实很好理解,比如说无论学生用什么作弊方式,一个有经验的老师总能察觉,即使这个老师并不了解学生的那些先进的作弊工具。因为老师要看的是学生作弊时的表现。
采用数据挖掘的分类算法,对于联盟平台在数据质量和数据完善上的要求是比较高的。通常来说,有Cookie的情况下作弊可能性会比较少,而无Cookie的比例高,作弊的可能性也会比较大;跳出率极高的情况下,作弊的概率会比较高,而跳出率越低,作弊的概率也越低;点击之后在网页上的停留时间极短,作弊的概率会比较高,而停留时间越长,那么是正常流量的概率会越大。
如果跳出率(Bounce Rate)较高,那么一个访客进入网站之后不再继续浏览,直接离开网站的比例就越高。通常来说,跳出率越高,网站的粘性就越低。而对于网站联盟来说,如果从联盟网站上点击广告到达的广告主页面跳出率比较高,那么说明引流的效果不好,特别是无论什么广告,点击之后的跳出率都比较高,那么我们就需要考虑该联盟网站是否有作弊嫌疑还是本身就是低质网站。例如说国内的有些阅读和视频网站,在你打开每个页面时,都会自动有窗口弹出,正式说法叫做“弹窗广告”。这些广告往往在弹出的瞬间您就会把它关闭,但是对于广告主来说,这已经产生了一次点击,是要收费的。这样的引流方式,虽然不一定算是作弊,但至少是低质的流量。
我们来看一个国内一家网站联盟公司用决策树判断作弊流量的案例。
这家网站联盟公司之前积累了大量关于作弊网站的数据。通过决策树生成算法对于这些数据进行学习,最后发现和网站作弊最相关的数据包含Cookie、网页停留时间、跳出率、二跳率等。我们来看一下生成的决策树。如图13所示。
图13 网盟作弊分析决策树示意图
从图13 中我们可以看到决策树模型示意图中第一层是Cookie的有无。如果有来自该网站较高比例的流量没有Cookie,那么我们判断为作弊流量的概率是比较高的。在【数据挖掘和互联网广告①广告作弊分析前瞻】中我们讲述的Facebook案例其实就是因为80%的流量没有Cookie就被认为是作弊的。在图13的第三层,对于流量的统计,如果跳出率比较高,那么在跳出率到达令人恐怖的90%时,我们就不需要证明该网站是否是作弊网站了。即使该网站并没有作弊,如此高的跳出率也使我们做出排除该网站的低质流量的决定。同样,如果二跳率比较高,但是平均停留时间在5s以下的,该网站的流量或者是低质或者是作弊流量,也是不可取的。
来源:节选谭磊所著的自《大数据挖掘》一书。