其他分享
首页 > 其他分享> > 技术揭秘 | 互联网广告黑产盛行,如何反作弊?

技术揭秘 | 互联网广告黑产盛行,如何反作弊?

作者:互联网

简介:有人的地方就有江湖。广告作为互联网公司商业变现最为直接快捷的途径,广告作弊已经形成了一个有完整链条的黑产行业。如何通过技术手段识别并防范广告作弊?本文通过介绍常见的广告计费模式和虚假流量的获益形式和发生机制,分析广告点击反作弊的核心问题,分享相关的反作弊实践经验,详解反作弊技术体系及核心算法。

image.png

背景

世界广告主联盟WFA表示[1]“若不采取措施,2025 年虚假广告花费将高达 500 亿美元,仅次于毒品交易金额,成为世界第二大非法营收”。

互联网行业发展的几十年来,已经渗透到生活的方方面面,各种互联网公司层出不穷。互联网公司的商业变现途径已经发展出引流、电商、游戏等多种流派,但是广告变现作为一种最快捷和直接的变现途径,依然占据着整个行业的大半壁江山。国际国内的各大互联网公司如:Google、Facebook、百度、阿里、腾讯、字节跳动、各大门户或视频网站,广告收入占其总收入的比例都非常高。有人的地方就有江湖,有江湖的地方就有纷争。互联网广告也引申出了作弊与反作弊的纷争。互联网广告作弊已经成为了一个有完整链条的行业,而反作弊部门也成为了各大依靠广告变现公司的标配。

一 常见广告计费模式

一个网络媒体(网站)会包含数十个甚至成千上万个页面,网络广告所投放的位置和价格就牵涉到特定的页面以及浏览人数的多寡。这好比平面媒体(如报纸)的“版位”、“发行量”,或者电波媒体(如电视)的“时段”、“收视率”的概念。网络媒体常见的广告收费模式[2]有CPM、CPC、CPA、CPT、CPS、CPI, 下图是各种广告计费模式的逻辑和作用:

image.png

1 CPM

英文全称Cost Per Thousand Impression,也称每千次展示的成本。CPM是一种展示付费广告,只要展示了广告主的广告内容,广告主就为此付费。由于展示了广告就可以收费,不关心用户是否有后续互动转化,因此这种广告的费用也是比较便宜的。按此计费的广告一般是以展示为目的,如开屏广告。

2 CPC

英文全称Cost Per Click。CPC是一种点击付费广告,根据广告被点击的次数收费。每一次点击计一次费, 因此即使向1000个访问者展示了你的lander页面,但是只有1个人点击了你的lander,也只按照1次点击进行计费,因此可以说CPC这种模式在广告测试的初级阶段使用较为合适,为确定对你的产品感兴趣的目标人群的流量而付费,可以在测试的早期快速收集广告数据,尽快定位出目标人群画像,为下一步扩量的投放做准备。最常见的如搜索引擎关键词广告采用这种定价模式,比较典型的有Google的AdSense、百度凤巢竞价广告以及淘宝的直通车广告。

就是每一次点击计一次费,但有些联盟是有明确规定的,每个ip在一段规定的时间内只扣费一次,这样的方法可以增加作弊的难度。但是此类方法就有不少人觉得不公平,比如虽然浏览者没有点击,但是他已经看到了广告,对于这些看到广告却没有点击的流量来说,广告成了白忙活。

3 CPA

英文全称Cost Per Action。CPA是一种按广告投放实际效果计价方式的广告,而不限广告投放量。CPA的计价方式对于网站而言有一定的风险,但若广告投放成功,其收益也比CPM的计价方式要大得多。因为CPC有可能存在欺骗性(比如典型的机器人刷点击),所以就产生了CPA。比较常见的CPA计费方式的广告有注册账号、电商场景的加购物车或者收藏、微信的关注公众号等。

4 CPT

英文全称Cost Per Time。CPT是一种以时间来计费的广告,国内很多的网站都是按照“一个月多少钱”这种固定收费模式来收费的,这种广告形式很粗糙,无法保障客户的利益。但是对网站来说CPT的确是一种很省心的广告,能给网站带来稳定的收入。

