针对初等数学题目的文本语义抽取、表示与建模方法和系统与流程

文档序号:13164519阅读:930来源:国知局
针对初等数学题目的文本语义抽取、表示与建模方法和系统与流程

本发明属于面向数学的自然语言处理技术领域,具体涉及一种针对初等数学题目的文本语义抽取、表示与建模方法和一种初等数学题意分析系统。



背景技术:

目前面向数学领域的自然语言处理,主流的方法是对数学题目文本进行分词,利用词袋或词向量的形式进行题意的分析与建模。为了日益增长的更深层次的数学类文本处理需求,如数学题目问答、题型分类,目前的文本处理与语义建模方式,因为只关注于词本身的信息,且处理过程中不能很好的把无关词去除,从而对语义的理解上并不能达到很好的效果。



技术实现要素:

本发明的目的在于提供一种能够更精准进行语义建模,以便于对数学类文本的理解、问答的针对初等数学题目的文本语义抽取、表示与建模方法,及相应的初等数学题意分析系统。

本发明提供的针对初等数学题目的文本语义抽取、表示与建模方法,具体步骤为:

(1)对于输入的数学题目进行分词,其中,利用词库与正则表达式结合的形式,对具有latex特殊符号的数学题目进行判断与分割,得到对应的分词结果;

(2)利用指代消解算法,对分词结果中的指代词、隐形指代进行目标替换;

(3)利用文本中蕴含的语义结构对题目进行一阶逻辑翻译,得到基于一阶逻辑的数学题目表示;

(4)利用深度神经网络,对得到的题目一阶逻辑表示和原始文本表示进行语义建模与融合,得到最终的题目语义表示。

进一步,步骤(1)中所述利用词库与正则表达式结合的形式进行分词,具体流程为:

(a)针对句子进行分词,使用基于词库的正向最大长度匹配与正则表达式结合的形式,得到完整分词序列与以latex表示的完整数学公式片段;

(b)针对latex数学公式片段的分词,对latex所含特殊符号进行单独分割,并利用正则匹配生成一阶谓词,将公式划分成多个以一阶谓词表示的语义段。

进一步,步骤(2)中所述利用指代消解算法,对分词结果中的指代词、隐形指代进行目标替换,具体步骤为:

(a)将文本中相同词类进行合并,得到完整的指代词与目标词;

(b)利用指代消解算法对句子中的指代词进行目标替换;

(c)对于句子中出现的隐形指代问题,找到隐形指代所对应的目标词,在对应位置添加进褥子;

(d)对句子中无主语的从属词,找到从属词所属的主语目标进行补充。

进一步,步骤(3)中所述利用文本中蕴含的语义结构对题目进行一阶逻辑翻译,具体步骤为:

(a)将文本中的并列词进行合并;

(b)针对latex公式进行单独的一阶逻辑翻译,得到对应的逻辑类;

(c)针对句子中出现的修饰结构、从属结构、谓词结构这些标准语法结构,分别进行一阶逻辑翻译,得到文本对应的完整一阶逻辑表示;

(d)导入句子所对应的背景知识:针对函数题,表明对应的数学公式为函数;针对几何体,表明对应的数学公式为几何图形表示,并规整得到最终的一阶逻辑公式。

进一步,步骤(4)中所述利用深度神经网络对得到的题目一阶逻辑表示和原始文本表示进行语义建模与融合,具体内容如下:

(a)利用树形结构读入处理得到的一阶逻辑表示,利用词向量的形式读入原始的题目文本;

(b)利用深度记忆网络对一阶逻辑表示和原始文本分别进行推理,并在最后进行融合,得到最终的抽象语义建模。

基于上述初等数学题目表示与建模方法,本发明还提供一种相应的初等数学题意分析系统。该系统结构如附图1所示,包括分词单元、指代消解单元、一阶逻辑翻译单元和语义建模融合单元。这四个单元的功能分别对应于上述方法的四个步骤的操作内容,其中,分词单元用于接收用户输入的数学题目文本,并将所输入文本进行分词处理,得到词语序列;指代消解单元用于分析词语序列,对分词结果中的指代词、隐形指代进行目标替换,完善语句的语义结构;一阶逻辑翻译单元用于将文本翻译成对应的基于一阶逻辑的数学题目表示;语义建模融合单元利用深度神经网络模型对对一阶逻辑表示和原始文本分别进行推理融合,得到最终的抽象语义建模。

本发明提出的方法和系统,可以有效的将输入的数学题目文本转换为计算机能更精确处理的一阶逻辑形式表示,同时,利用原始文本和文本对应的一阶逻辑表示进行融合语义建模,得到了更精准的语义建模结果,对数学类文本的理解、问答具有重要的意义和作用。

附图说明

图1是本发明初等数学题意分析系统的结构示意图。

