google在《Handling many conversions per click in modeling delayed feedback》中提出了一种它们的延迟建模方式:
摘要
预测点击后转化(如购买或其他事件)的期望值或数量是基于效果的数字广告中的关键任务。在训练转化优化模型时,最关键的挑战之一是:处理转化延迟反馈问题——这类反馈可能多次发生且延迟时间各异。该任务难度显著,因为延迟分布因广告主而异、呈现长尾特性、通常不遵循任何特定参数分布类别,并可能随时间变化。我们通过基于三个核心思想的无偏估计模型应对这些挑战:
- 首先将标签(label)拆分为不同延迟分桶(delay buckets)的标签之和,每个分桶仅训练成熟标签(mature label);
- 其次采用温度计编码(thermometer encoding)提升精度并降低推理成本;
- 最后利用辅助信息增强模型稳定性并应对分布漂移
1. 引言
数十年来,广告行业一直以触达率或广告观看用户数来衡量广告效果并定价,这种模式覆盖了包括广告牌、报纸和电视在内的所有广告形式。在线广告初期也延续了这一模式,按广告展示次数向广告主收费,此类方式至今仍在品牌广告中广泛使用。
随着在线广告平台的日益成熟,广告主得以自动瞄准更深层目标。1990年代,按点击付费(CPC)广告和精细化定向技术兴起,广告主仅在用户点击广告时付费,并可手动为不同用户群体分配差异化价值。结合实时竞价(RTB)系统决定广告展示,这催生了点击率预测模型的需求,用于计算特定广告在特定展示中被点击的概率。
近年来,两大协同趋势逐渐显现:其一,定向自动化程度提升使得广告主无需再手动指定关键词或目标用户群,平台能自动识别符合广告主目标的展示机会,大幅减少人工配置;其二,平台允许广告主通过定义点击后重视的事件(如购买)来更细致地表达目标。
实现该目标的简单广告活动设置是:广告主指定关注的事件类型,活动目标在总预算和单事件平均成本约束下最大化点击广告用户完成的事件数。更高级的配置则可进一步为每个事件赋值,目标转为最大化广告活动带来的总价值。对广告平台而言,除点击率预测外,还需预测点击后事件(常称”转化”)的数量或价值。
广告主可设置单次点击转化(OPC)或多次点击转化(MPC)类型:OPC情况下每次点击最多统计一次转化,MPC则允许点击后窗口期内发生任意次转化。该归因窗口期由广告主设定,短至2小时或长达90天不等。
例如,某网约车应用可能开展仅针对完成首次乘车(OPC)用户的广告活动,而一款解谜游戏则可将用户达到20级(OPC)或完成应用内购买(MPC)定义为转化。构建用于估算MPC或OPC/MPC混合活动预期转化次数的优化模型时,会面临纯OPC转化点击率预估中不存在的多重挑战:
- 长延迟反馈:待预测事件可能延迟长达90天才被上报
- 多重事件关联:与点击或展示关联的事件可能多次发生(且经常如此),这使得在归因窗口结束前无法确认是否已捕获所有相关事件
- 高度异质性:广告主可自定义事件,导致事件发生率与延迟分布呈现显著差异
- 非稳态环境:用户行为随广告主应用/网站变更而改变,广告主可能调整优化目标,新广告活动持续涌现。尤其对于新活动,由于事件定义未知,几乎无法进行先验泛化
针对非稳态性问题,业界通常采用近实时数据在线训练模型。但此时转化延迟问题尤为突出:近实时训练会使模型错过训练时延后到达的转化,导致系统性地低估最终转化量。虽然批量训练同样面临部分样本未成熟的问题,本文重点研究在线训练场景(结论可自然推广至批量训练)。
本文开发的预期转化量预测模型具有以下特性:
- 支持近实时训练
- 实现长期预测无偏性
- 基本消除短训练时延带来的精度提升与长延迟样本偏差之间的权衡
通过非参数方式建模转化延迟的预期分布,并利用可用中间信息提升预测精度。
2. 延迟建模相关研究
延迟建模与截断反馈问题(censored feedback)密切相关。早期研究(Elkan & Noto, 2008等)虽具参考价值但无法直接适用。另有多篇论文(Agarwal等, 2010; Menon等, 2011; Lee等, 2012; Rosales等, 2012)研究转化优化,但未解决标签延迟反馈问题。
(Chapelle, 2014) 首次系统研究转化优化中的延迟反馈处理,其方案基于生存分析工具:
- 1.假设转化延迟服从指数分布,训练延迟时间估计模型
- 2.利用贝叶斯法则计算给定点击时长下的转化观测概率
- 3.基于实现标签训练点击时长与转化观测概率的关系模型
后续研究均局限于单次点击最多一次转化(OPC)场景:(Hubbard等, 2019)采用带Beta先验的几何分布,(Ktena等, 2019)探索逆倾向评分等损失函数,(Yoshikawa & Imai, 2018)使用核函数加权和的非参数分布族,(Mann等, 2019)研究对抗性在线学习框架,(Ji等, 2017)采用威布尔分布族,(Safari等, 2017)提出偏置估计提升效率,(Vernade等, 2017)研究多臂老虎机场景。
近期非参数分布研究包括:(Saito等, 2020)提出CVR预测器与偏置估计器的对偶学习算法,(Yasui等, 2020)采用协变量偏移校正的重要性加权方法,(Su等, 2020)通过学习动态风险函数校准延迟模型,(Kato & Yasui, 2020)构建无偏凸经验风险函数。这些方法同样未扩展至MPC场景。
(Choi等, 2020) 首次研究多次点击转化问题,扩展(Chapelle, 2014)的方案假设转化服从负二项分布且间隔时间为指数分布。该方案存在两大缺陷:
- 1.仅适用于整数转化,难以推广至浮点型期望值预测
- 2.定义的目标函数非凸,模型可能预测”高转化率+长延迟”或”低转化率+短延迟”的组合
批量训练中可通过成熟数据缓解该问题,但在线学习因缺乏成熟数据使得本文提出的非参数方法更具鲁棒性。
3. 问题形式化
我们可将问题更形式化地描述如下:
模型按序在时间范围$[0, t)$内训练样本,每个样本仅访问一次。每个样本$p$关联两类特征:
- 特征$X_p$:在在线预测时可立即获取
- 延迟特征$L_p$:在样本时间$t_p$(需对此样本进行预测的时间)到时间$t_p + M$(固定$M$)期间可能发生变化,超过$M$后不再接受更新
标签$y_p \in [0, \infty)$可视为延迟特征$L_p$的子类。为方便起见,我们将标签$y_p$视为在时间${t_{p,0}, t_{p,1},…}$显现的离散事件${y_{p,0}, y_{p,1},…}$的总数量或总价值,尽管我们的方法也可用于完全连续的响应变量。
最终,在时间$t$,我们看到具有特征$X_p$的样本,必须使用模型参数$\theta$生成预测$\bar{y} = f(X_p, \theta)$。我们的目标是:在给定输入特征条件下,当标签和延迟特征$L_p$的时间分布相对平稳时,确保该预测准确且无偏。
4. 模型框架
4.1 核心思想
我们方法的基本目标是为每个特定样本建模预期延迟分布。通过该子模型,我们希望在观测到不完整标签(即可能随时间推移继续更新的标签)时,能够预测其完整形态,并使用此完整标签训练主模型。
为建模延迟分布,我们提出基于三个核心理念的新颖模型配置:
1. 将标签拆分为不同延迟分桶
假设训练样本$p$生成于时间$t_p$,并在时间$t_p + K$($K < M$)进行训练。此时已知标签在区间$[t_p, t_p + K)$的部分,为避免训练偏差,需预测剩余区间$[t_p + K, t_p + M)$的标签值。
对此有两种合理方法:
- 方法1:构建可处理任意$K$值的通用预测模型
- 方法2:选择固定分桶点进行预测
由于方法1需要假设参数化分布(因延迟分布的异质性而不适用)或使用复杂时间序列模型,我们选择方法2以降低复杂度。
具体实现:
将完整标签分解为不同延迟分桶$[t_p, t_p + d_1), [t_p + d_1, t_p + d_2),…,[t_p + d_n, t_p + M)$的累加和。建立子模型集合${f_i(X_p)}$,每个子模型预测特定分桶$[t_p + d_i, t_p + d_{i+1})$的标签值(其中$d_0 = 0$),并仅使用年龄至少为$t_p + d_{i+1}$的样本(即该分桶标签已完整)进行训练。
当在时间$t_k$估计样本$p$的完整标签时,选取最大分桶索引$m$(满足其分桶起始时间$t_p + d_m \leq t_k$),计算截断已知值与预测值之和:
\[y'_{p,t_k} = |\{y_{p,i} : t_{p,i} < t_p + d_m\}| + \sum_{i \geq m} f_i(X_p)\]当且仅当每个子模型$f_i$对其对应区间提供无偏估计时,$y’_{p,\cdot}$才能作为$y_p$的无偏估计量。
2. 标签的温度计编码
在上述设置中,任何满足$t_p + d_m < t_{p,j} < t_k$的事件$y_{p,j}$在计算预测标签时会被丢弃,因为它们与需要使用的子模型时间分桶重叠。因此,必须设置足够多的子模型以使此类被丢弃事件的比例足够小。然而,随着子模型数量增加,每个子模型负责的时间区间缩短,导致正标签样本急剧减少。
解决方案:
引入温度计编码——将标签分解为重叠分桶$[t_p, t_p + M), [t_p + d_1, t_p + M),…,[t_p + d_n, t_p + M)$,使得每个子模型的标签定义为:从分桶起点到总窗口结束期间的事件总数。该方法优势:
- 无论子模型数量多少,每个分桶仍覆盖合理时间范围
- 避免标签稀疏性问题
- 降低推理成本:仅需评估单个子模型即可覆盖全时间范围预测
3. 辅助信息融合
第三个核心理念是将延迟特征$L_p$作为子模型输入,提升标签补全的准确性与无偏性。具体方法:
- 为每个子模型$f_i$提供”已观测标签”特征,描述区间$[t_p, t_p + d_i)$内的累计值
- 类比条件熵公式:
\(H(Y|X) = H(Y) - I(X,Y)\)
当已观测标签与剩余标签互信息较高时(见图1),条件预测可有效降低熵值
图1
关键作用:
- 支持”延迟分布在给定输入条件下时间平稳”的假设
- 当用户行为随时间漂移(如首事件延迟增加)时,即使标准输入特征未反映此变化,子模型仍能通过辅助信息校正漂移
实现约束:
训练时使用的辅助信息在推理时必须同样可用。温度计编码天然满足此约束——子模型$f_i$仅使用$t_p + d_i$前的信息进行推理。若采用分桶编码,则只能提供$t_p + d_1$前的信息(因可能需调用所有子模型补全早期标签)。
4.2 实现细节
我们通过表1简明列出模型的精确训练配置(包含训练的模型列表、其特征/标签定义及训练样本范围)。此模型配置需谨慎处理以下细节:
分模型隔离性
在所述训练机制(样本按序访问一次)下,对于时间$t_p + k$($k < d_i$)的样本,仅子模型$f_j: j < i$会被训练。因此,若所有预测源自单一模型,未训练子模型的预测可能受已训练部分干扰,导致灾难性遗忘。为缓解此效应,各子模型需完全独立。
分桶数量权衡
- 少分桶:信息损失风险(训练时丢弃分桶中间事件,用预测值替代)
- 多分桶:训练成本上升
实证选择:3-10个分桶为合理折衷方案
图2
5.实验
略