CPT是品牌广告的报价方式,这种收费模式简单易用,广告主自主选择的空间大。但是CPT沿用几年,广告主渐渐发现这种收费形式缺乏说服力。对客户和网站都不公平,无法保障广告客户的利益。由于各大媒体尚未能实时地公布其每天的不同页面的日访问量和日不重复访客数,因此,广告主在衡量广告投放效果时只能根据媒体公布的数据进行估算,这种评估方法难以体现互联网广告所应有的精确性和实时性,而只是根据经验估算出广告所能传达到的用户数量及相应所需付出的费用。同时一个越来越明显的趋势是随着媒体页面访问量的不断变化提高,媒体缺乏有力的第三方数据向广告主证明这种页面访问量增长的准确可靠性,只能被动地每半年或每一年调整一次价格,以提高自己的收人。

电商网站主页中间位置的钻展和门户网站的包月广告都属于这种CPT广告。适合垂直行业平台展示广告位,类似地铁广告、电梯广告等户外广告也是这种类型,通常按周、月进行销售。

5 CPS

英文全称Cost Per Sales。CPS是一种以实际销售产品数量来计算广告费用的广告,这种广告更多的适合购物类、导购类、网址导航类的网站,需要精准的流量才能带来转化。

这种模式的好处是相对容易得到广告主的认同,只需要在完成一单订单后才会支付相应的广告费用,不好的地方是在现有条件下,会导致广告资源的浪费,例如一个网站投放了CPS广告,10000个访客中可能会有100个人对产品感兴趣,而100个人中间只有10个人最后完成了购买的转化,但另外9900个流浪其实就浪费了。所以大型媒体一般不会采用这种结算方式,采用此类方式的媒体一般处于长尾端利基产品进行广告投放。因为推广效果能够比较准确的计量与评估,对于广告主而言,CPC、CPA、CPS方式比CPM、CPT模式更加有利。

6 CPI

英文全称Cost per install。按每次装机付费,是移动端APP推广常用的计费模式。

二 虚假流量的获益形式和发生机制

1 广告投放流程

下图是广告投放流程[1]:

image.png

2 获益方式

广告作为互联网最主要的盈利模式,利益诱惑下部分流量提供方会有作弊动机。下图[1]是几种常用广告计费模式对应的获益方式。

image.png

3 发生机制

机器作弊[1]成本低,特征集中,容易识别;人工作弊成本高,作弊者要想获利也会表现会一定的集中性,需要深入分析数据挖掘异常特征,从而识别作弊。

image.png

三 广告点击反作弊核心问题

世界广告主联盟WFA表示[1]“若不采取措施,2025 年虚假广告花费将高达 500 亿美元,仅次于毒品交易金额,成为世界第二大非法营收”。

互联网行业发展的几十年来,已经渗透到生活的方方面面,各种互联网公司层出不穷。互联网公司的商业变现途径已经发展出引流、电商、游戏等多种流派,但是广告变现作为一种最快捷和直接的变现途径,依然占据着整个行业的大半壁江山。国际国内的各大互联网公司如:Google、Facebook、百度、阿里、字节跳动、各大门户或视频网站,广告收入占其总收入的比例都非常高。有人的地方就有江湖,有江湖的地方就有纷争。互联网广告也引申出了作弊与反作弊的纷争。互联网广告作弊已经成为了一个有完整链条的行业,而反作弊部门也成为了各大依靠广告变现公司的标配。

虚假流量的存在,让数字广告行业遭受前所未有的信任危机。具体危害主要表现在:

下述探讨按CPC计费的广告点击反作弊。

1 无效点击定义

点击反作弊的工作目标是把流量中存在的“无效点击”过滤掉。对于“无效点击”的定义,维基百科上的定义如下:

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.

简单来说无效点击是指在CPC计费的广告系统中,以人工或者机器手段蓄意造成的非以转化为目的的广告点击行为。

2 广告点击业务的运转逻辑

下图[3]是广告投放过程涉及的4个角色,他们的基本功能和诉求如下:

image.png

下表介绍了上面5个角色的在广告产业链中“提供的服务、利益诉求、作弊动机”。这些作弊者是黑产中的一部分,另外一些专业黑产为上述作弊者提供专业的作弊服务(比如养的批量账号,比如提供可以修改点击者环境信息的作弊器),以收取服务费。

image.png

3 反作弊的意义

