©作者 | 杨晨

本文首先回顾了数据中的偏差问题,通俗易懂地做一个解释和引入,并基于最近两年发表在顶级会议(KDD、SIGIR、WWW、AAAI 等)的推荐系统去偏相关论文,介绍最新研究工作,梳理其背后的技术脉络,本文旨在帮助相关研究人员快速熟悉和理解偏差问题以及推荐系统去偏的最新研究进展,如有遗漏或错误,欢迎大家指正。

偏差与趋势分析 偏差趋势分析报告_编程语言

从辛普森悖论说起

看一个例子[1],一所美国高校的两个学院,分别是法学院和商学院,新学期招生,人们怀疑这两个学院有性别歧视(偏向男性),于是对招生人数做了统计,如下:

偏差与趋势分析 偏差趋势分析报告_人工智能_02

好的,看起来是这样的,接下来我们去深究一下这样性别歧视出现的原因究竟在哪?

首先来看法学院:

偏差与趋势分析 偏差趋势分析报告_python_03

嗯哼?看起来女生录取率比男生要高,而且高的很显著,那么显然问题不在法学院,那就一定在商学院了。

再看商学院:

偏差与趋势分析 偏差趋势分析报告_编程语言_04

诶?奇怪,商学院这边看起来也是女生录取率要高一些。那这到底是怎么回事?法学院没有性别歧视,商学院也没有性别歧视,这个性别歧视是从哪里来的?

偏差与趋势分析 偏差趋势分析报告_编程语言_05

进一步分析

聪明的读者应该能发现,其实本质上没有性别歧视,只是统计数据使得其看起来像是学院招生时对性别有了偏向。进一步分析这个问题,这个现象可以很简单的进行解释,只需要注意到以下两点:

  • 法学院总体录取率低,商学院总体录取率高
  • 报名法学院的女生多,报名商学院的男生多

所以,女生录取率低只是因为更多的女生报名了低录取率的学院(因此拉低了女生总体录取率),而不是学院招生时对性别有歧视。

辛普森悖论虽然叫做悖论,其实并不是一个悖论,只是一个数据偏差导致的认知错误。在这个问题的开始,我们关注的是录取率,同时认为影响录取率的因子只有性别,这种情况下得到了错误的结论。当然,看到这里,原因显而易见,是因为忽略了“学院”这个因素,使得错误地判断了性别对于录取率的影响。

偏差与趋势分析 偏差趋势分析报告_机器学习_06

类比到深度学习

在深度学习的框架下,模型学到的东西来源于训练数据,如果数据存在偏差(比如上面的数据量不均衡,没有消除混杂因素的影响等),也会给模型带来偏差(bias),使得模型的预测出现偏向及不公平等现象。

偏差与趋势分析 偏差趋势分析报告_人工智能_07

后文中所涉及的偏差(bias)问题,本质大同小异,而只是导致偏差的原因、解决的方法有所差异。

偏差与趋势分析 偏差趋势分析报告_偏差与趋势分析_08

推荐系统偏差

接下来回顾一下推荐系统中的偏差问题,以下分类沿用之前推文(Debiased Recommendation: 推荐系统去偏研究进展概述)中的分类方式,并给出一句话为读者进行总结和通俗解释,以便更好的理解偏差类型和具体来源。

  • 选择偏差:用户的主观选择使数据带有偏向
  • 一致性偏差:用户打分会有从众现象
  • 曝光偏差:未曝光的数据认为不感兴趣
  • 流行度偏差:流行度高的物品越来越流行
  • 公平性问题:对特定群体有偏袒,比如性别
  • 循环偏差:偏差的恶性循环
  • 归纳偏置:模型归纳的经验(不算错误/误差)

偏差与趋势分析 偏差趋势分析报告_偏差与趋势分析_09

浅谈一下推荐系统对社会的影响

偏差问题不仅仅会影响推荐系统的效果,还会造成一定的社会效应,推荐系统不仅仅是信息搜索工具,还控制着资源如何在不同的各方之间分配,下面简单地提了一些实际例子,来说明一下这种影响,以进一步明确我们为什么需要关注以及研究偏差问题。