图2是本发明一阶逻辑翻译单元的流程图。

图3是本发明语义建模融合单元的网络模型图。

具体实施方式

以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。

如图1所示的一种初等数学题意分析系统,包括分词单元、指代消解单元、一阶逻辑翻译单元和语义建模融合单元。分词单元用于接收用户输入的数学题目文本,并将所输入文本进行分词处理,得到词语序列;指代消解单元用于分析词语序列,对分词结果中的指代词、隐形指代进行目标替换,完善语句的语义结构;一阶逻辑翻译单元用于将文本翻译成对应的基于一阶逻辑的数学题目表示;语义建模融合单元利用深度神经网络模型对对一阶逻辑表示和原始文本分别进行推理融合,得到最终的抽象语义建模。

本实施例的分词单元,包括接收模块、针对句子的分词模块和针对latex数学公式片段的分词模块。接收单元接收用户输入的数学题目文本,文本形式为中文、英文或latex公式。对于输入文本,先进行句子层次的分词,本实施例采用基于词库的正向最大长度匹配算法与正则表达式结合的形式;对句子层次分词后的结果,再进行latex公式片段层次的分词,得到对应的词语序列。以题目文本“设g是oc的中点,证明:$fg\parallel$平面boe”为例,通过句子层次分词,我们可以得到词语序列:“设|g|是|oc|的|中点|,|证明|:|$fg\parallel$|平面|bo”。之后,通过latex公式片段层次的分词,可以将句中的数学公式再分割成多个语义段:从“|$fg\parallel$|”划分为“|fg|$\parallel$|”。

本实施例中的指代消解单元,包括词类合并、指代词替换、隐形指代替换和从属词补充四个模块。词类合并模块对根据词类合并被分词单元分开的指代词或目标词,以使其完整;指代词替换模块对句中出现的典型的指代词进行目标替换;隐形指代替换模块会对句中的隐形指代进行目标词插入;从属词补充模块对于句中的无主语从属词进行主语目标补充。以词语序列“三角形abc|的|边长|为|2|,|圆|o|的|直径|为|3|,|直径|设为|d|,|该圆|为|三角形|的|内接三角形|,”为例,词类合并将“|圆|o|”合并为“|圆o|”;指代词替换模块将“|该圆|”替换为“|圆o|”;隐形指代替换模块将“|三角形|”补充为“|三角形abc|”;从属词补充会为句子“”“|直径|设为|d|”补充主语词,得到“|圆o|的|直径|设为|d|”。

本实施例中的一阶逻辑翻译单元,包括并列词合并、数学公式翻译、文本翻译和背景知识导入四个模块,如图2所示。并列词合并模块将文本中连续的同类词组合成一个完整的组词;数学公式翻译模块对文本中出现的latex公式进行单独翻译,得到对应的一阶逻辑语句;文本翻译模块将全部文本用一阶逻辑表达;背景知识导入模块会对翻译得到的一阶逻辑进行背景知识的补充。本实施例中,以文本“|f(x)|,|g(x)|,|h(x)|为|偶函数|”为例,“|f(x)|”、“|g(x)|”和“|h(x)|”会被组合处理。再以公式“|$f(2x-1)$|<|$f(\frac{1}{3})$|”为例,经数学公式翻译模块处理,公式被翻译成一阶逻辑形式:“logic:(lessthan($f(2x-1)$,$f(\frac{1}{3})$))”。以完整的题目“证明|:|当|较小|的|圆|的|直径|为|2|时|,|ab|垂直于|cd|。”为例,经过一阶逻辑翻译单元的翻译,可以得到对应的基于一阶逻辑的表示:“证明|:(perpendicular(ab,cd)):-(little(rs_a),diameterofcircle(rs_a,rs_b),equal(rs_b,2),circle(rs_a))”。

本实施例中的语义建模融合单元,采用深度记忆网络框架模型,如图3所示。经过上述步骤,可以得到文本对应的两类信息,分别是原始文本和以树形结构储存的文本一阶逻辑表示。对于原始文本,我们采用词向量的形式将文本中的词语进行嵌入,作为神经网模型一个输入;对于文本一阶逻辑表示,我们利用树形嵌入算法,得到一阶逻辑公式的向量表示形式,作为神经网模型的另一个输入;在神经网模型中,我们采用了层次化的注意力模型对两者分别进行建模并推理,同时在建模过程中利用注意力机制使两者信息进行融合补充,最后的隐含层输出即为题目文本最终的语义建模表示。

本发明通过所述初等数学题意分析系统,有效的将输入的数学题目文本转换为计算机能更精确处理的一阶逻辑形式表示,同时,利用原始文本和文本对应的一阶逻辑表示进行融合语义建模,得到了更精准的语义建模结果,对数学类文本的理解、问答具有重要的意义和作用。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1