NeurIPS 2022,是百度提出的Unbiased Learning to rank数据集由于现有数据集的某些局限性,在现有基准数据集上的良好结果可能无法扩展到实际场景:
我们提出Baidu-ULTR数据集,包含1.2billion随机采样的搜索会话和7008个专家标注的查询(397572个查询-文档对)。Baidu-ULTR是第一个 billion 级别的 ULTR(unbiased learning to rank) 数据集,提供:
直接使用点击数据优化模型是不完美的,因为偏差的存在,比如:位置 bias,trust bias,click necessary bias。尽管目前的 ULTR 数据集可以在某种程度上满足数据消耗的需求,仍然存在一些限制:
因此,提出Baidu-ULTR数据集,对web search的大规模无偏 learning to rank数据集。它从最大的中文搜索引擎-百度中随机抽取了12亿个搜索会话,和7008个专家注释查询(397,572个查询文档对)进行验证和测试。
我们的目的是:对一个指定 query,得到一个相关性降序排列的文档 list。查询和文档之间的相关等级 r d r_d rd(通常有0–4级, { b a d , f a i r , g o o d , e x c e l l e n t , p e r f e c t } \{bad, fair, good, excellent,perfect\} {bad,fair,good,excellent,perfect},)如果是人工标记的,我们通常认为是无偏的,但是这样比较费劲。

一个替代方案就是将用户的隐式反馈作为相似度标签。利用点击标签 c d c_d cd 替代相似标签 r d r_d rd

但是,这个loss function是有偏的,因为最终排序结果会影响用户的点击,排名高的文档可能会有更高的点击次数。无偏 learning to rank被提出,这样在有偏数据上的训练就能收敛到用无偏数据上训练的模型
现有的 ULTR 数据集可以分成两类:使用合成/真实用户反馈:
合成数据:Yahoo! LETOR , Microsoft LETOR and Istella LETOR
真实数据:Tiangong-ULTR

主要包含两部分:1)大规模 web search 会话,2)专家注释数据集
Queries:从百度上的搜索会话上随机选取,每个都有一个独一无二的标识符。一个频繁出现的查询可能被采样多次,每个都有不同的标识符。这保证了数据集中查询的分布与在线系统相同:常见的查询有更大的权重
Documents:对于候选文档,只记录了展示出来的。因为没展示的提供的信息比较少,用户不会对这些文档提供反馈。日志会话通常对每个 query 只有十个文档(一页就展示了10个文档)。只有 1.1%的会话包含十个以上,因为1.1%的用户翻页了。这导致了训练和测试的不匹配。在训练时,用户只“label”top-10文档,但是在推理阶段,top-10结果需要通过检索和排序产生,系统需要利用很多模型来排序特别多的文档。
Page Presentation Features:用户在搜索结果页面(SERPs)上的行为受SERPs布局的影响很大。我们收集了在SERPs上的以下信息表示:排序位置,显示的url,显示的文档标题,显示的文档摘要,文档的多媒体类型,SERP的高度

为了保护用户隐私,将查询、标题和摘要的原始文本表示为带有私有字典的顺序 token id。进一步防止丢失语义信息,我们提供了一个 unigram集合,使用 desensitization token ids 来记录高频词,这对建模 word-level 语义信息是很有用的。
User Behavior:我们提供了丰富的用户行为集合,包括:查询重写,跳跃,点击,第一次点击,用户停留时间,显示时间,显示次数,滑走次数,siaplayed count of reverse browsing

Queries:从百度的搜索会话中随机选取的。因为查询是长尾分布的(a),我们进一步提供了查询的频率。我们根据搜索频次,将查询分成10个buckets:0,1,2对应高频,3,4,5,6对应中频,7,8,9对应尾频。
Documents:为了模拟在线长江,候选文档从检索阶段选择。我们选取了检索模型的top-30文档作为排序的候选集合。通过选择间隔为30的文档,我们进一步覆盖检索阶段的前数千个结果,这些文档用于衡量 ranker 在区分对用户体验极具破坏性的文档方面的表现
Expert Annotation:由专业标注者标注,从5个标签 { b a d , f a i r , g o o d , e x c e l l e n t , p e r f e c t } \{bad,fair,good,excellent,perfect\} {bad,fair,good,excellent,perfect} 中选一个,之后转成数字(0对应bad,4对应perfect)。


像Figure.2,我们有如下观察:
长尾分布出现在许多用户行为中
高频查询的搜索结果比尾部查询的更相关,因为高频查询的每个查询的点击数为1.13远远大于尾部查询的0.43
最关键的用户反馈与页面展示特征和其他用户行为展现出强相关。我们在图2©中说明了不同排名位置的点击率
随着显示时间变长,用户更愿意在屏幕顶部花更多时间,在底部花更少时间

选择了下列具有代表性的 baselines:Naive,IPW,DLA,REM,PairD。这些方法都只考虑了位置相关的 bias,没使用其他的显示特征。因此,利用新提取的SERPs和显示特征,在Baidu-ULTR数据集上设计新的ULTR算法具有很大的潜力。
使用 Discounted Cumulative Gain(DCG),只有在有绝对相关性判断时,才会报告DCG

Expected Reciprocal Rank(ERR)计算用户停止的结果位置的倒数的期望:


一个直观的解释是,用户日志是从一个运行良好的搜索引擎收集的,点击可能没有假设中提到的bias。直接减轻 bias 可能导致过度减轻和不满意的结果。
为了研究搜索频率的影响,我们进一步在三个不同等级搜索频率上比较了 ULTR 算法性能,包括high,middle,tail。

Biased in Real-World User Feedback:因为用户日志是从良好运行的搜索引擎中收集的,点击可能不会有在生成合成数据集时的那种简单又强烈的bias
Long-tail Phenomenon:(1)大多数检索文档与用户查询无关。超过50%的文档被注释为与用户查询无关,而只有1.8%的文档被注释为完美的。(2)用户查询还显示了长尾分布。前10%的高频查询占据了搜索日志的60%以上。ULTR算法在高频查询上的性能远高于尾部查询
Mismatch between Training and Test:由于在线系统的存储限制,我们只记录排名系统中显示的页面,通常是 top-10 的结果。然而,在评估集中,我们记录前30个文档,并通过选择间隔为30的文档,进一步覆盖检索阶段的前上千个结果。这一挑战在实际场景中广泛存在,任意数量的文档都可以检索到我们的排序程序中。用于训练和测试的文档数量很少能完全一致。数据不匹配是排序算法面临的分布失衡挑战。
Baidu-ULTR包含充足的展示信息和丰富类型的用户反馈。在脱敏之后,也可以提供原始文本特征,这确保能够使用更先进的语言模型。