首先,为什么推荐系统需要公平?

  • 推荐曝光的位置有限,曝光哪些商品?
  • 社交平台用户注意力有限,曝光哪些资讯?
  • 打车软件,用户有限,哪些司机接单?
  • 面试机会有限,面试哪些候选人?

其次,推荐偏差是如何引入的?

  • 训练数据引入社会偏见
  • 模型本身可能会呼应甚至强化数据中的偏差

偏差与趋势分析 偏差趋势分析报告_人工智能_10

上图中训练数据引入了一些社会偏见(男性 = 软件工程师 = 高收入,女性 = 护士 = 低收入),由此训练出的模型也带有了偏见,因为AI并不明白哪些是敏感属性(性别)。这种不公平性会导致许多不良影响,例如信息不对等、马太效应、回音室等等[3]。

偏差与趋势分析 偏差趋势分析报告_人工智能_11

最新研究进展

下面基于最近两年发表在顶级会议(KDD、SIGIR、WWW、AAAI等)的推荐系统去偏的相关论文,介绍部分最新研究工作,简单梳理其背后的技术脉络,也是在上一篇推文的基础上做一个补充和更新。

Causal Intervention for Leveraging Popularity Bias in Recommendation. SIGIR 2021

这篇工作针对流行度偏差提出了一个新颖的角度:如何利用流行度偏差来提高推荐效果?并不是所有的数据偏差都是有害的,盲目地追求无偏学习可能会移除掉数据中一些有益的模式。本文主要针对以下两个问题:

  • 训练阶段如何移除流行度偏差的负面影响?
  • 推理阶段如何利用流行度偏差?

该工作提出了一种新的训练和推理范式,在模型训练时移除混杂的流行度偏差,同时通过因果干预来利用流行度偏差对预测得分进行调整。

偏差与趋势分析 偏差趋势分析报告_人工智能_12

在训练阶段,绘制因果图,将流行度定义为混杂因素并切断其与物品之间的因果关系,利用do算子来计算交互概率,以此完成去混淆排名。

偏差与趋势分析 偏差趋势分析报告_偏差与趋势分析_13

在推理阶段,高效利用流行度偏差(比如希望推广那些可能受欢迎的物品),使用简单的时间序列预测方法来设置流行度,利用do算子干预来进行模型推断。

Model-Agnostic Counterfactual Reasoning for Eliminating Popularity Bias in Recommender System. KDD 2021

偏差与趋势分析 偏差趋势分析报告_python_14

关键词:popular bias

偏差与趋势分析 偏差趋势分析报告_人工智能_15

现有研究大部分通过逆倾向权重(IPW)处理流行度偏差,但是IPW方法对加权策略高度敏感,难以调整。本文核心关注点在于从因果关系的角度来探讨流行度偏差问题。

为了消除流行偏见,需要回答一个反事实的问题:如果模型只使用物品属性,排名得分会是多少?该工作设计了一个模型不可知的反事实推理(MACR)框架,该框架通过多任务学习来训练推荐人,通过反事实推理来进行去偏推荐。

偏差与趋势分析 偏差趋势分析报告_python_16

该模型包含三个部分,用户-物品匹配 / 物品模块 / 用户模块,对应三个优化损失目标同时优化。消除流行度偏差的关键在于从排名分数中去除路径𝐼→𝑌的直接影响,按照以下目标计算最终得分:

偏差与趋势分析 偏差趋势分析报告_人工智能_17

Dual Unbiased Recommender Learning for Implicit Feedback. SIGIR 2021

偏差与趋势分析 偏差趋势分析报告_机器学习_18

关键词:popular bias

偏差与趋势分析 偏差趋势分析报告_编程语言_19

现有的研究主要处理正反馈中的偏差而没有考虑缺失的反馈中的偏差,这篇短文提出一个双重的推荐学习框架,核心关注点在于同时消除点击和未点击数据中的偏差

偏差与趋势分析 偏差趋势分析报告_偏差与趋势分析_20

该研究提出的损失函数采用了两种倾向加权方法,从点击和未点击数据中有效估计出真实的正和负偏好:

