论文部分内容阅读
随着通信技术的发展和计算机软硬件性能的提升,人们越来越多地使用互联网发布各种信息,并留存下了海量数据。其中的一部分是结构化数据,例如知识图谱和表格。结构化数据是依照某种数据模型以自动和人工手段结合构建的,具有数据量丰富、质量高和有结构的特点,非常适合做问答系统的知识源。使用结构化数据回答问题的一种主要手段是语义解析,即将自然语言问题通过计算机程序映射为具有相同含义的SPARQL、SQL等结构化查询语句。传统语义解析方法基于模板,仅能覆盖少部分查询结构对应的问题。基于语法或句法分析的方法需要人工编制结构的组合或映射规则,且对不标准问句常常遇到结构不匹配的问题。机器学习方法可以自动从问题-查询或问题-答案标注数据中学习转换规则,但依靠人工经验设计的特征难以捕捉一些关键信息。近几年,深度学习飞速发展,基于该技术的方法在多个自然语言处理任务上取得了良好效果。深度学习能自动提取问题和查询的最佳匹配特征,在新的问题模式和查询结构上泛化能力强,对结构化数据问答任务很有帮助。虽然国内外研究人员已经在基于深度学习的结构化数据问答上取得一定成果,但现有成果在查询表示方法和问题-查询匹配方法上仍存在不足。因此,本文基于深度学习对知识图谱和表格上的问答方法展开深入研究,取得了以下创新成果:(1)针对知识图谱简单关系问答,提出一种联合生成、复制和改写模式的方法。现有基于深度学习的方法没有同时引入问题和查询在字面、语义和训练集外的关联,也不能合理地进行结合,忽略一部分匹配信息从而降低了回答准确率。为解决上述问题,我们结合三种解码模式实现问题和查询在三个层面的联合关联。方法整体上采用从查询到问题的序列到序列匹配模型。在问题解码过程中,观察到问题特定位置的词常常出现在查询的实体或关系名中,因而提出问题是由查询的语义和字面内容共同形成的,并设计生成和复制两种解码模式,分别从固定常见词表和源端内容中选择单词。此外,训练数据无法覆盖许多问题和查询的关联,因而提出改写模式,引入从外部挖掘到的实体别名和关系表述。为结合三种模式形成的下一词概率,设计一个门函数,基于前面的问题内容分配各模式的贡献。为在训练过程中提高模型的区分能力,从候选查询中采样结果与正确答案有重合的负样例,设计基于边距的目标函数来配合优化。实验结果表明,联合生成、复制和改写模式的方法提升了知识图谱简单关系问答的准确率。(2)针对知识图谱复杂关系问答,提出一种基于树到序列学习的方法。现有基于深度学习的方法没有对复杂查询结构进行建模,使查询表示丢失一部分语义从而降低了回答准确率。为解决上述问题,我们将查询中的实体、关系和它们的连接顺序共同编码。方法整体上继续采用从查询到问题的匹配模型。在候选查询生成过程中,为扩大搜索范围,提出先进行实体、类型和数字操作的链接,再从它们出发构建联通图作为候选查询。在查询编码阶段,为同时包含实体、关系信息和结构信息,将查询视为一棵树,提出基于树的长短时记忆编码器。在问题解码阶段,对上一工作提出的解码器进行优化,将复制和改写模式合并为引用模式,用语言模型对连续的实体名或关系表述进行概率估计。实验结果表明,基于树到序列学习的方法提升了知识图谱复杂关系问答的准确率。(3)针对表格序列问答,提出一种分离和组合动作表示的方法。现有基于深度学习的方法往往用一个动作序列表示SQL语句,通过动作空间保证生成内容语法正确且参数来自表格。然而,这些方法把需要不同类型信息的动作结合在一起,而对需要同类信息的动作没有用同一神经网络,导致特征抽取困难从而降低了回答准确率。为解决上述问题,我们针对序列问答特点重新设计动作空间。方法整体上采用动作生成模型。在问题和表格编码过程中,为理解后续问题对前面问题信息的引用,引入预训练语言模型帮助发现省略和指代现象。在动作生成过程中,重新设计动作空间,将现有方法中被组合的不相关动作进行分离,对相关动作采用同一神经网络抽取特征。为提升可回答问题的范围,将相等动作扩展为相似,可以基于字符串匹配选取同一列的多个单元格。实验结果表明,分离和组合动作表示的方法提升了表格序列问答的准确率。