引言
点击率,转化率,购买率的关系
想象一个场景,一个item,由于某些原因,例如在feeds中的展示头图很丑,它被某个user点击的概率很低,但这个item内容本身完美符合这个user的偏好,若user点击进去,那么此item被user转化的概率极高。CVR预估模型,预估的正是这个转化概率,它与CTR没有绝对的关系,很多人有一个先入为主的认知,即若user对某item的点击概率很低,则user对这个item的转化概率也肯定低,这是不成立的。更准确的说,CVR预估模型的本质,不是预测“item被点击,然后被转化”的概率(CTCVR),而是“假设item被点击,那么它被转化”的概率(CVR)。这就是不能直接使用全部样本训练CVR模型的原因,因为咱们压根不知道这个信息:那些unclicked的item,假设他们被user点击了,它们是否会被转化。如果直接使用0作为它们的label,会很大程度上误导CVR模型的学习。
认识到点击(CTR)、转化(CVR)、点击然后转化(CTCVR)是三个不同的任务后,我们再来看三者的关联:
0. 摘要
转化率(CVR)预估是电商搜索、推荐和广告最关键任务之一。商业系统通常需要以在线学习的方式更新模型,以跟上不断变化的数据分布。但是,成交转化通常不会在用户单击商品后立即发生。这可能会导致label不准确,我们称之为延迟反馈问题。在以前的研究中,延迟反馈问题是通过长时间等待正例样本来解决的;或者通过在到达样本时先消费负例样本,然后在之后真正转化时再插入正例样本来解决。实际上,在等待更准确的label与使用新鲜数据之间存在折衷,这在现有工作中并未考虑。为了在这种折衷之间取得平衡,我们提出了 (ES-DFM),该模型对观测转化分布(observed conversion)与真实转化分布(ground truth conversion)之间的关系进行建模;然后,我们在动态采样分布下(elapsed-time sampling),通过重要性采样(importance sampling)来优化真实转化分布的期望。我们进一步估计每个样本的重要性权重,在CVR预估中用作损失函数的权重。为了证明ES-DFM的有效性,我们对公开数据和工业数据集进行了广泛的实验。实验结果证实,我们的方法始终优于以前的最新结果。
1. 动机
为了捕获用户需求的动态变化,商业系统经常在短时间内,即以在线训练的方式,使用最新的数据来更新学习的模型。由于成交转化通常不会在用户点击后立即发生,因此这会使CVR的预估更加复杂。Delayed Feedback问题为CVR模型在线学习引入了一个难题:一方面,我们需要等待足够长的时间,以便观察信息可以大致反映出真实的成交转化(label corretness);另一方面,我们也倾向于更新的预测模型(model-freshness)。即如何权衡数据的真实有效性和模型的即使性问题。
2. 贡献
对于CVR模型在线学习,我们提出了ES-DFM,该模型对observed conversion分布和ground true conversion分布之间的关系进行建模。在我们的方案中引入动态采样分布(elapsed-time sampling),可以通过降低假负例的权重和提升真正例的权重来帮助模型纠正样本偏差。
我们的主要贡献可以概括如下:
- 据我们所知,我们是第一个研究CVR模型在线学习背景下,如何平衡label correctness和model freshness。
- 通过对采样时间建模为概率分布,我们实现了真实转化分布的无偏估计。特别是在数据分布与常规不同时,我们的模型也显示出了鲁棒性。
- 我们提供了一套严格的实验设置,用于流式训练和评估,可以更好地与工业系统保持一致,并且可以轻松地应用于实际应用中。
3. 模型
理想情况下,CVR模型是在训练数据(x,y)的基础上训练的,该训练数据是从ground truth的p(x,y)p(x,y)p(x,y)的数据分布中得出的,从而优化了理想损失函数,如下所示:
然而,由于延迟的反馈问题,所观察到的训练数据q(x,y)q(x,y)q(x,y)的分布经常偏离ground truth p(x,y)p(x,y)p(x,y)的分布。因此,理想损失函数不可用。为了更精确地制定这样的延迟反馈设置,我们在上图中引入了三个时间点和相应的时间间隔。这三个时间点分别是用户单击某项时的单击时间ctc_tct?,发生转化操作时的转化时间vtv_tvt?和提取训练样本时的观察时间oto_tot?。然后,将ctc_tct?和oto_tot?之间的时间间隔记为采样时间eee,将ctc_tct?和vtv_tvt?之间的时间间隔记为延迟的反馈时间hhh。因此,当e>he>he>h时,训练数据中的样本被标记为y=1y=1y=1(正),否则当e<he<he<h时,一些正样本被错误地标记为y=0y=0y=0。
为了实现对实际CVR预估目标的无偏估计,我们提出了一种与我们的过去采样方法相对应的利用重要性采样来进行重要性加权方法。首先,降低假负例的权重和提升真正例的权重来纠正样本偏差;然后,我们提供了重要权重的实用估计,并对这种估计引入的偏差进行了分析,这可以指导我们设计适当的时间分布p(e∣x)p(e|x)p(e∣x)。
通过引入时间分布,我们提出了ES-DFM,该模型对观察的转换分布和真实转化分布之间的关系进行建模,根据:
我们认为这对于延迟反馈任务很重要,因为积极的例子比消极的例子稀少得多,积极的例子可以为模型优化确定方向。因此,在这项工作中,只要用户与广告互动,数据就会被发送到具有正标签的模型(如果已经存在假阴性,则该数据将被复制)。然后,应重新标准化q(y∣x)q(y|x)q(y∣x),如下所示:
为了获得延迟反馈问题中的无偏CVR估计,我们通过重要性采样优化了对p(y∣x)p(y|x)p(y∣x)的期望。
其次,我们进一步提供了建议的经过抽样分布下的重要性权重。从方程中,我们可以获得:
最后,权衡CVR损失函数的重要性为:
在这项工作中,我们将任务分解为两部分:pdp(x)p_{dp}(x)pdp?(x)和prn(x)p_{rn}(x)prn?(x)。更准确地说,我们使用两个二进制分类器来估计这两个概率。即,我们训练一个分类器来预测成为delayed positive的概率,并训练一个分类器来预测成为真实负例。
最后作者对权重重要性进行分析。最终结论是:我们可以控制等待时间分布p(e∣x)p(e|x)p(e∣x)来减少偏差,这是实现上述折衷的核心。
4. 实验结果
从表中,我们可以看到,我们提出的方案在所有基线的基础上显著提高了性能,达到了最先进的性能。
为了验证不同选择的运行时间的性能,我们在Criteo数据集上使用不同的c值进行了实验。如图所示,Criteo数据集上最好的c大约是15分钟,在那里可以观察到大约35%的转换。此外,较大或较小的c都会降低性能。在较小的c时,性能下降缓慢,说明重要性加权模型引入的偏差较小。当c较大时,性能下降得更快,这表明当c增加时,数据的新鲜度更重要,并且c大于1小时将严重损害性能。
我们用不同的干扰强度d进行了实验,结果显示在图中。我们可以看出,与FNW和FSIW相比,我们的方法具有更强的抗干扰能力,并且随着干扰的增加(尤其是在NLL上),性能差距也更大。