时序知识图谱论文阅读(2023)
2023-05-29 Jay Saligia 22 mins 魔法与现实根据阅读进度,时不时会更新
[toc]
HGLS
Learning Long- and Short-term Representations for Temporal Knowledge Graph Reasoning, WWW2023
文中认为时间依赖会分为短期的和长期的。现有的方法,没有显式的考虑长期依赖,只是通过循环序列的方法进行建模,具体的缺陷在两个方面:
- 不同时期的同一个实体之间存在长期依赖,现有的方法没有对此显式地建模
- 现有的方法忽视了短期和长期依赖之间的整合方法。对于不同的实体和关系来说,可能更受短期依赖或长期依赖
具体的,HGLC从四个角度来解决以上问题:
- 构建全局图(Global Graph Construction),通过添加边的方式把不同的时间快照联系起来
- 层次化关系图神经网络(Hierarchical Relational Graph Neural Network),使用两个级别的操作,分别捕获全局图中的语义和时序依赖
- 长\短期表示(Long- and Short-term Representation),对每个实体和关系获取长\短期表示
- 门聚合,(Gating Integration),使用门机值将长\短期表示结合起来
构建全局图
全局图将所有的时间快照聚合为一张大图,其中每个时间快照作为一个子图。在不同时间快照中的同一实体之间添加时间相关关系(time-related relation),通过这种方法,就可以将不同时期的实体关联起来(建立长期依赖)。每个子图中的原有的关系称为语义关系(semantic relation)。
层次化关系图神经网络
文中提出了HRGNN来对不同层次的图进行编码。第一个级别(子图级别),捕捉每个子图中的语义依赖;第二个级别(全局图级别),对不同时间中的实体建立时序依赖。
对于子图级别的依赖,使用RGCN去获得实体的表示。对于全局图级别的依赖,同样使用消息传递机制。首先,对不同时期的实体之间的关系通过下面的方法加上时间编码: \(\mathbf{z}_r^{i_j j}=\mathbf{x}_r+\phi\left(\left|t_i-t_j\right|\right),\\ \phi(t):=\sqrt{\frac{1}{d}}\left[\cos \left(\mathrm{w}_1 t+\mathrm{p}_1\right), \cdots, \cos \left(\mathbf{w}_d t+\mathrm{p}_d\right)\right]\) 在消息进行聚合的时候,使用了注意力机制去计算实体之间的权重: \(\mathbf{z}_{s, t_i}^{l+1}=\mathrm{h}\left(\sum_{e_o^{t_k} \in \widetilde{\mathcal{N}}_{e_s, t_i}} \alpha_{s, o}^{i, k} \mathbf{W}_4^l\left(\mathbf{z}_{o, t_k}^l+\mathbf{z}_r^{i, k}\right)+\mathbf{W}_5^l \mathbf{z}_{s, t_i}^l\right)\)
长\短期表示
对于长期表示,使用HRGNN的输出来构建。实体表示为: \(\mathbf{e}_{s, t+1}^L=\sigma\left(\mathbf{W}_6 \mathbf{z}_{s, t}+\mathbf{b}\right),\) 关系仍采用子图中的编码。
对于短期表示,使用GRU对m个时间内的实体进行建模: \(\mathbf{e}_{s, t+1}^S=\mathrm{GRU}_E\left(\mathbf{e}_{s, t}^S, \mathbf{h}_{s, t}\right),\\ \mathbf{e}_{r, t+1}^S=\operatorname{GRU}_R\left(\mathbf{e}_{r, t}^S, \mathbf{h}_{r, t}\right),\\ \mathbf{h}_{r, t}=\text { Meanpooling }\left(\mathbf{h}_{s, t}\right), \forall e_s \in \mathcal{N}_r^t,\) 门聚合
使用门机制去控制实体\关系嵌入中的长期表示和短期表示的权重: \(\begin{aligned} & \mathbf{e}_{s, t+1}=\sigma\left(\mathrm{g}_e\right) \odot \mathbf{h}_{s, t+1}^L+\left(1-\sigma\left(\mathrm{g}_e\right)\right) \odot \mathbf{h}_{s, t+1}^S, \\ & \mathbf{e}_{r, t+1}=\sigma\left(\mathrm{g}_r\right) \odot \mathbf{h}_{r, t+1}^L+\left(1-\sigma\left(\mathrm{g}_r\right)\right) \odot \mathbf{h}_{r, t+1}^S, \end{aligned}\) 文中的解码器采用的是ConvTransE。
MTKGE
Meta-Learning Based Knowledge Extrapolation for Temporal Knowledge Graph, WWW2023
MTKGE利用基于元学习的方法针对TKGE任务,TKGE(Extrapolation)任务针对的是外推任务,比如未知的实体、未知的关系、未知的时间。文中构建了两种图,关系位置模式图(relative position patterns graph,RPPG)和时序序列模式图(temporal sequence patterns graph,TSPG)。
关系位置模式图
对于一个实体,如果它是\(r_1\)的尾实体,并且是\(r_2\)的头实体,那么在关系之间建立一个新的关系:\((r_1,s-o,r_2)\),以此类推,可以构造四种关系:s-o,o-s,o-o,s-s。对于未知的关系的第一个部分(关系位置),根据已知的关系对其建模: \(\mathrm{g}_r=\frac{1}{\left|\mathcal{N}_p(r)\right|} \sum_{m \in \mathcal{N}_p(r)} \mathrm{g}_m\) 时序序列模式图
有些关系之间会具有先后顺序,对这些关系构造三种模式:forward,backward和meantime。对于未知的关系的第二个部分(时序序列),同样根据已知的关系进行建模: \(\mathrm{q}_r=\frac{1}{\left|\mathcal{N}_p(r)\right|} \sum_{m \in \mathcal{N}_p(r)} \mathrm{q}_m\)
实体特征表示
对于未知实体的表示,使用它周围的关系来表示,特别的是,根据关系的方向分为两种权重: \(\mathbf{h}_e=\frac{1}{|\mathcal{N}(e)|} \sum_{r \in \mathcal{N}(e)} \mathrm{W}_{\operatorname{dir}(r)}^{\mathrm{ent}} \mathbf{h}_r,\\ \mathrm{W}_{\operatorname{dir}(r)}^{\mathrm{ent}}=\left\{W_{\text {in }}^{\text {ent }}, W_{\text {out }}^{\text {ent }}\right\}\) 时序知识扩展
在时序任务中,使用基于CompGCN的模块对k-hop的关系信息建模(区分关系方向): \(\begin{aligned} \mathrm{m}_e^{\ell+1}= & \sum_{(r, o) \in O(e)} \mathrm{W}_{\text {out }}^{\ell}\left[\mathbf{h}_r^{\ell} ; \mathbf{h}_o^{\ell} ; \mathbf{h}_t^{\ell}\right]+ \\ & \sum_{(s, r) \in I(e)} \mathrm{W}_{\text {in }}^{\ell}\left[\mathbf{h}_r^{\ell} ; \mathbf{h}_s^{\ell} ; \mathbf{h}_t^{\ell}\right], \end{aligned}\) 在这一步的编码中,就已经包含了已知的和未知的实体信息,加上self-loop权重: \(\mathrm{h}_e^{k+1}=\sigma\left(\frac{\mathrm{m}_e^{k+1}}{|O(e)|+|I(e)|}+\mathrm{W}_{\text {self }}^k \mathrm{~h}_e^k\right) \text {, }\) 关系和时间编码也如此做: \(\mathbf{h}_r^{\ell+1}=\sigma\left(\mathbf{W}_{\mathrm{rel}}^{\ell} \mathbf{h}_r^{\ell}\right) ; \mathbf{h}_t^{\ell+1}=\sigma\left(\mathbf{W}_{\text {time }}^{\ell} \mathbf{h}_t^{\ell}\right) .\)