今天写个比较详细的说明,也参考了大量这方面的资料进行的总结,算是给大家一个长见识,写的不好的地方,希望大家多多指教!感谢吾爱朋友的支持!
移动广告平台都有各自的检测点击欺诈的机制,通过各种维度(包括IP分析、用户行为习惯分析、系统识别、设备识别、点击激活时间间隔)对欺诈行为进行拦截,帮助广告主过滤可疑流量,为广告投放效果保驾护航。点击欺诈的的方式多种多样。而移动广告平台识别点击欺诈的方法也随着作弊手段的变化而不断发展,已经有几类行之有效的成熟方法。各家网站联盟都积累了大量的相关数据,但是因为数据涉及多个概念层次的维度,所以人工检测基本不可行。应该来说各家移动广告平台公司的作弊识别方法并不相同,而且各公司也不会把自己检测点击欺诈方法的具体细节公布出来。然而,主要的检测点击欺诈的方法无外乎有以下三类:基于规则的识别方法、基于异常值分析的方法和基于分类的方法,下面详细介绍:
1.基于规则的识别方法
一个对行业熟悉的移动广告平台对各种作弊手段必然了如指掌,通常能够根据经验设定一些作弊防范规则,比如:同一IP的用户单日点击次数超过多少即可视为作弊;如果某个广告位的点击率突然大幅增加也可能存在作弊;制定防作弊规则的优点是方便,在一定程度上也能起到防范作弊的作用,然而这种方法显得比较片面也不能与时俱进,必须要随时间变化而不断更改。这种基于规则的识别方法相对于其他识别方法来说执行起来要简单很多,而其实这种方法从某种程度上来说也是一种简化了的决策树算法。
2.基于异常值分析的方法
异常值的定义是基于某种度量,其数值明显偏离它(或它们)所属样本的其余观测值,是样本中的个别值。点击欺诈行为即使行为再隐蔽,和普通网民的人工行为还是有相当不同的。在移动广告平台上用来识别点击欺诈的基于异常值分析的方法,根据不同理论的异常值检测方法,可以分成以下几种:
1基于统计学的异常值检测
在统计学中,假设数据集服从正态分布,那些与均值之间的偏差达到或超过3倍标准差的数据对象就可称之为异常值。根据这个定律,可以衍生出一套点击欺诈检测方案。我们对点击率、IP分布、单位时间内的点击次数等这些单个指标都进行分析,根据不同行业类型的广告做了统计分析,如果某个广告在一定时间段内的数据超出标准,即可怀疑点击欺诈。
2基于距离和密度的异常值检测
基于统计分布的方法有一个缺陷,它只能检测单个变量,即每次检测只能局限于单个指标,此时若采用基于距离和基于密度的方法,就可结合多指标进行分析。我们目前主要是针对点击率、IP分布的方差、单位时间内的点击次数等这些指标做基于距离和密度的异常值检测。
3 基于分类的方法
基于分类的方法主要是根据数据挖掘分类算法对历史数据进行模拟,通过构建分类器来对点击行为进行预测。这种方法的需要事先对历史点击行为进行分类,即标注出欺诈的数据。与基于异常值分析的方法相比,分类方法是一种有监督的数据挖掘方法,其检测精度更高。
常用欺诈检测技术简介
1分类算法
分类是一种监督学习,这类学习类似于人类的学习方式,其从过去的经验中获取知识以用于提高解决问题的能力。通过有标注数据建立分类模型,来对未知类数据进行预测分类。分类应用到众多领域:包括文本分类,入侵检测,欺诈检测等。在点击欺诈检测中本文应用到以下分类算法,下面做简单介绍。
1逻辑回归算法
逻辑回归又称逻辑回归分析,常用于数据挖掘,经济预测,疾病自动诊断等领域,它是一种广义的线性回归分析模型。回归很容易被理解,就相当于y=fB),表明自变量X和因变量Y的关系。最常见的的问题如医生为了判断病人得了什么病,会进行望、闻、问、切,这个过程可以看成回归,其中望闻问切相当于自变量X,是特征,判断病人是否生病就相当于获取因变量Y,即进行分类【241。一般逻辑回归分为三个步骤:1、构造合适预测函数;2、构造损失函数 ;3、想办法得到使损失函数最小并求得回归参数。
2朴素贝叶斯分类
朴素贝叶斯分类是一种十分经典的分类算法,是一种基于统计学的分类方法。它假定数据集中每个属性值在给定类的影响独立于其他属性的值。
3决策树算法
决策树算法是从有类标号的训练元组中学习决策树,决策树是一种类似于流程图的树结构,其中每个内部结点(非树叶结点)表示在一个属性上的测试,每个分枝代表该测试的一个输出,而每个树叶结点(终端结点)存放一个类标号。决策树算法在分类、预测等领域。
4.C4.5算法
C4.5是一种很经典的决策树分类算法。C4.5由J.Ross 23254112在ID3算法的基础上提出的。建立决策树一般有两个步骤:生成决策树和对决策树剪枝。ID3算法用信息增益来选择属性,但这样会使选择结果偏向于多值属性。
5.离群点挖掘算法
离群点挖掘是找出其行为很不同预期对象的过程。这种对象称为离群点或异常点。离群点挖掘被应用到很多领域,例如如故障诊断,入侵检测,信用卡欺诈,垃圾图像检测,电子商务等领域
介绍完上面的算法,下面重点来了!!
恶意点击广告特征分析
为了增加点击量,广告发布商会雇佣大量人力物力或者编写点击程序去点击其网站或APP发布的广告,以获取移动广告平台高额广告费分成,一般有两种点击欺诈手段。第一种,最简单的,通过单一手机,模拟器或者程序产生大量点击,这类由于ip地址固定,Agent,广告来源url单一,比较容易检测;第二种,为了躲开简单的检测,广告发布商会使用一些手段伪装他们的点击行为,例如:改变IP地址、用不同的手机去点击广告、利用位置模拟器改变点击广告所产生位置信息等手段,针对这种点击欺诈手段,以广告发布商为研究对象,从多个维度分析,提取多个特征,量化其点击行为,最后进行检测。
在点击欺诈检测中,特征的选取是一个至关重要的过程,直接影响到检测结果的准确率。移动广告平台的服务器里存在着广告的点击日志和广告发布商的信息数据,这些数据被用做原始数据集进行特征提取,一般会包括:点击时间,IP地址,点击广告的id,点击广告的类型,点击的广告发布商的id,点击广告的urI,点击设备型号,点击位置信息等属性。提取特征的过程实际上是在原始数据集的基础上把每个发布商的广告点击的点击行为和模式进行了数值化的量化,合适的特征应该是能够代表和区分广告点击的趋势,为了在原始数据集的属性中提取合适的特征 。
例如:点击率,针对http 的特征,针对agent诈欺击点在存测检能上度程定一在征特些这,等征特的 也存在着两点不足:1、这些特征的提取过程是从基本统计(最大值和平均值)和基于方差的角度提取的特征。随着作弊手段的提升,只是从基本统计和方差的角度提取特征不能够全面的体现作弊者的点击欺诈行为;2、在与时间相关的特征中,单位时间的选取太单一,并不能全面的涵盖点击。针对这两点不足,本文提取特征的过程加入了基于信息熵,基于偏度的特征和一些基于统计的特征,在提取时间相关特征时,选取四个单位时间,分别是每一分钟,每五分钟,每l小时,每六小时。
综上所述,本文从移动广告平台的角度考虑,检测存在点击欺诈行为的广告发布商(APP开发者或网站主),以广告发布商为研究对象,本文从四个角度提取特征:基本统计特征,基于方差的特征,基于信息熵的特征,基于偏度的特征。下面对各个类别的特征进行介绍:
1基本统计的特征
点击率:点击率是广告的点击次数和展示次数的一个比值。一个APP或网站上广告的点击次数和展示次数都是能记录到的,通常来说,如果不存在点击欺诈,正 常的广告点击率不会太高,通过分析不同时间段的点击率来提取多个特征。
分析不同时间段点击次数的最大值和平均值:每个广告发布商发布广告被点击的总次数是一定的,如果太高,就有存在点击欺诈的嫌疑。通过分析每分钟,每五分钟,每小时,每六小时的点击次数来提取多个特征。
单个IP的点击最大值:统计所有IP地址点击广告发布商广告的次数,找出最大值。如果这个最大值比较大,就有存在点击欺诈的嫌疑。通过分析每分钟,每五分钟,每小时,每六小时的IP点击最大值可以提取到4个特征。
点击次数与独立IP地址的个数的比值:这个比值越偏大,说明有些IP地址点击的次数越多,就有点击欺诈的嫌疑。
同类Agent的点击最大值:统计所有Agent点击广告的次数,找出最大值。如果这个最大值比较大,就有存在点击欺诈的嫌疑。通过分析每分钟,每五分钟,每小时,每六小时的Agent点击最大值可以提取到4个特征。
点击次数与独立Agent的个数的比值:这个比值越偏大,说明该发布商存在点击欺诈的嫌疑。
分析相同Agent和IP地址的点击次数的平均值和最大值:通过相同Agent和IP地址可以识别一个点击者,如果它的点击次数过高,就可能存在点击欺诈。
除以上特征还可以提取这些特征:每个广告发布商广告被点击的独立IP个数、独立Agent(移动设备型号)个数、Cid(广告id)个数等,一共分析基于统计的特征30个。
恶意点击检测研究
点击欺诈检测模型主要包括用户身份识别模型、并行欺诈检测模型两个部分组成
<23254112>
(1)用户身份识别模型:指框架中衔接客户端与服务端的平台,该模型通过客户端采集的浏览器指纹和23254112信息对用户的身份进行追踪,得到用户的唯一性ID,同时采集客户端其他用于点击欺诈分析所需的数据:。
关于什么是浏览器指纹技术,我之前有介绍,也可以访问:
关于什么是23254112:23254112是一种23254112API,可在浏览器中生成非常持久的23254112。它的目标是即使删除了标准23254112,Flash 23254112(本地共享对象或LSO)和其他23254112,也可以识别客户端。开源地址:https://23254112.com/samyk/23254112
在用户点击广告的过程中,部分恶意用户会在点击广告过程中刻意隐藏或修改自己的身份信息,已达到伪装自己的目的,主要对这些恶意用户的点击欺诈行为进行分析和检测。一个基于浏览器指纹的用户身份识别模型作为检测的基础,结合23254112投放技术,对用户身份进行唯一性确定。识别模型主要包含数据采集、浏览器指纹识别、23254112投放以及最终身份确定四个部分
<23254112>
(1)浏览器特征:用户在访问网络广告时使用的浏览器配置信息,如插件信息、字体以及屏幕分辨率等一系列特征,不同的用户由于自身的性格、习惯或喜好不同,其使用浏览器呈现不同的特征;
(2)浏览器指纹识别:指根据用户的浏览器特征提取的特征向量,在服务端依据浏览器指纹识别算法对其进行识别,如果匹配到该用户信息,则获取其身份,否则更新其浏览器指纹信息到服务器用户身份库中;
(3)23254112投放:有别于传统的23254112技术,23254112会将服务端指派给用户的身份信息依据不同的机制投放到客户端的多个位置中去,并且能够恢复和重用,保证恶意用户不能轻易地伪造或者删除对其进行的身份定义;
(4)身份确定:指本文对用户的身份进行的确认,由于用户的身份由浏览器指纹和23254112同时决定,因此只有这两个值同时发生变化时,用户的身份才发生变化。
整个模型的运行流程如下所述:当用户点击发生时,模型客户端的23254112代码会读取该用户的浏览器特征参数以及不同存放机制中23254112值,作为用户身份识别算法的输入参数;随后进行的身份识别过程主要是根据浏览器特征参数计算得到的浏览器指纹值与23254112值相结合,在服务器端的用户身份库中进行匹配的过程;最终由匹配结果决定该用户是否为新用户。
用户身份识别算法分析
浏览器指纹和23254112是两种用户身份识别技术,本算法设计的用户身份识别过程依赖这两种算法的结合使用:当浏览器指纹更新后,依据23254112存放信息对服务端的浏览器指纹库进行恢复:同时,当23254112丢失后,依据浏览器指纹信息对23254112进行恢复。因此,可以说本算法中的浏览器指纹与23254112值是相互对应的,它们共同标示着用户的身份信息,保证算法能够准确地识别用户的点击情况。当一个用户点击广告后,服务器会保留其身份信息,为其指派浏览器指纹值和23254112值,这两个值相互对应,并且与用户本地的特征相对应。当用户的本地特征发生改变时,其浏览器指纹值或23254112值会随之改变,算法通过其中未发生改变的值恢复另外一个值,以保证用户身份的有效性。
当浏览器特征更新后,浏览器指纹会随之更新,因此无法再匹配到服务端用户信息,但依靠与其绑定的23254112值能够将其原指纹恢复。同理,当23254112数据丢失后,可通过重新计算浏览器指纹,得到用户身份信息。
浏览器环境参考我自己做的:http://www.23254112.com/ua.php