前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >猜猜你的标签有多少错了?

猜猜你的标签有多少错了?

作者头像
炼丹笔记
发布2021-05-14 16:43:28
1.2K0
发布2021-05-14 16:43:28
举报
文章被收录于专栏:炼丹笔记炼丹笔记

作者:一元,四品炼丹师

Capturing Delayed Feedback in Conversion Rate Prediction via Elapsed-Time Sampling(Arxiv2021)

背景

很多时候,算法工程师都专注在建模的事情上,却忽略了数据的质量问题,尤其是在搜索推荐中,用户在点击完商品之后可能不会当时就下单,要过几天才下单,那这些数据怎么办?因为模型需要按天更新啊,所以自然就会出现很多错误的标签,其实这些都是延迟带来的错误,那怎么处理这种问题呢?请大家细细阅读本文。绝对精彩!

转换率(CVR)预测是数字显示广告最关键的任务之一。商业系统通常需要以在线学习的方式更新模型,以跟上不断变化的数据分布。但是,转换通常不会在用户单击后立即发生。这可能导致标签不准确,这被称为延迟反馈问题。在以往的研究中,延迟反馈问题的处理方法要么是长时间等待正标签,要么是在负样本到达时消耗掉它,然后在转换之后插入一个正的重复样本。事实上,在等待更准确的标签和使用新的数据之间存在一种权衡,这在现有的工作中没有被考虑。

为了在这一权衡中取得平衡,我们提出了时间采样延迟反馈模型(ES-DFM),该模型模拟了观察到的转换分布与真实转换分布之间的关系。然后在经过时间抽样分布下,通过重要性抽样优化真转换分布的期望值。我们进一步估计每个实例的重要性权重,作为CVR预测中损失函数的权重。为了证明ES-DFM的有效性,我们在公共数据和私有工业数据集上进行了大量的实验。实验结果表明,我们的方法始终优于先前的最新结果。

据我们所知,

  • 我们是第一个研究在流式CVR预测环境中等待更准确的标签和利用更新鲜的训练数据之间的权衡。
  • 通过显式地将运行时间建模为一个概率分布,我们实现了真实转换分布的无偏估计。特别是,即使数据分布与routine不一样。
  • 我们为流式培训和评估提供了一套严格的实验设置,可以更好地与工业系统保持一致,并且可以很容易地应用到实际应用中。

基础背景

我们取用户的特征, 商品的特征作为我们的输入,所有的特征被表示为, 并且目标是学习用户购买商品的概率. , 表示转化发生了,否则, 理想状况下面, CVR模型是从真实分布中采样得到的训练数据集,我们的理想损失就可以通过下面的方式进行表示:

L_{idea} = E_{(x,y) \sim p(x,y)} l(y, f_{\theta}(x))

其中是CVR模型函数,是参数, 为分类损失。因为延迟反馈问题,真实的分布是和观测到的训练集的分布不一样,所以理想下的是不可能拿到的。

为了更精确地描述这种延迟反馈设置,我们引入了三个时间点和相应的时间间隔,

这三个时间点,分别是:

  • 当一个用户点击一个商品的点击时间, 当一个转化行为发生是的转化时间, 以及我们抽取训练时间的观测时间;
  • 点击时间和时间间隔被表示为elapsed time , 和的时间间隔被表示为delayed feedback time ;
  • 因此,样本训练数据中为,当,否则,一些正样本被误标记为(fake negative)当时。

提出的方案

为了实现对等待时间的灵活控制,我们假设elapsed time是从经过时间分布中提取的。本文我们提出了一个概率模型,将经过时间分布、延迟时间分布, 和转换率合并为一个统一的框架。为了实现对实际CVR预测目标的无偏估计,我们提出了一种与经过采样方法相对应的重要性加权方法。然后我们给出了一个实用的重要权重估计,并分析了该估计所引入的偏差,从而指导我们设计一个合适的经过时间分布.

Elapsed-Time 采样延迟反馈模型

为了在获得准确的反馈信息和保持模型的新鲜度之间取得平衡,在建模过程中应该集成一个合理的等待时间(elapsed time)。此外,elapsed time 应该是一个依赖于的分布, 也就是, , 例如:

  • 用户需要更多的时间来考虑购买高价的商品,因此一个长时间的等待时间是需要的;
  • 当一个点击到来时,elapsed time 从分布中得到;