广告点击反作弊表面上是过滤了点击,减少了营收。实际上是过滤广告主认为不该扣费的点击,保障广告主的正常投放广告,提升广告主对平台的信任度,为广告业务的发展保驾护航。

正如CRO的使命中所说“反作弊的使命是让消费者安心,让业务方/商家与合作伙伴省心,让监管单位放心,让作恶者灰心”。

4 反作弊的难点

业务视角的难点

很赞同大家提的反作弊要尽量做到“上医治未病”、“遏制劣币驱逐良币”以及反作弊要做到“水不惊鱼不跳”、“没有人知道我的存在就是我做得好的一个表现”。这是对平台发展、买家和卖家体验的义无反顾的责任,做得不好的时候别人很快就知道我的存在了,但是做到“风平浪静”的时候怎么证明是反作弊的贡献呢?准确过滤的作弊量一定程度上反映问题。客户的体验和信任度也反应反作弊的价值。

技术视角的难点

5 作弊动机

在整个行业中每个角色在整个链条中利益诉求不尽相同,其作弊动机也不一样,接下来我们单独分析每个角色的作弊动机及利益所在:

6 作弊类型

image.png

7 评价反作弊效果的方法

以下对比我们与阿里妈妈、百度凤巢的主要评价指标,主要评价指标均是准确和召回两个视角。召回视角比较相似:都是客户感知,客户赔付次数和赔付金额。以下对比准确视角的指标。

我们评价过滤准确的方法

准确视角:新策略上线前,计算其近似准确率的逻辑为“大盘点击的转化率/新策略单独识别点击的转化率”大于 X,值越大越准确,具体阈值根据业务统计数据和人工评测确定

阿里妈妈评价过滤准确的方法

准确视角:借助淘系闭环转化效果,估算准确率置信区间。

百度凤巢评价过滤准确的方法

准确视角:人工抽样,可视化的评测各个维度的统计分布特征,然后计算准确率。

我们与阿里妈妈均是电商业务,有转化数据,比较适合用转化率指标。百度凤巢代表的其他无转化指标的广告系统,适合人工评测。

另外关于转化率可以根据业务定义,比如腾讯APP推广反作弊系统会让各个APP设定转化指标,如留存、激以及电商场景的收藏、加购物车等。

四 反作弊技术体系

反作弊非常重要的一点是数据分析,本文暂不展开。下述技术已经应用到多个业务的广告点击反作弊中,下述技术不仅适用于按CPC计费的广告点击反作弊,多数技术也适用于其他计费模式(CPM/CPA/CPS/CPI)的反作弊。

1 技术体系大图

image.png

数据层

线上系统使用了用户历史多天的站内全链路行为数据,和最近的曝光、点击数据。行为反映用户的意图,在行为序列模型TextCNN、BiLSTM、Bert和GraphSage里都用到了用户的历史行为序列。

算法层&应用层

如前面所述,作弊和反作弊都在不断迭代升级。目前的算法主要集中在人工经验规则、统计策略、机器学习和深度学习模型、图模型。

下述简单介绍算法迭代的过程,详细介绍请参考后面核心算法部分。

架构层

广告点击涉及到钱,时效性要求高,所以必须有实时反作弊;但是实时策略只能看到当前点击之前的数据,不能看到点击之后的数据,可能存在少量判断不准的情况。故我们增加了小时级别的离线模型,使用更多数据提升准确率和召回率。

image.png

运营平台

2 规则与模型对比

新型作弊大规模出现时,非常影响客户体验,进而影响业务发展,规则适合解决这种紧急出现的大规模作弊;且规则容易实时部署;且规则可解释性强,早期的反作弊中使用较多,正因为这个原因,微软的广告反作弊系统2016年主要还是规则;再者反作弊场景天然缺少作弊样本,也是规则受欢迎的一个原因。但由于规则过于依赖人的经验,且维度单一,容易被作弊者绕过,在作弊退去时可能因为准确率变低而误过;另外一个规则解决一类作弊的话,后期会出现规则过多,维护成本高。另外统计规则为了保证准确率段首较大。

当规则和人工经验多了会积累作弊样本,这时候将规则作为模型的特征训练模型,让模型自己学作弊的特点以召回作弊。由于模型使用特征较多,准确率更高,且一定程度上解决规则的段首问题。

image.png

3 样本工程

image.png


image.png

4 特征工程

