首页 > 试题广场 >

点击通过率CTR(Click-Through-Rate),一

[问答题]
点击通过率CTR(Click-Through-Rate),一般指网络广告的点击到达率,即该广告的实际点击次数除以广告的展现量。请描述如何用逻辑回归(LR)进行CTR预估,并简述LR中正则化和特征离散化的作用。
1.在训练LR模型之前,首先要根据原始数据特点以及模型输入要求,对原始特征数据进行预处理以使更好的用于模型的训练与预测。原始特征绝大多数为离散类别型(categorical)(包括上表所选特征在内)。当采用此类特征进行LR训练时,常进行独热编码(One-Hot Encoding)以使其数据更加利于模型学习。这里由于部分特征的类别取值数量巨大,全部采用One-Hot编码易产生高维度稀疏矩阵,影响学习效率,考虑到特征类别取值呈现长尾分布,故而先将稀有类别取值统一设置为“Other”,然后再进行One-Hot编码处理,从而在保留主体特征信息的同时,控制新特征维度,提高训练效率。考虑到数据量较大,这里我们采用sklearn.linear_model.SGDClassifier库函数来实现LR的增量式学习。通过设置默认的SGDClassifier超参数,采用分块式训练,得出训练过程损失(log-loss)曲线。
2. L1 正则项,就是在原来的损失函数基础上加上了 $C\sum_{i=1}^m |w_i|$ 这一项, 表示各个参数的绝对值的和乘上常数 $C$;加上这一项后能够使得最终的求解出来的参数中大部分的 $|w_i|$ 为0,这也是稀疏性的名称来源。稀疏性使得模型的复杂度下降,缓解了过拟合的问题,同时具有有特征筛选的能力。因为 LR 模型可以理解为对各个特征进行加权求和,如果某些特征的权重即 $w_i$ 为0,则可认为这些特征的重要性不高。在CTR预估中输入的是海量人工特征,因此添加 L1 正则化就更有必要了。
3.离散化后有以下几个好处:

1) 稀疏向量内积乘法运算速度快,计算结果方便存储 
2) 离散化后的特征对异常数据有很强的鲁棒性:比如一个特征是年龄>30是1,否则0。如果特征没有离散化,一个异常数据“年龄300岁”会给模型造成很大的干扰; 
3) 逻辑回归属于广义线性模型,表达能力受限;单变量离散化为N个后, 可以通过 one-hot 编码为每个变量设置单独的权重,相当于为模型引入了非线性,能够提升模型表达能力,加大拟合; 
4) 离散化后可以进行 特征交叉,由M+N个变量变为M*N个变量,进一步引入非线性,提升表达能力; 
5) 特征离散化后,模型会更稳定,比如如果对用户年龄离散化,20-30作为一个区间,不会因为一个用户年龄长了一岁就变成一个完全不同的人。当然处于区间相邻处的样本会刚好相反,所以怎么划分区间要取决于具体的场景

发表于 2019-07-03 10:22:58 回复(0)