然后,我们等待样本在赋予一个标签的时间间隔。通过引入时间分布,我们提出了我们的经过时间采样延迟反馈模型(ES-DFM),该模型模拟了观察到的转换分布和真实转换分布之间的关系,根据:

q(y=0|x) = p(y=0|x) + p(y=1|x)p(h>e|x,y=1) \\ q(y=1|x) = p(y=1|x)p(h \le e|x,y=1)

其中,

p(h>e|x,y=1) = \int_0^{\infty} [p(e|x) \int_{e}^{\infty} p(h|x,y=1)dh]de \\ p(h \le e |x,y=1) = \int_0^{\infty}[p(e|x) \int_{0}^{e} p(h|x,y=1)dh]de \\

在模型训练的时候,有些转化会在未来某个时间点发生转化但是却依旧没有观测到,之前的方案例如DFM和FSIW会忽略这些转化。

我们认为这些对于延迟反馈任务是很重要的,因为正样本比负样本少得多,而正样本可以定义模型优化的方向。因此,在这项工作中,一旦用户接触到广告,数据将被发送(如果已经有fake negative,则复制)给带有正标签的模型。然后,应重新规范化,如下所示:

q(y=0) = \frac{p(y=0) + p(y=1)p(h>e|y=1)}{1 + p(y=1)p(h>e | y=1)} \\ q(y=1) = \frac{p(y=1)}{1+p(y=1)p(h>e|y=1)}

注意这边的condition on x为了方便已经被省略了。由于我们插入了延迟正样本,样本总数将增加,所以我们应该用除以来归一化。

ES-DFM的重要性权重

为了在延迟反馈问题中获得无偏的CVR估计,我们通过importance sampling优化的期望,

L_{ideal} = E_{(x,y) \sim p(x,y)} l(y, f_{\theta}(x)) \\ = \int p(x)dx \int p(y|x)l(y,f_{\theta} (x))dy \\ = \int p(x)dx \int q(y|x) \frac{p(y|x)}{q(y|x)} l(y,f_{\theta} (x))dy \\ = E_{(x,y) \sim q(x,y)} \frac{p(y|x)}{q(y|x)} l(y,f_{\theta} (x)) \\ = L_{iw}

其中, 是CVR模型函数, 是参数, 为分类损失。

我们可以使用近似的权重优化理想的目标. 我们可以得到:

\frac{p(y=0|x)}{q(y=0|x)} = [1 + p_{dp}(x)]p_{rn}(x) \\ \frac{p(y=1|x)}{q(y=1|x)} = 1 + p_{dp}(x)

其中,

p_{db} = p(y=1)p(h>e) \\ p_{rn} = \frac{p(y=0)}{p(y=0) + p(y=1)p(h>e)}

是延迟的正的概率,表示一个样本是duplicated正的概率; 是真实的负概率,表示观测到负例是真实负例并且不会转化的概率。于是我们的importance weighed CVR损失函数为:

L_{iw}^n = \sum_{(x_i,y_i) \in \bar{D}}^n y_i [1 + p_{db}(x_i)]log(f_{\theta}(x_i)) + (1-y_i)[1+p_{db}(x_i)] p_{rn}(x_i) log(1-f_{\theta}(x_i))

其中是从elapsed-time采样分布中采样得到的训练样本。

Importance Weight(IW)的估计

通过importance sampling解决延迟反馈问题的挑战在于我们需要估计importance weights ,在本文中,我们将分解成两部分,和, 更加准确地, 我们使用二分类方法去预估这两个概率。我们训练一个分类器来预测延迟正样本的概率同时训练一个分类器来预估真实负样本的概率;为了构建训练数据集,对于每个样本,我们从得到一个elapsed time ,

  • 对于模型,延迟的正样本被标记为1, 其它的样本被标记为0;
  • 对于模型,观测到的正样本被排除在外,负样本被标记为1,延迟的正样本被标记为0;

实践中,所有这些需要的样本是可以从流式数据中获得的,数据筛选可以通过在loss函数上面加入mask得到,因此我们可以在流式训练中使用共享网络同时建模训练和;