一般来说,真实流量一般自然 (真实的流量在各个维度中表现一定是自然的)与多样(网民的喜好各不相同,行为一定也是多样的)。而对于虚假流量,常表现出一定的目的性(虚假流量的产生一定和某个特定的目的有关)和规律性(特定的目的导致虚假流量一定有特殊的规律)。

由于虚假流量与真实流量在具体访问行为有较大差异,围绕用户行为可从以下几方面识别出虚假流量。

模型的特征值或者规则是由下述的“维度特征类型”组合而成的,其中类型是通用的,支持配置。

维度

常用维度:时间&地域维度、终端类型、操作系统、联网方式、浏览器、设备介质、IP、广告主账号、refer、query集中等。

下面以时间维度&地域维度举例:正常的流量访问分布在一天中的各个时段、地理分布较为均匀(区域性投放或者活动除外)、访问趋势较为平缓。而虚假流量出现时间段特殊、来源区域集中、趋势突增的情况。因此,通过流量产生的时间、地理位置、访问趋势变化都可以成为判断虚假流量的参考方式。

同理用户的终端类型、操作系统、联网方式、浏览器、设备介质、IP、广告主账号、refer、query集中等属性,同样可以成为判断虚假流量的参考标准。

特征

1)产品参与度

具体包括平均访问深度、平均访问时长、用户行为路径、鼠标点击位置等。

2)转化情况

很多作弊流量可以模仿人类行为,成功绕过平均访问深度和停留时长这些宏观指标,但是要模仿一个业务转化就比较难了,如果宏观指标表现很好,业务转化很少的话,就需要提高警觉。当广告主被恶意攻击时,其点击击率会突然变高或者推广时长突然变低。

类型

以下的策略类型均可配置“特征”和“维度”。

image.png

5 主动发现作弊

主动发现作弊是为了在客户申诉前发现并召回作弊,以提升客户体验,但其实也已经出现作弊了。

6 核心算法

识别机器作弊(点)

早期的作弊是机器点击、业务上的无效点击上线规则,规则只关注较少维度的信息。比如识别爬虫、内网点击。我们称之为单点反作弊。

识别个人简单作弊(线)

在作弊者升级到人工作弊后,我们会升级到计数、比例、分布等统计策略和行为序列模型。我们称之为线上反作弊。

下图是我们发现的网站某行业出现的一类攻击,作弊者只访问A、B、C、G共4类页面,因为他的目的就是点广告。正常用户访问页面很丰富。还会访问D、E、F、H等页面,想咨询买东西。

我们将用户近7天在网站的访问页面序列作为特征,识别本次点击是否是作弊点击。先通过Word2Vec对每个页面进行文本向量化编码。然后模型预测向量序列是否是作弊点击。

image.png

1)TextCNN

TextCNN[9]是利用卷积神经网络对文本进行分类的算法,输入是词向量,最后一层full connected网络输出预测结果。

卷积神经网络的核心思想是捕捉局部特征,对于文本来说,局部特征就是由若干单词组成的滑动窗口。卷积神经网络的优势在于能够自动地对特征进行组合和筛选,获得不同抽象层次的语义信息。如图所示:

image.png

下图的输入是一个用预训练好的词向量(Word2Vec)方法得到的一个Embedding layer。词向量的维度是固定的,相对于原来的One-Hot编码要小,同时在新的词向量空间语义上相近或者语法相近的单词会更加接近。两个维度,横轴是单词、纵轴是词向量的维度(固定的)。我们的场景的模型结构图如下:

image.png

2)BiLSTM+Attention

我们也尝试了BiLSTM+Attention[10],即双向LSTM挖掘行为序列上下文关联信息。LSTM依据之前时刻的时序信息来预测下一时刻的输出,但在有些问题中,当前时刻的输出不仅和之前的状态有关,还可能和未来的状态有关系。Bi-LSTM可以看成是两层神经网络,第一层从左边作为系列的起始输入,在文本处理上可以理解成从句子的开头开始输入,而第二层则是从右边作为系列的起始输入,在文本处理上可以理解成从句子的最后一个词语作为输入,反向做与第一层一样的处理处理。最后对得到的两个结果进行处理。在我们的场景中即理解为正常点击的用户行为序列和作弊点击的用户行为序列从左往右和从右往左都有较大的区分性。LSTM虽然能获取历史信息,但是不能突然重要信息,为了更好的筛选历史信息中的重要信息,增加了Attention。


