0 一个案例解释全文
当我们意识到以前CTR模型的预测值其实是 “item被看到的概率✖️item看到后被点击的概率” 后,自然就需要把这两项解耦,即预测“item看到后被点击的概率”作为 item 的真实点击率,本文也叫做“相关性”。而不同位置下 item 被关注到的概率不用,我们称之为 Position Bias。
同时学习相关性和 Bias 的方法主要包括 DLA(Dual Learning Algorithm)、EM(Expectation Maximization)、Two-Tower,这里暂不展开。但是训练他们所需要的数据是一致的,直观来说,我们只需要知道同一个商品在位置 x 和位置 y 的点击率,相除就能计算 Bias,这种数据就被认为具备“可识别性”。
来看下面这个例子:
- 观察服装 A,我们能推算出位置2相对位置1的 Bias 是 0.8;
- 观察服装 C,我们能推算出位置3相对位置2的 Bias 是 0.857;
- 综合 A、C,我们能推算出位置3相对位置1的 Bias 是 0.8✖️0.857=0.686;
- 那么假设把位置1的点击率作为相关性,服装 B 的相关性就是4.4%/0.686=6.41%;
- 所以别看日志中服装 B 的点击率低于服装 A,其实相关性更高,正确的排序应该把 B 放在前面;
- A、B、C 的出现像“边”一样,把位置1~3这些“节点”连成了一张图,而服装 D 在这张图之外;
- 想要预估服装 D 的相关性以及位置 4 的 Bias,就需要把图连起来,比如把服装 A 放到位置4获取数据。
所以我们只需要将“图”上缺乏的边或者置信度不高的边,通过有针对性的小流量实验收集数据进行补齐,就能建立一个可识别的图用来训练 position model,而不是完全随机试验,那样收集的样本可能对于因果推断并没有很大的增益。
1 点击预测准确不等于相关性可识别
无偏排序学习(Unbiased Learning to Rank,ULTR)通常把点击拆成两个因素:内容本身的相关性(即看到后的点击率),以及用户观察到它的概率(即Position Bias)。
这里, 是 Query-Document 的排序特征, 是位置、页面上下文、展示样式等偏差因素。模型同时学习 和 ,让乘积 尽量逼近点击概率。
这套做法隐藏着一个比优化算法更基础的问题:即使点击概率已经拟合得完全正确,模型学到的相关性仍然可能是错的。 原因不在于模型不够强,而在于数据没有提供足够的交叉约束,无法唯一分开 和 ,图1 给出了一个案例。
我们提出可识别性图(Identifiability Graph,IG),把“这份点击日志能不能恢复相关性”转化为一个图连通性问题:
假设一条数据的真实点击概率是 。下面两组参数都能给出完全相同的点击预测:
第一组认为用户有 的概率看到内容、看到后的相关性为 ;第二组认为观察概率只有 、相关性却是 。只检查 Click MSE 或点击似然,无法区分二者。
但是,我们不需要恢复相关性的绝对真实值,只要学到所有相关性经过同一个正常数缩放后的值即可,因为这种统一缩放不会改变内容之间的排序。
可识别性不是说相关性必然能够被恢复,而是用来描述观测数据是否足以唯一确定相关性函数。设真实生成过程为 。对于任意一组同样能拟合所有已观察数据的 ,如果它满足:
并且由此总能推出存在一个与 无关的常数 ,使:
那么称相关性函数 在数据集 上具有可识别性,即观测数据能够将它确定到一个全局缩放常数。
2 可识别性图的定义
相关性函数 具有可识别性,当且仅当无向图 是连通的。
数据集写成:
可识别性图是无向图 :
翻译成操作语言:
- 节点是偏差因素 。如果只研究 Position Bias,每个位置就是一个节点;如果研究“位置 × 上下文”,每种组合都是一个节点。
- 边由相同的 产生。如果完全相同的 Query-Document 特征曾在两个偏差条件下出现,就连接这两个节点。
- 边不要求直接点击。构图使用的是曝光数据结构 ;点击值用于训练 和 ,不是判断是否连边的条件。
- 连通不等于两两直接相连。只要任意两个节点之间存在路径即可。
3 从曝光数据构造可识别性图
上述数学描述太晦涩,不如直接看案例。考虑下面五条曝光记录:
构图分三步:
- 收集所有偏差因素,建立节点“位置 1、位置 2、位置 3”。
- 按 分组。文章 A 对应位置集合 ,所以加入边 。
- 文章 C 对应位置集合 ,所以加入边 。文章 B 只在位置 3 出现,不产生新边。
最终路径是:
位置 1 ──[文章 A]── 位置 2 ──[文章 C]── 位置 3
虽然文章 A 从未出现在位置 3,但位置 1 和位置 3 仍然通过“位置 2”被间接校准,因此整张图连通。
输入:曝光记录 D={(x_i,t_i)}
1. 建立字典 S:x → 该 x 出现过的所有 t
2. 为每一个 t 创建图节点 v_t
3. 对每个 x:
对 S[x] 中任意两个偏差因素 s、t,加入无向边 (v_s,v_t)
4. 对图执行 BFS、DFS 或 Union-Find
5. 只有一个连通分量 → 可识别
多于一个连通分量 → 不可识别
若某个item 出现在 个位置下,朴素实现会建立一个 节点的 clique(完全图)。实际检查连通性时不必保存所有 条边,把这些节点依次 union 到同一个代表节点即可。
4 图连通性与相关性可识别性的等价关系
4.1 边约束两端的缩放比例
假设同一个 在偏差因素 和 下都出现,并且另一组模型同样准确拟合点击:
两式分别整理:
于是:
也就是说,一条边迫使两端节点使用相同的缩放比例。如果整张图连通,这个相等关系会沿路径传播,最终所有偏差因素只能共享一个全局常数 。相关性虽然仍可能整体缩放,但排序不会改变。
4.2 断连分量允许独立缩放
如果图有两个连通分量 和 ,数据中就没有任何相同的 横跨两者。此时可以:
- 保持 中的相关性和观察概率不变;
- 把 中所有相关性乘以 2,同时把观察概率除以 2。
每条已观察记录的点击概率仍然不变,但跨分量的相关性比较已经改变。
图中的数值给出了一个完整反例:
真实相关性是 ;另一组同样完美拟合点击的参数却给出 。这就是“Click MSE 很小,但 ranking 仍然错误”的结构性原因。
5 节点干预:连接相互隔离的偏差条件
不可识别意味着数据缺了一座桥。节点干预(Node Intervention)不是修改图本身,而是修改数据采集方式:让某个已经在分量 中出现的 ,也在另一个分量 的偏差条件下产生曝光。新增记录会在图上生成一条跨分量边。
5.1 最小干预案例
初始数据形成两个连通分量:
G₁:位置 1 ── 位置 2
G₂:位置 3
文章 B 原本只在位置 3 出现。将 B 与位置 2 的文档进行受控交换,让完全相同的 B 在位置 2 下也获得曝光,数据中新增 。由于 已经存在,图中随即产生边 :
位置 1 ── 位置 2 ──[文章 B]── 位置 3
整张图由两个分量变成一个分量,相关性由不可识别变成可识别。
5.3 有限样本下的桥接样本选择
在无限数据下,只要新增曝光能连接两个分量,理论上就足够。但真实系统只能收集有限次曝光和点击。若选择一个点击率极低的文档,或把文档放到几乎没人观察的位置,需要很大流量才能稳定估计比例。
对于准备把特征 从偏差条件 扩展到 的候选干预,我们使用以下成本:
这个成本来自有限点击样本下比例估计的方差。直观上:
- 和 越高,越容易收集到有效点击;
- 成本越小,需要的在线样本通常越少;
- 低观察率的深位置、低相关性文档通常不是好的桥接对象。
真实的 和 在干预前未知,可以使用已有排序模型、人工设定的 observation curve,或者先用节点合并得到粗略估计。这里的估计只用于选择更省流量的桥,不改变“连接后可识别”的理论结论。
5.4 多连通分量的最小成本修复
若 IG 有 个连通分量,至少需要 条跨分量边。我们把每个连通分量视为一个“超级节点”:
- 对任意两个分量,计算它们之间成本最低的候选干预;
- 用该最低成本作为两个超级节点之间的边权;
- 在分量图上求最小生成树(Minimum Spanning Tree,MST);
- 执行 MST 上的 组干预。
这样不需要随机交换所有 Query 的所有位置,而是只补足保证连通所必需的桥,并尽量降低总体在线成本。
5.5 在线数据收集要求
落地时需要满足几个条件:
- 同一个 必须能被稳定识别。 理论要求的是相同特征,不是“看起来相似的文档”。如果连续特征几乎不重复,需要使用稳定的 Query-Document ID、离散分桶或业务上合理的等价类。
- 干预必须改变 Bias,而不是同时改变内容语义。 交换位置最直接;上下文类型、历史点击等 Bias 往往无法自由交换。
- 保留随机化与日志字段。 需要记录原位置、干预后位置、干预概率和实验桶,避免新的选择偏差无法追踪。
- 设置体验护栏。 对不相关文档的强行置顶会伤害用户体验,可限制候选集合、位置跨度和流量比例。
- 干预完成后重建 IG。 目标不是“做过实验”,而是确认新增数据确实让图连通。
6 可识别性对数据设计的影响
可识别性不是“数据越多就自然成立”。真正决定图是否连通的是交叉覆盖:相同的 是否跨越了不同 Bias。可以得到三个直接结论:
- 数据量减少,图更容易断开。 即使完整数据可识别,随机采样后的子集也可能不可识别。
- 偏差因素越细,节点越多,图越容易断开。 给 observation model 加入更多上下文变量,虽然表达能力更强,却可能让每种 Bias 组合只见到很少的重复特征。
- 特征越细粒度,跨条件重复越少。 每个样本都拥有近乎唯一的 时,Bias 节点之间很难形成边。
在真实 TianGong-ST 数据上,当 Bias 同时包含位置和全部 vertical types 时,共有 20,704 种偏差因素,IG 被分成 2,900 个连通分量;只保留位置时,图恢复连通。这说明大规模真实日志也不会自动保证可识别。
参考资料
- Mouxiang Chen, Chenghao Liu, Zemin Liu, Zhuo Li, Jianling Sun. Identifiability Matters: Revealing the Hidden Recoverable Condition in Unbiased Learning to Rank. ICML 2024.