该方法容易实现,且采样后的样本分布和采样前保持不变。这样使得训练数据集的分布基本和线上保持一致。 论文考察了几种采样率 : 0.001,0.01,0.1,0.5,1 。结果表明:更多的数据带来更好的模型。但是采用 10% 的训练样本相对于全量样本仅仅损失了 1% 的预测能力(经过模型校准之后甚至没有降低),而训练代价降低一个量级。
b.负降采样:保留所有的正样本,仅负样本以概率$p_{sample}$来随机采样。
保留所有的正样本,仅负样本以概率 来随机采样。 该方法可以缓解类别不平衡问题。但是,采样后的样本分布和采样前不再相同,导致训练集的分布和线上不再保持一致。因此需要对模型进行校准。 论文考察了几种采样率 : 0.1,0.01,0.001,0.0001,... 。结果表明:最佳负采样率在 0.025 。
9.历史统计特征
模型中用到的特征分类两类:上下文特征和历史统计特征。
上下文特征:曝光广告的当前上下文信息。如:用户设备、用户所在页面的信息等等。
历史统计特征:广告的历史统计行为,或者用户的历史统计行为。如:广告的上周平均点击率,用户的历史平均点击率。
取 top K 重要性的特征,通过查看历史统计特征的占比来评估这两类特征的重要程度。 结果表明:历史统计特征比上下文特征更重要。
10.模型校准calibration
模型校准分为两类:
模型预测能力不足导致的校准
训练数据分布和线上数据分布不一致导致的校准。
相比较第一类情况,第二类情况的校准系数偏离 1.0 更为严重,因此也更需要执行校准。
(1)给定样本集,假设模型预估的pCTR分别为$(\hat{y_1},...,\hat{y_N})$,则样本集的经验CTR为:$\overline{\mathrm{CTR}}=\frac{\sum_{i=1}^{N} \mathbb{I}\left(y_{i}=1\right)}{N}$
样本集的预估平均CTR为:$\overline{\mathrm{CTR}}_{pred}=\frac{\sum_{i=1}^{N}{\hat{y_i}}\left(y_{i}=1\right)}{N}$
定义校准系数为:预估平均CTR和经验CTR之比:$r a t i o=\frac{\overline{\mathrm{CTR}}_{p r e d}}{\overline{\mathrm{CTR}}}$
它衡量了模型预期点击次数和实际观察到的点击次数之比,它的值与 1 的差异越小,则模型的表现越好。假设模型预估的结果为$\hat {y}$ ,则校准后的预估结果为:$\hat{y}_{n e w}=\frac{\hat{y}}{r a t i o}$
(2)负降采样可以加快训练速度,改善模型能力。但是负采样中的训练数据分布和线上数据分布不一致,因此必须对模型进行校准。
假设采样之前样本集的平均 CTR 为 0.1% 。当执行采样率为 0.01 的负降采样之后,由于正样本数量不变、负样本数量降低到之前的 0.01 ,因此采样后的样本集的平均 CTR 为 10% 。 此时需要校准模型,使得模型的预估平均 CTR 尽可能与线上的平均 CTR 一致。假设模型预估的结果为$\hat {y}$ ,则校准后的预估结果为:
$\hat { y} _{new} = \frac{\hat {y}}{\hat {y} + (1-\hat {y}) / s}$,其中$s$为负采样比例。
六、FTRL模型1.来自论文:《Ad Click Prediction: a View from the Trenches》,2013年谷歌
该论文并不关注于如何解决 CTR 预估本身,而是关注CTR 预估相关的问题,如:内存优化策略、模型性能分析、预测置信度、模型校准等问题。
七、LS-PLM模型1.来自论文:《Learning Piece-wise Linear Models from Large Scale Data for Ad Click Prediction》
提出了 “Large Scale Piece-wise Linear Model:LS-PLM” 模型来求解 CTR 预估问题,并给出了有效的优化算法来训练 LS-PLM 模型。 该模型自2012年以来作为阿里巴巴在线展示广告系统中的主要 CTR 预测模型。
参考文献:
【1】CTR预估[六]: Algorithm-Factorization Machine
【2】从FM推演各深度学习CTR预估模型(附代码)
【3】基于深度学习的CTR预估模型集合
【4】CTR预估[六]: Algorithm-Factorization Machine
【5】『我爱机器学习』FM、FFM与DeepFM
【6】9_ctr_predictioin1