论文部分内容阅读
初等数学应用题自动求解的研究存在两个方面的难点:题意理解和推演计算。本文以自然语言处理和自动推理相关技术为研究的理论基础,以我国高中概率统计方面应用题为研究对象,以实现自动求解为研究目标,讨论了应用题的知识表示、自然语言处理、自动演算等关键技术的研究和系统的整体实现的方法。本文的主要研究包括以下几点:(1)应用题知识表示。本文以kintsch的单步应用题框架知识表示的基础上进行扩展,实现了可以承载概率统计应用题信息的知识表示。以该知识表示作为题意理解和推演计算的基础,进行应用题的自动求解。实验证明,扩展的框架知识表示是可以将概率统计方面的信息进行覆盖,并有效组织便于自动演算。(2)自然语言处理的研究和构建。应用题的自然语言处理可以分为两个模块:题型的自动分类和语义的自动提取。本文将应用题的题型分类问题归为文本分类的研究。本文使用支持向量机,以使用特征工程得到的向量空间模型为训练输入,训练出去分类器。自动分类为语义提取和自动演算提供了具体策略的使用依据,是应用题自动求解的重要一环节。而对于语义的自动提取,本文首先从语言学角度出发,分析了应用题的语言特征,给出命题和命题集合在应用题中的组织形式。将命题集合的概念与自然语言处理中的句模技术相结合,提出适用于应用题语义自动提取的命题句模方法。从句模的组织形式和匹配策略两个方面给出构建命题句模的方法,以达到把应用题中抽象的数量关系从繁杂的场景信息中完整抽取。(3)推理演算自动化的研究和构建。为了实现应用题的演算自动化,本文采用规则推理引擎的方法,把条件集和待解问题之间的映射由推理引擎中的规则来维护。在推理引擎中,条件集合映射为事实库中的事实,问题作为停机的等价条件,推理方式仅选用正向推理。推理引擎负责条件的迭代推导,人力只需要构建规则库和停机条件即可,简化了解决多步应用题时搜索子问题的过程。本文通过知识表示、自然语言处理和自动演算三个模块的研究和构建,给出了每个模块的解决方案和具体实现方式,最终实现一个应用题自动解题系统,系统在自建测试库中对于概率统计应用题的自动解答成功率达到61%。