一、数据和样本
广告点击率(click through rate,CTR)预估的问题通常被转化为一个分类问题:在给定网民 u(user)、广告 i(item)、环境 e (environment) 的情况下,广告被点击的概率 p_ctr. 即
当一个广告在某次展现中被点击,则构成一条正样本,否则为负样本。
一般而言,搜索引擎厂商都记录了海量的搜索日志,这些日志数据具有丰富的价值,可以用来分析挖掘并用于预测网民的广告点击行为。
利用历史一段时间的展现和点击记录的日志,我们可以训练一个分类器模型,该分类器模型的特征包含如下几个因素:
1.网民的信息:包括当次搜索的搜索词,网民的个体属性,如历史上网的浏览点击行为等;
2.广告的信息:包括广告的内容,广告的历史展现和点击信息;
3.环境:包括当次搜索的时间,当次搜索的地方,广告展现的位置等。
二、logistic回归算法
logistic回归算法在特征设计的过程中,有两种常见的变量衍生技巧:离散化和特征组合。
1.离散化
原始数据变量根据类型的不同,一般可以划分为两种:类目型和数值型。类目型变量的取值可枚举,例如性别或学历;数值型变量是取值在某个区间范围内的任何一个数值,例如资产变量可能是0到正无穷中的任何一个数。
类目型变量一般采用OneHot编码方式对变量做预处理吼构成多个特征进入logistic回归算法。
数值型变量有两种处理方式:一种方式是不做处理,直接将该变量作为logstic回归算法的一个特征;另外一种方式是首先对数值型变量做离散化处理,变成一个类目型变量,然后再使用onehot编码方式形成多个特征。如果将连续变量直接作为一个特征放入回归算法中,目标值关于该变量的关系是一个简单的线性关系。如果将该连续变量离散成N个不同的取值后,再通过onehot方式加入N个特征,则每个特征都能对应一个单独的参数,每个参数都有独立的权重,能够刻画更加复杂的非线性关系,从而提升模型的表达能力。
数值型变量离散成类目型变量时,一般是将该数值型连续变量的可能取值范围划分成几个区间,不同的取值范围为一个不同的类目型变量值,区间的个数即为离散后类目型变量的取值个数。如果两个不同的数值型变量落在同一个区间,在离散之后,这两个变量的取值就会相同。
常见的区间划分方法有以下两种思路:
1. 等距离离散化:特别的,对于长尾分布的数据,还可以先通过logstic变换将长尾部分的数据的距离变得更近后,再等距离离散化。
2. 等样本离散化: 切分后保证落入每个切分区域的样本个数一样多。该方法受数据分布的影响较少,但是由于计算量太大,应用比较少。
在广告点击率预估问题中,大部分变量是类目型变量,如搜索词、广告ID等,一般采用onehot的方式来处理这类特征。由于搜索词和广告ID这类类目型变量取值空间非常大,因此广告点击率预估的特征的维度非常大。除了类目型变量外,还有少量的数值型特征,如广告标题长度等,也是通过离散化和onehot处理后再加入模型。
2. 特征组合



