Fairness in Recommendation: A Survey 阅读笔记

论文链接

搁置了许久的毕设,又要开始重新启航。
2022年的最后一段时间过得真是很崎岖,2023希望大家平安喜乐。
课设还未结束,但是毕设不能再拖,开工啦!

这又是一篇综述,有关推荐系统中的公平性,之前有两篇综述都更宏观,讲了机器学习领域的公平性,当然推荐系统也在其中,这次就读的细一点,从推荐系统方向来看,也许不久的将来我也会去做推荐系统与RL的交叉了。
写在前面:看这篇综述时,有参考这篇知乎内容。

0. 摘要

关键内容是之前未有过系统的总结fairness in recommendation这一话题,很难让新的研究者了解到这一领域并展开研究。
本文先从机器学习领域的公平性谈起,有一个宏观的公平性研究概念,再介绍推荐系统中的公平性,重点关注当前公平性定义的分类、提高公平性的技术以及推荐系统中用于公平性研究的数据集。最后还探讨了公平性研究面临的挑战和机遇,以期促进公平推荐研究领域的发展。

1. 引言
  1. 推荐系统的不公平现象:
    ① 工作推荐系统:种族/性别歧视
    ② 电子商务推荐系统:看popular
    ③ 新闻推荐系统:可能由于“回声室效应”
  2. 本文的脉络:
    ① 简明介绍ML中的公平性研究,尤其是分类与排序任务中;
    ② 从四个角度介绍推荐系统的公平性研究:分类,方法,数据集与挑战
  3. However, most of the works on bias in recommendation focus on improving the recommendation accuracy or robustness in out-of-distribution scenario through debiasing methods instead of promoting fairness.
2. 机器学习中的公平性研究
2.1. 不公平的原因

caused by various forms of biases

  1. 数据偏差
    统计偏差: 发生在数据收集存储阶段,由于实验设计或者数据处理时,往往会使得最终的数据并不能代表原始数据的真实分布。
    早已存在的偏差: 数据产生阶段存在偏见,即原始数据本身就反映了某种偏差。
  2. 算法偏差
    举例:
    Presentation Bias表示偏差
    当展示的信息以一种具有偏差性质的方法展示时,就会出现表示偏差
    例如,排序偏差,越靠前的位置会得到更多的曝光,导致更多的用户点击,而靠后的则相反,虽然这些靠后的物品和靠前的物品在相关度上可能相差无几;流行度偏差(在推荐系统中),即相比那些不那么受欢迎但同样相关甚至更相关的item,互动更多的item反而会被更频繁地推荐,获得更多曝光。
    Evaluation Bias评估偏差
    当在模型评估中使用不合适的benchmark时,通常会出现评估偏差

数据偏差和算法偏差其实形成了一个反馈环:用户行为本身具有一定偏见,导致收集的是本身自带偏差的数据,被用来训练算法(数据收集和存储阶段),用户行为又会受到有偏算法的影响,又会引入新的数据偏差(数据产生阶段)。面对相互交织在一起的偏差,理清彼此之间如何相互影响,并针对性解决是非常重要的。

  1. 其他原因
    例如,不同的公平要求相互冲突,即不能同时得到满足。
2.2. 公平机器学习方法
  1. 预处理方法:针对训练数据进行去偏
    方法:①改变某些数据点的标签;②映射原始数据到新的无偏空间中。
    优点:转换后的数据可以用于训练任何下游(downstream)算法,而无需进行一定的假设。
    缺点:无法确保准确度;无法消除测试集数据上的不公平。
  2. 在处理方法through modifying the learning process
    将公平性指标纳入到学习任务的目标函数中;
    需平衡准确度与公平性;
    主要的缺点是这种方法通常会导致一个非凸的优化问题,而不能保证最优性。
  3. 后处理方法apply transformations to the model output
    优点:把中间推荐模型视作黑盒,具有模型无关的灵活性;不需要修改模型和数据,实现相对较好的准确度和公平。
    缺点:当测试阶段无法获得敏感信息(会引起偏见的那些特征,e.g.,性别、种族)时,那算法就不能应用。
2.3. 公平性定义

no consensus on fairness definitions
三类定义:Group Fairness; Individual Fairness; and Hybrid Fairness

  1. Group Fairness组公平
    研究对象通常根据一定的分组方法被分为不同的组,最常见地,我们会根据某个敏感特征划分。组公平的基本思想是要保护组和优势组能够被平等对待。
    例如:研究在招聘决策系统中的性别歧视问题,首先将候选人根据他们的性别分到不同的组,然后以组的工资或招聘率来衡量组公平。
  2. Individual Fairness个体公平
    similar individuals should be treated similarly
    相似度是通过对象的特征或者特征组进行定义的

