推荐系统中的偏差
Last updated
Was this helpful?
Last updated
Was this helpful?
推荐系统中的数据分为显示反馈数据(多值,比如打分数据)和隐式反馈数据(二值,比如点击数据),在显示数据中,存在选择偏差(selection bias)和一致性偏差(conformity bias);在隐式数据中,存在曝光偏差(exposure bias)和位置偏差(position bias)
Selection bias:当用户能够自由地选择给哪些物品打分的时候,则评分数据不是随机丢失的(missing not at random, MNAR),观测到的交互数据的分布将不能代表整体数据的分布。(当用户拥有自由选择权的时候,更倾向于给自己喜欢的物品打分。)
Conformity bias:用户的打分会倾向于和群体一致,即使群体的打分有时候和用户的判断是有区别的,用户的这种倾向将使得评分并不能准确反映用户的偏好。大部分人都有从众的倾向,当用户发现自己的判断与大众不一致时,很可能改变自己的评分,而让自己的评分向大众的评分靠拢。
Exposure bias:用户只会暴露在一部分的物品上,因此没有交互过的物品不一定是用户不喜欢的,还可能是用户没看到。用户和物品没有交互存在两种可能性:用户没看到物品、用户不喜欢物品,直接讲没有交互过的物品当作负样本(用户不喜欢)会引入偏差。
Position bias:用户更倾向于和推荐列表中位置比较靠前的物品交互,因此在推荐列表中用户和物品的交互不仅由用户的兴趣决定,还很大程度上由物品的排名决定。相关研究表明,用户在垂直展示的列表中,更倾向于点击排名靠前的物品,而忽略排名靠后的物品。
Inductive bias:模型可能会做一些假设,以学习更好的目标函数,产生比仅仅依靠训练集泛化性能更好的模型。模型的泛化性能可以看作是机器学习的核心目标,合理的假设能够提升模型的泛化性能,比如矩阵分解(MF)模型中的点积假设,分解机(FM)模型里的交互项假设,等等。
Popularity bias:流行的物品将在推荐结果中有着比预想更高的流行度。长尾现象在推荐系统中广泛存在,即一小部分物品占据了推荐数据中大部分交互。当在长尾分布的数据上训练模型时,模型将倾向于给流行物品更高的打分,给不流行的物品更低的打分,这会导致在推荐列表中,模型也更倾向于推荐流行的物品。
Unfairness:系统为了另一部分个人或群体而给特定的个人或群体以不公平的对待。不公平的推荐系统将由于其本身的伦理问题被社会的敏感领域限制,比如可能存在的性别歧视、种族歧视等。当数据分布不均匀的时候,模型很可能学出敏感的特征(比如性别)和结果(是否给予工作机会)的相关性,这将会导致不公平现象。
推荐系统构成动态的反馈环路,动态的环路会增加 bias。举个例子,流行的物品在推荐结果中有更高的出现频率、展示给用户后将会有更多关于流行物品的交互、更多的交互将使得模型更容易推荐流行的物品。
倾向评分(propensity score):该方法来源于统计学,是处理观测数据(observational data)的常用方法。在推荐系统中应用该方法去偏的步骤:首先假设观测数据的产生机制,然后在数据中加入惩罚项(Inverse propensity score, IPS)进行去偏。在训练阶段使用该方法,可以使训练出的模型更加可靠;在测试阶段使用该方法,可以使对模型的评估更准确。
因果图(causal graph):该方法假设产生数据的内在因果效应,并用因果图刻画该因果效应。与 IPS 方法不同,该方法显示地建模数据生成过程,在测试阶段只保留用户偏好的部分。如果对数据产生的机制假设合理,因果图将取得很好的效果。
均匀数据(uniform data):从数据来看,bias 产生是因为数据是观测(observation)到的,那么一个直接减弱 bias 的方法在于引入更合理的实验(experiment)数据,比如引入一些随机流量、随机地调查用户对于物品的评分等等,这些均匀数据的引入将有利于减弱 bias。