推荐系统在样本采样层面与广告系统的不同点
对于ctr任务中的正负样本不均衡问题,不管是推荐系统还是广告系统,都是需要降采样才能使模型学习的更好,但降采样带来的问题是资源的预测ctr会有一定的偏差,即如果降采样前训练正负样本比例为1:1000,预测正负样本的分布基本在1:1000左右,即每个资源平均的预测ctr在1/1001左右。假如降采样到正负样本比例为1:10,每个资源的平均预测ctr也会在1/11左右。但正常情况下不会影响资源的相对排序,因而不管如何降采样,预测结果的auc是不会变化的。
与推荐系统不同的是,广告系统需要对后续ctr进行矫正,这是因为广告系统比较重视item的ctr的绝对值,因为广告平台真正关注的是广告的CPM,计算公式如下所示:
C P M = C T R ∗ C P C ∗ 1000 CPM = CTR * CPC * 1000 CPM=CTR∗CPC∗1000
其中CPM指的是Cost Per Mille,曝光一千次收取的费用,CTR指的是点击率,CPC指的是一次点击的费用,根据上面的描述,降采样后资源预测的ctr会偏高,从而导致CPM会偏高,因而需要对预测的ctr进行矫正,这里只列举简单的基于LR模型的矫正方法:
c t r = σ ( z ) → c t r ′ = σ ( z − r ′ r ) ctr = \sigma(z) \rightarrow ctr'=\sigma(z-\frac{r'}{r}) ctr=σ(z)→ctr′=σ(z−rr′)
其中 z z z代表的是输入到sigmoid之前的数据, r ′ r' r′代表的是降采样后正样本的比例, r r r代表的是降采样前正样本的比例,可以看出矫正后, c t r ′ ctr' ctr′要比 c t r ctr ctr低。