注意:组公平和个体公平定义是截然不同的两个概念。讨论个体公平时,我们会把相似个体分到一个组里,然后要求这个组里的个体都应该被公平对待;而组公平是要在组这个层面上,令不同组能够被公平对待。个体公平可能不会保证组公平,可能同一组的人得到公平的对待,但有些组比其他组好得多即无法保证组公平。反之亦然,因此到底要定义组公平还是个体公平,需要谨慎选择。

  1. Hybrid Fairness混合公平
    目的:multiple fairness definitions should be satisfied at the same time
    例如,both user-side and item-side 等。
    但,同公平定义可能是相互矛盾的。
3. 分类任务中的公平性

推荐问题有时可以被建模为一个分类任务,例如,当我们试图预测用户是否会点击一个item时。

3.1. 公平定义
  1. Group fairness组公平定义
    绝大多数关于公平性分类任务的定义都是限制在组公平定义上。
    组公平定义往往会涉及到分类算法预测的阳性率指标Pr( y ^ \widehat{y} y =1)和混淆矩阵相关指标(TPR,FPR,TNR,FNR),前者希望不同组的预测阳性率相同,后者希望能在更细粒度层面缩小不同组的差异。
    ① predicted positive rate-based metrics:
    Statistical Parity(Demographic Parity or No Disparate Impact);
    ② confusion matrix-based metrics:
    Equal Opportunity; Equalized Odds; Overall Accuracy Equality; Equalizing Disincentives; Treatment Equality;
    这些具体定义有在我的这篇博客另一篇综述里介绍,本次博客主要详细记录推荐系统的公平性研究。
  2. Individual fairness个体公平定义
    举例:
    ① Counterfactual Fairness 反事实公平
    对任意个体,在反事实世界和真实世界中,预测结果应该一样:
    在这里插入图片描述 常用的实现反事实公平的技术有:因果推断中的干预intervention、直接移除敏感属性以及其后代相关属性、变分编码器variation autoencoders、对抗学习adversarial learning、数据预处理、因果正则化causal regularization、数据增强等。
    ② Fairness Through Awareness
    要求任意两个非敏感特征相近的个体应该得到相似的预测结果
    个体之间的差异程度d(x1,x2)应该是预测结果差异值F( y 1 ^ \widehat{y_1} y1 , y 2 ^ \widehat{y_2} y2 )的上界:
    在这里插入图片描述
3.2. 促进分类任务中公平性的方法
  1. 预处理阶段:
    massaging:将敏感特征S=s的个体标签从"-“改为”+“,其余S!=s的集合里中随机选取相同数量的个体,把”+“改为”-"
    re-weighting:减少敏感特征与标签之间的依赖关系。将S=s集合中标签为"+“的实例赋更高的权重(与S=s且标签为”-“的集合相比),而将S!=s集合中标签为”+“的实例赋更低的权重(与S!=s且标签为”-"的集合相比)
  2. 在处理阶段:
    对目标函数施以公平性约束条件
  3. 后处理阶段:
    常用方法有:调整分类阈值、特征重加权。
    特征重加权:需要找到影响公平性因素的特征,直接丢弃或者减小其权重。
4. 排序任务中的公平性

Recommendation algorithms can usually be considered as a type of ranking problem.

4.1. 排序任务中的公平定义
  1. 排序任务可分为两类:
    ① Score-based Ranking:score直接用给定的函数计算得到
    ② Learning to Rank:通过模型预估得到score
  2. 本节主要探讨Learning to Rank中的排序公平性问题
  3. 现有大多数公平排序方法都是用list-wise的定义,即衡量结果公平需要使用所有的结果列表。
  4. 基于概率的公平Probability-based Fairness:
    protected candidates在排序结果中的出现比例要在给定的最大/最小范围内(只能组公平角度考虑):
    在这里插入图片描述
  5. 基于曝光/注意的公平Exposure/Attention-based Fairness:
    既可以量化个体公平还可以量化组公平
    曝光资源是极其有限的,因此,基于曝光的公平指标是与不同组的曝光度相关的,理想情况是各组的曝光值正比于其与搜索词的相关度。
    ① 基于曝光的组公平定义如下:
    在这里插入图片描述
    ② 基于曝光的个体公平如下:
    在这里插入图片描述
