论文部分内容阅读
汉语的自然语言理解(NLU)技术在最近的十年中取得了长足的进步,然而这些研究主要是面向领域无关的基础性研究,虽然这些研究也是十分重要的,但是由于基础研究与现实应用之间存在着强烈的实际需求与当前处理能力不足的矛盾,因此很多通用技术还不能在现实得到使用。本文认为,在应用层次上,针对现有的需求,开发面向领域的自然语言理解技术显得非常必要。本文工作正是在这一大背景下展开的。
问答系统(QA)是目前自然语言处理领域一个研究热点,它既能够让用户以自然语言方式提问,又能够为用户返回一个简洁、准确的答案。能否正确的理解用户意图是自动问答系统的关键,其核心是自然语言理解。实际问答系统接受的自然语言通常是含有噪声以及不符合语法规范的。传统的基于规则的语言理解方法通常在词法及句法分析就不能产生正确的结果,更不用说最终的语义理解了。所以,鲁棒性是面向领域自然语言理解的一个重要特性。另一方面,鲁棒性较好的解决方案通常倾向于带来过生成及歧义问题,导致理解的准确率下降。所以面向领域的自然语言理解的一个难题就是在鲁棒性与防止过生成及降低歧义两者之间找到一个好的平衡点。
本文首先提出了一种鲁棒性较强的带约束语义文法形式,在构建的领域本体的基础上,由领域专家构造核心语义文法,核心语义文法描述了领域中概念的属性或概念与概念之间的关系的表达模式,在构造核心语义文法时,核心语义文法要能够基本覆盖概念体系中的概念及其之间的关系,但并不要求初始的核心语义文法完全覆盖这些关系的所有的浅层表达方式。在此基础上提出一种基于本体和带约束语义文法的自然语言理解方法以及上下文相关的自然语言理解方法及系统。针对不同自然语言理解失败原因,分别提出了基于种子的文法扩展学习和文法约束学习方法。
本文的主要创新成果包括:
1.研究和实现了一种基于带约束语义文法的NLU方法及QA系统
本文提出了一种面向领域问答系统的自然语言理解技术框架。首先提出了一种通用的带约束的语义文法形式,为确保对此语义文法的解析效率和满足实时性要求,本文通过对通用的语义文法形式增加限制,提出了一种扁平型的语义文法形式,并提出了相应的语义文法解析算法。在此基础上,本文提出了一种基于领域本体和带约束语义文法的自然语言理解方法。为了验证方法的有效性,将方法应用到两个不同规模的应用领域的业务信息问答系统OSG-Qas。实际运行结果表明,本文所提出的方法切实有效,系统理解准确率分别达到了82.4%和86.2%.MRR值分别达到了91.6%和93.5%。
2.研究和实现了基于本体和语义文法的上下文相关问答系统
本文在所提出的非上下文相关问答系统的基础上,提出了一种可以处理上下文相关问题的方法及系统OSG-CQAs。在本方法中,首先识别当前问题是否是一个相关问题(FolloW-upquestion);若是,依据提出的上下文相关类别识别算法来识别其与前面问题的具体的相关类别,最后,提出了一种语境信息融合算法,即根据相关类别,利用话语结构中的语境信息对当前的相关问题进行重构,并提交到非上下文相关问答系统OSG-QAs中。将方法在两个不同规模的领域进行测试,并与相关系统或方法进行比较。测试结果表明,本文所提出的方法具有较好的可扩展性。在总体测试中,本文提出的方法比基线系统获得了更好地效果,同时利用手工将所有上下文相关问题进行上下文消解,系统与此进行了比较,测试结果表明OSG-CQAs取得了与其相近的性能。
3.研究和实现了基于语义文法种子的语义文法扩展学习方法
由于手工构造语义文法过程效率较低,难以保证语义文法对领域的覆盖度,逐渐成为发展这类系统的瓶颈。本文研究了一种基于语义文法种子的文法扩展学习方法。首先通过种子文法对解析失败句子进行部分解析,在此基础上,本文试图构建句子的完整解析树,包括预测部分解析结果的顶层节点、生成新扩展文法规则假设、验证假设等,并对扩展学习到的文法规则进行一些后处理操作,包括对规则进行概化处理、冗余检测等。最后,本文提出了两种文法扩展学习范式即增量式学习和批量式学习。在批量式学习中,本文提出了一种通过对学习语料中数据的“可学习性”度量来筛选学习对象,从而提高文法扩展学习的整体质量和效率。在增量式学习中,通过与用户的交互来辅助文法学习过程,极大提高文法学习质量。在两种学习范式下,分别考察了系统的性能。在增量式学习范式下,我们通过让十个用户与两个系统(MSC和BSC)进行交互,并记录相关系统数据。统计结果表明,系统具有较强的自学习能力。而在批量试学习范式下,分别利用训练语料进行文法扩展学习后,测试了更新后的文法在两个领域数据集上的相关性能指标。试验结果表明,本文所提出的方法是有效的。
4.研究和实现了一种语义文法约束学习方法
本文给出的语义文法是一种具有较强鲁棒性的文法形式,它能够灵活处理用户查询句子中的不合语法现象,并正确理解用户的查询意图。但这种灵活性也带来了很多分析歧义,带约束的语义文法可有效地解决部分歧义问题。但是,在现实应用中,手工增加文法约束的十分低效低质,将成为发展这类系统的瓶颈。本文提出了一种有监督文法约束学习方法,通过对所要解决的问题进行分析及建模,将文法约束学习问题看作一个ILP(inductivelogicprogramming)问题,方法通过人工挑选出文法规则的解析正反例集合,并将之转换成适合于文法约束学习的训练集。在文法约束学习中,提出了一种基于定向搜索策略(beam-search)的搜索算法以及算法停止条件,当算法满足停止条件时,整个学习过程停止。约束学习算法能够保证学习到可以覆盖尽量多正例并且覆盖尽量少反例的约束。本文对提出的方法在两个应用领域分别进行了试验,试验结果表明使用本文所提出的方法学习到的语义文法约束,可明显提高NLU系统的相关指标(准确率、MRR、拒绝率等)。