Counterfactual Explainable Recommendation(反事实可解释推荐)
CIKM 2021
ABSTRACT
可解释推荐通过向用户和系统设计人员提供解释来帮助他们更好地理解和决策,已成为一个重要的研究问题。本文提出反事实可解释推荐(Counterfactual Explainable Recommendation(CountER)),将因果推理中的反事实推理的见解用于可解释推荐。CountER能够制定解释的复杂度和强度,并采用反事实学习框架,为模型决策寻求简单(低复杂度)和有效(高强度)的解释。技术上,对于推荐给每个用户的每个项目,CountER构造了一个联合优化问题,以产生对项目方面的最小变化,从而创建反事实项目,从而反转对反事实项目的推荐决策。这些改变的方面构成了为什么建议原项目的解释。反事实解释有助于用户更好地理解模型,也有助于系统设计者更好地调试模型。
该工作的另一个贡献是可解释推荐的评估,这一直是一项具有挑战性的任务。幸运的是,反事实解释非常适合标准的定量评估。为了衡量解释质量,我们设计了两种类型的评价指标,一种是从用户的角度(即用户为什么喜欢该项目),另一种是从模型的角度(即为什么该项目被模型推荐)。将反事实学习算法应用于黑盒推荐系统,并在五个真实世界的数据集上评估生成的解释。实验结果表明,与目前最先进的可解释推荐模型相比,该模型产生了更准确和有效的解释。源代码可以在代码上找到。
1 介绍
增加可解释性的动机
可解释性对于推荐系统至关重要,因为在推荐场景中,我们很少可以说一些推荐是绝对正确的,另一些推荐是绝对错误的,相反,它完全依赖于良好的解释来帮助用户理解为什么一个项目被推荐,从而增加透明度和信任,使更好的决策;好的解释还可以帮助系统设计人员跟踪复杂推荐模型的行为,以便更好地调试。
一个突出的方法是方面感知(aspect-aware)的可解释推荐,它采用显式的项目特征/方面来构建解释。Li et al.[29]提出了一种个性化的Transformer来生成方面启发的自然语言解释。
然而,现有方面感知可解释推荐方法面临以下问题:
1)大多数方法被设计为内在可解释模型,尽管具有提供如实解释的优势,但它们可能难以解释其他黑盒推荐模型。没有扩展性
2)现有方法没有考虑解释的复杂性,特别是没有能力决定在生成解释时使用多少角度。大多数方法仅使用一个方面来生成解释,然而,推荐的真正原因可能由多个方面触发。
3)现有方法没有考虑解释强度,即解释在多大程度上影响推荐结果。这主要是因为现有方法是基于匹配算法设计的,提取特征重要性和注意力权重等关联信号来构建解释,而很少考虑如果我们用替代值干预这些信号会发生什么。因果中的干预信息。
反事实推理的最新进展为解决上述问题提供了可能性。我们使用图1中的一个简单示例来说明反事实解释的直觉及其与基于匹配的解释的区别。在本例中,与Zhang et al.[50]类似,每个用户在每个方面都有自己的偏好得分,而每个物品在每个方面都有自己的性能得分。推荐算法使用总得分对物品进行排序。例如手机A的总分为4.0×4.5+5.0×3.0+3.0×3.0 = 42,在推荐列表中排名第一。在解释手机A的推荐时,基于匹配的机型会选择屏幕作为解释,因为在其他方面(电池5.0 × 3.0 = 15,价格3.0 × 3.0 = 9)中,屏幕的乘法得分最高(4.0 × 4.5 = 18)。但是手机A的屏幕表现在所有产品中是最差的,所以这种解释是不合理的。这表明匹配分数高的方面不一定是推荐的原因。
相反,反事实推理旨在通过对这些方面进行干预来理解真正触发推荐的潜在机制,并看看会发生什么。如图1的下半部分所示,我们可以在Phone A的功能上找到最小的变化,这样Phone A将不再被推荐。在这种情况下,我们将选择battery方面作为解释,因为我们只需要将其得分从3略微改变为2.1就可以扭转推荐决策,说明battery是一个对推荐结果影响很大的因素。
遵循上述思路,本文提出了反事实可解释推荐(Counterfactual Explainable Recommendation, CountER),采用反事实推理来提取方面感知的解释来进行推荐。CountER受到奥卡姆剃刀原理[3]的启发,建立在解释复杂性和解释强度的基本思想之上,其中复杂性衡量了必须对事实观察应用多少变化,而强度显示了应用的变化将在多大程度上影响推荐决策。通过所提出的反事实约束学习框架,CountER旨在通过寻找会改变推荐决策的事实的最小变化,为推荐提取简单(低复杂度)和有效(高强度)的解释。
可解释推荐(和可解释AI)研究中的另一个重要挑战是如何评估解释。由于缺乏标准的离线评价指标进行解释,以往的研究严重依赖人类受试者进行评价,这使得评价过程昂贵、不可扩展、难以标准化,且对学术研究设置[49]不友好。幸运的是,反事实解释非常适合标准的定量评估。文中提出了两类评价方法,一种是面向用户的评价方法,另一种是面向模型的评价方法。对于面向用户的评价,我们采用与[26,28,29]类似的想法,将每个用户在评论中提到的方面作为基本事实。通过将我们生成的解释与基本事实进行比较,我们可以评估特征覆盖率、精度、召回率和𝐹1分数。对于面向模型的评估,我们采用必要性概率(PN)、充分性概率(PS)及其调和平均值𝐹𝑁𝑆来评估解释的充分性和必要性。更多细节在实验中给出
本文工作有以下贡献:
(1)首次探索了可解释推荐中解释的复杂性和强度,并以数学方式制定概念。
(2)提出一种基于反事实约束学习的反事实推理框架,为推荐提取简单有效的解释。
(3)设计了面向用户和面向模型的可解释推荐标准评价指标。
(4)在5个真实数据集上进行了广泛的实验,验证了所提方法的有效性。
2 相关工作
可解释推荐
可解释推荐是一个广泛的研究领域,有许多不同类型的模型,很难涵盖该方向上的所有工作。由于我们的工作与方面感知可解释推荐更密切相关,因此在本节中主要关注这个子领域。对可解释推荐的更完整的综述可以在[19,37,49]中看到。
[49] Yong feng Zhang and Xu Chen. 2020. Explainable Recommendation: A Survey and New Perspectives. Foundations and Trends**® in Information Retrieval (2020).
生成用户友好解释的一种代表性方法是对推荐项目进行建模。Zhang等人在[50]中引入了显式因子模型(EFM)来进行可解释推荐。最近,Chen et al.[9]应用残差前馈神经网络对用户和项目的明确特征进行建模,并生成可解释的替代推荐。
[9] Tong Chen, Hongzhi Yin, Guanhua Ye, Zi Huang, Yang Wang, and Meng Wang.2020 Try this instead: Personalized and interpretable substitute recommendation. In SIGIR. 891–900.
Li et al.[29]提出了一种个性化的Transformer来生成方面启发的自然语言解释。
[29] Lei Li, Yongfeng Zhang, and Li Chen. 2021. Personalized Transformer for Explainable Recommendation. ACL (2021).
其他一些可解释推荐方法包括基于知识图谱的解释[1,44,45]
[44] Yikun Xian, Zuohui Fu, Shan Muthukrishnan, Gerard De Melo, and Yongfeng Zhang. 2019. Reinforcement knowledge graph reasoning for explainable recommendation. In SIGIR. 285–294.
[45] Yikun Xian, Zuohui Fu, Handong Zhao, Yingqiang Ge, Xu Chen, Qiaoying Huang,Shijie Geng, Zhou Qin, Gerard de Melo, S. Muthukrishnan, and Yongfeng Zhang.2020.CAFE: Coarse-to-Fine Neural Symbolic Reasoning for Explainable Recommendation. In CIKM. 1645–1654.
大多数现有方法基于一个非常相似的假设来生成解释:如果存在一个在用户的偏好和项目的性能之间最匹配的方面,那么这个方面将是推荐的解释。然而,所提出方法从反事实的角度产生了解释:如果一个项目在某些方面的表现稍差就不会被推荐,那么这些方面将是模型推荐该项目的原因。
反事实推理
反事实推理和逻辑推理[8,36]是两种重要的认知推理方法。近年来,反事实推理在可解释人工智能研究中引起了人们的关注。如Ghazimatin等人[20]试图通过寻找用户历史行为的最小集合(如评论、购买、Rating),这样就可以通过删除所选择的操作来更改推荐。Tran等人[38]采用影响函数来识别与推荐最相关的训练点,同时推导出用于解释的反事实集。
[20] Azin Ghazimatin, Oana Balalau, Rishiraj Saha Roy, and Gerhard Weikum. 2020.PRINCE: Provider-side Interpretability with Counterfactual Explanations in Recommender Systems. WSDM (2020).
[38] Khanh Hiep Tran, Azin Ghazimatin, and Rishiraj Saha Roy. 2021. Counterfactual Explanations for Neural Recommenders. SIGIR (2021), 1627–1631.
本文工作与之前工作之间的一个共同因素是,所提出的两种方法都是基于提取的因果关系而不是关联关系生成解释。
然而,本文工作在两个关键点上与之前的工作不同:
1)在问题定义方面,之前的工作在用户端基于用户行为生成反事实解释,而本文方法在物品端基于物品方面生成反事实解释,这是两种不同类型的解释。
2)在技术上,采用了由奥卡姆剃刀原理(Occam’s Razor Principle,[3])驱动的反事实学习框架,直接学习复杂度小、强度大的解释,从而将寻找简单有效解释的愿望直接编码到模型目标中。
3 问题定义
3.1 前言和注释
假设我们有一个用户组与𝑚用户 U = { u 1 , u 2 , ⋯ , u m } U = \{u_1,u_2,\cdots,u_m\} U={u1,u2,⋯,um}和项目集与 V = { v 1 , v 2 , ⋯ , v n } V = \{v_1,v_2,\cdots,v_n\} V={v1,v2,⋯,vn}。设二值矩阵 B ∈ { 0 , 1 } m × n B\in \{0,1\}^{m \times n} B∈{0,1}m×n为用户-物品交互矩阵,其中 B i , j = 1 B_{i,j}=1 Bi,j=1表示用户 u i u_i ui与物品 v j v_j vj交互;
我们使用R(𝑢,𝐾)来表示用户𝑢的top-𝐾推荐列表,如果项目𝑣在用户的top-列表中被推荐给用户𝑢,我们说𝑣∈R(𝑢,𝐾)。
遵循Zhang等人在[50]中描述的相同方法,我们应用[51]中内置的情感分析工具包从文本评论中提取(Aspect, Opinion, sentiment)三元组。例如,在手机领域,提取的信息包括颜色、价格、屏幕、电池等。此外,假设我们有总数为r的项目角度
A
=
{
a
1
,
a
2
,
⋯
,
a
r
}
A = \{a_1,a_2,\cdots,a_r\}
A={a1,a2,⋯,ar}。进一步计算用户方面偏好矩阵
X
∈
R
m
×
r
X \in R^{m\times r}
X∈Rm×r和物品方面质量矩阵
Y
∈
R
n
×
r
Y \in R^{n\times r}
Y∈Rn×r。
X
i
,
k
X_{i,k}
Xi,k表示用户
u
i
u_i
ui在多大程度上设计项目方面
a
k
a_k
ak。类似地
Y
j
,
k
Y_{j,k}
Yj,k表示项目
v
j
v_j
vj在方面
a
k
a_k
ak上的表现如何。更具体地说,𝑋和𝑌的计算公式如下:
X
i
,
k
=
{
0
,
if user
u
i
did not mentions aspect
a
k
1
+
(
N
−
1
)
(
2
1
+
e
x
p
(
−
t
i
,
k
)
−
1
)
,
else
Y
j
,
k
=
{
0
,
if user
v
j
did not reviewed on aspect
a
k
1
+
N
−
1
1
+
e
x
p
(
−
t
j
,
k
⋅
s
j
,
k
)
,
else
X_{i,k} = \begin{cases} 0, & \text{if user $u_i$ did not mentions aspect $a_k$}\\ 1+(N-1)(\frac 2{1+exp(-t_{i,k})}-1),& \text{else} \end{cases} \\Y_{j,k} = \begin{cases} 0, & \text{if user $v_j$ did not reviewed on aspect $a_k$}\\ 1+\frac{N-1}{1+exp(-t_{j,k}\cdot s_{j,k})},& \text{else} \end{cases}
Xi,k={0,1+(N−1)(1+exp(−ti,k)2−1),if user ui did not mentions aspect akelseYj,k={0,1+1+exp(−tj,k⋅sj,k)N−1,if user vj did not reviewed on aspect akelse
其中𝑁是系统中的评分量表,在大多数情况下是5星。
t
i
,
k
t_{i,k}
ti,k是用户𝑢𝑖提到方面的频率
a
k
⋅
t
j
,
k
a_k \cdot t_{j,k}
ak⋅tj,k是项目
v
j
v_j
vj在方面提到的频率
a
k
a_k
ak,而
s
j
,
k
s_{j,k}
sj,k是这些提到的平均情感。对于𝑋和𝑌矩阵,它们的元素被重新缩放到范围(1,𝑁)使用sigmoid函数(参见等式(1))以匹配系统的评级尺度。
3.2 可解释的反事实推荐
根据上述定义,我们的反事实推理问题的目标是为给定的黑箱推荐模型搜索方面驱动的反事实解释。
更具体地说,对于一个给定的推荐模型,如果将项目 v j v_j vj推荐给用户 u i u_i ui,即 v j ∈ R ( u i , K ) v_j \in R(u_i,K) vj∈R(ui,K),然后我们为项目角度的质量向量 Y j Y_j Yj寻找一个细微的变化矢量 Δ={𝛿0𝛿1 , · · · , 𝛿𝑟} ,这样如果Δ应用于项目 v j v_j vj的质量向量,即 v j v_j vj+Δ,那么它将改变推荐结果让项 v j v_j vj从推荐列表中消失,也就是说 v j ∉ R ( u i , K ) v_j \notin R(u_i,K) vj∈/R(ui,K)。Δ中的所有值都是零或负的连续值,因为只有当一个项目在某些方面表现较差时,它才会从推荐列表中删除。利用优化后的向量Δ,我们可以构造项 v j v_j vj的反事实解释,它由Δ中的非零值所对应的方面组成。反事实解释的形式如下,
如果该项目在[方面]稍差,则不推荐。
其中[方面]由Δ选择,如上所述。在下文中,我们将以更正式的方式定义Δ的属性。
3.3 解释的复杂性和强度
为了更好地理解反事实的可解释推荐问题,我们引入了两个概念来激发反事实推理背景下的可解释推荐。
第一个是解释复杂性(EC),衡量解释的复杂程度在我们的基于方面的可解释推荐设置中,复杂度可以定义为:1)有多少方面产生解释,对应于Δ中的非零值的数量,即∥Δ∥_0; 2)这些方面需要进行多少变化,可以表示为Δ的平方和,即∥Δ∥^2_2。最终的复杂度是这两个因素的加权和:
C
(
Δ
)
=
∣
∣
Δ
∣
∣
2
2
+
γ
∣
∣
Δ
∣
∣
0
C(\Delta) = ||\Delta||_2^2 +\gamma||\Delta||_0
C(Δ)=∣∣Δ∣∣22+γ∣∣Δ∣∣0
其中𝛾是一个超参数,用于控制这两个项之间的权衡。
第二个是解释强度(ES),它衡量解释的有效性在我们的反事实可解释推荐设置中,这可以定义为应用微小变化向量Δ将在多大程度上影响项目
v
j
v_j
vj的推荐结果。这可以进一步定义为使用Δ后
v
j
v_j
vj𝑗在用户
u
i
u_i
ui的推荐列表中的排名分数下降:
S
(
Δ
)
=
s
i
,
j
−
s
i
,
j
Δ
S(\Delta) = s_{i,j} - s_{i,j \Delta}
S(Δ)=si,j−si,jΔ
其中
s
i
,
j
s_{i,j}
si,j为项目
v
j
v_j
vj的原始排名分数,
s
i
,
j
Δ
s_{i,j \Delta}
si,jΔ为项目
v
j
v_j
vj在其质量向量Δ上应用后的排名分数,即
Y
j
+
Δ
Y_j+\Delta
Yj+Δ。
我们应该注意Eq.(2)和(3)不是定义解释复杂性和强度的唯一方法。这个定义取决于我们在实践中需要什么。第4节中介绍的反事实推理框架是灵活的,可以很容易地适应解释复杂性和强度的不同定义。
解释复杂度与解释强度的关系也值得探讨。实际上,**复杂性和强度是两个正交的概念,即复杂的解释不一定强,简单的解释不一定弱。**很可能存在复杂但微弱的解释,或者简单但有力的解释。根据奥卡姆剃刀原理[3],如果两个解释同样有效,我们更喜欢简单的解释而不是复杂的解释。因此,反事实可解释推荐旨在为推荐寻找简单(低复杂度)和有效(高强度)的解释。
4 反事实推理
4.1 黑盒推荐模型
假设我们有一个黑盒推荐模型𝑓,通过以下方法预测用户
u
i
u_i
ui和物品
v
j
v_j
vj的用户-物品排名分数
s
i
,
j
s_{i,j}
si,j:
s
i
,
j
=
f
(
X
i
,
Y
j
∣
Z
,
Θ
)
s_{i,j} = f(X_i,Y_j |Z,\Theta)
si,j=f(Xi,Yj∣Z,Θ)
其中
X
i
X_i
Xi和
Y
j
Y_j
Yj分别是用户方面向量和物品方面向量,如式(1)所定义;Θ是模型参数,𝑍表示模型的所有其他辅助信息。根据应用程序的不同,𝑍可以是评分、点击、文本、图像等,在推荐模型中𝑍是可选的。基本上,推荐模型𝑓可以是任何模型,只要它将用户和项目的方面向量作为输入的一部分,这使得我们的反事实推理框架适用于广泛的模型。
在这项工作中,为了演示反事实推理的思想,我们使用一个非常简单的深度神经网络作为推荐模型𝑓的实现,其中包括一个融合层,然后是三个全连接层。网络将用户和项目的方面向量连接起来作为输入,并输出一维排名分数
s
i
,
j
s_{i,j}
si,j。最后的输出层是一个sigmoid激活函数,以便将
s
i
,
j
s_{i,j}
si,j映射到(0,1)的范围内。然后,我们使用交叉熵损失训练模型:
L
=
−
∑
i
,
j
,
B
i
,
j
=
1
l
o
g
s
i
,
j
+
−
∑
i
,
j
,
B
i
,
j
=
0
l
o
g
(
1
−
s
i
,
j
)
=
−
∑
i
,
j
B
i
,
j
l
o
g
s
i
,
j
+
(
1
−
B
i
,
j
)
l
o
g
(
1
−
s
i
,
j
)
L = - \sum _{i,j,B_{i,j}=1}log\ s_{i,j} +-\sum _{i,j,B_{i,j}=0}log(1-s_{i,j})\\ =-\sum _{i,j}B_{i,j}log\ s_{i,j} +(1-B_{i,j})log(1-s_{i,j})
L=−i,j,Bi,j=1∑log si,j+−i,j,Bi,j=0∑log(1−si,j)=−i,j∑Bi,jlog si,j+(1−Bi,j)log(1−si,j)
其中
B
i
,
j
=
1
B_{i,j}=1
Bi,j=1表示用户
u
i
u_i
ui之前与项目
v
j
v_j
vj进行过交互,反之则
B
i
,
j
=
0
B_{i,j}=0
Bi,j=0。在实践中,由于𝐵是一个非常稀疏的矩阵,我们以1:2的比例对负样本进行采样,也就是说,对于每个正实例,我们对两个负实例进行采样。有了这个预训练的推荐模型,对于目标用户,我们能够根据预测的排名分数推荐top-𝐾项目。
4.2 反事实推理
构建了一个反事实推理模型,为现有推荐模型提供的top-𝐾推荐列表中的任何项目生成解释。所提出的解释模型的基本思想是通过解决下面阐述的反事实优化问题来发现项目方面的轻微变化Δ。
假设项目 v j v_j vjtop-k推荐列表为用户 u i ( v j ∈ R ( u i , K ) ) u_i (v_j \in R(u_i,K)) ui(vj∈R(ui,K))。如前所述,我们的反事实推理模型旨在为 v j v_j vj找到简单有效的解释,可以表现为以下约束优化框架,最小化解释复杂性
s.t.,解释足够有力
数学上,根据我们在第3节中对解释复杂性和强度的定义,该框架可以通过以下具体的优化问题实现:
m
i
n
i
m
i
z
e
C
(
Δ
)
=
∣
∣
Δ
∣
∣
2
2
+
γ
∣
∣
Δ
∣
∣
0
s
.
t
.
S
(
Δ
)
=
s
i
,
j
−
s
i
,
j
Δ
>
=
ϵ
minimize \ C(\Delta) = ||\Delta|| ^2_2 +\gamma||\Delta||_0 \\ s.t.S(\Delta) = s_{i,j} - s_{i,j\Delta} >=\epsilon
minimize C(Δ)=∣∣Δ∣∣22+γ∣∣Δ∣∣0s.t.S(Δ)=si,j−si,jΔ>=ϵ
在上面的等式中,
s
i
,
j
s_{i,j}
si,j是项目
v
j
v_j
vj的原始排名分数,
s
i
,
j
s_{i,j}
si,jΔ是在
v
j
v_j
vj的方面向量上应用微变化向量Δ时𝑣𝑗的排名分数。Eq.(7)的直觉是试图找到一个解释Δ既简单又有效,其中“简单”反映在优化目标,即解释复杂性𝐶(Δ)最小化,而“有效”反映在优化约束,即解释强度𝑆(Δ)应该足够大,从top-𝐾列表中删除项目
v
j
v_j
vj。
为了实现第二个目标(即有效/足够强),我们将阈值𝜖作为原始推荐列表中项目
v
j
v_j
vj的分数与项目𝐾+1的分数之间的间隔,即:
ϵ
=
s
i
,
j
−
s
i
,
j
K
+
1
\epsilon = s_{i,j}-s_{i,j_{K+1}}
ϵ=si,j−si,jK+1
在
s
i
,
j
s_{i,j}
si,j是排名分数𝐾+ 1的项目,因此Eq。(7)可以简化为
m
i
n
i
m
i
z
e
C
(
Δ
)
=
∣
∣
Δ
∣
∣
2
2
+
γ
∣
∣
Δ
∣
∣
0
s
.
t
.
s
i
,
j
,
s
i
,
j
Δ
<
=
s
i
,
j
K
+
1
minimize \ C(\Delta) = ||\Delta|| ^2_2 +\gamma||\Delta||_0 \\ s.t.s_{i,j} , s_{i,j\Delta} <=s_{i,j_{K+1}}
minimize C(Δ)=∣∣Δ∣∣22+γ∣∣Δ∣∣0s.t.si,j,si,jΔ<=si,jK+1
这样,项目
v
j
v_j
vj的排名将低于𝐾+ 1的项目,因此将从𝐾列表的顶部删除。
4.3 放松的优化(Relaxed Optimization)
优化Eq.(9)的一个很大的挑战是,无论是目标 ∣ ∣ Δ ∣ ∣ 2 2 + γ ∣ ∣ Δ ∣ ∣ 0 ||\Delta|| ^2_2 +\gamma||\Delta||_0 ∣∣Δ∣∣22+γ∣∣Δ∣∣0和约束 s i , j , s i , j Δ < = s i , j K + 1 s_{i,j} , s_{i,j\Delta} <=s_{i,j_{K+1}} si,j,si,jΔ<=si,jK+1都是不可微的。.接下来,我们放松这两个部分以使方程可优化。
为达到目的,由于 ∣ ∣ Δ ∣ ∣ 0 ||\Delta||_0 ∣∣Δ∣∣0不是凸的,我们将其放宽为ℓ1范数 ∣ ∣ Δ ∣ ∣ 1 ||\Delta||_1 ∣∣Δ∣∣1。这被证明是有效的,并在[4,5]中提供了良好的向量稀疏性,从而有助于从解释的方面数量方面最小化解释的复杂性。
对于约束
s
i
,
j
,
s
i
,
j
Δ
<
=
s
i
,
j
K
+
1
s_{i,j} , s_{i,j\Delta} <=s_{i,j_{K+1}}
si,j,si,jΔ<=si,jK+1,我们将其松弛为铰链损失:
L
(
s
i
,
j
Δ
,
s
i
,
j
K
+
1
)
=
n
a
x
(
0
+
s
i
,
j
Δ
−
s
i
,
j
K
+
1
)
L(s_{i,j\Delta} ,s_{i,j_{K+1}})=nax(0+s_{i,j\Delta} -s_{i,j_{K+1}})
L(si,jΔ,si,jK+1)=nax(0+si,jΔ−si,jK+1)
并将其作为拉格朗日项添加到总目标中。因此,生成解释的最终优化方程为:
在式(11)中,𝜆和𝛼是控制解释强度的超参数。使用宽松优化的牺牲是,我们失去了从top-𝐾列表中删除项目𝑣𝑗的保证,尽管由于最小化𝐿(𝑠𝑖,𝑗Δ,𝑠𝑖,𝑗𝐾+1)项,删除的概率很高。因此,它需要一个后处理来检查𝑠𝑖,𝑗Δ是否确实小于𝑠𝑖,𝑗𝐾+1。我们应该只在删除成功时生成反事实解释。在实验中,我们将报告解释模型的保真度,以显示我们的方法可以解释项目的比例。
此外,在松弛模型中存在一个权衡:通过增加超参数𝜆,模型将更多地关注解释强度而较少地关注解释复杂度。在实验的消融研究中,我们还将探讨𝜆的影响以及解释复杂度与强度的关系。
4.4 讨论
不同位置项目的解释复杂性。
使用上述框架,我们可以看到删除top-𝐾列表中不同项目的难度是不同的。假设对于某个用户,推荐系统根据排名得分生成top-𝐾推荐项目为 v j 1 , v j 2 , ⋯ , v j K v_{j_1},v_{j_2},\cdots,v_{j_K} vj1,vj2,⋯,vjK。直观地说,从列表中删除 v j 1 v_{j_1} vj1比从列表中删除 v j K v_{j_K} vjK更难。原因是移除 v j 1 v_{j_1} vj1,解释强度应该至少𝜖=𝑠𝑖,𝑗1−𝑠𝑖,𝑗𝐾+ 1,这是比消除𝑣𝑗𝐾所需的力量更大,𝜖=𝑠𝑖,𝑗𝐾−𝑠𝑖,𝑗𝐾+ 1。因此,对列表中较高位置的项生成的解释可能具有更高的解释复杂性,因为推理模型必须应用更大的变化或更多方面来生成高强度的解释。
这是反事实可解释推荐框架的一个合理且令人满意的特性——如果系统将一个项目排在非常高的位置,则意味着系统强烈推荐该项目,这需要包含更多方面的强有力解释作为支持。相反,对于列表中排名较低的项目,只需改变一两个方面就可以很容易地删除它,这符合我们的直觉。在实验中,我们将展示不同位置物品的平均解释复杂度,以验证上述讨论。
控制方面的数量
通过Eq.(11),模型可以自动决定构建解释的方面数。我们认为,这比像以前的方面感知可解释推荐系统那样只选择一个方面要好。然而,如果需要,所提出方法也可以生成单一方面的解释。为了生成单一方面的解释,我们通过添加可训练的独热向量a作为掩码来调整等式(11),以确保在训练期间只有一个方面发生改变。优化问题为:
由于我们强制模型生成单一方面的解释,𝐶(Δ)的ℓ0-norm项消失了,因为∥Δ∥0 = 1。我们将在exp中探索单个方面和多个方面的解释。
5 评价的解释
如何定量地评价解释是一个非常重要的问题。幸运的是,与其他解释形式相比,反事实解释非常适合用于定量的离线评估。在本节中,我们从数学上定义了两种类型的评价指标——面向用户的评价和面向模型的评价,相信这可以帮助该领域推进可解释推荐的标准评价。
5.1 面向用户的评价
在面向用户的评价中,我们采用用户对商品的评价作为用户购买商品的真实理由,这与之前的工作类似。更具体地说,从用户𝑢𝑖提供的关于项目𝑣𝑗的文本评论中,我们提取了𝑢𝑖提到的积极情感的所有方面,被定义为 P i , j = [ p i , j ( 0 ) , p i , j ( 1 ) , ⋯ , p i , j ( r ) ] P_{i,j} = [p^{(0)}_{i,j},p^{(1)}_{i,j},\cdots,p^{(r)}_{i,j}] Pi,j=[pi,j(0),pi,j(1),⋯,pi,j(r)] P i , j P_{i,j} Pi,j是一个二进制向量,其中 P ( k ) i , j = 1 P(k)_{i,j}=1 P(k)i,j=1,如果用户𝑢𝑖在他/她对项目𝑣𝑗的评论中对𝑎𝑘有积极的情绪。否则, P ( k ) i , j = 0 P(k)_{i,j}=0 P(k)i,j=0。另一方面,我们的模型将产生向量Δ ={𝛿0,𝛿1,···,𝛿𝑟},那些对应于Δ中的非零值的方面将构成解释。
然后,对于每个用户-物品对,我们计算生成解释的准确率和召回率Δ相对于基础真值向量
P
i
,
j
P_{i,j}
Pi,j:
P
r
e
c
i
s
i
o
n
=
∑
k
=
1
r
P
i
,
j
(
k
)
⋅
I
(
δ
k
)
∑
k
=
1
r
I
(
δ
k
)
R
e
c
a
l
l
=
∑
k
=
1
r
P
i
,
j
(
k
)
⋅
I
(
δ
k
)
∑
k
=
1
r
P
i
,
j
(
k
)
Precision = \frac {\sum_{k=1}^rP_{i,j}^{(k)}\cdot I(\delta_k)}{\sum_{k=1}^rI(\delta_k)}\\ Recall = \frac {\sum_{k=1}^rP_{i,j}^{(k)}\cdot I(\delta_k)}{\sum_{k=1}^rP_{i,j}^{(k)}}
Precision=∑k=1rI(δk)∑k=1rPi,j(k)⋅I(δk)Recall=∑k=1rPi,j(k)∑k=1rPi,j(k)⋅I(δk)
其中𝐼(𝛿)是恒等函数,当𝛿≠0时𝐼(𝛿)= 1,当𝛿= 0时𝐼(𝛿)= 0。在我们的例子中,精确度衡量的是生成的解释中用户真正喜欢的方面的百分比,而召回衡量的是解释中真正包含用户喜欢的方面的百分比。我们还计算𝐹1分数作为两者之间的调和平均值,即
F
1
=
2
⋅
P
r
e
c
i
s
i
o
n
⋅
R
e
c
a
l
l
P
r
e
c
i
s
i
o
n
+
R
e
c
a
l
l
F_1= 2 \cdot \frac {Precision \cdot Recall}{Precision +Recall}
F1=2⋅Precision+RecallPrecision⋅Recall。然后,我们对所有对的分数进行平均,作为最终的精度、召回率和𝐹1度量。
5.2 面向模型的评价
面向用户的评价只能回答生成的解释是否符合用户偏好的问题。然而,它并没有告诉我们解释是否正确地证明了模型的行为,即为什么推荐模型将该项目推荐给用户。
为了测试我们的解释模型是否正确解释了推荐系统的本质机制,我们使用两个分数,必要性概率(PN)和充分性概率(PS) [34, p.112],以面向模型的评估来验证解释。
在逻辑和数学中,必要性和充分性是用来描述两个陈述之间的条件或蕴涵关系的术语。假设我们有𝑆→𝑁,即,如果𝑆发生,则𝑁将发生,那么我们说𝑆是𝑁的充分条件。同时,我们有逻辑上等价的逆反命题 ¬𝑁 ⇒ ¬𝑆,,即如果𝑁不发生,那么𝑆也不会发生,因此,我们说𝑁是𝑆的必要条件。
必要性概率(PN)[34]:在因果推理理论中,必要性概率评估了条件必要性的程度。为了计算生成解释的PN,假设一组方面 A i j ⊂ A A_{ij}\sub A Aij⊂A构成了对项目𝑣𝑗推荐到用户𝑢𝑖的解释。**PN分数的基本思想是:如果在一个反事实的世界中, A i j A_{ij} Aij中的方面在系统中不存在,那么项目𝑣𝑗不被推荐给用户𝑢𝑖的概率是多少。**按照这种思想,计算生成的符合PN定义的解释的频率。让 R i , k R_{i,k} Ri,k成为用户𝑢𝑖的原创推荐列表。设 v j ∈ R i , K v_j \in R_{i,K} vj∈Ri,K为推荐项,我们的框架生成一个非空的解释A𝑖𝑗≠∅。然后,对于通用物品集V中的所有物品,如果它们在A𝑖𝑗中,我们将物品方面质量矩阵𝑌中的方面值更改为0。以这种方式,我们创建了一个反事实项目集V∗,通过推荐算法产生一个反事实推荐列表 R i , K ∗ R^*_{i,K} Ri,K∗为用户𝑢𝑖。那么PN分数为
其中𝐼(A𝑖𝑗≠∅)为恒等函数,当条件A𝑖𝑗≠∅时𝐼(A𝑖𝑗≠∅)= 1,否则为0。基本上,分母是算法成功生成解释的项目总数,分子是如果我们删除相关方面,那么将导致该项目从推荐列表中删除的解释数量
充分性概率(PS): PS分数评估条件满足的程度。PS分数的基本思想是:如果在一个反事实的世界中,𝑖𝑗中的方面是系统中存在的唯一方面,那么项目𝑣𝑗仍然被推荐给用户𝑢𝑖的概率是多少。类似地,我们计算了满足PS定义的生成解释的频率。对于V中的所有项目,如果它们不在𝑖𝑗中,我们将项目方面质量矩阵𝑌中的方面值更改为0。通过这种方式,我们创建了一个反事实项目集V `,通过推荐算法生成用户𝑢𝑖的反事实推荐列表
R
i
,
K
∗
R^*_{i,K}
Ri,K∗。那么,PS分数为:
其中𝐼(A𝑖𝑗≠∅)仍为上述恒等函数。基本上,分母仍然是算法成功生成解释的项目的总数,而分子是单独仍然可以将项目推荐到推荐列表的解释的数量。与面向用户的评价类似,我们还计算了PS和PN的调和平均值来衡量整体性能,即 F N S = 2 ⋅ P N ⋅ P S P N + P S F_{NS}= \frac{2\cdot PN\cdot PS}{PN+PS} FNS=PN+PS2⋅PN⋅PS
6实验
7 结论与未来工作
文中提出了一种反事实可解释推荐框架CountER,它根据项目方面的反事实变化来生成解释。可解释推荐的反事实推理仍处于早期阶段,有很大的探索空间。例如,CountER只探索了项目方面的变化。然而,我们也可以探索其他各种形式的信息(如图像和文本描述)上的反事实变化。CountER的基本思想也适用于知识图谱或图神经网络的可解释决策,这是未来很有希望探索的方向。