4.2. 方法
  1. 预处理阶段:
    常用方法为将用户记录映射到一个低秩表征空间中
    低秩表征可形式化为概率聚类问题,对于每个样本xi,xi被分配到某个簇的概率ui反应了该样本与簇之间的distance,因此各个样本的理想低秩表征即映射函数可以写为
    在这里插入图片描述追求公平即给定两样本 xi 和 xj,用 xi* 和 xj* 表示只包含非敏感特征的表征,那么要让:
    在这里插入图片描述公平目标可定为损失函数的形式:
    在这里插入图片描述

  2. 在处理阶段:
    从零开始学习一个公平的排名模型,例如在目标函数中加入公平限制项

  3. 后处理阶段:
    对排序结果进行重排序实现公平
    给定单个查询q,排序算法用于得出排序结果r,r对q的效用值记作U(r|q),公平排序是要把公平约束作为优化目标之一,然后模型最大化效用和公平值。
    一种方法是学习一个概率排序矩阵P,其中Pi,j表示第i个文档放在第j个位置的概率,这个矩阵需要满足行之和和列之和均为1,约束问题形式化如下:
    在这里插入图片描述公平约束是要以最优化某个公平定义为目标,论文中是以最简单的统计均等为例,希望各组的曝光期望相等。文档di的曝光值定义如下
    在这里插入图片描述
    其中vj表示第j个位置的权重大小。自然我们可以得到第Gk组的曝光和
    在这里插入图片描述
    那么统计均等就是
    在这里插入图片描述
    很多情况下,这种约束问题最终转化为了线性规划约束问题,需要依赖各种工具进行求解。

5. 推荐任务中的公平性
5.1. 推荐系统任务
  1. 预测用户对item的偏好得分score,使模型可以根据预测得分向每个用户推荐一个top-𝑁推荐列表{ 𝑣 1 , 𝑣 2 , ⋅ ⋅ ⋅ , 𝑣 𝑁 ∣ 𝑢 𝑖 𝑣_1,𝑣_2,···,𝑣_𝑁|𝑢_𝑖 v1,v2,⋅⋅⋅,vNui}。
  2. 大多数协同过滤 Collaborative Filtering(CF)和协同推理 Collaborative Reasoning(CR)方法都是直接基于历史交互行为训练模型;
    基于内容的模型 content-based recommendation models、混合模型 hybrid models等则会利用一些user/item画像信息或者其他辅助信息去帮助训练模型。
5.2. 推荐系统中的不公平现象
  1. 活跃组推荐质量很高,而占据用户数量大多数的非活跃组却得到较差的推荐。
  2. 即使item的相关度score差不多,但是呈现的曝光却天差地别,因为存在位置偏差(用Discounted Cumulative Gain measure:1/log(1 + 𝑖)来计算每个位置的曝光度,可能相隔的位置没有太大距离,但是曝光度却相差很大)
5.3. 推荐系统中公平性定义分类
  1. Group Fairness vs. Individual Fairness
  2. User Fairness vs. Item Fairness

The fairness demands from user side are usually about the quality of the recommendations for them, while the fairness considerations from item side usually focus on the exposure opportunity of items in the ranking lists.

  1. Single-side Fairness vs. Multi-side Fairness
    multi-side fairness in recommender systems
  2. Associative Fairness vs. Causal Fairness
    关联公平(association fairness):降低不同个体(群组)之间统计指标的不均等程度。大多数公平性研究工作是从关联公平角度出发的。
    然而,有研究发现关联公平只是关注于数据、指标,并无法解释输出结果与输入特征之间的因果关系,因此产生了因果公平(cause fairness)。
    因果公平除了数据之外,还考虑了额外的如因果图这样的额外知识结构。因果公平一般是利用因果干预或者反事实来定义公平。
    对公平推荐中的因果关系的研究很少,但值得研究会带来新的挑战与机遇。
  3. Static Fairness vs. Dynamic Fairness
    这篇博客里综述就是按照这一分类展开的,可以有一定参考。
  4. Short-term Fairness vs. Long-term Fairness
    The short-term fairness is usually a static fairness since it only needs to
    consider the current status and achieve fairness for one-time. The dynamic fairness can be seen as a type of long-term fairness since the dynamics usually occur in the long run.
  5. Populational Fairness vs. Personalized Fairness
    可译为: 群体公平 vs. 个性化公平
    Populational vs. personalized fairness dimension emphasizes whether users have the right to tell the system what fairness consideration that they care about rather than the system designer care about
  6. Blackbox Fairness vs. Explainable Fairness
    explainable:know why a model is fair or unfair
