赞
踩
知识图谱问答(KGQA)近年来受到了广泛关注,并在这一领域提出了许多创新方法,但在时态KGQA方面的研究相对较少。现有的大多数时态KGQA方法主要关注语义或时态层面的匹配,缺乏对时间约束进行推理的能力。本文提出了一种基于子图的模型,用于在时态知识图谱(TKG)上回答复杂问题,受到人类认知的启发。我们的方法称为子图时态推理(SubGraph Temporal Reasoning,SubGTR),包括三个主要模块:隐式知识提取、相关事实搜索和子图逻辑推理。首先,使用存储在时态知识图谱中的背景知识重新构造问题,以获取显式的时间约束。然后,在TKG中搜索以识别相关实体并获得它们的初始评分。最后,使用时态逻辑对时间约束进行量化和应用,以得出最终答案。为了评估我们的模型,我们在时态QA基准上进行了实验证明。我们观察到现有基准中包含许多伪时态问题,并提出了ComplexCronQuestions,它是CronQuestions的一个经过筛选的版本,可以更好地展示模型对复杂时态问题的推理能力。实验结果表明,SubGTR在CronQuestions和Complex-CronQuestions上实现了最先进的性能。此外,与现有的时态KGQA方法相比,我们的模型在处理实体冷启动问题上表现更好。
知识图谱问答(KGQA)通过对知识图谱(KG)进行推理来定位并提供答案,以回答自然语言问题[1-3]。许多自然语言问题都包含时间约束,例如“谁在2019年获得了诺贝尔奖?”。然而,传统的知识图谱由于缺乏时间信息而无法支持时态推理[4]。最近,研究界出现了时态知识图谱(TKGs),在传统的<主语,谓词,宾语>三元组之外,增加了时间属性,例如事实的起始时间和结束时间,例如(巴拉克•奥巴马,担任,美国总统,2008年,2016年),因为大多数事实随时间而演变[5,6]。例如,2016年美国的总统是唐纳德•特朗普,而2020年是乔•拜登。
当问题包含时间约束时,应该使用时态知识图谱(TKG)作为知识库来定位潜在的答案,这个任务被称为时态知识图谱问答(TKGQA)[4]。如表1所示,我们可以将时态问题分为两类:(1)简单问题,只需一个事实即可回答;(2)复杂问题,需要对多个事实进行推理。
由于问题的时态维度,问答任务变得异常具有挑战性。首先,许多问题包含隐含的时间表达式,使得它们相比于具有明确和具体时间约束的简单问题更加复杂。为了回答这类复杂问题,系统需要确定隐含参考的时间段,以启用时态推理。例如,第二次世界大战对应于1939年至1945年的时期。其次,时间词(例如"第一"和"之后")使得直接查询时态知识图谱失败。假设模型已经知道第二次世界大战对应于1939年至1945年的时间间隔,在时态词"第一"和"之后"的基础上,通过时态推理可以准确找到目标实体,即杜鲁门。
为了解决时态知识图谱问答(TKGQA)的问题,一种典型的方法是TempoQR,它以TKG嵌入方法为基础,将时态问答建模为在TKG上的链接预测任务。具体而言,对于每个问题,它引入时间范围信息,并使用EaE来丰富问题表示的语义信息,最后将其作为输入提供给TKG评分函数来预测答案。尽管TempoQR取得了最先进的性能,但这种方法存在设计上的缺陷,因为它不能在答案选择上反映时态逻辑(参见第5.8节中的用例)。此外,TempoQR的最先进性能主要是在CronQuestions [4]中的伪时态问题上的一种假象。例如,对于问题"Carlo Taverna首次获得的奖项是什么?“,在TKG中只有一个与Carlo Taverna相关的事实,这使得时间词"第一"作为约束变得毫无意义。我们将这类问题定义为伪时态问题,并通过对CronQuestions进行细化构建Complex-CronQuestions,该数据集仅包含真正的复杂时态问题(参见第5.5节)。
为了解决TKGQA的问题,我们研究了人类回答时态问题的方式。根据双过程理论,人类首先理解问题的语义,并搜索大容量的记忆以找到相关信息,然后考虑具体的约束条件来选择答案。人类充分利用脑中的事实知识来理解问题中的隐含时间,并根据时间词进行推理以可靠地确定答案。我们试图将这一理论转化为TKGQA,如图1所示。对于特定的问题,例如"第二次世界大战之后美国的第一任总统是谁?”,首先可以检索到一些相关的事实,例如(第二次世界大战,发生时间,1939年至1945年)、(赫伯特•克拉克•胡佛,美国总统,1929年至1933年)、(富兰克林•德拉诺•罗斯福,美国总统,1933年至1945年)、(哈里•S•杜鲁门,美国总统,1945年至1953年)等。之后,根据时间词触发时态推理,即"第一任总统"和"第二次世界大战之后",从而排除了大部分候选人并确定了正确答案:哈里•S•杜鲁门。
为了有效处理复杂时态问题,按照上述过程,我们设计了一种名为SubGraph Temporal Reasoning(SubGTR)的新方法,包括三个模块:(a)隐式表达解析模块,(b)相关事实搜索模块,以及(c)子图逻辑推理模块。隐式表达解析模块和相关事实搜索模块可以看作是人类双过程理论中的搜索阶段(图1中的阶段I),从时态知识图谱中检索到显式的时间范围和相关三元组。这些信息是输入到子图逻辑推理模块的,该模块可以看作是人类双过程理论中的推理阶段(图1中的阶段II)。通过这三个模块,我们可以模拟人类在TKBQA任务中的推理过程。具体而言,隐式表达解析模块通过查询TKG来识别和明确问题中的隐含时间信息,随后可用于搜索和推理。相关事实搜索模块利用语言模型(例如RoBERTa [12])和TKG嵌入(例如TComplEx [7])将问题编码为包含问题语义、实体语义和时间语义的嵌入,并通过TKG评分函数和时间敏感函数获得候选实体及其语义分数。在子图逻辑推理模块中,构建了每个问题的子图,其中包含问题中提到的实体的邻居和时间信息,然后根据隐式表达解析模块输出的时间约束进行过滤。最后,我们设计了时间激活函数来量化每个实体的相关性,以进行最终的答案选择。
我们在这项工作中的贡献可以总结如下:
• 我们提出了一个新颖的框架SubGTR来解决TKGQA问题,包括隐式表达解析、相关事实搜索和子图逻辑推理三个模块,提高了识别问题中包含的时态信息的能力。我们强调了逻辑推理对于时间约束的重要性,并提出通过时态子图推理来推断满足时间约束的答案,从而达到明确且可靠的答案;
• 我们从CronQuestions中过滤出伪时态问题,并提供了Complex-CronQuestions,这是一个真正的复杂时态数据集,可以更好地评估模型回答复杂时态问题的能力;
• 我们在CronQuestions和Complex-CronQuestions上取得了最先进的性能。此外,我们对未见实体进行了冷启动实验,证明了SubGTR的推理能力的有效性
在本节中,我们介绍与我们的研究相关的工作,包括TKG补全方法、KGQA方法和时态KGQA方法。
2.1 TKG补全方法 知识图谱补全(KGC)可以预测丢失的链接,对于现实世界中的知识图谱来说非常重要,因为它们普遍存在不完整性。目前大部分可用的技术都是基于已观察到的事实进行嵌入任务。给定一个知识图谱,这种技术首先将知识图谱嵌入到连续的向量空间中,并定义一个得分函数来衡量每个事实的可信度。实体和关系的嵌入可以尽可能地保留图谱的结构和属性信息。学习到的嵌入可以进一步用于各种下游任务,如知识图谱补全、关系抽取和实体分类。TransE将实体嵌入到高维实数空间中,将关系嵌入为头实体和尾实体之间的平移。RESCAL和DistMult学习一个包含头实体和尾实体向量的双线性乘积和一个关系矩阵的得分函数。ComplEx在复数空间中表示实体向量和关系矩阵。为了充分利用本体中丰富的语义信息,TransO结合了丰富的本体信息来提高模型性能并保持较低的模型复杂性。
KGC方法假设知识图谱是静态的,但这可能导致不准确的预测结果,因为TKG中的许多事实随时间变化。最近出现了TKG补全方法,旨在通过解决KGC方法的局限性来实现更准确的链接预测。由于TKG中添加了时态维度,TKG补全方法需要考虑时态信息的建模。也就是说,除了事实之外,TKGC方法还将事实的时间戳纳入到学习过程中。具体来说,TKGC的关键挑战是如何有效地将时间戳整合到模型中,以便正确捕捉实体、关系和底层图的时态动态,并用于下游任务。TTransE首次尝试通过在得分函数中添加时间戳嵌入来扩展TransE。TComplEx在ComplEx的基础上通过四阶张量的规范分解扩展了时态。为了表示实体/关系的动态演变,DE-SimplE尝试将表示形式作为时间戳的函数进行开发,以表示不同类型的动态模式。RTFE将知识图谱的状态视为随时间按照一阶马尔可夫过程演化。
2.2 KGQA方法 KGQA可以定义为从知识图谱中检索自然语言问题的答案的任务。KGQA是智能系统的重要组成部分,该领域的研究非常有价值,吸引了许多研究人员的关注。基于语义解析(SP)和基于信息检索(IR)的方法是解决KGQA任务的两种主流方法。
基于语义解析的方法将问题解析为逻辑形式,并针对知识图谱执行逻辑形式以查找答案。传统的基于规则的语义解析方法通过匹配预定义的模板构建语义查询图,但这限制了它们的泛化能力。为了解决模板的局限性,基于句法的方法根据依赖树和启发式规则生成语义查询图。IR-based方法检索与问题相关的图,并应用一些排名算法从前几个位置选择实体。MCCNNs使用CNN对问题进行编码,并利用答案类型、答案实体的路径和一跳内的子图来获得丰富的语义表示。为了实现无需金标路径的弱监督推理,PullNet利用GCN迭代地构建候选节点图,并通过类似的GCN模型选择答案节点。
目前,一些方法使用了KG预训练的嵌入来回答问题。这些方法对于简单问题表现良好,但对于复杂问题具有挑战性。为了解决上述方法的局限性,一些方法增强了问题表示以解决复杂问题。这些方法使用逻辑推理或利用以文本文档形式提供的可用辅助信息。
然而,这些KGQA算法适用于非时态的KG,即包含(主体、关系、客体)形式事实的KG,并不适合处理时间约束。
2.3 时态KGQA方法 为了回答时态问题,我们需要在包含(主体、关系、客体、起始时间、结束时间)形式事实的时态KG上进行推理。当前的时态KGQA方法主要包括两种类型:基于时间约束分解的方法和基于时态知识图谱表示的方法。
基于时间约束分解的方法将原始问题分解为非时态问题和时间约束,并使用传统的KGQA方法寻找子问题的候选答案。最后,它们通过时间约束过滤候选答案,得出原始问题的最终答案。这种方法的一个主要缺点是使用预先指定的模板进行分解,具有有限的泛化能力。该方法需要人工专家制定规则,并且无法处理复杂问题。
基于时态图表示的方法使用TKG嵌入方法学习实体、关系和时间戳的嵌入,然后使用TKG嵌入与问题嵌入之间的距离对答案进行评分。CronKGQA为时态KGQA提供了可学习的推理过程,不依赖手工制定的规则,并证明了时态KG嵌入可以应用于时态KGQA任务。尽管CronKGQA在回答简单问题方面表现极好,但在需要推理某些时间约束的复杂问题上存在挑战,这主要是因为CronKGQA缺乏理解问题中暗含的时间和推理时间约束的能力。为弥补这个缺点,TempoQR引入了每个问题的时间范围信息,并使用EaE方法增强问题表示的语义信息。然而,尽管TempoQR在复杂问题上取得了改进,但它仍然没有考虑到时间约束,例如before/after、first/last等,导致结果不可靠。TempoQR之所以能够在不考虑复杂约束的情况下取得出色的结果(Hits@1:0.91),主要是因为CronQuestions中存在伪时态问题。
时态分解方法受限于手工编写的规则,难以分解复杂问题;时态表示方法缺乏处理时间约束的能力,导致结果不可靠。为了弥补这些缺点,我们创新性地提出了暗含时间表达式提取方法,有效简化复杂问题,并提出了量化规则约束的时态激活函数,可以很好地与语义评分相结合,并具有更好的扩展和泛化能力。
3.1 TKG 和 TKG 嵌入 一个 TKG(时态知识图谱) K := (E, R, T, F) 是一个包含实体之间带有时间戳边的多关系有向图。在该图中,一个事实可以被形式化为 (s, r, o, τ) ∈ F,其中 s 和 o 表示 E 中的主体和客体实体,r 表示它们之间的关系,τ 表示与该关系相关的时间戳。TKG 嵌入方法旨在为 K 中的每个实体 ϵ ∈ E、关系 r ∈ R 和时间戳 τ ∈ T 学习 K 维向量 eϵ, vr, tτ ∈ RK。目标是通过一个得分函数 φ(•),确保事实 (s, r, o, τ) ∈ F 的得分高于非事实 (s′, r′, o′, τ′) ∈/ F。数学上可以表示为 φ(es, vr, eo, tτ) > φ(es′, vr′, eo′, tτ′)。
一个 TKG 嵌入方法的例子是 TComplEx,它是 ComplEx 的扩展,考虑了时间信息。TComplEx 将每个实体、关系和时间戳编码为复向量。TComplEx 的得分函数 φ(•) 定义如下: φ(es, vr, eo, tτ) = Re(⟨es, vr ⊙ tτ, eo⟩) (1) 其中 Re(•) 表示实部,⟨•⟩ 表示嵌入向量的共轭复数,⊙ 表示逐元素乘积。
3.2 时态知识图谱问答(Temporal KGQA) 给定一个 TKG K 和一个自然语言问题 q,时态知识图谱问答(TKGQA)旨在提取正确的实体 s/o ∈ E 或时间戳 τ ∈ T,以回答问题 q。问题 q 可以表示为一个标记列表 [token1, …, tokenn],其中 tokeni 表示问题的第 i 个标记,n 是问题的长度。在一个 TKGQA 数据集 D 中,一个数据样本包含一个问题-答案对 (qi, ai),以及将 qi 中的实体链接到 TKG 实体的唯一标识符。
4.1 模型概述 SubGTR 的整体架构如图2所示,它由三个模块组成:隐式表达解析模块、相关事实搜索模块和子图逻辑推理模块。首先,利用来自 TKG 的背景知识简化问题,以获取显式的时间约束。然后,使用嵌入和初始得分从时态知识图中检索候选实体。最后,通过构建问题子图并利用时间约束对其进行裁剪和逻辑推理,获取答案实体。在隐式表达解析模块中,通过 TKG 中的知识提取问题中的隐式时间信息,并使用发现的时间约束 T1、T2 重写自然语言问题,以便后续的推理和查询。在相关事实搜索模块中,我们首先将自然语言问题转换为包含问题语义、TKG 语义和时间语义的嵌入,然后使用 TKG 的评分函数 φ(•) 和时间敏感函数 f(•) 获取候选实体及其语义得分 Scoresematic。在子图时态推理模块中,我们首先为每个问题构建子图,然后根据时间约束 T1、T2 进行筛选。最后,我们使用时态激活函数为子图中的每个实体评分 Scorereasoning,并通过融合得分获得最终答案。
4.2 隐式表达解析模块 复杂问题中包含隐式的时间信息,这对问答系统构成了挑战。人类通过将显式信息与隐含信息关联起来,利用常识和背景知识简化这类问题。基于此观点,我们设计了隐式表达解析模块,使模型能够简化问题并明确地重写问题中的隐式时间信息。它包括两个部分:通用知识提取和特定知识提取。
通用知识提取。在许多自然问题中,一些众所周知的事件名称被用作隐式的时间约束,例如,“Who was the first president of the United States after World War II?",其中“World War II”与美国总统没有直接关联,但可以视为隐含的时间约束。由于缺乏背景知识,现有模型通常会忽略这种时间信息。因此,我们使用 TKG 中的事件知识来用事件替代隐式的时间约束,即1945年。对于在问题中识别出的每个事件实体,我们对 TKG 提出一个搜索查询,以检索该事件的开始时间 T1 和结束时间 T2。然后,使用简单的正则表达式将问题中的事件文本 qevent 替换
4.3 相关事实搜索模块 在相关事实搜索模块中,受到 EaE [8] 和 TempoQR [9] 的启发,我们使用预训练的语言模型和 TKG 嵌入将自然语言问题转换为包含问题语义、TKG 语义和时间语义的向量,并使用 TKG 的评分函数和时间敏感函数获取候选实体及其语义得分。
4.3.1 问题嵌入 自然语言的语义。我们通过预训练的语言模型获取自然语言问题的语义信息。具体而言,将问题 qtext 的自然语言形式转换为一个语义矩阵 QR,使用预训练的 RoBERTa [12]。
QR = WRRoBERTa(qtext),(3)
其中 QR = [qR1, qR2, . . . , qRN] 是一个 D × N 的嵌入矩阵。N 是标记的数量,D 是 TKG 嵌入的维度。WR 是一个 D × Droberta 的投影矩阵,其中 Droberta 是 RoBERTa 嵌入的维度。
实体的语义。为了捕捉自然语言问题中关于实体的陈述性知识,我们用预训练的 TKG 嵌入 [8] 替换 QR 中实体和时间戳的标记嵌入。
qEi = ⎧⎨⎩ WEeϵ,如果第 i 个标记与实体 ϵ 相关联, WEtτ,如果第 i 个标记与时间戳 τ 相关联, qRi,否则, (4)
其中 WE 是一个 D × D 的投影矩阵。eϵ 和 tτ 是 TKG 的预训练嵌入,QE = [qE1, qE2, . . . , qEN]。这样可以用来自 TKG 的实体信息丰富问题表示。
时间的语义。在隐式知识感知模块中,我们已经明确转换了问题中的时间信息。为了增强对时间信息的感知,我们将提取的 TKG 时间嵌入合并到问题表示中。
qTi = {qqEEii,+ T1 + T2, 如果第 i 个标记不是实体,否则是实体, (5)
其中 QT = [qT1, qT2, . . . , qTN]。T1 和 T2 是从隐式知识感知模块获取的问题时间范围。语义融合。接下来,我们提出一个信息融合层将信息融合到单个问题表示 q 中。参考 [8],我们使用一个信息融合层,该层由一个可学习的编码器 Transformer(•) 组成,其中包含 2 个 Transformer 编码层 [49]。这个编码器允许问题的标记相互关注,将上下文、实体和时间感知信息融合在一起。最终的标记嵌入矩阵 Q 计算如下:
Q = Transformer(QT),(6)
其中 Q = [qCLS, q1, . . . , qN],最终的问题表示 q = qCLS。
4.3.2 语义评分函数 实体 ϵ ∈ E 成为答案的语义得分由以下公式给出:
max (φ (es, PEq, eϵ, tτ) , φ (eo, PEq, eϵ, tτ)),(7)
其中 s、o 和 τ 是注释的主语、宾语和时间戳,PE 是一个 D × D 的可学习矩阵,用于实体预测。在这里,我们将注释的主语和宾语视为可互换的,max(•) 函数确保在 s 或 o 是虚拟实体时忽略得分。
此外,时间戳 τ ∈ T 成为答案的得分由以下公式给出:
max (φ (es, PT q, eo, tτ) , fsensity (PT q, tτ)),(8)
其中 s、o 是问题中的注释实体,PT 是一个 D × D 的可学习矩阵,用于时间预测。fsensity 是用于衡量问题表示对时间戳的敏感性的函数。
fsensity(PT q, tτ) = PT q • tτ,(9)
最后,我们得到候选答案的语义得分,包括实体候选答案和时间戳候选答案:
scoresemantic = max (φ (es, PEq, eϵ, tτ) , φ (eo, PEq, eϵ, tτ)) ⊕ max (φ (es, PT q, eo, tτ) , fsensity (PT q, tτ)),(10)
其中 ⊕ 表示向量连接。
4.4 子图逻辑推理模块 在子图时间推理模块中,我们首先为每个问题构建时间子图,然后使用时间约束对其进行裁剪,最后使用时间激活函数对约束进行定量评分以获得最终答案。
4.4.1 子图构建 问题的邻居实体包含了对回答问题有帮助的大量信息。为了获取邻居实体的信息,我们首先构建一个邻居子图。时间子图包含一个中心实体 eh 和其 L 跳邻居实体,它们由时间边连接。具体而言,对于问题中的标记实体 eh(如图 5 中的 The Godfather),我们在 TKG 中查询其所有相关事实,并提取其相关实体和时间信息用于构建时间子图。令 Nk(eh) 为 KG 中 eh 的 L 跳(无向)邻域中的节点集合,RL eh 是相应的边集。
GL eh = {(e, r)|e ∈ NL(eh), r ∈ RL eh},(11)
其中 GL eh 是 eh 的相应的 L 跳子图。对于 GL eh 中的每个边 r,它包含相应的时间信息 tr。由于时间子图中包含大量无用的邻居信息,我们使用问题中的时间约束来过滤时间子图。在隐式表达解析模块中,我们已经获取了每个问题的时间范围 [T1, T2],因此我们检查子图上的所有路径是否符合时间约束。具体而言,我们首先从邻居节点到中心节点提取所有路径 path = {p1, p2, p3, …},然后裁剪不满足时间约束的路径中的边,最后移除所有孤立的节点,剩下的部分 Gf 是满足时间约束的子图(见图 6)。
4.4.2 答案得分 为了对时间约束进行定量评分,设计了四个时间激活函数,用于对子图中的实体进行评分,以适应不同类型的问题(见图 7)。
Equal。当问题类型为 Equal 时,我们给与与 T 相同时间的实体得分 c1,其余实体得分为 0。
Scoreequal(ei) = { c01, if others ti = T, (12)
其中 c1 是一个正常数。
Before/after。当问题类型为 Before/After 时,我们给距离 T1/T2 更近的实体分配较高的得分。
Scorebefore_after(ei) = { Tt1i −− tTi2,before after , (13)
First/last。当问题类型为 First/Last 时,我们给较早/较晚时间的实体分配较高的得分。
Scorefirst_last(ei) = { −tti,i, last first, , (14)
Time Join。当问题类型为 Time Join 时,我们给时间介于 T1 和 T2 之间的实体分配得分 c2,其余实体得分为 0。
Scoretime_join(ei) = { c2, if0, others T1 < ti <, T2, (15)
其中 c2 是一个正常数。
因此,结合四个时间激活函数,我们可以给出综合得分函数的形式如下:
Scorereasoning = 1 [r(qi,ei) = Before ] (T1 − ti)
• 1 [r(qi,ei) = After ] (ti − T1)
• 1 [r(qi,ei) = First ] (−ti) + 1 [r(qi,ei) = Last ] (ti) + 1 [r(qi,ei) = Time join ] c2
• 1 [r(qi,ei) = Equal ] c1, (16)
其中 r(qi, ei) 是问题 qi 的类型。
最后,我们将从时间子图推理获得的得分与相关事实搜索的得分进行融合,得到最终的得分:
scorefusing = µ ∗ score sematic + (1 − µ) ∗ score reasoning,(17)
其中 µ ∈ (0, 1)。
在训练过程中,将所有实体和时间的得分连接起来,使用 softmax 计算这个组合得分向量上的答案概率。通过最小化交叉熵损失,更新模型参数以赋予正确答案更高的概率。
5.1. 实现细节 该模型使用Pytorch [50]进行实现。我们使用TComplEx [7]作为我们的TKG嵌入,其维度为D = 512。 在语义搜索中使用的预训练语言模型是RoBERTa [12]。在训练过程中,LM的参数和TKG嵌入不会被更新。我们将编码器Transformer(•)的变换器层的数量设置为l = 6,每层有8个头。子图的跳数k设置为1。得分融合权重µ设置为0.5。使用Adam [51]优化器来更新模型的参数,学习率为0.0002。模型进行最多20个epochs的训练,根据验证性能选择最佳模型参数。
5.2. 数据集 CronQuestions [4]是用于时间知识图谱问答的数据集,包含125k个实体和328k个事实的时间知识图谱,以及410k个需要进行时间推理的自然语言问题。在这个TKG中,事实被表示为(主体,关系,客体,[起始时间,结束时间])。CronQuestions包含350k个用于训练的问题-答案对,30k个用于验证,30k个用于测试。此外,问题中出现的实体和时间也被注释了。CronQuestions包含了表1中所示的四种问题类型,包括简单和复杂的时间问题。
然而,在CronQuestions中,存在大量的伪时间问题,因为TKG中缺乏相关事实。为了解决这个问题,我们构建了Complex-CronQuestions1,这是一个基于CronQuestions的真实时间问答数据集,删除了CronQuestions中的所有简单和伪时间问题。具体来说,为了避免TKG中缺乏问题相关事实引起的伪时间问题,对于每个问题,我们根据问题中的实体注释在TKG中检索相关事实。然后,如果问题的相关事实太少,该问题将被删除。在具体实现中,考虑到数据集的大小和时间问题的真实性,我们将阈值设置为5,即相关元组数量少于五个的问题将被删除,从而确保数据集中的每个问题都有足够的时间事实,并使数据集的整体大小足够大以用于模型训练。表2显示了CronQuestions和Complex-CronQuestions的数据集划分情况。
5.3. 基准方法 我们将我们的模型与以下基准进行比较。 BERT:我们尝试了BERT [52]和RoBERTa [12]。按照[9]的方法,我们生成基于语言模型的问题嵌入,并将其与注释的实体和时间嵌入进行连接,然后进行可学习的投影。通过点积对所有实体和时间戳进行评分,并应用softmax函数来预测答案的概率。 EmbedKGQA:EmbedKGQA [39]是为常规知识图谱设计的。我们将其用于TKGQA,具体方法如下:在预训练过程中忽略时间戳,并在问答任务中使用随机时间嵌入。 CronKGQA:CronKGQA [4]是一种基于TKG嵌入的TKGQA方法,首先使用语言模型获得问题嵌入,然后利用基于TKG嵌入的评分函数进行答案预测。 EaE:实体作为专家(EaE)[8]是一种基于实体的方法。在实验中,我们使用TKG嵌入增强问题表示,然后通过点积来预测答案的概率。 EntityQR:在EaE的基础上,EntityQR [9]利用基于TKG嵌入的评分函数进行答案预测。 TempoQR:与EntityQR类似,TempoQR [9]利用基于TKG嵌入的评分函数进行答案预测,并融合额外的时间信息。
5.4. 在CronQuestions上的整体结果 表3显示了我们的方法与其他基准方法在CronQuestions上的结果。首先,通过将TempoQR与CronKGQA进行比较,我们可以看到将问题与其所指的实体和时间联系起来对于回答复杂问题有显著帮助。在这种情况下,复杂问题在Hits@1和Hits@10上的绝对改进分别为27%和9%。此外,将SubGTR与TempoQR进行比较,我们可以看到子图推理对问题的回答有益处。SubGTR相对于TempoQR在所有问题类型的Hits@1上的绝对改进为5%,在复杂问题类型的Hits@1上的绝对改进为8%。我们的模型在CronQuestions上相对于当前基准方法有显著的改进,并在CronQuestions上取得了最先进的性能。
5.5. 对真实复杂问题的实验 为了验证模型在真实复杂问题上的效果,我们对Complex-CronQuestions进行了实验。实验结果如表4所示。与CronQuestions上的结果相比,CronKGQA、EntityQR和TempoQR在Complex-CronQuestions上都显示出显著的下降,分别下降了0.381、0.320和0.126的Hits@1。SubGTR在Hits@1上取得了最好的结果,为0.920,与CronQuestions上的结果相比只下降了0.04。
5.6. 对未见过实体的实验 在CronQuestions和Complex-CronQuestions中,训练集和测试集中涉及的实体不重叠。然而,用于训练的TKG嵌入包含了所有实体的信息,因此模型可以在训练过程中获取测试集中的实体信息。为了验证模型在解决实体冷启动问题方面的有效性,我们从wikidata KG中删除测试集中相关实体的事实,并重新训练只包含训练集中实体的TKG嵌入,以确保训练中不会出现测试集中的实体信息。
我们按照上述方法构建了CronQuestions (Zero)和Complex-CronQuestions (Zero),其中预测中涉及的任何实体都没有出现在训练中,以模拟由于新实体的添加而导致的实体冷启动问题。实验结果如表5所示。TempoQR主要依赖于TKG嵌入进行推理,在测试集中没有TKG嵌入的情况下,我们提取了随机向量作为实体的嵌入。从实验结果可以看出,TempoQR在实体上的表现较差,并且只对时间实体的预测有一定效果。相比之下,SubGTR在CronQuestions (Zero)和Complex-CronQuestions (Zero)数据集上分别达到了92.0%和82.0%的准确率,表明SubGTR可以充分利用时间子图信息来推理关于未见过实体的问题和答案,而不受特定实体的限制。我们的模型有效地解决了实体冷启动问题。
此外,我们的模型在没有实体嵌入的情况下就能达到如此高的准确率,也反映了CronQuestions中的一个重要缺陷:CronQuestions中使用的TKG仅包含五个关系(体育团队成员、担任职位、获得奖励、配偶和雇主),这使得我们的模型可以在不理解问题和答案的语义的情况下更容易地解决时间问题。
5.7. 消融研究 为了验证SubGTR的每个模块的有效性,我们进行了消融研究。首先,我们移除了子图推理模块,直接使用相关事实搜索模块的得分作为最终得分,实验中发现模型的Hits@1值下降了7%,突出了子图推理模块的有效性(见表6)。
其次,隐式表达解析能够获取问题中隐藏的时间信息。我们用TempoQR中的Hard-supervision方法替换它,实验中发现模型在Hits@1上下降了2%,这表明我们的隐式表达解析模块能够准确提取隐藏的时间信息。
最后,我们将SubGTR与EaE进行了比较,EaE只使用了问题和实体的嵌入进行答案预测。实验中发现SubGTR在所有问题类型的Hits@1上的绝对改进为5%,在复杂问题类型的Hits@1上的绝对改进为8%。这表明我们的模型在问题的推理和复杂问题类型上相对于EaE具有更强的表达能力。
本文提出了一种新的方法SubGTR,用于时间知识图谱问答任务。SubGTR通过子图推理和隐式表达解析模块有效地解决了时间问题推理和隐含信息提取的挑战。实验结果表明,SubGTR在CronQuestions和Complex-CronQuestions上相对于当前基准方法具有显著的改进,并在两个数据集上取得了最先进的性能。此外,我们的模型在解决实体冷启动问题方面也表现出了很好的效果。这些实验证明了SubGTR的有效性和鲁棒性,为时间知识图谱问答任务提供了一种有效的解决方案。
未来的工作可以考虑进一步优化SubGTR的子图推理模块和隐式表达解析模块,以提高模型的性能。此外,可以探索将SubGTR应用于其他领域的知识图谱问答任务,并进一步研究如何处理实体冷启动问题。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。