结合静态事实和重复历史事实的动态知识图谱推理方法
Dynamic knowledge graph inference method combining static facts and repeated historical facts
通讯作者:
收稿日期: 2022-10-17
基金资助: |
|
Received: 2022-10-17
Fund supported: | 国家自然科学基金资助项目(62073294);浙江省自然科学基金资助项目(LZ21F030003) |
作者简介 About authors
林栋(1998—),男,硕士生,从事知识图谱推理研究.orcid.org/0000-0003-0706-2020.E-mail:
针对现有的动态知识图谱推理方法容易忽略动态知识图谱中存在着大量静态信息和重复历史事实的问题,提出结合静态事实和重复历史事实的动态知识图谱网络方法. 该方法利用动态知识图谱中实体间隐藏的静态联系来构成静态事实,并协助动态知识图谱推理;利用历史事实构建历史词表,在预测未来时对历史词表进行查询;对历史中未发生的事实进行惩罚,提高重复历史事实的预测概率. 在2个公开的数据集上进行动态知识图谱推理实验,对比实验时选用目前主流的5个模型作为基线. 在实体预测实验中,平均倒数排名(MRR)达到0.489 1和0.530 3,Hits@10达到0.588 7和0.616 5,证明了所提方法的有效性.
关键词:
A static-historical network (Sta-HisNet) method combining static facts and repeating historical facts was proposed, aiming at the problem that existing dynamic knowledge graph reasoning methods tend to overlook the vast amount of static information and repeating historical facts present in the dynamic knowledge graphs. The hidden static connections between entities in the dynamic knowledge graph were used to form static facts, assisting in the inference of the dynamic knowledge graph. Historical facts were employed to construct a historical vocabulary, and the historical vocabulary was queried when predicting the future. Facts that had not occurred in history were punished, and the probability of predicting duplicate historical facts was increased. Experiments were conducted on two public datasets for dynamic knowledge graph reasoning. Comparative experiments were performed using five mainstream models as baselines. In entity prediction experiments, the mean reciprocal rank (MRR) was 0.489 1 and 0.530 3, and Hits@10 reached 0.588 7 and 0.616 5 respectively, demonstrating the effectiveness of the proposed method.
Keywords:
本文引用格式
林栋, 李永强, 仇翔, 冯远静, 谢碧峰.
LIN Dong, LI Yong-qiang, QIU Xiang, FENG Yuan-jing, XIE Bi-feng.
知识图谱是广泛用于现实世界事实知识表示的资源,它支持信息检索领域的无数知识驱动任务[1]. 知识图谱是图结构的知识库以及储存事实信息的普遍方法构建三元组
动态知识图谱推理是根据过去的事件来推断未来的事件. 本研究重点专注于预测动态知识图谱,通过预测动态知识图谱中缺失的知识可以改善大量的下游应用程序,如金融中的决策支持. 在动态知识图谱中存在大量的不随时间变化的静态知识信息,提取这些信息特征对动态知识图谱推理有很大的帮助. 现实中大量历史事实是重复发生的,如金融危机、外交事件,然而目前的方法都无法对重复历史进行筛选以及对历史重复度大的时序知识进行更好的预测,这使得它们不太适合用于许多现实世界的应用程序.
为了更好地利用静态事实和重复历史事实,本研究结合静态事实,获取动态知识图谱中事实的静态信息,挖掘实体之间更深层次的联系. 结合重复历史事实,通过历史词表对历史事实进行筛选,对历史中未出现的事实做出历史惩罚,提高重复事实的预测概率. 在2个公开数据集上进行动态知识图谱推理,验证所提方法在动态知识图谱推理准确性上的表现.
1. 相关工作
目前静态知识图谱推理已有深入的研究. 最初Bordes等[3]提出先将关系视为嵌入空间中实体之间转换的静态知识图谱推理,随后设计几个变体. Wang等[4]在一个关系特定的超平面上添加投影. Dai等[5]将实体映射到较低级别的关系特定空间,但是基于翻译方法不能建立对称模型. Trouillon等[6]通过学习一个双线性目标解决了这个问题. Socher等[7]则将关系视为复杂向量空间中的旋转. Schlichtkrull等[8]将事实放入图中,通过图卷积神经网络(graph convolution network, GCN)[9]建模多种关系类型. 传统知识图谱只有静态的事实,缺乏时间信息. 随着数据的快速发展,现在的知识图谱展现出复杂的时间动态,静态知识图谱无法满足现实要求,因此需要新的方法为这种事实进行时序建模.
近年来,通过在知识图谱中加入时间信息来构成动态知识图谱,这已经成为知识图谱推理的重要分支. Leblay等[10]把时间戳与实体和关系一样作为嵌入,同时改变TransE[3]的评分. Dasgupta等[11]将实体和关系的表征映射到时间戳的超平面上. 上述方法没有考虑到现实中的时间也会影响实体的状态以及对应关系. 为了改善时间范围推理,Trivedi等[12]通过深度进化知识网络,研究实体在动态知识图谱中的演化以及它们演化之后的关系. 为了捕捉实体间的交互,Jin等[13]基于邻居聚合器和循环神经网络(recurrent neural network, RNN)来构建包含一跳事实的子图序列,使用逻辑规则进行动态知识图谱推理. Li等[14]使用长度感知卷积神经网络,通过易于学习的课程学习策略来处理不同长度的进化模式. Li等[15]通过对动态知识图谱的循环建模来学习每个时间戳上实体和关系的进化表示,并利用静态实体嵌入来限制动态知识图谱推理. Zhu等[16]通过复制模式和生成模式,分别对重复出现历史事实和未曾出现的历史事实进行学习和预测. 重复历史事实过于繁琐且绝对,无法很好地利用知识图谱中的静态事实,因此Zhu等[16]提出结合静态事实和重复历史事实的动态知识图谱网络(static-historical network,Sta-HisNet)进行推理. Li等[15]只是将静态事实作为动态知识图谱的限制. Sta-HisNet模型通过挖掘知识图谱中的静态事实信息,协助实现对动态知识图谱的推理,同时改进历史模式,对重复历史事实进行更好的学习和利用.
2. 结合静态事实和重复历史事实的动态知识图谱推理方法
为了更好地利用历史事实对动态知识图谱推理的帮助,提出结合静态事实和重复历史事实的动态知识图谱. 如图1所示,从静态知识图谱中获取不随时间变化的静态事实,通过关系图卷积神经网络(relation graph convolution network, R-GCN)[8]提取实体的内在特征并得到静态嵌入. 从动态知识图谱中抽取事件四元组,并且生成基于时间序列的实体嵌入、关系嵌入和时间嵌入,然后将4个嵌入拼接后经过历史模式来训练模型,其中通过二维卷积提取嵌入特征,再通过长短期记忆网络预测未来事实特征;通过历史惩罚降低历史中没有出现过事实的预测得分,最后利用实体预测完成动态知识图谱推理,得到实体预测概率.
图 1
2.1. 动态知识图谱背景
动态知识图谱在传统的知识图谱上添加了时间信息. 在动态知识图谱中,每个事实是在时间戳
2.2. 基于时间序列的实体嵌入
由于实体随着时间的变化,含义将会发生变化,同时实体也有着时不变的特性. 为了同时满足实体嵌入的时变和时不变特征,本研究的实体嵌入
式中:
式中:
2.3. 基于静态事实的静态嵌入
图 2
图 2 ICEWS18数据集的部分静态知识图谱
Fig.2 Partial static knowledge graph of ICEWS18 data set
若直接将公民(菲律宾)视为一个嵌入,则会丢失其与公民和菲律宾之间的联系,因此通过挖掘实体间隐藏的联系构成新的静态事实,从而构建成新的静态知识图谱. 由于获得的静态知识图谱是多关系图,R-GCN[8]采用一层没有自循环的R-GCN来获得静态知识图谱中实体的静态嵌入,这样可以在建立多关系图时,不需要额外的关系嵌入. R-GCN的更新规则定义为
式中:
2.4. 历史模式
在特定的数据集中有许多历史事实是重复的,一个模型可能会从历史上出现的已知事实中学到很多东西. 历史模式旨在识别重复的事实,并通过惩罚历史上未知的事实来预测未来的事实. 历史模式的流程如下:传统的一维卷积可以提取的特征信息十分有限,因此采用卷积的方式提取特征. 为了更好地提取实体、关系、时间和静态嵌入特征,采用基于卷积神经网络嵌入(convolution embedding, ConvE)[18]模型中的二维卷积方法,利用长短期记忆(long short-term memory, LSTM)[19]网络捕获时序信息,经过一层神经网络改变维度得到实体预测结果. 通过历史事实构建历史词表,利用历史词表筛选出历史中未出现过的事实并对其进行惩罚,经过softmax函数得到历史模式的最终预测概率,流程如图3所示.
图 3
假设给定头实体、关系、时间戳和预测尾实体
式中:
将向量
式中:
为了惩罚一些没有与历史中的头实体和关系形成已知事实的尾实体,通过历史词表判断历史中是否存在过三元组,如果历史中存在过三元组,历史词表向量为
式中:
2.5. 学习目标
实体预测的损失函数使用多分类的交叉熵损失函数来表示. 尾实体预测损失函数为
式中:
3. 实验及结果分析
3.1. 实验数据
实验性能分析中采用ICEWS18系统(integrated crisis early warning system)[17] 和GDELT(global database of events, language, and tone)[20]作为对比实验数据集,这2个数据集是动态知识图谱领域通用的数据集. 其中ICEWS18是从2018−1−1—2018−10−31发生的所有政治事件,每个事件之间都是以24 h的间隔作为时间戳;GDELT是从新闻媒体中提取的人类社会规模行为和信念的目录,实验数据集的时间跨度为2018−1−1—2018−1−31,每个事件之间都是以15 min的间隔作为时间戳. 数据集都按照8∶1∶1的比例划分. 数据集的详细统计情况如表1所示.
表 1 不同知识图谱在公开数据集中的数量统计
Tab.1
数据集 | 实体数 | 关系数 | 训练集数 | 验证集数 | 测试集数 |
ICEWS18 | 23 033 | 256 | 373 018 | 45 995 | 69 514 |
GDELT | 7 691 | 240 | 1734 399 | 238 765 | 305 241 |
3.2. 评价标准
使用知识图谱推理中常用的2个指标[2]即平均倒数排名(mean reciprocal rank, MRR)和Hits@1、Hits@3、Hits@10来评价模型. 对于每个缺少头实体或尾实体的测试三元组,计算出所有候选实体的概率并按降序排列. 其中,MRR为预测正确实体的平均倒数排名,Hits@1、Hits@3、Hits@10分别为在测试集中正确预测实体在排名第1、前3、前10中所占的比例. 计算式为
式中:
式中:
3.3. 实体预测实验结果
在实体预测上对比了现有的静态推理方法中的ConvE模型和基于动态推理方法的RE-NET、CEN、RE-GCN和CyGNET模型,分别在ICEWS18、GDELT这2个数据集上进行实验. 本研究的Sta-HisNet模型参数设置为:批训练大小为1 024,学习率为0.001,嵌入向量维度为200,丢弃系数为0.2,重塑成3m×n的二维矩阵,其中
表 2 不同模型在ICEWS18数据集上的实体预测结果
Tab.2
模型 | MRR | Hits@1 | Hits@3 | Hits@10 |
ConvE | 0.366 7 | 0.285 1 | 0.398 0 | 0.506 9 |
RE-NET | 0.429 3 | 0.361 9 | 0.454 7 | 0.558 0 |
RE-GCN | 0.463 1 | 0.391 2 | 0.497 3 | 0.569 3 |
CyGNET | 0.466 9 | 0.405 8 | 0.498 2 | 0.571 4 |
CEN | 0.472 6 | 0.418 6 | 0.506 1 | 0.579 1 |
Sta-HisNet | 0.489 1 | 0.429 4 | 0.515 3 | 0.588 7 |
表 3 不同模型在GDELT数据集上的实体预测结果
Tab.3
模型 | MRR | Hits@1 | Hits@3 | Hits@10 |
ConvE | 0.359 9 | 0.270 5 | 0.393 2 | 0.494 4 |
RE-NET | 0.401 2 | 0.324 3 | 0.434 0 | 0.538 0 |
RE-GCN | 0.481 4 | 0.421 6 | 0.523 7 | 0.583 5 |
CyGNET | 0.509 2 | 0.445 3 | 0.546 9 | 0.609 9 |
CEN | 0.516 8 | 0.457 6 | 0.549 7 | 0.612 3 |
Sta-HisNet | 0.530 5 | 0.475 5 | 0.560 1 | 0.616 5 |
表2、3展示了利用Sta-HisNet和基线方法对2个动态知识图谱数据集的链接进行预测的结果,其中ConvE、RE-NET和CyGNET的实验结果来源于文献[17],CEN和RE-GCN的实验结果来源于实验. 从实验结果可以看出,与静态知识图谱推理方法ConvE相比,利用时间信息进行推理的动态知识图谱方法能够进一步提升预测任务的精确度. 与动态知识图谱推理且基准效果最好的CEN模型,Sta-HisNet在MRR指标上提高了1.65%和1.37%,在Hits@1指标上提高了1.08%和1.79%,在Hits@3指标上提高了0.92%和1.04%,在 Hits@10指标上提高了0.96%和0.42%.
3.4. 消融实验
表 4 各模块在 ICEWS18 数据集上的消融实验结果
Tab.4
模型 | MRR | Hits@1 | Hits@3 | Hits@10 |
Sta-HisNet-NON-EMB | 0.479 4 | 0.421 2 | 0.506 3 | 0.573 5 |
Sta-HisNet-NON-STA | 0.482 2 | 0.494 5 | 0.509 8 | 0.578 1 |
Sta-HisNet-NON-CONV | 0.473 1 | 0.411 3 | 0.503 2 | 0.571 3 |
Sta-HisNet-NON-LSTM | 0.463 9 | 0.402 1 | 0.498 6 | 0.574 2 |
Sta-HisNet-NON-PUN | 0.458 9 | 0.396 5 | 0.483 8 | 0.559 2 |
Sta-HisNet | 0.489 1 | 0.429 4 | 0.515 3 | 0.588 7 |
表 5 各模块在 GDELT 数据集上的消融实验结果
Tab.5
模型 | MRR | Hits@1 | Hits@3 | Hits@10 |
Sta-HisNet-NON-EMB | 0.526 3 | 0.471 0 | 0.555 2 | 0.611 2 |
Sta-HisNet-NON-STA | 0.518 6 | 0.463 6 | 0.546 9 | 0.603 9 |
Sta-HisNet-NON-CONV | 0.523 2 | 0.469 1 | 0.556 6 | 0.610 5 |
Sta-HisNet-NON-LSTM | 0.514 5 | 0.459 8 | 0.546 3 | 0.601 2 |
Sta-HisNet-NON-PUN | 0.509 2 | 0.445 3 | 0.536 9 | 0.589 9 |
Sta-HisNet | 0.530 5 | 0.475 5 | 0.560 1 | 0.616 5 |
表4、5中的Sta-HisNet-NON-EMB、Sta-HisNet-NON-STA、Sta-HisNet-NON-CONV、Sta-HisNet-NON-LSTM、Sta-HisNet-NON-PUN分别为Sta-HisNet模型将基于时间序列的实体嵌入更改为常规嵌入、去除静态嵌入、去除二维卷积、将长短期记忆网络更改为一层神经网络和去除历史惩罚. 可以看出,在所有数据集上相比于 Sta-HisNet 模型,通过更改实体嵌入, 在 MRR 指标上提高了1.03%和0.42%,在 Hits@10指标上提高了1.52%和0.53%, 这说明通过实体随时间进化的嵌入能够有效地提升预测结果. 通过增加静态嵌入, 在 MRR 指标上提高了0.69%和1.19%,在 Hits@10指标上提高了1.06%和1.26%,这说明通过挖掘实体之间的静态联系能有效提高动态知识图谱推理的准确性. 通过增加二维卷积,在 MRR 指标上提高了1.66%和0.73%,在Hits@10指标上提高了1.74%和0.60%,这说明通过二维卷积可以聚合嵌入特征. 通过更改成长短期记忆网络,在 MRR 指标上提高了2.52%和1.60%,在Hits@10 指标上提高了1.45%和1.53%,这说明通过长短期记忆网络的历史记忆可以较好地捕获时序信息,更好地处理动态知识图谱. 通过增加历史惩罚,在MRR 指标上提高了3.02%和2.13%,在 Hits@10 指标上提高了2.95%和2.66%,这说明历史事实中存在大量重复的三元组,且在预测未来时,这些三元组仍会频繁出现. 历史惩罚可以在预测未来时,对历史中未出现过的实体做出惩罚,从而提高实体预测的准确性.
为了更具体描述使用的历史惩罚与不使用的历史惩罚,对比Sta-HisNet模型和 Sta-HisNet-NON-PUN 模型的拟合速率. 在相同的实验设备上分别计算 Sta-HisNet模型与Sta-HisNet-NON-PUN 模型的拟合轮数. 2种方法训练参数设置相同,批训练大小都设置为1 024,学习率为0.001,嵌入向量维度相同,训练数据集为 ICEWS18、GDELT. 为了更充分、全面地对比,在训练轮数分别取 0、5、10、20、30、40、50时,以MRR评分指数作为评判指标,具体实验结果如图4所示. 图4中E为训练轮数. 可以看出,增加历史惩罚的Sta-HisNet达到最佳模型的运行轮数明显小于没有增加的,历史惩罚的筛选能够帮助模型去掉部分错误答案,在较小的数据集ICEWS18上更为明显,这也进一步表明Sta-HisNet在动态知识图谱推理上的快速拟合优势.
图 4
图 4 2种方法在2个数据集上的最佳轮数对比
Fig.4 Comparison of optimal number of rounds between two methods on two datasets
3.5. 时间复杂度实验
考虑到动态知识图谱推理是难度较大的多分类问题,因此本研究的Sta-HisNet算法通过较复杂的特征处理以挖掘事实间更深层的联系. 为了探索复杂特征处理对实际运行时间所造成的影响,本研究在相同的实验设备、相同数据集上分别测试目前实验效果较好的CyGNET、RE-GCN和Sta-HisNet方法在一个回合内的所需时间,这2种方法的批训练大小都设置为1 024,学习率为0.001,嵌入向量维度相同,且数据集都为 ICEWS18、GDELT.
如图5所示,
图 5
图 5 3种方法在2个数据集上的运行一个回合的所需时间
Fig.5 Time required for three methods to run one round on two datasets
4. 结 语
在动态知识图谱中实体往往随着时间而进化,简单的向量嵌入无法满足事实需求. 知识图谱存在大量的静态事实,挖掘这些事实信息可以有效地协助动态知识图谱推理. 历史事实往往是不断重复的,未来发生的事实可能在过去发生过,运用重复历史事实对动态知识图谱推理大有帮助,因此提出结合静态事实和重复历史事实的动态知识图谱推理. 通过在实体嵌入中采用正弦函数,使得实体嵌入结合时间信息. 使用R-GCN对静态事实提取更深层次的特征,并在历史模式中使用历史惩罚,对历史中未发生过的事实进行惩罚,提高重复事实的预测概率. 实验结果表明,Sta-HisNet在预测动态知识图谱的未来事实方面具有良好的性能. 在未来的工作中,考虑加入外部动态知识图谱信息如实体类型来增强模型的学习能力.
参考文献
/
〈 |
|
〉 |