5.4. 方法
  1. 正则化和约束优化
    目标函数可以是在公平性约束下最大化utility,或者在utility约束下最大化公平性,或者通过合理的权衡共同优化公平性和utility。
  2. 对抗学习
    通过对抗学习来减轻不公平的基本思想是通过主任务预测器对抗分类器之间进行min-max game来学习公平表示。
    预测器旨在学习推荐任务的信息表示,对抗分类器的目标是减少预测器预测出敏感属性的表示的能力,因此敏感属性信息可以从表示中被移除掉从而减轻歧视。
  3. 强化学习
    一些研究认为,推荐不仅是一个预测问题,而且是一个序列决策问题,从而引入了RL在推荐系统中的应用
    最常见的就是建模为马尔可夫决策过程,从长期动态的角度考虑RL方法来促进公平。
    公平性指标可以放在限制项,可以作为目标函数的一部分,可以融入RL框架的state向量中。
    但RL提升公平也存在一定的弊端,user tampering:推荐系统会试图利用其推荐来控制用户的观点、偏好等,不同用户收到RL推荐系统不同程度的操纵实际上也是形成了一种不公平。
  4. 因果方法
    目标:研究数据和模型之间的潜在关系,如敏感变量与输出决策之间的因果效应,非敏感变量与敏感变量之间的依赖关系等。
    注意:因果方法的常见弊端是需要较多的先验知识来构建因果图,并且因果假设也不一定在实际应用中是成立的。
  5. 其他方法
    数据增强方法:如添加矫正数据( antidote data),例如在输入中添加新用户的评分,以提高推荐系统的公平性。
    变分自编码器VAEs(Variational Autoencoders):如将随机性纳入VAEs的操作中,例如在VAE的隐表示采样过程中添加噪声可以为推荐系统提供长期的公平性。
    自蒸馏 self-distillation:例如,利用模型对原始数据的预测作为教师,以此对增强数据上的预测进行正则化,其中增强数据是从用户行为中随机采样的。
5.5. 推荐系统研究中的公平性数据集

下面的数据集是涵盖user sensitive feature information的。

数据集描述
MovieLens电影推荐任务;涵盖1000,209个匿名用户的电影评分(1-5分);三个用户敏感特征:性别、年龄和职业
Last.FM音乐检索和推荐任务;超过20亿个user-music listening events;三个用户敏感特征:性别、年龄和国家
Last.FM- 360KLast.FM数据集的缩小版;1700万份听歌记录
RentTheRunWayuser-cloth renting interactions(用户-服装租赁);192,544条租赁记录;一个用户敏感特征:年龄
Amazon Electronics电子商务推荐任务;1,292,954份用户在亚马逊上的网上购物行为记录;一个用户敏感特征:性别
Alibabauser-page interactions [50 items per page];行为包括刷新推荐列表、点击、添加购物车、添加物品到愿望清单和购物车;两个用户敏感特征:年龄和性别
AliEC广告点击率预测任务;100,000用户数+8.8M交互(点击项);两个用户敏感特征:年龄和性别
Insurance向目标用户推荐保险产品(Kaggle数据集);5,382条交互记录;三个用户敏感特征:性别、婚姻状况和职业
Post帖子推荐任务;71,800交互数+500用户+6,000物品;一个用户敏感特征:性别
Coat训练集是有偏数据,测试集是无偏数据;训练集是用户随机选24个物品评分(自选择,所以是有选择偏差的),而测试集是随机指定16个物品进行评分的(因此是无偏的);290用户+300物品;两个用户敏感特征:年龄和性别
Sushi对寿司的评分(1-5分)预测任务;5000用户+100物品;两个用户敏感特征:年龄和性别
6. 挑战和机遇
6.1. 缺乏统一的公平性定义

① 如何同时实现多重公平性要求
② 需要理清各个公平需求之间的联系,以及是否真的需要设计如此多的公平定义
③ 在多个公平性要求相悖时,如何做到权衡
④ 当系统只允许考虑一种公平性定义时,如何选择那个最合适的(最重要的)公平性定义
⑤ 鉴于现有公平性研究工作从不同角度出发,解决不同场景的问题,采用自定义的评测指标进行公平性表现的验证,比较现有工作便有了困难,因此统一的评测指标、benchmark是非常有必要的。

6.2. 公平性与其他可信AI方向的联系

