我们说到的 bias,一般是指一种相对不公平、偏离客观公正的理想状态,或者在整体的各个方面上表现出 unbalanced issues 的现象。对于“客观公正的理想状态”,在各种场景中没有一个统一的定义,而是在各自场景的讨论中会产生一些达成共识的概念。然而,这个概念也是随着人们认知的加深而不断延展的。因此 bias 仍然是一个非常 open 的话题。
网站建设哪家好,找成都创新互联公司!专注于网页设计、网站建设、微信开发、微信小程序开发、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了普安免费建站欢迎大家使用!
推荐系统是一个涉及到众多环节的复杂系统。在系统中,推荐模型基于发生过的用户行为进行学习,对用户进行 item(视频、文章、商品等)的展现,用户对展现出来的 item 产生反馈,反馈的用户行为数据继续被模型学习。在整个链路中,没有哪个环节是绝对意义上的“因”和“果”,它们是一个相互影响的关系。(见图 1)
图 1. 推荐系统中各个环节和 bias 产生的阶段(来自文献[1])
推荐系统的各个环节都依赖于用户与 item 的交互,交互是有限且需要花费成本的,在某些情况下不会是客观事实的充分反映。在此 bias 就会产生,并且对推荐系统的整个链路产生着影响。
一些比较公认的 bias 包括:
Position bias(位置偏差):
Exposure Bias(曝光偏差):
注意:这里的 exposure 曝光,是指 item 真正被用户注意到,而不是 item 简单地在客户端展现。下文会使用曝光一词来代指用户真正注意到了 item,而使用展现一词来代指 item 在客户端展现的埋点上报,以此作为区别。
Selection Bias(选择偏差):
还有其他的 bias 比如 Conformity Bias(人在社会环境中意见与群体趋同导致的偏差),Popularity Bias(高热度 item 获得的流量远超过合理水平,造成马太效应),不在该文中做更多讨论。
上述 bias 的存在,给推荐系统的服务效果带来了负面影响。在笔者看来,Position bias 和 Exposure Bias 是推荐系统中最重要和常见的两类 bias。因此,下文针对这两类 bias,介绍学术界过去提出的一些主流 debias(消除偏差)的解决方案。
以笔者之见,从技术方案的实现角度而言,Position bias 和 Exposure Bias 的主流 debias 方案可以归类为曝光建模和样本调权两种思路。
需要注意的是,两种思路并没有绝对的区别。在某些方案中,建模了曝光概率,同时利用模型预估得到的曝光概率对样本进行调权。因为这类思路依赖于对曝光的建模,本文将其归类到曝光建模之下。
本文内容组织主要参考综述文献 Jiawei Chen, Hande Dong, Xiang Wang, Fuli Feng, Meng Wang, and Xiangnan He. Bias and Debias in Recommender System: A Survey and Future Directions [1].
本文后续内容安排如下:
位置偏差在 learning-to-rank 系统中是一种常见偏差,它的基本假设是展现在靠前位置的 item 有更大概率被用户点击,无论 item 是否符合用户偏好,在广告系统和搜索排序场景中都比较常见。
对 position bias 采用曝光建模来 debias,思路是,将用户点击行为发生的中间过程拆分出来,对中间的曝光事件进行建模,并利用这些中间过程的模型预测值进行消偏。如何去拆分点击的中间过程,就涉及到了不同的假设,对应着不同的具体方案。
其中一个比较有影响力的方案是PAL(Position-bias Aware Learning)模型 [2],该模型假设:
总结起来就是:
其中,r_ui 是用户与 item 是否符合的真正概率,h_q 是仅依赖于位置的 item 被用户注意到的概率。令模型分别建模这两个行为,然后只取 r_ui 作为线上服务时排序的依据。
具体来说,如下图所示,在深度学习模型中,使用位置相关的特征输入构建一个 tower,其他特征输入构建另一个 tower,两个 tower 的最终输出分别经过 sigmoid 之后,相乘到一起(pCTR * ProbSeen),作为一个用于计算 loss 的输出(bCTR)。当模型训练时,样本 label 与 bCTR 计算得到 loss,用于梯度的反向传播。而在线上预估服务时,仅使用 pCTR 的预估值,因为它是去除了 position 之后的消偏结果。
图 2. PAL 模型示意图(来自文献[2])
另一种思路类似的方案是采用级联模型(cascade model)[3]。该方案假设用户从靠前位置到靠后位置,按顺序逐个地浏览 item,那么是否点击某个位置上的 item,就与该位置以及之前所有位置上的 item 有关。令 E_q 和 C_q 分别代表 q 位置上 item 曝光和被点击的概率。级联模型描述用户行为的发生是如下的关系:
其中,第三个等式假设了用户一旦点击了处于 q 位置的 item,那么就会终止本次阅读的过程,不再往下浏览,否则用户还会继续往下浏览。该方案也假设了在每次浏览过程(session)中,最多只能有一次点击。
级联模型建模各个位置处的 E_q 和 C_q,同样使用消偏之后的 r_uq,i 来作为真实的排序依据。
曝光建模的思路有两个缺点,一是对点击行为中间过程的拆分需要大量的数据来支持模型学习,尤其是 user-item 之间的数据是较为稀疏的,在一些数据量偏少的场景中使用难度大;二是引入了人为假设,如果假设不正确,那么就会导致最终结果与预期的南辕北辙。
Exposure bias(曝光偏差)产生于需要利用用户的隐式反馈(implicit feedback)来建模的场景中。用户的显式行为(比如点击、评论、收藏)只会发生在极少数的 item 上,因为用户只会被到少量的 item 曝光到。因此,把未观察到互动行为的 item 都作为用户的负反馈,会造成偏差(positive-unlabelled问题)。另一方面,高热的 item 相对中长尾 item,获得了更多的曝光,更可能产生显式正向行为的样本。因此所观测数据中的正向行为,是非随机缺失的(Missing-not-at-Random,MNAR问题),与真实分布不一致。
因为 exposure bias 产生的直接原因是滥用了并非真实的负样本,在这些负样本中无法直接区分哪些是曝光了但用户不感兴趣了、哪些是没有实际上曝光的。那么,如果能对 item 是否曝光进行建模,然后削弱那些曝光概率低的负样本的权重,是会减轻 bias 的影响的。
具体地,训练模型学习一个 item 是否曝光给用户的概率,item 曝光的概率越高(对应地,item 在客户端展现的次数越多),那么说明 item 对应的隐式反馈样本的置信度也就越大。因此,可以将模型学习到的曝光概率赋值给损失函数里面样本的权重。
在早期朴素的 WMF 思路影响下,研究者考虑在矩阵分解的过程中,加入 item 是否曝光给用户的隐变量 O_ui, 通过模型学习到 O_ui,来更好地辅助损失函数里面的权重赋值[12],被称为ExMF(Exposure Matrix Factorization,含有曝光的矩阵分解)方法。具体地,考虑如下的概率生成过程:
其中 N 表示高斯分布,Bern 表示伯努利分布,μ_u,i 是 item i 曝光给用户 u 的概率,U,V 分别是储存用户向量和 item 向量的矩阵,
代表用户 u 对 item i 的偏好程度;
表示在用户 u 被 item i 曝光后,是否与 item 产生显式正向行为的变量;
都是表达高斯分布方差的超参数。
要确定用户和 item 矩阵 U,V 以及曝光矩阵 μ,就需要采用极大似然法最大化以下概率:
由于是否曝光{o_u,i}是隐变量,需要采用一个类似 EM 的算法来不断更新参数,最终,可以获得 E[Ou,i|Yu,i=0]的先验概率,来对损失函数中的样本置信度赋值。
样本调权思路,从逻辑上说是直观的:在有 bias 的场景下,某些样本携带的信息可信度小,但是不能完全丢弃它们,因此赋予较小权重,使得它们对模型整体的影响减轻;或者,同样是展现给用户的 item,某些 item 有更高的曝光几率,它们的正反馈占比更高,因此它们的正样本权重应当被削弱,而另外一些 item 的正样本权重应该被增强。
Propensity Score(倾向性打分,下文简称 PS)是修正位置偏差的一种通用方法[4],在计算每条样本的 loss 时,每条样本基于它所在的位置被重新赋予了权重。这个权重是和位置相关的,该方案里正样本对应的 loss 函数被修正为:
对应着在模型 f 下(u,i)这条样本的 loss;ρ(q)是倾向性打分(即 PS),仅仅与位置 q 有关,这也是倾向性打分这一方法中的一个重要假设。如果一个 item 展现的位置越靠前,它的 PS 就越高,那么这条样本对应的 loss 被降权得越厉害。同时,那么展现在靠后位置的 item,它们的 loss 将可能被加权。由于倾向性打分方法做了一个非常强的假设(倾向性打分仅仅与位置相关, 而与用户和 item 无关),因此估算各个位置上的 PS 就变得非常简单。一个很直接的做法是 result randomization(结果随机化):将模型排序的结果打乱,展现在用户面前,然后收集各个位置上的用户点击率。因为在各个位置上,item 与用户的相关性已经是均等的了,因此不同位置上的点击率就是各个位置上的倾向性打分的无偏估计。但是这种做法对自然推荐的结果进行了人为干预,有损用户体验,并不是一个最优的办法。除了这种简单粗暴的 result randomization 之外,人们也提出了一些基于模型的方法来学习各个位置上的倾向性得分。将 item 是否被用户注意到作为一个隐变量,设计了一个包含倾向性打分模型和推荐模型的 EM 算法来求解该问题。[5,6]
在利用隐式反馈的场景中,为了提取负反馈的信息,一般会将未观察到显式反馈的 item 一律作为负例,然后对每个负例赋予一定的置信度。对应的损失函数表达如下:
是推荐模型 r 预估的正向行为发生概率;W_ui 是表达置信度的权重;δ 是损失函数的具体表达式(比如交叉熵代价函数)。在模型训练中的 debias 相关思路,一般是围绕如何给隐式反馈的负例赋予恰当的权重来进行的。
对隐式反馈的负例进行调权,针对的更多是 positive-unlabeled 问题。一个早期的朴素思路是加权分解矩阵(weighted factorization matrix,简称 WMF)[8]。该思路采用:
的样本降权。这种做法背后的动机是,未观察到正向行为的样本,无法确定用户是否真的不喜欢,因此需要降低样本的置信度。
在此基础上利用更多的用户信息或 item 信息,提出的其他方案包括:利用用户的活跃度进行权重赋值:
因为有更多正向行为的用户,其对应的样本的置信度越大[9];利用 item 的热度进行权重赋值,因为越流行的 item,有更高的几率曝光,样本的置信度也应当越大[10];利用用户与 item 的特征相似度来确定权重[11]。
虽然方法众多,启发式调权仍然是一个有较大难度的方案,其一是用户与 item 之间隐式反馈样本的置信度的确定,需要大量数据与计算资源;其二是权重的设定,也引入了人为的经验与假设,如果人为的经验就是带有偏差的,那么会加重偏差。
在 exposure-based model 方案中,曝光概率越高的 item,对应的样本的置信度越高。但是它没有处理另一个问题,那就是隐式反馈建模中的非随机缺失(missing not at random)问题。
高曝光概率 item,一般也是高热度的 item。通过调大它们的样本的权重,模型将会偏向于对高热度的 item 学习更准,而在中长尾的 item 上的学习变差。
因此,将是否曝光与曝光后是否发生显式反馈这两个变量进行进一步的解耦,并重新定义损失函数,使之完全依赖于客观的 user-item 相关性,是一种更进一步的思路[13]。
基于以上的动机,研究者将显式反馈的发生解耦为“曝光”(O_u,i = 1)与“item 符合用户偏好”(R_u,i = 1)同时发生。
分别表示 item i 曝光给用户 u 的概率,和 item i 符合用户 u 的偏好的概率(又称 item 与用户的相关性)。
如果把模型的评估指标,从拟合 click 数据:
其中 δ(·)为具体的损失函数(比如交叉熵代价函数);
为模型预估的用户 u 与 item i 的相关性;
括号里的两项分别代表 item 与用户有相关性,或没有相关性的预估损失。
可以证明的是,以上两种方法(Heuristic Weighting 和 Exposure-based model)定义的损失函数,都不是上述理想损失函数的无偏估计。
实际上,可以证明,理想损失函数的无偏估计的表达式为:
那么,问题就转移到了,如何去估计 item i 对用户 u 的曝光概率,这是一个倾向性打分的估计问题。最简单的做法是,使用 item 的相对热度来估算倾向性打分,即:
其中分母是正向行为次数最多的 item 对应的总次数,分子是当前 item 的正向行为次数。ŋ≤1 作为一个超参数来调节曝光概率的大小,因为相对于统计得到的后验点击率,曝光概率应当大于后验点击率。需要注意到,这个估算是对用户无差别的,存在一定局限性。(文献[13]中的做法)更多地倾向性打分的估算思路,可以参考上文“启发式调权”。
在样本层面就包含了 bias 的场景中,人们把所有样本一视同仁地加入到模型的评估指标中,也会造成评估指标的 bias,所以需要矫正评估指标当中的偏差。
一个比较直接的办法是利用 inverse propensity score(倾向性打分的倒数,下文简称 IPS)来矫正评估指标中的偏差[7]。从直观上去理解 IPS 方法,即对那些频繁出现的 item 降权,而对那些较少出现的 item 做加权。
对于推荐系统而言,理想情况下的评估指标都可以表达成如下的形式:
U 是用户 u 的集合,c(·)是待评估指标的具体表达式,与指标定义有关,比如对于 AUC 来说,它的表达式为:
表示用户对曝光的 item 发生了正向行为的 item 集合;指标的下角标 AOA 表示 Average-over-all。可以发现,在实际的评估指标中,指标也受曝光变量 O 的影响。
曝光变量 O_ui 即 item i 是否曝光给用户 u,并不是无偏的,往往高热 item 更可能曝光给用户。具体来说,会导致
该指标被证明了在数据量 n 极大的情况下,将会收敛到
在该框架下,问题即转换成为了如何去估计 IPS,则成为一个较为开放的问题,有相关的各种解决方案。(参考上文“启发式调权”)
[1] Jiawei Chen, Hande Dong, Xiang Wang, Fuli Feng, Meng Wang, and Xiangnan He. 2020. Bias and Debias in Recommender System: A Survey and Future Directions.
[2] Huifeng Guo, Jinkai Yu, Qing Liu, Ruiming Tang, Yuzhou Zhang. 2019. PAL: A Position-bias Aware Learning Framework for CTR Prediction in Live Recommender Systems.
[3] Nick Craswell, Onno Zoeter, Michael Taylor, and Bill Ramsey. 2008. An experimental comparison of click position-bias models.
[4] Aman Agarwal, Kenta Takatsu, Ivan Zaitsev, and Thorsten Joachims. 2019. A general framework for counterfactual learning-to-rank.
[5] Qingyao Ai, Keping Bi, Cheng Luo, Jiafeng Guo, and W Bruce Croft. 2018. Unbiased learning to rank with unbiased propensity estimation.
[6] Thorsten Joachims, Adith Swaminathan, and Tobias Schnabel. 2017. Unbiased learning-to-rank with biased feedback.
[7] LongqiYang, YinCui, YuanXuan, ChenyangWang, SergeBelongie, and DeborahEstrin. 2018. Unbiased offline recommender evaluation for missing-not-at-random implicit feedback.
[8] Yifan Hu, Yehuda Koren, and Chris Volinsky. 2008. Collaborative filtering for implicit feedback datasets.
[9] Rong Pan and Martin Scholz. 2009. Mind the gaps: weighting the unknown in large-scale one-class collaborative filtering.
[10] Xiangnan He, Hanwang Zhang, Min-Yen Kan, and Tat-Seng Chua. 2016. Fast matrix factorization for online recommendation with implicit feedback.
[11] Yanen Li, Jia Hu, ChengXiang Zhai, and Ye Chen. 2010. Improving one-class collaborative filtering by incorporating rich user information.
[12] Dawen Liang, Laurent Charlin, James McInerney, and David M Blei. 2016. Modeling user exposure in recommendation.
[13] Yuta Saito. 2020. Unbiased Pairwise Learning from Biased Implicit Feedback.
分享题目:一文读懂推荐系统中的debias
网站网址:http://www.shufengxianlan.com/qtweb/news20/107520.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联