Dynamic Causal Collaborative Filtering
动态因果协同过滤
ABSTRACT
因果图作为因果关系建模的有效工具,通常被假设为有向无环图(Directed Acyclic graph, DAG)。然而,推荐系统通常包含反馈循环,即推荐物品、将用户反馈融入模型更新并重复该过程的循环过程。**因此,将循环纳入因果图中,以准确地对推荐系统的动态和迭代数据生成过程进行建模是很重要的。**然而,反馈循环并不总是有益的,因为随着时间的推移,它们可能会鼓励越来越窄的内容暴露,如果置之不理,可能会导致回音室(echo chambers)。因此,了解什么时候推荐会导致回音室以及如何在不损害推荐性能的情况下减轻回音室是很重要的。
在本文中,我们设计了一个带有循环的因果图来描述推荐的动态过程。然后利用马尔可夫过程分析了回波室的数学性质,如导致回波室的条件。在理论分析的启发下,本文提出了一种动态因果协同过滤(𝜕CCF)模型,基于后门调整(back-door adjustment)估计用户干预后对项目的偏好,并通过反事实推理( counterfactual reasoning)缓解回音室。在真实数据集上的实验结果表明,该框架能够更好地缓解回声室的影响,同时取得与基本推荐模型相当的推荐性能。
回声室效应,意指网络技术在带来便捷的同时,也在无形中给人们打造出一个封闭的、高度同质化的“回声室”。研究者将这种效应归纳为:在网络空间内,人们经常接触相对同质化的人群和信息,听到相似的评论,倾向于将其当作真相和真理,不知不觉中窄化自己的眼界和理解,走向故步自封甚至偏执极化
KEYWORDS
协同过滤;因果机器学习;反事实推理;推荐系统;回音室
目录
1 介绍
最近研究者将因果关系纳入推荐系统,以实现在一些关键方面的因果推理,如消除偏差[5,44],促进公平性[14,30,59],提高鲁棒性[28]和增强可解释性[16,48,50]。
因果图是一种有效而强大的工具,使研究人员能够估计所需的值[17,55]。通常,因果图被构建为描述数据生成过程的有向无环图(DAG)。然而,在**真实的推荐系统中,数据的生成过程通常跨越一段时间。在此期间,系统的推荐结果会对用户的兴趣和决策偏好产生很大影响,进而影响系统接收到的反馈。这种动态过程被称为反馈环[15,21],DAG因果图可能无法准确捕捉到它。**因此,在因果图设计中引入循环可以让因果模型更全面地理解推荐系统中的动态数据生成过程。
虽然带有循环的因果图可以更好地捕捉推荐系统中动态和迭代的数据生成过程,但反馈循环的存在并不总是有益的。具体来说,反馈回路可能会缩小用户对某些内容的兴趣,从而可能进一步导致对系统[7]的参与度下降。此外,如果不加以注意,反馈回路也可能导致所谓的回音室[7,15]。了解推荐系统何时会产生回音室,以及如何在保持推荐性能的同时消除回音室至关重要。
问题:
1、如何设计一个带有循环的因果图来描述推荐的动态和迭代数据生成过程;
2、如果推荐系统不考虑回波室,系统何时会导致回波室;
3、如何在不损害推荐性能的情况下减轻回波室效应。
解决:
1、首先将因果图设计为有环有向图,以描述数据如何以动态和迭代的方式生成。
2、在构建因果图的基础上,进行数学分析,以了解系统产生回音室的条件。
3、将动态推荐过程表示为马尔可夫过程。然后将用户行为分为3种类型,验证了回声室带来的同质性的存在;
4、分析证实了所提出的因果图的合理性(第3.2节)。
除上述理论贡献外,本文工作还提供了重要的技术贡献。**本文提出一种动态因果协同过滤(𝜕CCF)推荐框架,以缓解回音室。根据展开因果图(the unfolded causal graph),应用后门调整来估计干预后的效果。在理论分析的启发下,应用反事实推理在保留推荐性能的同时减轻回声室效应(第4节)。**在两个真实数据集上进行了实验,通过测量内容多样性的变化来评估回声室的效果[15]。实验结果表明,该框架能够在缓解回声室的同时获得与基本推荐模型相当的推荐性能。
主要贡献:
1、我们设计了一个带有循环的因果图来表示推荐系统的动态数据生成过程。
2、我们将用户-系统交互表示为马尔可夫过程,以了解如果系统不能正确地处理回声室,将导致系统产生回声室的条件。
3、我们提出动态因果协同过滤(𝜕CCF),它采用后门调整来估计用户偏好,并应用反事实推理来减轻回声室。
4、在两个真实数据集上的实验表明,我们的框架可以比其他方法更好地缓解回声室,同时保持与基本推荐模型相当的推荐性能。
2 相关工作
2.1 因果推荐
因果机器学习被用来解决推荐系统中的一些关键问题。例如,研究人员利用因果模型来增强可解释性[16,47,48,50,62],促进公平性[14,29,30,59],消除偏见[5,31,38,44,51,56,57,64],提高鲁棒性[13,28],估计推荐提升[41-43],并为数据增强[52,54,58,60]实现反事实推理。在各种因果推荐模型中,因果图被证明是一种强大的工具,可以实现反事实推理。现有模型通常假设因果图是有向无环图(directed acyclic graphs, DAG)。然而,用于训练推荐系统的数据是以连续和动态的方式生成的,不能被DAG作为单个快照捕获。因此,需要一个带有循环的因果图来描述动态推荐场景。
2.2 回音室
回声室已经在社交网络[3,9,12,39,45]和观点动力学[4,26,36]等多种背景下进行了研究。同时,已经探索了内容多样性的重要性,以解决用户极化问题[2,23,27,32,34]。近年来,推荐系统中反馈环和回音室的研究受到了广泛关注[7,15,21,33]。例如,Ge等人在[15]中分析了电子商务推荐系统中的回音室特性。现有的工作已经在解决反馈回路和减轻回音室方面取得了初步进展。例如,Jiang等人[21]使用动态系统框架对用户兴趣进行建模,并将兴趣极值作为系统的退化点。然而,它们假设用户和项目彼此独立,这与协同过滤的工作原理不一致。Kalimeris等[22]研究了类似现象,并通过学习一个稳定的不动点来解决,在这个不动点上用户偏好不会随着系统推荐而改变。然而,这项工作仅限于基于矩阵分解的推荐,没有考虑因果关系。本文的工作旨在基于因果推理在更一般的环境中减轻回音室。
3 理论分析
3.1 因果图
图1(a)显示了我们设计的用于动态推荐的因果图。现有工作通常假设因果图是一个有向无环图(directed acyclic graph, DAG)。然而,正如我们之前提到的,带有循环的因果图可以更好地捕捉推荐系统的机制。我们使用大写字母(例如𝑈)来表示随机变量,使用小写字母(例如𝑢)来表示相应的具体值。我们从数据生成的角度解释我们设计的因果图的合理性,如下:
1、节点𝑈表示用户变量。更具体地说,我们将用户ID作为变量值。
2、节点𝑉表示公开的item变量。类似地,我们将物品ID作为变量值。
3、节点𝑌表示偏好得分。在这项工作中,为简单起见,我们将变量𝑌视为二元变量,即𝑌= 1表示喜欢,𝑌= 0表示不喜欢。
4、节点𝑋表示用户交互历史。更具体地说,它是一个项目id序列和用户相应的偏好分数。
5、边{𝑈,𝑋}→𝑉表示项目𝑉由用户𝑈和用户交互历史𝑋确定。
6、边{𝑈,𝑋,𝑉,𝑌}→𝑋 表示用户交互历史动态𝑋生成过程。当生成一个暴露(exposed)项𝑉=𝑣时,用户u对 𝑣作为𝑌=𝑦_𝑣 的偏好结合项𝑣将被集成到历史记录中,并将以前的历史记录更新为新的历史记录𝑋,用于估计下一个暴露项。
7、边{𝑈,𝑋,𝑉}→𝑌表示用户偏好得分由用户𝑈、用户交互历史𝑋和暴露项𝑉决定。用户-物品对的偏好不仅由其对应的(𝑢,𝑣)对决定,而且还受到用户先前交互历史的影响。//对于一个对动作片感兴趣的用户,在一开始很可能会对一部动作片获得正反馈,但如果用户已经看了那么多动作片,可能会对新电影感到厌倦,并给出负反馈。
从因果图,我们可以看到四个循环𝑋→𝑋,𝑋→𝑉→𝑋,𝑋→𝑌→𝑋和𝑋→𝑉→𝑌→𝑋。这些循环反映了用户交互历史的动态迭代更新过程,体现了推荐系统中的反馈循环。
3.2 了解回声室
系统在什么情况下会导致回波室。下面的分析针对的是不考虑回声室的推荐模型。
3.2.1 问题设置和标记
一般来说,推荐系统,特别是基于协同过滤(CF)的模型,显式或隐式地学习项目之间的相似性来进行推荐[10,61,62]。由于推荐模型能够度量相似性,因此模型能够基于相应的相似性度量对项目进行分组。假设有𝑛项和𝑑组(𝑛 》𝑑) ,我们将物品的集合记为I ={i_1,i_2,…,i_n}和组的集合C ={c_1,c_2 , · · · , c_𝑑}。我们将分组函数表示为𝐴:I→C,它根据相似度为每个物品返回一个组。
如果系统没有仔细考虑回声室,那么**相似性驱动推荐倾向于推荐与之前交互过的物品相似的物品,即它们可能与用户交互历史中的物品属于同一个组[**23,27,33]。这种倾向源于基于cf模型的原理,即过去具有相似品味的用户在未来也可能具有相似的兴趣[10]。例如,一个简单的MF模型,如[24],推荐具有更高偏好的项目,计算结果为u⊺v。一个训练良好的MF模型对交互历史中的项目产生高偏好分数,因此具有高偏好分数的推荐项目将与交互历史中的一个或多个项目相似,因为它们都与用户嵌入u相似。由于分组是基于模型学习到的相似性,因此推荐项目将与交互历史中的相似项目属于同一组。
我们将交互历史中项目的容量表示为𝑚,值得澄清的是,𝑚可以是无限的,但实际上,很久以前交互的项目可能对当前的预测几乎没有影响。我们将历史表示为一个项目序列{ℎ1,ℎ2,···,ℎ𝑚},其中ℎ_𝑖∈I。当一个新项目被添加到用户历史记录中时,第一个项目将从历史记录中删除,以保持历史记录的长度不变。对条目序列应用分组函数,得到一个历史分组序列
{
A
(
h
1
)
,
A
(
h
2
)
,
⋯
,
A
(
h
m
)
}
,
A
(
h
i
)
∈
C
s
i
m
p
l
i
f
i
e
d
:
{
A
1
,
A
2
,
⋯
,
A
m
}
,
A
i
∈
C
\{A(h_1),A(h_2),\cdots,A(h_m)\},A(h_i)\in C \\ simplified :\{A_1,A_2,\cdots,A_m\},A_i \in C
{A(h1),A(h2),⋯,A(hm)},A(hi)∈Csimplified:{A1,A2,⋯,Am},Ai∈C
因为总共有𝑑组,所以有𝑑^𝑚种可能的历史组序列。**当用户与新物品交互时,物品序列和历史组序列都会被更新。**由于不考虑回声室的推荐模型倾向于推荐与历史项目相似的项目(即最有可能属于同一组),新项目所在的组仅依赖于当前历史组序列。因此,我们可以将这个迭代过程表述为一个马尔可夫链。
我们认为马尔可夫链中的状态为历史群序列,因此有𝑑^𝑚种不同的状态。转移概率由与新元素交互的策略决定。为了分析不同用户产生回音室的情况,我们将用户行为分为以下三种类型。
1、用户只与推荐的项目互动。
2、用户完全忽略了这些建议。
3、用户可以与推荐和不推荐的项目进行交互。
3.2.2 type1
当用户只与推荐的物品进行交互时,转移概率完全由推荐模型决定。正如我们前面提到的,不考虑回音室的推荐模型倾向于推荐与历史项目属于同一组的项目。我们可以定义一般的一步转移概率如下:
P
(
{
A
1
′
,
⋯
,
A
m
′
}
∣
{
A
1
,
⋯
,
A
m
}
)
)
=
{
[
A
m
′
∈
{
A
1
,
⋯
,
A
m
}
]
P
A
m
′
i
f
A
j
′
=
A
j
+
1
,
j
=
1
,
⋯
,
m
−
1
0
o
t
h
e
r
w
i
s
e
P(\{A_1',\cdots,A_m'\}|\{A_1,\cdots,A_m\})) = \begin{cases} [A'_m\in \{A_1 ,\cdots,A_m\}]P_{A'_m} & if \ A_j' = A_{j+1},j=1,\cdots,m-1\\ 0 &otherwise \end{cases}
P({A1′,⋯,Am′}∣{A1,⋯,Am}))={[Am′∈{A1,⋯,Am}]PAm′0if Aj′=Aj+1,j=1,⋯,m−1otherwise
其中[P]代表艾弗森括号(Iverson bracket),它将语句映射为二进制值,(即,如果语句 P 为真,则取值1,否则取值0)
P
A
m
′
P_{A'_m}
PAm′代表推荐物品属于组
A
m
′
A'_m
Am′的概率。基于定义为等式(1)的一步转移概率,我们能够发现一些特殊的状态。如果
A
1
=
A
2
=
⋯
=
A
m
A_1 = A_2 = \cdots = A_m
A1=A2=⋯=Am我们有
P
(
{
A
1
′
,
⋯
,
A
m
′
}
∣
{
A
1
,
⋯
,
A
m
}
)
)
=
{
1
i
f
A
1
′
=
A
2
′
=
⋯
=
A
m
′
=
A
i
0
o
t
h
e
r
w
i
s
e
P(\{A_1',\cdots,A_m'\}|\{A_1,\cdots,A_m\})) = \\ \begin{cases} 1 &if \ A'_1 = A'_2 = \cdots=A_m' = A_i\\ 0 &otherwise \end{cases}
P({A1′,⋯,Am′}∣{A1,⋯,Am}))={10if A1′=A2′=⋯=Am′=Aiotherwise
我们称这些特殊态为吸收态;一旦用户进入这些状态,他们就不能再退出了。
定义1吸收马尔可夫链(Absorbing Markov Chains),马尔可夫链是吸收马尔可夫链,如果满足:
a)存在至少一种吸收态
b)从任意态到至少一个吸收态在有限步数内都是可能的。
基于在等式(2)中显示的转移概率,总共有𝑑吸收状态。同时,根据公式(1),我们可以推导出 P ( { A 1 ′ , ⋯ , A m ′ } ∣ { A 1 , ⋯ , A m } > 0 ) P(\{A_1',\cdots,A_m'\}|\{A_1,\cdots,A_m\}>0) P({A1′,⋯,Am′}∣{A1,⋯,Am}>0)如果 A m ′ = A m , A j ′ = A j + 1 , j = 1 , ⋯ , m − 1 A'_m =A_m,A'_j = A_{j+1},j =1,\cdots,m-1 Am′=Am,Aj′=Aj+1,j=1,⋯,m−1因此,可以通过𝑚步从任何态转变为吸收态。根据定义1,我们可以说,在这种情况下,我们有一个吸收马尔可夫链。
**转移矩阵𝑃作为一个具有𝑑吸收状态的吸收马尔可夫链,可以转化为分块矩阵,**当𝑘→∞[49]时,产生如下𝑘-step转移矩阵:
P
=
[
Q
R
0
I
d
]
⇒
l
i
m
k
→
∞
p
k
=
[
0
(
I
−
Q
)
−
1
R
0
I
d
]
P= \left[ \begin{matrix} Q &R \\ 0&I_d \end{matrix} \right] \Rightarrow lim_{k \rightarrow \infty} p^k = \left[ \begin{matrix} 0 &(I-Q)^{-1}R \\ 0&I_d \end{matrix} \right]
P=[Q0RId]⇒limk→∞pk=[00(I−Q)−1RId]
综上所述,如果用户一直与推荐项目进行交互,那么交互的项目最终会属于同一个组,不再包含其他组。这就是回音室导致同质性和极化的原因。
3.2.3 type2
如果用户完全忽略了推荐模型,那么每个组都有非零的概率进行交互。我们可以定义单步转移概率如下:
P
(
{
A
1
′
,
⋯
,
A
m
′
}
∣
{
A
1
,
⋯
,
A
m
}
)
)
=
{
[
P
A
m
′
′
i
f
A
j
′
=
A
j
+
1
,
j
=
1
,
⋯
,
m
−
1
0
e
l
s
e
P(\{A_1',\cdots,A_m'\}|\{A_1,\cdots,A_m\}))\\ = \begin{cases} [P'_{A'_m} & if \ A_j' = A_{j+1},j=1,\cdots,m-1\\ 0 &else \end{cases}
P({A1′,⋯,Am′}∣{A1,⋯,Am}))={[PAm′′0if Aj′=Aj+1,j=1,⋯,m−1else
其中
P
A
m
′
′
P'_{A'_m}
PAm′′是在没有推荐影响的情况下,用户选择与
A
m
′
A'_m
Am′组中的项目交互的概率。根据Eq.(4)所示的一步过渡概率,我们可以计算𝑘-step过渡矩阵。由于
P
A
m
′
′
P'_{A'_m}
PAm′′是任何组的非零值,因此没有吸收状态,这意味着交互历史将不会落入同一组并保持不变。我们以均匀分布作为一个简单的例子(即
P
A
m
′
′
P'_{A'_m}
PAm′′= 1/𝑑),在这种情况下,如果𝑘足够大,我们可以得到以下𝑘-step转移矩阵:
p
k
=
[
1
d
m
]
d
m
×
d
m
,
i
f
k
>
=
l
o
g
m
+
1
p^k = [\frac1 {d^m}]_{d^m \times d^m},if \ k>=log \ m+1
pk=[dm1]dm×dm,if k>=log m+1
对于这类用户来说,只要每个群体之间存在非零的交互概率,用户就可以避免回音室带来的弊端。然而,在实际应用中,考虑到项目的规模非常大,完全忽略推荐将失去个性化推荐系统所提供的优势。
3.2.4 type3
对于最后一类用户,我们将概率𝑝∈(0,1)表示为遵循推荐模型,概率1−𝑝表示为不遵循推荐模型。我们可以定义一步转移概率如下:
P
(
{
A
1
′
,
⋯
,
A
m
′
}
∣
{
A
1
,
⋯
,
A
m
}
)
)
=
{
P
A
m
′
f
p
+
P
A
m
′
′
(
1
−
p
)
i
f
A
j
′
=
A
j
+
1
,
j
=
1
,
⋯
,
m
−
1
0
e
l
s
e
P(\{A_1',\cdots,A_m'\}|\{A_1,\cdots,A_m\}))\\ = \begin{cases} P^f_{A_m'}p+P'_{A'_m}(1-p) & if \ A_j' = A_{j+1},j=1,\cdots,m-1\\ 0 &else \end{cases}
P({A1′,⋯,Am′}∣{A1,⋯,Am}))={PAm′fp+PAm′′(1−p)0if Aj′=Aj+1,j=1,⋯,m−1else
其中
P
A
m
′
f
=
[
A
m
′
∈
{
A
1
,
⋯
,
A
m
}
]
P
A
m
′
P^f_{A_m'} = [A_m' \in \{A_1,\cdots ,A_m\}]P_{A_m'}
PAm′f=[Am′∈{A1,⋯,Am}]PAm′表示推荐物品属于组𝐴’𝑚的概率,如式(1),而
P
A
m
′
′
P'_{A'_m}
PAm′′是用户在没有推荐影响的情况下选择与𝐴’𝑚组中的项目交互的概率。
注意马尔可夫链是不可约的。换句话说,在𝑚步之后,可以从任意起始状态得到任何状态,因为 P ( { A 1 ′ , ⋯ , A m ′ } ∣ { A 1 , ⋯ , A m } ) ) > 0 , ∀ A m ′ ∈ C , A j ′ = A j + 1 , j = 1 , ⋯ , m − 1 P(\{A_1',\cdots,A_m'\}|\{A_1,\cdots,A_m\})) >0,\forall A_m' \in C,A'_j = A_{j+1},j=1,\cdots,m-1 P({A1′,⋯,Am′}∣{A1,⋯,Am}))>0,∀Am′∈C,Aj′=Aj+1,j=1,⋯,m−1,由于每个状态都可以从其他状态进入,因此在类型3中,回音室的影响可以在一定程度上得到缓解。当𝑝接近1时,回声室的作用会增强。当𝑝接近0时,回声室的影响会减弱,但也失去了个性化推荐的好处。换句话说,如果选择合适的概率𝑝,用户不仅可以从推荐结果中获益,还可以避免回音室带来的同质化。
鉴于已有的一些工作[7,15]中存在回音室的证据,上述基于我们设计的因果图的分析证实了因果图的合理性。根据我们的分析,如果推荐系统不考虑回声室,则推荐是否会导致回声室则由用户行为决定。如果用户主动探索感兴趣的项目,而不是仅仅被动地与推荐项目进行交互,那么用户可能不会受到回音室的影响。如果用户只是被动地与推荐项目交互,而推荐模型没有考虑回音室,那么用户很可能会受到回音室的影响。
在实际应用中,我们无法控制用户的行为。因此,从模型设计的角度来缓解回声室对各类用户都有重要的作用。缓解回音室效应最直接的方法是使用随机推荐策略。然而,这违背了推荐的最终目标,即准确捕捉用户偏好并推荐用户可能喜欢的物品。因此,为了减少回声室而放弃推荐精度是不现实的。因此,在保持推荐性能的同时减少回声室至关重要。下一节,我们将介绍我们提出的减轻回音室的框架。
4 模型
在本节中,我们将详细介绍我们的动态因果协同过滤(𝜕CCF)框架。表1详细说明了本节中使用的主要符号。
4.1 偏好评分估计
我们在图1中的因果图,在3.1节中有相应的解释,描述了推荐中的动态数据生成过程。因此,提出的带有循环的因果图可以在时间上展开。我们捕获时间𝑡和时间𝑡−1的片段,如图1(b)所示。展开的因果关系图表示与图1(a)相同的数据生成过程,它有助于减少每个步骤中的回音室。
本文建立了一个类似于现有因果推荐模型[51,52,54]的反事实查询,即,如果一个物品被推荐了会发生什么,可以在数学上表示为𝑃(𝑦|𝑢,𝑑𝑜(𝑣))[55]。在我们的例子中,我们暂时展开因果图并估计每个时间戳的因果效应。具体来说,需要在时间𝑡估计
𝑃
(
𝑦
𝑡
∣
𝑢
,
𝑑
𝑜
(
𝑣
𝑡
)
)
𝑃(𝑦_𝑡|𝑢,𝑑𝑜(𝑣_𝑡))
P(yt∣u,do(vt)).如图1(b)所示,当我们展开设计的因果图并捕获时间𝑡的快照时,我们可以根据观测数据应用后门调整来估计干预后的效果。由于变量集{𝑈,𝑋𝑡}满足后门标准估算𝑃(𝑦𝑡|𝑢,𝑑𝑜(𝑣𝑡))(也就是说,变量𝑈块后门路径𝑌𝑡←𝑈→𝑉𝑡和可变𝑋𝑡块后门路径𝑌𝑡←𝑋𝑡→𝑉𝑡),我们能够计算𝑃(𝑦𝑡|𝑢,𝑑𝑜(𝑣𝑡))如下。
P
(
y
t
∣
u
,
d
o
(
v
t
)
)
=
∑
x
t
P
(
y
t
∣
u
,
v
t
,
x
t
)
P
(
x
t
∣
u
)
P(y_t|u,do(v_t)) = \sum_{x_t}P(y_t|u,v_t,x_t)P(x_t|u)
P(yt∣u,do(vt))=xt∑P(yt∣u,vt,xt)P(xt∣u)
由等式(7)可知,我们的因果模型与传统的协同模型之间的关键区别在于条件概率的存在性
𝑃
(
𝑥
𝑡
∣
𝑢
)
𝑃(𝑥_𝑡|𝑢)
P(xt∣u)。在现实世界中,我们表示条件概率
𝑃
(
𝑥
𝑡
∗
∣
𝑢
)
=
1
𝑃(𝑥_𝑡^∗|𝑢)= 1
P(xt∗∣u)=1对于在时间𝑡观察到的用户历史
𝑥
𝑡
∗
𝑥_𝑡^∗
xt∗,
𝑃
(
𝑥
𝑡
∗
∣
𝑢
)
=
0
𝑃(𝑥_𝑡^∗|𝑢)= 0
P(xt∗∣u)=0对于在时间t未观察到的用户历史
𝑥
𝑡
′
𝑥_𝑡'
xt′。然而,观察用户历史
x
t
∗
x_t^*
xt∗并不意味着用户注定要在t时
x
t
∗
x_t^*
xt∗与项目互动。考虑到反事实世界,如果用户有机会被推荐不同的物品,他们也可能与这些不同的物品互动,因此
𝑃
(
𝑥
𝑡
∗
∣
𝑢
)
𝑃(𝑥_𝑡^∗|𝑢)
P(xt∗∣u)不一定是零。因此,计算Eq.(7)需要在真实世界的观测数据之外进行反事实推理[55]。在下文中,我们将介绍如何利用反事实推理来估计偏好得分。
4.2 反事实推理
在我们的框架中,反事实推理的目的不仅是实现Eq.(7)的计算,而且还打破图1中的反馈回路,以减轻回声室。正如我们之前提到的,用户可能有机会在𝑡时间与属于未观察到的历史
𝑥
𝑡
′
𝑥_𝑡'
xt′的不同项目进行交互。考虑观察数据中𝑡时刻的记录
(
𝑢
,
𝑣
𝑡
,
𝑦
𝑡
)
(𝑢,𝑣_𝑡,𝑦_𝑡)
(u,vt,yt),根据式(7),用户偏好估计
𝑦
𝑡
=
𝑓
𝑡
(
𝑢
,
𝑣
)
𝑦_𝑡=𝑓_𝑡(𝑢,𝑣)
yt=ft(u,v)可表示为:
y
t
=
f
t
(
u
,
v
)
∝
𝑃
(
𝑦
𝑡
∣
𝑢
,
𝑑
𝑜
(
𝑣
𝑡
)
)
=
∑
x
~
t
P
(
y
t
∣
u
,
v
t
,
x
~
t
)
P
(
x
~
t
∣
u
)
=
E
x
~
t
∣
u
[
P
(
y
t
∣
u
,
v
t
,
x
~
t
)
]
y_t = f_t(u,v) ∝ 𝑃 (𝑦_𝑡|𝑢, 𝑑𝑜 (𝑣_𝑡))\\= \sum_{\tilde x_t}P(y_t|u,v_t,\tilde x_t)P(\tilde x_t|u) = E_{\tilde x_t|u}[P(y_t|u,v_t,\tilde x_t)]
yt=ft(u,v)∝P(yt∣u,do(vt))=x~t∑P(yt∣u,vt,x~t)P(x~t∣u)=Ex~t∣u[P(yt∣u,vt,x~t)]
我们使用
x
~
t
\tilde x_t
x~t来表示可能的用户历史,包括事实历史
𝑥
𝑡
∗
𝑥_𝑡^∗
xt∗和反事实历史
𝑥
𝑡
′
𝑥_𝑡'
xt′。基于Eq(8)的估算
𝑃
(
𝑦
𝑡
∣
𝑢
,
𝑑
𝑜
(
𝑣
𝑡
)
)
𝑃(𝑦_𝑡|𝑢,𝑑𝑜(𝑣_𝑡))
P(yt∣u,do(vt))的预期估计
𝑃
(
𝑦
𝑡
∣
𝑢
,
𝑣
𝑡
,
𝑥
~
𝑡
)
𝑃(𝑦_𝑡|𝑢,𝑣_𝑡,\tilde 𝑥_𝑡)
P(yt∣u,vt,x~t)。
4.2.1 产生反事实的历史
我们将使用生成的反事实历史来计算Eq.(8)并减轻回声室。特别是,我们设计了一种基于启发式的方法来生成反事实历史。
首先,我们看一个如何在反馈循环中生成历史序列的示例。考虑在𝑡−1时间为用户𝑢观察到的状态 ( 𝑢 , 𝑥 t − 1 ∗ ) (𝑢,𝑥^*_{t−1}) (u,xt−1∗)。
根据观察到的历史
x
𝑡
−
1
∗
x_{𝑡-1}^∗
xt−1∗,系统可以推荐项目
v
𝑡
−
1
∗
v_{𝑡-1}^∗
vt−1∗,如果用户𝑢被动地接受推荐的项目
v
𝑡
−
1
∗
v_{𝑡-1}^∗
vt−1∗并喜欢它,那么
v
𝑡
−
1
∗
v_{𝑡-1}^∗
vt−1∗和
y
𝑡
−
1
∗
=
1
y_{𝑡-1}^∗=1
yt−1∗=1将在𝑡时成为历史的一部分
x
𝑡
∗
x_{𝑡}^∗
xt∗。根据我们在3.2节中的分析,如果推荐模型没有考虑回音室,那么这类用户会受到回音室的影响。在现实世界的推荐系统中,我们不能强迫用户主动探索不同的项目。相反,我们让用户主动探索反事实世界中的不同项目。遵循反事实推理的最小变化原则[47,48,52,55],我们替换了时间点观察到的相互作用𝑡−1,以生成时间点𝑡的反事实历史:
x
t
′
←
x
t
−
1
∗
,
v
t
−
1
′
,
y
t
−
1
′
x_t' \leftarrow x_{t-1}^*,v'_{t-1},y'_{t-1}
xt′←xt−1∗,vt−1′,yt−1′
直观地说,这代表了两种可能的情况:
1)用户仍然与推荐项目交互 𝑣 t − 1 ∗ 𝑣_{t-1}^* vt−1∗,但有不同的偏好 𝑦 𝑡 − 1 ′ 𝑦'_{𝑡−1} yt−1′(即 𝑦 𝑡 − 1 ′ = 0 𝑦'_{𝑡−1}=0 yt−1′=0如果 𝑦 𝑡 − 1 ∗ = 1 𝑦^*_{𝑡−1}=1 yt−1∗=1);
2)用户忽略项目 𝑣 t − 1 ∗ 𝑣_{t-1}^* vt−1∗,并与不同的项目 𝑣 t − 1 ′ 𝑣'_{t-1} vt−1′交互并喜欢它(即 𝑦 𝑡 − 1 ′ = 1 𝑦'_{𝑡−1}=1 yt−1′=1)。
为了减少回音室,用户应该与与推荐项目不相似的项目
𝑣
t
−
1
∗
𝑣_{t-1}^*
vt−1∗进行交互,我们选择与推荐项目
𝑣
t
−
1
∗
𝑣_{t-1}^*
vt−1∗相似性最小的反事实项目
𝑣
t
−
1
′
𝑣'_{t-1}
vt−1′,以最大限度地减轻回声室
v
t
−
1
′
=
a
r
g
v
m
i
n
S
i
m
i
l
a
r
i
t
y
(
v
,
v
t
−
1
∗
)
v'_{t-1} = arg_vmin\ Similarity(v,v^*_{t-1})
vt−1′=argvmin Similarity(v,vt−1∗)
在这里,相似度是通过两个条目嵌入之间的点积来计算的。值得一提的是,反事实项目
𝑣
t
−
1
′
𝑣'_{t-1}
vt−1′不是一个真实的互动,也不是一个在现实中需要推荐的项目。
4.2.2 计算期望
假设我们为用户𝑢在时间𝑡生成了𝑛反事实历史
{
𝑥
𝑡
′
(
1
)
,
⋅
⋅
⋅
,
𝑥
𝑡
′
(
𝑛
)
}
\{𝑥_𝑡'(1),···,𝑥_𝑡'(𝑛)\}
{xt′(1),⋅⋅⋅,xt′(n)}。然后根据公式(8)利用事实历史
𝑥
𝑡
∗
𝑥_𝑡^∗
xt∗计算和反事实历史
{
𝑥
𝑡
’
(
𝑖
)
}
i
=
1
n
\{𝑥_𝑡^{’(𝑖)}\}^n_{i=1}
{xt’(i)}i=1n计算出
𝑃
(
𝑦
𝑡
∣
𝑢
,
𝑑
𝑜
(
𝑣
𝑡
)
)
𝑃(𝑦_𝑡|𝑢,𝑑𝑜(𝑣_𝑡))
P(yt∣u,do(vt)),为简单起见,我们认为
𝑃
(
𝑥
~
𝑡
∣
𝑢
)
𝑃(\tilde 𝑥_𝑡|𝑢)
P(x~t∣u)是事实和反事实历史上的分段均匀分布,即式11:
P
(
x
~
t
∣
u
)
=
{
α
w
h
e
n
x
~
t
=
x
t
∗
β
w
h
e
n
x
~
=
x
t
‘
(
i
)
,
i
∈
{
1
,
2
⋯
n
}
,
α
+
n
β
=
1
P(\tilde x_t |u) = \begin{cases} \alpha&when\ \tilde x_t = x_t^*\\ \beta & when\ \tilde x = x_t^{‘(i)},i \in \{1,2 \cdots n\} \end{cases},\alpha +n\beta =1
P(x~t∣u)={αβwhen x~t=xt∗when x~=xt‘(i),i∈{1,2⋯n},α+nβ=1
其中𝛼是事实示例
𝑥
𝑡
∗
𝑥_𝑡^∗
xt∗的概率,𝛽是每个反事实示例
𝑥
𝑡
′
(
𝑖
)
𝑥_𝑡^{'(𝑖)}
xt′(i)的概率,由于
𝑥
𝑡
∗
𝑥_𝑡^∗
xt∗已经观察到,我们对
𝑥
𝑡
∗
𝑥_𝑡^∗
xt∗应用比
𝑥
𝑡
′
(
𝑖
)
𝑥_𝑡^{'(𝑖)}
xt′(i)更高的概率,即𝛼>𝛽>0.然后我们有式12:
P
(
y
t
∣
u
,
d
o
(
v
t
)
)
=
∑
x
~
t
P
(
y
t
∣
u
,
v
t
,
x
~
t
)
P
(
x
~
t
∣
u
)
=
α
P
g
(
y
t
∣
u
,
v
t
,
x
t
∗
)
+
β
∑
i
=
1
n
P
g
(
y
t
∣
u
,
v
t
,
x
t
’
(
i
)
)
P(y_t|u,do(v_t)) = \sum _{\tilde x_t} P(y_t|u,v_t,\tilde x_t)P(\tilde x_t |u)\\ = \alpha \ P_g(y_t|u,v_t,x_t^*)+\beta \sum_{i=1 }^n P_g(y_t|u,v_t,x_t^{’(i)})
P(yt∣u,do(vt))=x~t∑P(yt∣u,vt,x~t)P(x~t∣u)=α Pg(yt∣u,vt,xt∗)+βi=1∑nPg(yt∣u,vt,xt’(i))
我们用𝑃𝑔表示基本推荐算法的概率估计。
正如我们在4.2.1节中提到的,反事实历史直观地表示了用户忽略推荐项目时可能的历史记录。此外,如果我们将事实历史作为以下推荐系统的结果,则等式(12)中的概率𝛼可以被认为与等式(6)中的概率𝑝具有相同的含义。正如我们在3.2节中提到的,如果选择合适的概率𝑝,用户将从个性化推荐中获益,同时避免回音室带来的同质化。我们将在5.7节探讨概率的影响𝛼。
5 实验
在本节中,我们将首先描述评估指标、数据集、基线和实现细节,然后提供我们的结果和讨论
5.1 回声室效应的评价
回声室将导致同质性和极化,因此随着时间的推移,系统将缩小用户对某些特定内容的接触。因此,与[15]类似,我们通过测量内容多样性的变化来评估回声室的效果。根据[15,23],我们使用成对距离的平均值(即项目嵌入之间的欧氏距离)来衡量内容多样性,并使用内容多样性的时间变化来衡量推荐系统的回声室效应。
5.2 数据集描述
实验在两个真实数据集Amazon1[35]和Movielens2[18]上进行。更具体地说,我们使用亚马逊的电子产品类别和Movielens的Movielen-1m。
对于所有数据集,在之前的工作中,我们认为评分≥4是正反馈(喜欢),评分≤3是负反馈(不喜欢)。同时,对于两个数据集的所有三个阶段,我们应用留一法来分割训练、验证和测试数据[63]。
5.3 基线模型
我们还采用了其他6个框架进行比较,包括一个重排序框架和5个因果学习框架。
**MMR[**6]是一种信息检索重排序模型,旨在最大化最终检索到的top- ranking条目的相关性和新切性。
IPS[44]是一种基于逆倾向得分的模型,它使用倾向估计器对训练样本重新加权以消除流行度偏差。更具体地说,我们将修剪的倾向得分作为[40]来减少IPS的方差。
CausE [5]分别为无偏数据和有偏数据创建两组嵌入,并应用正则化以迫使两组嵌入相似。
CCF[55]是一种利用反事实历史并应用反事实约束来估计因果偏好的因果协同过滤框架。
DICE[64]是一个流行偏差问题的框架,它将用户的兴趣和一致性分解为两组嵌入。
MACR[53]是一种模型无关的框架,用于缓解推荐系统中的流行度偏差问题,根据因果图进行多任务训练,以评估不同原因对排名得分的贡献。
最后,我们使用𝝏CCF来表示我们的动态因果协同过滤框架。
将上述框架应用于三个推荐模型,包括两个序列模型和一个推理模型。
GRU4Rec[19]是一个基于会话的推荐模型,它使用循环神经网络(特别是门控循环单元(GRU))来捕获序列模式。
STAMP[37]是短期注意力/记忆优先模型,采用注意力机制同时对用户短期和长期偏好进行建模。
NCR[8]是一种神经协同推理模型,它利用神经逻辑推理在逻辑空间中进行推荐。
5.4 实施细则
在推荐性能方面,我们将模型作为top-𝐾推荐任务进行评估。对于验证集和测试集中的每个用户,我们随机抽样100个负面物品用于排名评估,其中负面物品要么是负面反馈物品(即用户不喜欢的物品),要么是无交互的物品。采用4个评价指标对模型进行评价,其中2个指标是基于抽样测试数据的排序计算得到的nDCG@10和Hit@10指标,另外2个指标是基于修正排序计算得到的nDCG@10和Hit@10指标为[25],以获得公正的评价(表示为u_nDCG@10和u_Hit@10)。对于缓解回声室的性能,我们根据长度为10的建议列表评估内容多样性的变化(即,在5.1节中介绍)。
对于超参数,我们将嵌入维数设为64,神经网络结构是一个维数为64的两层MLP结构。我们将学习率设置为0.001,ℓ2正则化权重设置为1e-6。对于所有基础模型,我们将历史的最大长度设置为10。对于我们的框架,我们为每个正的用户-项目对生成9个反事实历史(即等式(12)中的𝑛),并将事实概率𝛼设置为0.3。我们将在5.7节讨论这两个参数的影响。我们报告了每个模型在基于nDCG@10的验证数据上的最佳性能。对于所有基础模型,我们首先在第一阶段的数据上训练基础模型,以确保第一阶段的内容多样性在应用框架之前和之后是一致的。然后,在阶段2和阶段3的数据上,分别训练有和没有框架的基础模型,以衡量内容多样性的变化。
5.5 结果与讨论
在表3中,我们展示了在两个数据集上的三个基本推荐模型上应用我们的框架和基线框架的总体性能,包括推荐性能(NDCG@10, Hit@10, u_NDCG@10和u_Hit@10)和回声室评估(内容多样性的变化)。
从表3中,我们可以观察到,在两个数据集上将我们的𝜕CCF框架应用于所有三个基础模型后,回音室的影响得到了缓解(即,内容多样性的变化得到了降低)。在两个数据集的两个阶段中,对所有三个基础模型的内容多样性变化进行平均,内容多样性的变化降低了7.2%。在Movielens-1m数据集的第2阶段,在GRU4Rec上取得了最大的25.4%的性能提升。对于推荐性能,我们可以观察到将我们的框架应用于基本模型不会影响推荐性能。应用该框架后,我们可以取得相当的推荐性能。当对所有数据集和基本模型的所有推荐指标进行平均时,我们的𝜕CCF框架实现了1%的推荐性能提升。最大的改进是在Electronics数据集phase2的NCR u_nDCG@10上的8.6%。因此,该框架能够在不牺牲太多推荐性能的情况下缓解回音室。
基线框架包括五个因果学习框架(即IPS、CausE、CCF、DICE、MACR)和一个重排序框架(即MMR)。对于这五个因果学习框架,这些因果学习框架的目标是提高推荐性能。因此,最佳的推荐性能(即表3中下划线的推荐指标值)通常由这些因果学习框架获得。虽然这些因果学习基线框架在某些情况下有助于缓解回声室,但在大多数情况下,𝜕CCF框架提供了缓解回声室的最佳性能。在2(数据集)× 2(阶段)× 3(基础模型)= 12个案例中,𝜕CCF框架在缓解回声室方面取得了9个最佳性能。对于重排序框架MMR,它试图最大化相关性和新颖性,这是一个准确率-多样性的权衡。根据表3,我们的𝜕CCF框架实现了更好的缓解回声室的性能(即,达到9/12的最佳性能缓解回声室)。将推荐性能与基础模型进行比较,当在所有数据集和基础模型上的所有推荐指标取平均值时,MMR的推荐性能降低了1%。与MMR相比,𝜕CCF引入了反事实推理,避免了影响推荐性能。
总之,在大多数情况下,我们的框架在不牺牲推荐性能的情况下,在减轻回波室方面比其他基准框架获得了更好的性能。
5.6 用户满意度
回音室的一个后果是逐渐损害用户的满意度。在[11]模型之后,通过累积满意度来评估模型,以展示减轻回声室的性能。具体而言,用户满意度定义为:
S
a
t
i
s
f
a
c
t
i
o
n
=
{
I
n
t
e
r
e
s
t
if no echo chambers
0
e
l
s
e
Satisfaction = \begin{cases} Interest &\text{if no echo chambers} \\ 0 &else \end{cases}
Satisfaction={Interest0if no echo chamberselse
需要获取所有可能的用户-物品交互的兴趣度,这是Movielens-1m和Electronics无法满足的。因此,我们使用KuaiRec3 dataest,这是一个真实的数据集,包含一个完全可观察的用户-项目交互矩阵(即每个用户对每个视频都有反馈)。将用户-项目交互的兴趣定义为视频观看比例,该比例是观看时间长度与总视频长度的比率。在训练过程中,我们认为观看率≥2.0为正反馈(like),观看率<2.0正如作者指出的,是负面反馈(不喜欢)。按照[11]设计的退出机制,当用户感到无聊时,交互过程就会结束。具体来说,对于最近的𝑁推荐项目,如果𝑁项目中至少有𝑁𝑞项目与当前推荐项目共享至少一个属性,则交互过程结束。与[11]一样,我们设置𝑁为1,𝑁𝑞为1,并应用softmax采样来生成推荐,然后将推荐项目添加到用户的历史记录中以进行下一轮推荐。我们在表4中报告了平均累积满意度和交互长度。这里没有包括MMR框架,因为该框架是一个重排序框架,在每轮推荐一个物品时,其预测结果与原始模型相同。
从表4的结果中,我们可以观察到𝜕CCF框架在大多数情况下在累计满意度和交互长度上取得了最佳性能。在不考虑回声室的情况下,该模型可能在单轮中具有更高的满意度。但是,这样的推荐会缩小到特定内容,从而产生“回音室”,让用户感到厌烦,从而退出。在这种情况下,从长远来看,它实际上可能会损害用户的满意度。相反,𝜕CCF框架可以帮助用户探索不同的内容,以缓解回音室,这可能不会在单轮获得最佳满意度,但会在长期获得更高的用户满意度。
5.7 敏感性分析
在本节中,我们将从推荐性能和缓解回音室的角度讨论框架中两个重要参数的影响。一个是反事实历史的数量(即公式(12)中的𝑛)。另一个是事实概率的值(即公式(12)中的𝛼)。
5.7.1 反事实历史的数量
直观地说,在我们的模型中,每个反事实历史代表了用户在反事实世界中积极探索不同项目的可能结果。我们改变反事实历史的数量,同时保持其他参数不变。结果如图2所示,包括推荐性能和回波室的影响。
对于推荐性能(即图2中的(a)和©),我们可以观察到,当反事实历史的数量较少时(大于0),大多数情况下推荐性能比基础模型要好,这意味着适当的反事实推理将使推荐模型更好地捕捉用户的偏好,从而提高推荐性能。然而,当反事实历史的数量太大时,在事实概率固定的情况下,每个反事实历史(即公式(11)中的𝛽)的概率都很小。在这种情况下,过多的反事实历史可能会为推荐模型引入过多的噪声,从而影响推荐性能。对于减轻回声室的表现(即图2中的(b)和(d)),我们可以观察到,在大多数情况下,引入反事实历史有助于减轻回声室。然而,当反事实历史的数量过多时,由于每条反事实历史出现的概率过小,反事实历史中的条目可能无法得到很好的训练,从而降低回声室的缓解效果。为了在不影响推荐性能的情况下减少回声室,需要适当数量的反事实历史。
5.7.2 事实概率的值
事实概率的大小决定了事实和反事实历史的分布。事实概率值越大,代表事实历史的权重越大。我们调整事实概率𝛼的值,同时保持其他参数固定。我们在图3中绘制了推荐性能以及回声室的影响。我们可以看到,当值太小时,反事实的历史将主导预测,从而可能误导推荐,但在大多数情况下,框架仍然可以缓解回音室。当该值接近1时,真实历史数据将主导预测结果,因此推荐性能和缓解回声室的性能更接近基础模型
6 结论和未来的工作
本文表明,DAG因果图不能完全描述动态数据生成过程。因此,设计了一个有向循环因果图来表示推荐系统的动态性。此外,动态过程可能导致不必要的影响,如回音室。为了从理论上理解回音室,本文将用户-系统交互表示为马尔可夫过程,并根据用户的行为将用户分为三类。从数学上讲,对于每组用户,我们分析了推荐是否会导致回音室。除了上述理论贡献外,本文还设计了一个动态因果协同过滤(𝜕CCF)框架,采取后门调整来估计用户偏好,并利用反事实推理来缓解回音室。在真实数据集上的实验表明,该框架可以缓解回音室,同时实现与基本模型相当的推荐性能。
𝜕CCF是一个用于智能系统动态分析的灵活框架。在这项工作中,我们研究了推荐系统的回音室,而在未来,我们可以通过𝜕CCF来探索其他动态,如流行度转移、影响力分析和新兴话题。我们还可以对其他系统进行动态分析,如社交网络,在线论坛和对话AI。
环因果图来表示推荐系统的动态性。此外,动态过程可能导致不必要的影响,如回音室。为了从理论上理解回音室,本文将用户-系统交互表示为马尔可夫过程,并根据用户的行为将用户分为三类。从数学上讲,对于每组用户,我们分析了推荐是否会导致回音室。除了上述理论贡献外,本文还设计了一个动态因果协同过滤(𝜕CCF)框架,采取后门调整来估计用户偏好,并利用反事实推理来缓解回音室。在真实数据集上的实验表明,该框架可以缓解回音室,同时实现与基本模型相当的推荐性能。
𝜕CCF是一个用于智能系统动态分析的灵活框架。在这项工作中,我们研究了推荐系统的回音室,而在未来,我们可以通过𝜕CCF来探索其他动态,如流行度转移、影响力分析和新兴话题。我们还可以对其他系统进行动态分析,如社交网络,在线论坛和对话AI。