① 其他可信AI方向有可解释性、可控性、鲁棒性和隐私性。
② 公平性与其他可信AI方向之间的联系以及如何交互以促进更可信的AI系统
fairness and explainability:可解释的公平性模型以便用户信服“why this decision is fair for the user”
fairness and robustness: 分布外泛化(out-of-distribution generalization)(我的理解是:泛化到适用于不同数据集这种)
fairness and privacy:联邦学习中的公平性研究
fairness and controllability:用户是否可以自主控制选择公平需求

6.3. 因果公平技术研究较为薄弱

① 在分类和一般推荐(general recommendation)任务中已有工作探讨了因果公平技术,但在推荐问题中对因果公平性的探索仍然非常有限。
② 虽然推荐任务在某些情况下可以被定义为一个分类问题,但分类中的因果公平技术并不能直接迁移应用到推荐问题中。
③ 例如最简单的方法,即不适用敏感属性作为算法输入以切断因果联系,其实并不奏效,因为大多数基于协作学习的推荐算法,如协同过滤collaborative filtering和协同推理collaborative reasoning,都是直接从用户-item交互信息中训练出来的,并不使用用户特征,即无关敏感特征还是非敏感特征。而用户特征与行为的潜在关系早已编码在历史交互数据中,仍然是被这些方法(CF,CR)可以捕获到这些我们希望除去的因果影响。

6.4. 偏差和公平的联系

① 偏见可能是推荐系统中不公平现象的主要原因
② 现有的去偏方法大多数是关注如何去偏实现推荐准确度的提升,而其存在的公平问题并未被有效解决。而一些公平性工作却未利用去偏方法实现公平,而是如直接在优化目标上添加公平约束的方法,这一定程度上损害了已有的推荐质量。
③ 因此,探索偏差和公平的深层联系,设计能够同时提升推荐性能和公平表现的算法十分重要。

6.5. 公平性研究的实际部署应用中的注意事项

① 公平感知模型在业内的部署分为两种:面向用户的部署和面向开发人员的部署
② 面向用户的部署:侧重于向系统的真实用户提供公平感知的结果,从而直接影响用户的服务;e.g., LinkedIn
③ 面向开发人员的部署:专注于在生产环境中开发工具,以帮助开发人员更好地理解系统的不公平;e.g., Amazon SageMaker Clarify检测和监控他们的数据或模型中是否存在任何偏差以及模型所产生的结果是否公平
④ 对于多边平台,在未来重要的是了解不同的公平需求之间的差异和关系,以及了解如何从面向开发者部署转移到面向用户的部署,从而直接造福用户。

6.6. 理解公平与效应(utility)的联系

① 平衡公平与效用的难度还是很大
② 三点可供未来探索:1)已有研究表明提高面向用户的群体公平性与提高效用(如推荐准确性)并不冲突,可以相互促进;那么,探索在其他公平和效用定义下是否有可能共同改善在未来是有可能的;2)如果不可避免两者之间存在冲突,需尽可能地达到在降低微小效用的条件下提升公平,反之亦然;3)理解公平带来的利益最好应该长期、动态的去考量,而非在固定的已有数据集上评测。

6.7. 开发更好的评测指标、基准测试和仿真环境

① 未来需要广泛的努力来创建各种数据集来支持公平研究
② 研究人员在创建和发布公平研究的数据集时应该格外谨慎,如适当的用户匿名化,因为很多用户特征涉及隐私
③ 在现实生活中,系统中的许多用户可能会选择在注册时不透露自己的个人信息,甚至提供错误的个人信息。用户这样做的原因是因为他们害怕被系统不公平对待或侵犯他们的隐私。然而,如果没有这些信息,即使系统想这样做,也很难提高公平性,这便造成了信任危机带来的两难境地。因此,要建立良好的激励和建立信任,以便他们愿意提供相关信息,以支持公平促进。
④ 可以探索可靠的数据增强数据修复方法,以提高不完整数据集的质量,并开发不依赖用户敏感特征的公平感知方法。
⑤ 由于有各样的公平性定义,使得比较现有工作没有统一的标准较为困难,如果可以开发出一个系统的评估方案,使我们能够在同一维度上评估不同的公平性要求就好了。
⑥ 之前提到的长期、动态的公平是至关重要的,那这就需要建立一个完整的仿真环境来得到理想的数据。

7. 总结

以上便是这篇综述的大致阅读笔记,近30页内容,还比较通俗可以一阅,年前第一篇读起来花了三天比较拖沓,小禾🐏后毕设慢慢来叭,年前硬件课设结束就行。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值