image.png

3)Bert

BERT (Bidirectional Encoder Representations from Transformers)模型是谷歌提出的基于双向Transformer[11]构建的语言模型。通过海量语料预训练,得到序列当前最全面的局部和全局特征表示。

image.png

BERT[12]网络结构如上图所示,Bert的内部结构是多个transformer 的encoder,从上图可以看出Bert是双向结构的,transformer 的encoder如下图所示。encoder包含一个Multi-Head Attention层和一个前馈神经网络,self-attention能帮助当前节点既关注当前的词又能获取到上下文的语义,Multi-Head Attention扩展了模型集中于不同位置的能力。

我们选择BERT-Base,Uncased模型。在做文本分类项目时,只需要修改run_classifier.py文件的数据预处理类。

image.png

4)三者效果对比

识别个人高级作弊(面)

在我们识别上述作弊后,接着作弊者又升级高级的人工作弊,模拟人的点击,尽可能的各种特征上不集中,但是毕竟作弊者要达到收益的话,需要有一定的作弊量,而他们不知道正常点击的真实分布,自然的会在一些维度上出现异常,故我们反作弊算法升级到无监督相对熵模型,再后面有样本了升级到有监督的GBDT和Wide&Deep,均是从多个维度和特征上识别作弊。我们称之为面上反作弊。

1)相对熵

下图是正常点击和疑似作弊点击的访问时长的分布。在我们没有其中的作弊点击标签时,我们使用相对熵识别作弊点击。

image.png

我们先计算N个特征的异常分,再计算M个维度的异常分,最后求和。

image.png

实际使用中,我们发现相对熵的一个缺点是新出现的作弊会带偏基准,从而导致误识别。由于相对熵模型是把线上策略识别为正常点击的做基准,当新型作弊出现时,我们不能及时识别,会将其当做基准,从而基准不准确。另外就是相对熵在识别时的候选样本不能包含大规模机器攻击,它们也会带偏分布。即使用时待识别样本中需要剔除规则识别的特征非常集中的点击。

2)Wide&Deep

Wide&Deep[13]通过分别提取wide特征和deep特征,再将其融合在一起训练,我们场景下模型结构如下图所示。

wide是指高维特征和特征组合的LR。LR高效、容易规模化(scalable)、可解释性强。出现的特征组合如果被不断加强,对模型的判断起到记忆作用。但是相反的泛化性弱。deep则是利用神经网络自由组合映射特征,泛化性强。deep部分本质上挖掘一些样本特征的更通用的特点然后用于判断,但是有过度泛化的风险。算法通过两种特征的组合去平衡记忆(memorization)和泛化( generalization)。为了进一步提升高级人工作弊的召回率,减少统计规则的段首漏过,使用前面的一些规则和有监督模型挖掘的转化率较低的比较准确的作弊样本作为训练样本,线上统计规则作为模型的特征,训练Wide&Deep模型识别作弊。

我们的场景中的特征有:ip、memberid、refer等维度的计数、比例、分布、distinct等类型特征。

image.png

识别团伙作弊(体)

我们也发现一些团伙攻击广告主,特征表现为先是一个cookie换不同ip,再是ip下换多个cookie和utdid。每个设备介质点击次数较少,绕开了前面的统计策略,也有些点的多的段首漏识别了。而由于我们的CPC较高,客户感知无效点击较明显。我们先是升级联通图解决同行攻击和点自己的作弊,再升级图神经网络GraphSage等模型识别作弊团伙。我们称之为体反作弊。

图神经网络14[16]GraphSage[17]的异构网络适合我们的场景。下图是GraphSage两层从邻居聚合特征信息的示意图:

image.png

在我们的场景中,ip、utdid、cookie等介质组成的异构图神经网络,下图中红色框的seller是为了示意被一个团伙换介质攻击,实际构图中没有seller。即将强/弱介质连接的团伙的特征进行聚合。

image.png

顶点和边特征:介质近30天的作弊信息和站内行为数据。

原文链接:https://developer.aliyun.com/article/780072?

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

标签:广告主,维度,点击,广告,黑产,反作弊,作弊,揭秘
来源: https://blog.csdn.net/alitech2017/article/details/111310580