Counteracting Duration Bias in Video Recommendation via Counterfactual Watch Time
本文由 Obsidian 精读笔记同步;方法与因果结构图均采用论文原图。
0. 论文信息与阅读范围
- 中文意译:通过反事实观看时长消除视频推荐中的时长偏差
- 作者:Haiyuan Zhao, Guohao Cai, Jieming Zhu, Zhenhua Dong, Jun Xu, Ji-Rong Wen
- 机构:中国人民大学、华为诺亚方舟实验室
- 会议:KDD 2024,Research Track,pp. 4455–4466
- DOI:10.1145/3637528.3671817
- 论文 PDF:arXiv:2406.07932
- 代码:hyz20/CWM
- 阅读日期:2026-08-04
- 实际阅读范围:正文、方法公式、主实验表、消融、线上实验与附录 A–D
1. 一页结论
1.1 一句话总结
这篇论文把短视频单次曝光的观测观看时长解释为“真实兴趣对应的反事实观看时长 CWT 被视频长度右截断后的结果”,再用经济学效用模型 + 右删失似然训练排序模型,从而同时改善兴趣排序和观看时长预测。
1.2 论文解决什么问题
论文研究的是短视频推荐中的单条视频观看时长建模,不是用户整个 Session 的累计使用时长。它要解决的核心问题是:观看时长同时受用户兴趣和视频本身长度影响,因而不是一个干净的兴趣标签。
设用户 $u$ 对视频 $v$ 的:
- 特征为 $x_{u,v}$;
- 视频时长为 $d_v$;
- 日志中观测到的观看时长为 $w_{u,v}$;
- 如果视频足够长,用户基于兴趣本来愿意观看的时间为 $w^c_{u,v}$,即 CWT(Counterfactual Watch Time)。
论文的核心观测模型是:
所以:
未完播样本给出了 CWT 的精确观测;完播样本只给出了 CWT 的下界。后者在统计上是典型的右删失(right censoring)。
1.3 为什么以前的方法不够好
PCR、WTG、D2Q 等标签校正方法通常按视频时长分组、归一化或分位数化观看时长。它们缓解了“长视频天然产生更长观看时长”的尺度问题,但仍有一个共同缺陷:容易把不同长度视频的完播样本都映射成相同或近似相同的最高兴趣。
例如:
- 完整看完 10 秒视频,只说明用户至少愿意看 10 秒;
- 完整看完 60 秒视频,说明用户至少愿意看 60 秒;
- 两者都叫“100% 完播”,但兴趣证据强度显然不同。
论文在 KuaiRand 和 WeChat 上按视频长度分析完播样本,发现长视频完播样本的点赞、转发等显式正反馈比例更高。这直接反驳了“所有完播样本都是同等高兴趣”的隐含假设。
更根本地说,任何只对观测时长做确定性逆变换的方法,都无法从 $w_{u,v}=d_v$ 唯一恢复 $w^c_{u,v}$ 或兴趣:此时只能知道它超过一个阈值,而不能知道具体是多少。
1.4 真正的创新点
- 重新解释标签生成机制:把 duration bias 从“不同长度的观看时长尺度不一致”改写为“潜在观看需求被视频长度截断”。这是论文最重要的范式变化。
- 提出 CWT:用“视频足够长时用户愿意看多久”表示与兴趣对应的潜在观看时长。
- 经济学视角建模观看停止点:用户在边际观看收益等于边际观看成本时停止,CWT 就是累计效用最大的时间。
- cost-based transform:构造兴趣与 CWT 的单调可逆映射。
- counterfactual likelihood:未完播样本用点似然,完播样本用右尾概率,而不是把视频时长当精确回归标签。
- 兼容不同 backbone:CWM 主要改造标签、输出空间和 Loss,可接到 FM、DCN、AutoInt 等模型上。
1.5 是否值得精读、复现与迁移
- 精读价值:高。最大的价值不是某个网络结构,而是对行为日志“观测机制”的重新建模。
- 复现价值:中高。代码和公共数据可用,主体公式简单;但 relevance ranking 的评估标签带有较强人工定义色彩,需要谨慎解释。
- 迁移价值:高。如果业务中存在大量 $w=d$ 的完播点质量,优先尝试右删失 Loss,通常比直接替换 backbone 更值得。
- 最重要的亮点:把完播从“精确最高兴趣标签”改为“真实需求的下界”。
- 最大疑点:评估 relevance ranking 时使用的“兴趣真值”仍由观看时长规则构造,与论文的方法叙事并不完全独立。
2. 核心 Claim 与证据地图
| Claim | 论文证据 | 疑点 / 我的判断 |
|---|---|---|
| 完播样本并不代表同等兴趣 | Fig. 1:完播样本中,长视频的显式正反馈比例更高 | 显式反馈本身有选择偏差和噪声,但趋势足以否定“同等兴趣”这一强假设 |
| CWT 截断可以解释真实观看行为 | Fig. 3 的重复播放、Fig. 4–5 的时长双峰分布 | 这是解释性证据,不是对个体 CWT 的直接观测;高峰也可能来自平台交互和内容结构 |
| CWM 比已有 duration debiasing 更有效 | Table 2–4:三数据集、三 backbone、两类任务总体领先 | 并非每个指标都第一,例如 WeChat + DCN 的 XAUC 上 D2Q 高于 CWM;“全面最优”应改成“几乎全面领先” |
| 方法有线上价值 | Table 5:一周 A/B,MWT +2.9%、VV +2.5%、CTR +0.3% | 线上证据最有价值,但论文未披露置信区间、用户规模、长期留存、负反馈和生态指标 |
3. 问题背景与旧方法瓶颈
3.1 这是“短视频观看时长”的什么问题
这是短视频推荐的 pointwise 用户–视频观看时长与兴趣排序问题。模型面对一条候选视频,需要完成两个相关任务:
- 预测用户实际会观看多久;
- 估计去除视频长度影响后的兴趣,用于候选排序。
它不是“用户今天会在 App 里总共停留多久”,也不是直接优化 Session 总时长。线上实验的 MWT 是推荐系统最终关注的聚合指标,但训练对象仍是单条曝光记录。
3.2 Duration bias 的两层含义
第一层:尺度偏差。 长视频的绝对观看时长天然更大,因此直接回归 watch time 可能偏爱长视频。
第二层:截断偏差。 对于完播记录,观测时长被卡在 $d_v$,用户潜在愿意继续观看的时长不可见。论文真正推进的是第二层。
已有方法主要处理第一层:
- PCR:$w/d$,把观看时长变成完播比例;
- WTG / D2Q:按 duration 分桶或分位数校正,使不同视频长度下的标签可比较;
- D2Co:进一步处理观看时长中的 bias 与 noise;
- VR:直接回归原始 watch time;
- WLR / NDT:通过加权或分布建模利用观看时长。
这些方法即便把不同 duration 的尺度拉齐,也没有自然表达“完播只是下界”。
3.3 CWT 是否真的存在
论文用两类现象做间接支撑:
- 重复播放:短视频更容易出现观看时长超过视频时长,且短视频的重复播放比例和重复程度更高。作者认为这说明用户的观看需求可能超过单次视频长度。
- 双峰分布:固定视频长度(如 30 秒)后,观看时长常在接近 0 和接近完播处形成两个峰。作者用潜在 CWT 分布被 $0$ 和 $d_v$ 截断来解释两端堆积。
我的判断:这些现象支持“观测时长受边界机制影响”,但不能证明 CWT 是唯一解释。自动连播、拖动进度条、网络卡顿、内容高潮位置、平台的完播计数口径等也会造成相似分布。
4. 方法总览与结构图
4.1 整套方法
CWM 把训练和推理分成同一套潜变量链路:
- 推荐模型 $f_\theta(x_{u,v})$ 输出一个高斯潜空间中的兴趣位置;
- 通过标准高斯 CDF $\Phi$ 转成 $(0,1)$ 内的兴趣概率;
- 用 cost-based transform 把兴趣映射为潜在 CWT;
- 用视频长度 $d_v$ 对 CWT 截断,得到实际观看时长预测;
- 训练时根据是否完播,分别使用精确点观测或右删失尾概率。
4.2 方法结构图

