背景
在推荐尤其是广告中,一个用户的正反馈不是马上就发生的,可能过了一段时间后才发生。如商品的购买、游戏中的付费行为,常常是发生在点击广告后的几天之后。这样导致了模型训练时不知道一个样本是不是真的负样本。其中一个朴素的解决方法时等待一个固定的时间窗口,超过这个时间窗口还没回传转化的样本都看作负样本,但是这样做的缺点是:如果时间窗口设的太短会丢失大量的正例,时间窗口设的太长模型的时效性有损。
解决方案
1. 建模回流分布
Criteo在《Modeling Delayed Feedback in Display Advertising》中提出一种延迟转化转化建模的方案,基本思想是用一个模型建模正样本的回流分布,用这个分布来纠偏主模型
先作出以下定义:
X:特征集合
Y∈{0,1}:观测到的样本(转化是否已经发生)
C∈{0,1}:转化最终是否会发生
r:正例回流比例Pr(Y=1|C=1)
那么观测到的负样本的概率可以表示为:
$$\operatorname{Pr}(Y=0,C=1 \mid X) = \operatorname{Pr}(C=1 \mid X) \operatorname{Pr}(Y=0 \mid C=1, X)$$ $$\operatorname{Pr}(Y=0,C=0 \mid X) = \operatorname{Pr}(C=0 \mid X) \operatorname{Pr}(Y=0 \mid C=0, X)$$其中:
$$\operatorname{Pr}(Y=0 \mid C=1, X) = 1-r$$ $$\operatorname{Pr}(Y=0 \mid C=0, X) = 1$$综上:
$$\operatorname{Pr}(Y=0 \mid X)= p_i (1-r) + (1-p_i) = 1-rp_i$$观测到的正样本的概率可以表示为:
$$\operatorname{Pr}(Y=1 \mid X)= \operatorname{Pr}(Y=1,C=0 \mid X)+\operatorname{Pr}(Y=1,C=1 \mid X)= \operatorname{Pr}(Y=1 \mid C=1,X) \operatorname{Pr}(C=1 \mid X)= rp_i$$根据极大似然估计可以得到loss为:
$$Loss=-\sum_{i \in \text { positives }} \log(rp_i) - \sum_{i \in \text { negatives }} \log(1-rp_i)$$ 建模回流分布的方法理论上可以很好的解决延迟转化的问题,但是实际中存在以下几个问题: 1. 由于需要建模回流分布,增加资源开销 2. 回流分布的预测是个回归任务,回归任务的难度一般比分类任务的难度大,通常会转为分类任务来预测 标签:Pr,样本,mid,建模,转化,广告,operatorname,延迟 From: https://www.cnblogs.com/xumaomao/p/17374314.html