偏差与趋势分析 偏差趋势分析报告_编程语言_21

其使用了两个无偏项来分别表示点击和未点击数据,其中,propensity score 计算公式如下:

偏差与趋势分析 偏差趋势分析报告_编程语言_22

Controlling Fairness and Bias in Dynamic Learning-to-Rank. SIGIR 2020

偏差与趋势分析 偏差趋势分析报告_偏差与趋势分析_23

关键词:popular bias / Fairness

偏差与趋势分析 偏差趋势分析报告_编程语言_24

在双边市场(购物,音乐等)中,物品的排序不仅对用户有效用,而且还决定了物品提供者(供应商、工作室等)的效用(曝光、收入等),只针对用户优化排序算法会对物品提供者不公平。本文核心针对的两个问题:

  • 马太效应:流行的越来越流行(rich-get-richer)
  • 公平性:针对用户的排序算法导致的对物品提供者不公平问题

论文中定义了两种衡量公平性差异的指标:

基于曝光的公平性差异:

偏差与趋势分析 偏差趋势分析报告_python_25

基于反馈的公平性差异:

偏差与趋势分析 偏差趋势分析报告_python_26

其中,分母表示偏好,最终衡量的是单位偏好上的曝光/反馈差异,以此达到去偏的目的。融合以上指标,提出了 FairCo 的排名策略:

偏差与趋势分析 偏差趋势分析报告_python_27

以上策略包括了一个无偏基数相关估计量,它既可以作为公平的无偏价值评估,也可以作为排名标准,该算法采用控制器的形式,集成了公平性和效用的无偏估计,在可用数据增多后可对两者进行动态调整。

Popularity Bias in Dynamic Recommendation. KDD 2021

偏差与趋势分析 偏差趋势分析报告_机器学习_28

关键词:popular bias / dynamic

偏差与趋势分析 偏差趋势分析报告_编程语言_29

流行度偏差是推荐系统中长期存在的挑战:受欢迎的物品被过度推荐,造成了用户可能感兴趣的不太受欢迎的物品被牺牲,这种偏差对用户和物品提供者都产生了不利影响。大多数现有工作将流行度偏差置于静态环境中,仅针对单轮推荐分析偏差,这些工作没有考虑到现实推荐过程的动态性,主要针对以下几个问题:

  • 流行度偏差在动态场景中如何演变?
  • 动态推荐过程中的独特因素对偏差有什么影响?
  • 如何在这个长期动态过程中消除偏差?

偏差与趋势分析 偏差趋势分析报告_机器学习_30

这项工作将动态推荐和流行偏好进行形式化,利用基尼指数来定量衡量流行度偏差,提出影响流行度偏差主要有四个因素:内在用户规模不均衡 / 模型偏差 / 位置偏差 / 封闭反馈循环,同时在半合成数据集中进行了实验验证。

在其他工作的基础上,进一步提出了一个的假阳性校正 (FPC)方法进行去偏,首先利用任意有偏的推荐模型获取一个原始得分,然后利用历史交互中多个时间点的假阳性信号对模型得分进行修正:

偏差与趋势分析 偏差趋势分析报告_机器学习_31

通过上式可得到去偏后得分,并且,该方法可与其它方法进行集成,以进一步提高性能。

Maximizing Marginal Fairness for Dynamic Learning to RankWWW 2021

偏差与趋势分析 偏差趋势分析报告_python_32

关键词:Fairness / Dynamic LTR

偏差与趋势分析 偏差趋势分析报告_python_33

传统的排名框架对文档的相关性进行排序不可避免地带来不公平的结果曝光,现有的关于动态学习排序公平性的研究,往往通过显著牺牲排名前的结果的结果相关性和公平性的表现来实现排名列表中文件曝光的整体公平性。

这篇工作希望在在线排名系统中控制和平衡结果的相关性和公平性,其从理论上选择top-k结果中相关和曝光不足的文档,以最大化边际相关性和公平性。

首先定义了一个衡量top-k总体公平性的指标,表示为列表中所有文档对的平均视差:

偏差与趋势分析 偏差趋势分析报告_机器学习_34

MMF算法包括了三个子模块:

1. 最大化边际公平性:贪心地进行的文档选择以最大化文档边际公平性。

偏差与趋势分析 偏差趋势分析报告_机器学习_35

2. 最大化相关性:基于文档的相关性进行文档选择。

偏差与趋势分析 偏差趋势分析报告_编程语言_36

3. 平衡top-k相关性和公平性的控制器:通过最大化边际公平性和最大化相关性可以得到两个文档,随后基于一个概率λ,从这两个中选择一个作为最终文档。

偏差与趋势分析 偏差趋势分析报告_python_37

Cross-Positional Attention for Debiasing ClicksWWW 2021

偏差与趋势分析 偏差趋势分析报告_偏差与趋势分析_38

关键词:position bias

偏差与趋势分析 偏差趋势分析报告_偏差与趋势分析_39

现有的针对位置偏差的研究都把位置简单看作一个排序列表,这难以捕捉复杂的现实世界的用户行为,而且很难推广到web应用程序中的现代用户界面(UI),这篇论文核心关注点在于具有UI界面的位置偏差

偏差与趋势分析 偏差趋势分析报告_偏差与趋势分析_40

该论文假设一个项目的点击概率不仅取决于他自己的位置,而且受到其他所有项目的位置和相关性影响。模型的输入包括项目特征和项目位置,通过项目特征计算相关性得分,利用注意机制捕捉项目之间的交叉位置信号,以计算点击预测得分,最后融合两个得分,得到预测点击概率(下图)。

偏差与趋势分析 偏差趋势分析报告_python_41

Mitigating Sentiment Bias for Recommender SystemsSIGIR 2021

偏差与趋势分析 偏差趋势分析报告_机器学习_42

关键词:sentiment bias

偏差与趋势分析 偏差趋势分析报告_机器学习_43

本文首次提出推荐系统中一种新的偏差:情感偏差,具体表现为许多推荐模型对具有更多积极反馈的用户/物品提供的推荐更准确(相比于具有更多消极反馈的用户/物品)。情感偏差给那些严厉的用户以及小众的物品(具有更多负面反馈)带来了低质量的推荐,并且这种偏差同流行度偏差存在区别。

偏差与趋势分析 偏差趋势分析报告_python_44

如上图所示,将用户和物品分为积极和消极两类,实验表明推荐系统在积极用户(物品)上的明显表现优于消极用户(物品)。

偏差与趋势分析 偏差趋势分析报告_偏差与趋势分析_45

这项工作发现,降低物品情感偏差很可能会同时降低用户情感偏差,所以论文针对物品做分类处理,针对推荐系统提出了一个新的优化损失目标(下式),包括一个原始的推荐损失函数和三个额外的正则化项,分别对应物品偏差正则化 / 信息熵正则化 / 嵌入正则化。

偏差与趋势分析 偏差趋势分析报告_人工智能_46


参考文献

[1] https://zh.wikipedia.org/wiki/辛普森悖论 

[2] A survey on bias and fairness in machine learning. 

[3] Tutorial on Fairness of Machine Learning in Recommender Systems. SIGIR 2021. 

[4] Model-Agnostic Counterfactual Reasoning for Eliminating Popularity Bias in Recommender System. KDD 2021 

[5] Causal Intervention for Leveraging Popularity Bias in Recommendation. SIGIR 2021 

[6] Dual Unbiased Recommender Learning for Implicit Feedback. SIGIR 2021 

[7] Controlling Fairness and Bias in Dynamic Learning-to-Rank. SIGIR 2020 

[8] Popularity Bias in Dynamic Recommendation. KDD 2021 

[9] Maximizing Marginal Fairness for Dynamic Learning to Rank. WWW 2021 

[10] Cross-Positional Attention for Debiasing Clicks. WWW 2021 

[11] Mitigating Sentiment Bias for Recommender Systems. SIGIR 2021

特别鸣谢

感谢 TCCI 天桥脑科学研究院对于 PaperWeekly 的支持。TCCI 关注大脑探知、大脑功能和大脑健康。