重要性采样方法通常会因为概率的相除引入高方差,我们的方法很少会引入高的方差。

IW的Bias分析

importance weighted loss是使用理想的和可以做到无偏。但是,因为预估的importance weights 和,可能会引入bias。预测的概率会收敛到:

f(x) = \frac{p(y=1|x)}{p(y=1|x) + p_{neg}(x)f_{rn}(x)} \\ p_{neg}(x) = p(y=0|x) + p(y=1|x) p(h>e|x)

通过上面的式子,我们可以得到下面的结论,这也引导我们设计更好的elapsed-time 采样分布:

  • 如果是完全正确的,那么我们就有, 那么,因此不会带来偏差,但是实践中,bias经常存在;
  • bias和相关,所以如果转化率的绝对值足够大,那么引入的bias将会更大。
  • 采样分布可以被用来控制bias,如果是大的,那么将会比较小,因此将会接近于, 将会更加接近于1因为只有少量的fake negative,因此, 会更加接近于

所以我们可以控制等待时间(elapsed time)分布来降低偏差, 这是实现之前所说的trade-off的核心,也是现有方法缺失的一部分。

实验

1. 与最新的方案相比

  • 我们提出的方法大大提升了baseline的效果并且取得了最好的效果;
  • 与其它方法相比,我们的方法可以显著地缩小延迟反馈差距,并且当延迟反馈差距较大时,改善更大;

2. Elapsed time的影响

  • 为了验证不同选择的运行时间的性能,我们在Criteo数据集上使用不同的值进行了实验。如图2所示,Criteo数据集上最好的大约是15分钟,在这里可以观察到大约35%的转换。
  • 较大或较小的c都会降低性能。在较小的上性能下降缓慢,说明重要性加权模型引入的偏差较小。
  • 在较大的c上性能下降得更快,这表明当c增大时,数据的新鲜度更重要,并且大于1小时的会严重损害性能。

3. 实验的鲁棒性

在延迟反馈设置中,同一样本可以被标记为正样本或负样本。它与噪音标签的学习密切相关(Natarajan等人,2013),其中一些标签是随机翻转的。我们假设一个处理延迟反馈问题的方法不仅要纠正错误的标签,而且要在纠正错误标签或纠正失败之前(例如,如果权重模型偏离太多,偏差将很大,校正将失败)减少错误标签的负面影响。

因此我们进行了稳健性实验。我们随机选择流数据集中所有正样本的部分,然后将其标签(点击时间和支付时间)与随机选择的负样本交换。注意,我们不干扰预训练数据集,因此初始CVR模型和预训练重要性加权模型不受干扰。我们用不同的干扰强度进行了实验,我们可以看出,

  • 与FNW和FSIW相比,我们的方法具有更强的抗干扰能力,并且随着干扰的增加(尤其是在NLL上),性能差距也更大。我们直观地分析了FNW和FSIW在辅助材料中的弱鲁棒性

4. 在线表现

我们在我们的在线评估框架中进行了A/B测试。我们观察到了稳定的性能改善,与最佳基线相比,

  • AUC在7天的窗口期内增加了0.3%,CVR增加了0.7%,GMV(商品毛量)增加了1.8%,

其中GMV是通过项目的交易数量乘以每个项目的价格来计算的。在线和离线的DFM-B测试结果与工业流媒体测试结果一致。

结论

在流式训练环境下,标签准确度和模型新鲜度之间的权衡从未被考虑过,这是该方法的主动决策,而不是离线环境下的被动特征。针对流式CVR预测中的延迟反馈问题,提出了时间分布来平衡标签准确度和模型新鲜度的方法。在经过时间抽样分布下,通过重要性抽样优化真转换分布的期望值。此外,我们还提出了一个严格的流式训练和测试实验协议,使之更符合实际的工业应用。最后,大量的实验证明了我们的方法的优越性。

参考文献

  1. Capturing Delayed Feedback in Conversion Rate Prediction via Elapsed-Time Sampling:https://arxiv.org/pdf/2012.03245.pdf
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-12-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 炼丹笔记 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. 与最新的方案相比
  • 2. Elapsed time的影响
  • 3. 实验的鲁棒性
  • 4. 在线表现
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档