2006-2020发表的有关推荐系统去偏的论文统计:
偏差发生在推荐系统的不同阶段:
根据下图有两个发现:
用户倾向于和组内的其他人评分保持一致。
当用户只接触特定项目的一部分时,会出现暴露偏差,因此未观察到的交互并不总是代表负面偏好。
位置偏差发生在用户倾向于与推荐列表中较高位置的项目交互时,而不管项目的实际相关性如何,因此交互的项目可能不是高度相关的。
归纳偏差是指模型为更好地学习目标函数和对训练数据以外的数据进行泛化而做出的假设。
将预测推广到未见的例子的能力是机器学习的核心。如果没有对数据或模型的假设,就无法实现泛化,因为看不见的示例可能具有任意的输出空间。类似地,构建RS需要添加一些关于目标函数性质的假设。例如Johnson et al.[38]假设可以通过嵌入内积来估计一个交互作用,而He et al.[39]则采用神经网络作为更好的泛化方法。除了目标函数,在其他方面增加了归纳偏差。一个例子是自适应负采样器[40],[41],[42],[43],它旨在对“困难的”实例进行过采样,以提高学习速度,即使最终的损失函数将与原来的显著不同。另一个例子是离散排序模型[44],[45],[46],它将用户和商品作为二进制代码嵌入,以提高推荐效率为代价,牺牲了表示能力。
受欢迎的项目甚至比它们的受欢迎程度更频繁地被推荐。
忽视流行偏见会导致很多问题:
推荐算法系统地、不公平地歧视某些个人或个人群体,而偏袒其他人。
现实世界的推荐系统通常会产生一个有害的反馈循环。前面的小节总结了在循环的不同阶段中发生的偏差,而这些偏差可能会随着时间的推移在循环中进一步加强。以位置偏差为例,排名靠前的项目通常受益于更大的流量,这反过来提高了它们的排名突出度和接收的流量,从而导致一个更富的场景[36]。许多研究者还研究了反馈回路对受欢迎度偏差[57],[58],[59]的影响。他们的模拟结果表明,反馈循环会放大流行偏差,受欢迎的项目变得更受欢迎,不受欢迎的项目变得更不受欢迎。这些被放大的偏见还会减少多样性,加剧用户的同质化,产生所谓的“回音室”或“过滤气泡”[60],[61]。
表2列出了已有的推荐算法处理的偏差类型及采用的方法:
在观察到的评分数据上训练和测试推荐模型会产生选择偏差,因为观察到的评分并不是所有评分的代表性样本。本节首先介绍如何在有偏差的评分数据下评估推荐模型,然后回顾在推荐训练中减轻选择偏差的四种方法。
常用的评价指标有 Mean Absolute Error (MAE), Mean Squared Error (MSE), Discounted Cumulative Gain@k (DCG@k) or Precision (Pre@k):
H
(
R
^
)
=
1
n
m
∑
u
=
1
n
∑
i
=
1
m
δ
u
,
i
(
r
,
r
^
)
(1)
H(\hat{R})=\frac{1}{n m} \sum_{u=1}^{n} \sum_{i=1}^{m} \delta_{u, i}(r, \hat{r}) \tag1
H(R^)=nm1u=1∑ni=1∑mδu,i(r,r^)(1)
M
A
E
:
δ
u
,
i
(
r
,
r
^
)
=
∣
r
u
,
i
−
r
^
u
,
i
∣
M
S
E
:
δ
u
,
i
(
r
,
r
^
)
=
(
r
u
,
i
−
r
^
u
,
i
)
2
(2)
\begin{array}{c} \mathrm{MAE}: \delta_{u, i}(r, \hat{r}) & = & \left|r_{u, i}-\hat{r}_{u, i}\right| \\ \mathrm{MSE}: \delta_{u, i}(r, \hat{r}) & = & \left(r_{u, i}-\hat{r}_{u, i}\right)^{2} \end{array} \tag2
MAE:δu,i(r,r^)MSE:δu,i(r,r^)==∣ru,i−r^u,i∣(ru,i−r^u,i)2(2)
此处:
由于真实评分通常是部分观察到的,传统的评价通常只使用观察到的条目的平均值:
H
^
naive
(
r
^
)
=
1
∣
{
(
u
,
i
)
:
O
u
,
i
=
1
}
∣
∑
(
u
,
i
)
:
O
u
,
i
=
1
δ
u
,
i
(
r
,
r
^
)
(4)
\hat{H}_{\text {naive }}(\hat{r})=\frac{1}{\left|\left\{(u, i): O_{u, i}=1\right\}\right|} \sum_{(u, i): O_{u, i}=1} \delta_{u, i}(r, \hat{r}) \tag4
H^naive (r^)=∣{(u,i):Ou,i=1}∣1(u,i):Ou,i=1∑δu,i(r,r^)(4)
这不是对真实性能的无偏估计:
E
O
[
H
^
naive
(
r
^
)
]
≠
H
(
r
^
)
(5)
E_{O}\left[\hat{H}_{\text {naive }}(\hat{r})\right] \neq H(\hat{r}) \tag5
EO[H^naive (r^)]=H(r^)(5)
Bias and Debias in Recommender System: A Survey and Future Directions