论文原图 Figure 7:CWM 的计算流程。来源:Zhao et al., KDD 2024。
4.3 三个关键假设
- 边际收益递减:继续观看每一秒带来的新增满足逐渐下降。
- 边际成本恒定:在单条视频播放期间,用户每多看一秒的时间、注意力和机会成本近似不变。
- 理性停止:用户在边际收益等于边际成本、累计效用最大时主动停止。
这三个假设让兴趣与“愿意观看多久”之间建立单调关系,但它们是行为建模假设,不是由数据必然推出的事实。
5. 公式是怎么来的
5.1 从效用最大化得到停止时间
论文把累计观看收益和累计观看成本写成:
其中:
- $r\in(0,1)$ 是兴趣;
- $\omega(r)$ 是由兴趣决定的初始边际收益;
- $c>0$ 是每秒观看成本;
- $\log(w^c+1)$ 用于表达边际收益递减;
- 线性成本用于表达恒定边际成本。
用户的累计效用为:
对 $w^c$ 求导:
令导数为 0,即边际收益等于边际成本:
得到最大效用对应的停止时间:
由于二阶导数为:
该驻点确实是最大值。
5.2 为什么选择 $\omega(r)=1/(-\log r)$
作者要求 $\omega(r)$ 满足:
- 随兴趣单调增加;
- 当 $r\to0$ 时,$\omega(r)\to0$;
- 当 $r\to1$ 时,$\omega(r)\to+\infty$。
于是选取:
代入停止时间,得到兴趣到 CWT 的变换(Eq. 2):
反解得到 CWT 到兴趣的变换(Eq. 3):
重要判断:$\omega(r)=1/(-\log r)$ 并不是从经济学唯一推导出来的,而是满足单调性和边界条件的一种方便选择。其他满足这些条件的函数也可能成立。因此,论文的“经济学推导”更准确地说是:先给出效用形式和约束,再选一个解析方便的参数化。
5.3 参数 $c$ 的含义
$c$ 越大,用户每秒观看成本越高;在相同兴趣 $r$ 下,预测 CWT 越短:
论文把 $c$ 作为数据集级超参数,而不是用户级、场景级或时刻级变量。这简化了模型,但也意味着它无法表达“同一个人通勤时和睡前的时间成本不同”这类异质性。
6. Counterfactual Likelihood / Loss 推导
6.1 为什么普通 MSE 不够
如果对所有样本直接做:
就把完播样本 $w=d$ 当成“真实 CWT 恰好等于 $d$”。但正确的信息只是:
因此完播样本不应该提供一个点标签,而应该提供一个“超过阈值”的概率事件。
6.2 CWT 空间中的似然
对未完播样本:
对完播样本:
把所有样本相乘,得到删失数据似然(Eq. 4 的核心):
严格地说,连续变量“恰好等于某值”的概率为 0,实际写法应理解成概率密度。论文后续也使用高斯密度 $\phi$ 参数化。
6.3 从 CWT 空间变到兴趣潜空间
先用:
把 watch time 映射到 $(0,1)$ 内的兴趣概率,再用 probit 变换:
映射到实数高斯空间。
令模型输出 $f_\theta(x_{u,v})$ 表示该高斯潜变量的均值,标准差为超参数 $\sigma$。于是:
- 未完播样本使用高斯密度;
- 完播样本使用高斯右尾概率。
完整似然为:
利用 $1-\Phi(a)=\Phi(-a)$,取对数并省略与参数无关的常数,得到论文 Eq. 7:
训练时最大化它,或等价地最小化负对数似然:
6.4 两项 Loss 的直觉
未完播项:
本质是高斯潜空间中的 MSE,因为用户主动停下时,观测时长被视为 CWT 的精确值。
完播项:
鼓励模型把潜在兴趣放在“完整看完该长度所需的兴趣阈值”之上。它不会告诉模型真实 CWT 到底是 40 秒、100 秒还是更长,只要求超过下界。
6.5 $\sigma$ 的作用
$\sigma$ 控制兴趣潜变量的离散程度:
- 较小 $\sigma$:阈值更硬,模型对误差更敏感;
- 较大 $\sigma$:删失边界更平滑,允许更大不确定性。
附录的敏感性实验表明,watch time prediction 和 relevance ranking 的最优 $c,\sigma$ 区域不完全相同,说明两个目标未必能用同一组超参数同时达到最佳。
7. 推理流程
给定用户–视频特征 $x_{u,v}$ 和候选视频长度 $d_v$:
7.1 预测兴趣
$f_{\theta^*}$ 输出实数潜变量,$\Phi$ 将其变成 $(0,1)$ 内的兴趣分数。该分数可直接用于 relevance ranking。
7.2 从兴趣恢复 CWT
7.3 根据视频长度得到实际观看时长
也就是:模型先估计“如果视频足够长会看多久”,再让现实视频长度截断这个潜在需求。
7.4 工程含义
CWM 不要求线上执行复杂采样或反事实模拟。与原 backbone 相比,主要新增的是几个标量变换:高斯 CDF、对数和 clip。真正的改造集中在训练标签与 Loss,线上额外计算量较小。
8. 数据集与实验设置
8.1 数据集来自哪里
| 数据集 | 来源 | 用户数 | 视频数 | 交互数 | 平均完播比例 |
|---|---|---|---|---|---|
| KuaiRand | 快手公开数据集,论文使用 KuaiRand-pure 子集 | 26,988 | 6,598 | 1,266,560 | 17.5% |
| 2021 微信大数据挑战赛的微信视频号日志 | 20,000 | 96,418 | 7,310,108 | 45.5% | |
| Product | 作者所在商业视频平台的内部日志,平台名称未披露 | 2,000,000 | 1,011,007 | 36,366,437 | 32.8% |
需要特别注意:只有 KuaiRand 来自快手;WeChat 来自微信视频号;Product 是未公开平台,不能根据作者机构直接认定为快手或华为某个具体产品。
8.2 数据过滤与切分
- 日志覆盖两周;
- 前 10 天训练、中间 2 天验证、最后 2 天测试;
- 原数据中 60 秒视频占比异常高(17.3%),实验剔除了所有 60 秒视频;
- 最终 duration 范围为 5–59 秒。
KuaiRand
- 使用 KuaiRand-pure;
- 只保留时长不超过 400 秒的视频;
- 前 14 天训练、中间 7 天验证、最后 10 天测试。
Product
- 日志时间为 2023-06-19 至 2023-06-25;
- 因数据不平衡,仅保留 42 秒以下的记录;
- 最后两小时日志作为测试;
- 使用预训练 ID embedding 和 side information。
这些过滤会影响外推范围:论文结果更能说明“几十秒到数分钟的 feed 视频”,不能直接推广到长视频、影视剧或直播。
8.3 任务与指标
观看时长预测
- Ground truth:实际观看时长 $w_{u,v}$;
- 指标:MAE(越低越好)、XAUC(样本对的预测顺序与真实观看时长顺序一致的比例,越高越好)。
兴趣排序
- 指标:AUC、nDCG@3;
- 由于真实兴趣不可观测,论文用观看时长阈值构造二值兴趣标签:
其中 $w_{0.7}$ 是观看时长的 70% 分位数。
这一定义试图表达:短视频完播或长视频看过统一时长阈值,都算有兴趣。但它仍然是人工规则,不是真实兴趣;这也是实验最需要警惕的地方。
8.4 Baseline 与 Backbone
- Baseline:VR、PCR、WLR、D2Q、WTG、NDT、D2Co;
- 更多 SOTA:VLDRec、DCR、CVRDD;
- Backbone:FM、DCN、AutoInt,分别代表内积、外积和 attention 型特征交互;
- Oracle:直接用 Eq. 8 的二值兴趣标签训练,只用于 relevance ranking,表示在该评估口径下的上界参考。
统一训练设置包括 Adam、初始学习率 $5\times10^{-4}$、batch size 512、embedding 维度 10、隐藏层 64、dropout 0.2。CWM 的 $(c,\sigma)$ 分别为:
- KuaiRand:$(1/40,2)$;
- WeChat:$(1/40,20)$;
- Product:$(1/5,5)$。
9. 实验结果
9.1 观看时长预测(Table 2)
下表列出 CWM 在三种 backbone 上的结果:
| 数据集 | FM MAE / XAUC | DCN MAE / XAUC | AutoInt MAE / XAUC |
|---|---|---|---|
| KuaiRand | 17.738 / 0.714 | 17.420 / 0.715 | 17.462 / 0.713 |
| 8.001 / 0.713 | 7.902 / 0.717 | 7.969 / 0.714 | |
| Product | 6.785 / 0.833 | 6.648 / 0.841 | 6.591 / 0.835 |
主要结论:
- CWM 在所有数据集和 backbone 上都取得最低 MAE;
- XAUC 基本领先,但不是每一格都第一;例如 WeChat + DCN 上 D2Q 的 XAUC 为 0.721,高于 CWM 的 0.717;
- WeChat 完播率最高,传统 duration debiasing 方法有时甚至弱于直接回归 VR,而 CWM 仍保持较稳定表现。这与论文“删失越严重,显式处理完播下界越重要”的动机一致。
9.2 兴趣排序(Table 3)
| 数据集 | FM AUC / nDCG@3 | DCN AUC / nDCG@3 | AutoInt AUC / nDCG@3 |
|---|---|---|---|
| KuaiRand | 0.735 / 0.486 | 0.735 / 0.484 | 0.734 / 0.484 |
| 0.703 / 0.581 | 0.707 / 0.584 | 0.704 / 0.583 | |
| Product | 0.660 / 0.582 | 0.663 / 0.591 | 0.663 / 0.585 |
CWM 通常是非 Oracle 方法中最强,并接近直接用评估兴趣标签训练的 Oracle。例如 FM 上:
- KuaiRand:Oracle AUC 0.738,CWM 0.735;
- WeChat:Oracle 0.711,CWM 0.703;
- Product:Oracle 0.669,CWM 0.660。
但这里的“接近 Oracle”必须结合 Eq. 8 的人工兴趣标签理解;它不是接近不可观测的真实兴趣上界,而是接近“按论文规则构造的标签”的监督上界。
9.3 与更多 SOTA 的比较(Table 4)
CWM 相比 VLDRec、DCR、CVRDD,在 KuaiRand、WeChat、Product 以及三种 backbone 上的 AUC / nDCG@3 总体持续领先。例如 FM:
| 数据集 | 最强额外 baseline AUC | CWM AUC | Oracle AUC |
|---|---|---|---|
| KuaiRand | DCR 0.695 | 0.735 | 0.738 |
| CVRDD 0.662 | 0.703 | 0.711 | |
| Product | DCR 0.639 | 0.660 | 0.669 |
这说明收益不只是来自“与较老的标签校正方法比较”,但公平性仍依赖论文对各 baseline 的实现和调参。
9.4 不同时长分桶(Fig. 8)
作者把 KuaiRand 按 duration 划分为 10 个区间,并报告各方法相对 VR 的 XAUC / AUC 提升。
- 多数旧 debiasing 方法在短视频区间有收益;
- 随 duration 变长,一些方法的相对收益下降甚至转负;
- CWM 在不同 duration 区间更稳定,长视频区间仍保持更好的相对表现。
作者的解释是:传统方法把短视频完播映射成过高兴趣,导致模型相对低估长视频所对应的兴趣和观看时长;CWM 使用删失建模后,不会把短视频的完播点锁死为同一个精确标签。
9.5 消融实验(Fig. 9)
论文构造两个变体:
- CWM-C:去掉 cost-based transform,直接把原始 watch time 放入 counterfactual likelihood;
- CWM-L:保留 transform,但把 counterfactual likelihood 换成普通 MSE。
结果呈现出有意义的差异:
- KuaiRand 完播比例仅 17.5%,删失较轻;CWM-L 与完整 CWM 接近,而去掉 transform 的 CWM-C 下降明显。说明此时“怎样把时长转成兴趣”更关键。
- WeChat 完播比例 45.5%,删失更重;CWM-C 与完整 CWM 接近,而去掉删失似然的 CWM-L 明显下降。说明此时“怎样处理完播下界”更关键。
这个消融与论文机制叙事较一致,是较有说服力的一组证据。
9.6 附录分析
- 兴趣标签的 duration unbiasedness(Fig. 10):作者检查不同 duration 下正兴趣标签比例,以及 $r=1$ 时显式正反馈比例,认为 Eq. 8 大致满足跨时长一致性。该分析能缓解疑虑,但不能彻底消除人工标签的循环论证问题。
- 参数敏感性(Fig. 11):watch time prediction 在 KuaiRand 上较优区域约为 $\sigma\in(1,2)$、$c\in(1/40,1/20)$;ranking 的较优区域约为 $\sigma\in(2,5)$、$c\in(1/80,1/60)$。
- 分布拟合(Fig. 12):PCR 倾向于把预测分布过度平坦化,并难以恢复固定 30 秒视频的双峰分布;CWM 更接近真实分布。
9.7 线上 A/B(Table 5)
作者在一个日活数千万的商业短视频系统中进行一周 A/B:
- Product baseline 与 CWM 使用相同匿名日志增量训练;
- 两组各占 5% 随机流量;
- CWM 相对 baseline:
| 指标 | 相对提升 |
|---|---|
| Mean Watch Time(MWT) | +2.9% |
| Valid Viewing Volume(VV) | +2.5% |
| Click-Through Rate(CTR) | +0.3% |
这是论文最有工业说服力的证据。不过实验仅一周,且没有报告负反馈、满意度、长期留存、内容多样性和创作者生态,因此只能确认短期消费指标提升。
10. 对工业界的启发
10.1 最重要的启发:先建模日志如何被观测
产品机制会决定标签可见到什么。完播不是“兴趣恰好等于视频时长”,而是“兴趣对应的潜在时长至少达到视频时长”。工业推荐中,很多问题首先是观测模型问题,而不是 backbone 容量问题。
类似结构还包括:
- 直播停留被直播结束时间截断;
- 音频收听被节目长度截断;
- 文章阅读被页面关闭或内容长度截断;
- 广告播放被广告素材长度截断;
- 搜索结果 dwell time 被下一次操作或 Session 结束截断。
10.2 完播应作为下界,而不是最高等级的点标签
最小工程改造不是重建整个排序系统,而是:
- 未完播样本继续做点回归;
- 完播样本使用 survival / Tobit / censored regression 风格的尾概率 Loss;
- 排序输出与时长输出共享一个潜在兴趣空间。
这类目标层改造通常能接到现有 FM、DCN、DeepFM、Transformer 或多任务排序 backbone 上。
10.3 上线前先做标签审计
建议按 duration 分桶检查:
- 完播率与 $w=d$ 的点质量;
- 完播样本的点赞、转发、关注、负反馈比例;
- 同为完播时,不同 duration 的后续行为差异;
- 不同 duration 下 watch time 与显式满意度的一致性;
- $w>d$、重复播放、拖动进度条和后台播放的日志口径;
- 退出是否由兴趣不足、内容结束、网络/电话打断或 App 切换造成。
如果大量样本堆积在 $w=d$,且完播样本内部仍有明显质量差异,优先考虑删失建模。
10.4 可以进一步工业化的方向
- 个性化成本 $c$:让 $c=c(u,context)$,表达用户、时段、网络、场景和设备差异。
- 异方差 $\sigma$:让 $\sigma=\sigma(x)$,对不确定样本给出更宽的分布。
- Competing risks:把退出原因拆成兴趣不足、外部打断、网络失败、主动跳转等风险。
- 多目标联合:同时预测 CWT、点赞、分享、关注、负反馈和 Session 价值,避免单一放大观看时长。
- 校准和长期指标:关注预测分布校准、长期留存、内容疲劳、多样性与生态健康。
10.5 最小可行实验(MVP)
- 在现有 watch-time 模型上保持 backbone 不变;
- 增加 complete-play mask;
- 将普通回归 Loss 替换为未完播点损失 + 完播右尾损失;
- 先只做离线对照:整体 MAE / XAUC、duration 分桶误差、兴趣 AUC、预测分布;
- 再做 1%–5% 小流量 A/B;
- 主指标观察 MWT / VV,护栏指标观察 dislike、快速划走、Session 留存、内容多样性和创作者覆盖。
11. 批判性判断与局限
11.1 我愿意相信的结论
- 完播记录是被视频长度限制的观测,把它当精确兴趣点标签会丢失信息;
- 右删失似然比对完播样本做普通 MSE 更符合数据生成过程;
- 这种目标层改造在多个 backbone 和不同完播率数据集上具有稳定收益;
- 一周线上实验表明它至少能提升短期消费指标。
11.2 我暂时不愿意完全相信的结论
- CWT 与视频长度完全独立。真实内容的叙事结构、信息密度和时长往往共同决定用户兴趣,duration 不一定只是外部截断器。
- 经济学效用形式是唯一正确的用户观看模型。$\log$ 收益、线性成本和 $1/(-\log r)$ 都是可解释的参数化选择,但不是唯一推导。
- relevance ranking 的提升等同于真实兴趣提升。其评估标签仍由 watch time 阈值构造,存在一定同源性。
- 线上 MWT 提升等同于长期用户满意度提升。论文缺少长期和生态护栏指标。
11.3 关键假设可能失效的场景
- 非兴趣原因退出:电话、网络、切换 App、被打断;此时 $w<d$ 也不等于真实 CWT。
- 收益非单调递减:剧情、音乐或教学内容可能在后半段出现高潮,边际收益可能上升。
- 成本并非常数:用户耐心、网络状态、场景和时间压力会在观看过程中变化。
- 被动播放:后台播放、自动连播或用户离屏会让 watch time 高但兴趣低。
- 重复播放:论文用 $w>d$ 支持 CWT 存在,但主公式 $w=\min(w^c,d)$ 与最终 clip 都限制 $w\le d$。这说明重复播放证据与主建模口径之间存在边界不一致,复现时必须确认日志预处理方式。
- 内容长度内生:创作者会根据内容类型和预期受众选择视频长度,duration 与内容质量、题材和人群并非独立。
11.4 实验上的主要疑点
- 兴趣标签循环性:Eq. 8 仍然用观看时长构造 ranking ground truth,可能天然偏爱与 CWT 叙事一致的方法。
- 过滤影响外推:WeChat 剔除 60 秒视频,Product 只保留 42 秒以下,结果不能直接推广到长内容。
- 线上信息不足:没有置信区间、显著性、用户数、留存与负反馈。
- 全局超参数:$c$ 和 $\sigma$ 是数据集级常数,真实工业行为可能需要更强异质性。
- 定理贡献有限:Theorem 1 本质上证明截断映射在边界处不是一一映射,这是识别性常识;它强化了叙事,但不是深理论突破。
11.5 更简单的替代解释
论文把收益归因于 CWT 的正确建模。一个更简单的解释是:完播样本被普通回归严重低估,而 CWM 的尾概率项相当于对完播样本做了自适应“向上推分”。即使不接受完整的经济学解释,只要使用 censored regression / Tobit / survival Loss,也可能得到大部分收益。
因此复现时最重要的对照不是再加一个复杂网络,而是:
- 直接 watch-time Tobit;
- 不含 cost transform 的纯删失回归;
- hinge lower-bound loss;
- 分布式 survival head;
- 个性化 $c$ 与全局 $c$。
12. 复现建议
12.1 最小复现目标
优先在 KuaiRand-pure 和 WeChat 上复现:
- PCR / VR 与 CWM 的 MAE、XAUC;
- 按 duration 分桶的误差和排序指标;
- CWM-C 与 CWM-L 消融;
- 完播率高低子集上的相对收益;
- 预测 watch-time 分布是否恢复双峰。
12.2 最难复现的部分
- Product 数据和线上系统不可公开复现;
- 重复播放、完播、有效播放等日志口径可能与公开数据实现不同;
- Eq. 8 的 interest label、数据过滤和分位数计算方式会显著影响 ranking 结果;
- 论文脚注提到实践中用 Sigmoid 近似 $\Phi$,实现时要核对代码究竟使用 normal CDF 还是 sigmoid 近似。
12.3 最应该先验证的 Claim
不要一开始追求完全复刻所有表格。先验证:CWM 相对普通 MSE 的收益是否随完播比例上升而增大。 如果这个机制趋势不成立,论文的核心叙事就需要重新审视。
13. 最终评价
| 维度 | 评分 | 说明 |
|---|---|---|
| 创新性 | 4.0 / 5 | 创新主要在标签观测机制和训练范式,而非网络结构 |
| 证据强度 | 3.8 / 5 | 三数据集、三 backbone、消融和线上实验较完整;ranking 标签与线上细节仍有缺口 |
| 可复现性 | 4.0 / 5 | 公共数据和代码可用,公式简洁;内部数据与线上实验不可复现 |
| 工业迁移价值 | 4.5 / 5 | 改动集中在目标层,计算成本低,适用于多种受上限截断的行为指标 |
最终判断:值得精读,也值得在完播样本占比较高的短视频推荐场景做离线复现和小流量实验。最值得迁移的不是 $1/(-\log r)$ 这一具体函数,而是“把完播解释为右删失下界,并按数据生成机制设计 Loss”的思想。
14. 快速问答
Q1:这里指向的是观看短视频时长的问题吗?
是。更准确地说,是短视频推荐中单次用户–视频曝光的观看时长标签偏差问题,同时服务 watch-time prediction 和 relevance ranking,不是 Session 总时长预测。
Q2:实验数据集是哪里的?
两个公开数据集分别来自快手 KuaiRand 和微信视频号 WeChat;第三个 Product 数据集来自作者所在的未披露商业视频平台。线上 A/B 也在该商业短视频系统完成。
Q3:公式为什么这样设计?
推导链是:边际收益递减 + 每秒成本恒定 + 理性用户在边际收益等于边际成本时停止,得到 CWT;再选一个满足兴趣边界条件的 $\omega(r)$,得到兴趣与 CWT 的可逆变换;最后把完播视为右删失,得到 counterfactual likelihood。
Q4:对工业界最大的启发是什么?
不要把日志中的边界值直接当真实偏好。只要产品机制会把真实需求截断,边界样本就应该被当成上界/下界信息,而不是普通的精确标签。