推理论文及综述
- 可解释指标
- 知识推理分类
- Recurrent Event Network: Autoregressive Structure Inference over
可解释指标
Explainability in Graph Neural Networks:A Taxonomic Survey
Fidelity(保真度)
Fidelity+被定义为原始预测和屏蔽重要输入特征后的新预测之间的准确度(或预测概率)差异,值越大代表模型可解释性越强
分类任务
Fidelity-
a
c
c
=
1
N
∑
i
=
1
N
(
1
(
y
^
i
=
y
i
)
−
1
(
y
^
i
m
i
=
y
i
)
)
\text { Fidelity- }{ }^{a c c}=\frac{1}{N} \sum_{i=1}^{N}\left(\mathbb{1}\left(\hat{y}_{i}=y_{i}\right)-\mathbb{1}\left(\hat{y}_{i}^{m_{i}}=y_{i}\right)\right)
Fidelity- acc=N1i=1∑N(1(y^i=yi)−1(y^imi=yi))
回归任务
Fidelity-
p
r
o
b
=
1
N
∑
i
=
1
N
(
f
(
G
i
)
y
i
−
f
(
G
i
m
i
)
y
i
)
\text { Fidelity- }{ }^{p r o b}=\frac{1}{N} \sum_{i=1}^{N}\left(f\left(\mathcal{G}_{i}\right)_{y_{i}}-f\left(\mathcal{G}_{i}^{m_{i}}\right)_{y_{i}}\right)
Fidelity- prob=N1i=1∑N(f(Gi)yi−f(Gimi)yi)
Sparsity(稀疏度)
好的解释应该是稀疏的,这意味着它们应该捕捉最重要的输入特征,忽略不相关的特征。
Sparsity
=
1
N
∑
i
=
1
N
(
1
−
∣
m
i
∣
∣
M
i
∣
)
\text { Sparsity }=\frac{1}{N} \sum_{i=1}^{N}\left(1-\frac{\left|m_{i}\right|}{\left|M_{i}\right|}\right)
Sparsity =N1i=1∑N(1−∣Mi∣∣mi∣)
其中
∣
m
i
∣
|m_i|
∣mi∣表示
m
i
m_i
mi中识别的重要输入要素(结点/边/结点要素)的数量,而
∣
M
i
∣
|M_i|
∣Mi∣表示
G
i
G_i
Gi中的要素总数。请注意,较高的值表示解释更加稀疏,并且倾向于仅捕获最重要的输入信息。
这里怎么识别最重要的特征个数,个人理解应该是选取一个阙值
Stability(稳定性)
好的解释要稳定。直觉上,当对输入进行小的改变而不影响预测时,解释应该保持相似。最近提出的稳定性度量标准衡量一种解释方法是否稳定[83]。给定一个输入图
G
i
G_i
Gi,它的解释mi被认为是基本事实。然后,输入图
G
i
G_i
Gi被小的变化扰乱,例如附加新的节点/边,以获得新的图Gi。请注意,
G
i
G_i
Gi和-
G
i
G_i
Gii需要具有相同的预测。然后得到对
G
i
G_i
Gi的解释,记为ˇmi。通过比较mi和ˇmi之间的差异,我们可以计算稳定性得分。请注意,较低的值表明解释技术更稳定,对噪声信息更鲁棒。
G
A
(
m
)
=
∑
i
n
m
(
G
+
noise
i
)
,
m
=
GradInput
G_{A}(m)=\sum_{i}^{n} m\left(G+\text { noise }_{i}\right), m=\text { GradInput }
GA(m)=i∑nm(G+ noise i),m= GradInput
知识推理分类
基于逻辑规则的知识推理
基于一阶谓词逻辑规则的知识推理
(姚明, 出生于, 上海) ∧ (上海, 位于, 中国) ⇒ (姚明, 国籍, 中国)
基于随机游走算法的知识推理
基于随机游走的方法首先确定目标关系,判断两个实体之间是否存在该关系,如果存在,将其加入到正例集合,由于知识图谱中只有正例没有负例,通过对头尾实体进行随机替换构造负例集合。将两个实体之间的一条路径作为一个特征,任意枚举两个实体之间的长度不超过特定阈值的所有可能路径,将这些可能路径放入特征集合,根据随机游走的思想计算路径的特征值,进而构成每个样本的特征向量;通过利用这些正负例样本的特征向量训练 logistic 回归分类器。
缺点:枚举对于大规模知识图谱的不适应,而且如果是实体预测,构造一个负例如果他刚好是测试集的正例呢
基于分布式表示的知识推理
这里主要是将三元组向量化
A Three-Way Model for Collective Learning on Multi-Relational Data(张量分解)
X
k
≈
A
R
k
A
T
,
for
k
=
1
,
…
,
m
\mathcal{X}_{k} \approx A R_{k} A^{T}, \text { for } k=1, \ldots, m
Xk≈ARkAT, for k=1,…,m
X
i
j
k
=
1
X_{ijk} = 1
Xijk=1 denotes the fact that there exists a relation
这里的A和R应该都是初始embedding做训练,使得与X距离最小
Learning Entity and Relation Embeddings for Knowledge Graph Completion(距离模型)
假设实体对(h,r,t),首先根据当前的关系r将头尾实体 h r h_r hr, t r t_r tr分别映射到关系空间中,然后在关系空间中建模 h r + r ≈ t r h_{r}+r \approx t_{r} hr+r≈tr
基于神经网络的知识推理
Convolutional 2D Knowledge Graph Embeddings
在ConvE模型中,实体和关系嵌入首先被整形和连接(步骤1,2);然后将得到的矩阵用作卷积层的输入(步骤3);得到的特征图张量被矢量化并投影到k维空间中(步骤4),并与所有候选对象嵌入相匹配(步骤5)
DSKG: A Deep Sequential Model for Knowledge Graph Completion
Reinforcement Knowledge Graph Reasoning for Explainable Recommendation
f
(
e
0
,
e
k
∣
r
~
k
,
j
)
=
⟨
e
0
+
∑
s
=
1
j
r
s
,
e
k
+
∑
s
=
j
+
1
k
r
s
⟩
+
b
e
k
f\left(e_{0}, e_{k} \mid \tilde{r}_{k, j}\right)=\left\langle\mathbf{e}_{0}+\sum_{s=1}^{j} \mathbf{r}_{\mathrm{s}}, \mathbf{e}_{\mathbf{k}}+\sum_{s=j+1}^{k} \mathbf{r}_{\mathrm{s}}\right\rangle+b_{e_{k}}
f(e0,ek∣r~k,j)=⟨e0+s=1∑jrs,ek+s=j+1∑krs⟩+bek
Recurrent Event Network: Autoregressive Structure Inference over
创新点
Temporal Knowledge Graphs
时间知识图(TKG)这类数据的推理相对还未被探索过
TKG推理主要有两种设置:内插和外推(interpolation and extrapolation)。
内插主要是用于预测已知时间范围内的新事件
外推是预测未来时间段的新事件
模型步骤
主要分为两块,第一个是对前一个时间戳的全局图表征,第二个是对同个时间戳的邻居做聚合
问题
- 为什么将节点出现次数占所有节点的占比可以当成真实值,再去与预测值计算loss
- p(G_t | G_t-1)中的G中的s,r,o都会改变,预测的时候不应该是要固定用户,即s?