一种基于语义对齐的树结构数学应用题求解方法及系统技术方案

技术编号:24457735 阅读:29 留言:0更新日期:2020-06-10 16:03
本发明专利技术公开了一种基于语义对齐的树结构数学应用题求解方法及系统,将获取的待求解的应用题题目文本转化为语义编码后的上下文特征表示;将上下文特征表示利构建根节点向量;对根节点向量进行节点类别,根据节点类别采用先序遍历的方式构建表达式树结构;对表达式树结构的子树特征和应用题题目文本的特征表示进行非线性变换,将两者转换到相同的语义空间;利用预设约束项对表达式树结构的子树特征与应用题题目文本的特征表示进行语义对齐处理;采用中序遍历的方式将语义对齐处理后的表达式树结构解析成完整的数学表达式作为待求解的方程。本发明专利技术通过树结构来强化表达和显式约束题目文本中的语义信息,从而能够求解含有多个未知数的复杂题型应用题。

A method and system for solving application problems of tree structure mathematics based on semantic alignment

【技术实现步骤摘要】
一种基于语义对齐的树结构数学应用题求解方法及系统
本专利技术涉及数学应用题的自动化求解
,具体涉及一种基于语义对齐的树结构数学应用题求解方法及系统。
技术介绍
数学应用题自动求解的任务目标是通过理解问题的文本描述,推理出表达式并计算出正确答案,这要求求解器具有强大的自然语言理解和推理能力。一个典型的数学应用题是一个简短的故事,用文字叙述有关事实,反映某种数量关系,并提出含有一个或多个未知数的问题。为了解决这个问题,需要从文本中识别出相关的运算数和运算符,并且需要确定这些数量的计算顺序。传统的应用题求解器依赖于手工特征提取和模板标注,这需要大量的人力和专业知识。深度学习为应用题自动化求解提供了新的方法。有的方法直接训练一个序列到序列的模型来学习问题到方程的映射关系;有的方法基于循环神经网络利用模板来构建数学表达式树。现有的基于编码器和解码器的端到端深度学习模型,简单地将数学应用题求解问题当成了序列理解和标注问题来求解,没有挖掘和利用题目中的语义关系来帮助运算表达式的构建。除此之外,现有的技术只能求解含有一个未知数的应用题,不能解决含有多个未知数的非线性问题,距离能在实际应用中求解多种复杂题型的通用应用题求解器还有很大差距。
技术实现思路
因此,本专利技术提供的一种基于语义对齐的树结构数学应用题求解方法及系统,克服现有的技术只能求解含有一个未知数的应用题,不能解决含有多个未知数的非线性问题的缺陷。第一方面,本专利技术实施例提供基于语义对齐的树结构数学应用题求解方法,包括:获取待求解的应用题题目文本;将所述待求解的应用题题目文本通过第一神经网络转化为语义编码后的上下文特征表示;将所述上下文特征表示利用第二神经网络构建根节点向量;利用第三神经网络对根节点向量进行节点类别,根据节点类别采用先序遍历的方式构建表达式树结构;利用第四神经网络分别对表达式树结构的子树特征和应用题题目文本的特征表示进行非线性变换,将两者转换到相同的语义空间;利用预设约束项对表达式树结构的子树特征与应用题题目文本的特征表示进行语义对齐处理;采用中序遍历的方式,将语义对齐处理后的表达式树结构解析成完整的数学表达式作为待求解的方程。在一实施例中,所述第二神经网络、第三神经网络以及第四神经网络均为可实现非线性变换的神经网络。在一实施例中,将所述待求解的应用题题目文本通过第一神经网络转化为语义编码后的上下文特征表示的步骤,包括:将待求解的应用题题目文本输入中的每个词标记通过查找单词表的方式被转换为词嵌入;将词嵌入向量被从头到尾和从末到头两种方式输入到循环神经网络中,对应产生两个隐状态向量;将两个隐状态向量相加,得到应用题题目文本的语义编码后的上下文特征表示。在一实施例中,将词嵌入向量被从头到尾和从末到头两种方式输入到循环神经网络中,对应产生两个隐状态向量的步骤,包括:将词嵌入向量被从头到尾和从末到头两种方式输入到双向门控循环单元中,对应产生两个隐状态向量和隐状态向量的生成过程通过以下公式表示:其中,GRU(.,.)表示两层双向门控循环单元的函数。在一实施例中,将所述上下文特征表示利用第二神经网络构建根节点向量的步骤,包括:将所述上下文特征表示通过两层带门控机制的前馈神经网络构建根节点向量,根节点向量通过以下公式表示:n0=σ(Wqg0)⊙tanh(wtg0)其中,n0表示根节点向量,σ表示sigmoid激活函数,tanh表示双曲正弦激活函数,Wq和Wt分别表示两层神经网络的网络参数,g0表示编码后的上下文特征表示。在一实施例中,所述节点类别包括:应用题题目文本中已经给出的变量的数值、数学操作数的集合、未在题目文本中出现,但已经成为常识的常量的数值以及应用题题目文本中需要计算的未知数。在一实施例中,根据节点类别采用先序遍历的方式构建表达式树结构的步骤,包括:当节点被识别为数学操作数时,当前节点向量需要被用来推导左右两个子节点的节点向量,以进一步构建表达式树,当被识别为其他类别,则下一个节点是叶子节点,停止构建子树;表达式树的构建采用先序遍历的方式,先产生父节点,再产生左子树,再产生右子树,在构造右子树时利用父节点的特征向量结合左子树的节点信息来产生右子树的节点向量。在一实施例中,利用第四神经网络分别对表达式树结构的子树特征和应用题题目文本的特征表示进行非线性变换,将两者转换到相同的语义空间的步骤,包括:利用两层带有激活函数的前馈神经网络分别对表达式树结构的子树特征和应用题题目文本的特征表示进行非线性变换,将两者转换到相同的语义空间,计算方式如下:ep=Wp2·tanh(Wp1·p)et=Wt2·tanh(Wt1·t)其中,其中,p和t分别表达式树结构的子树特征和应用题题目文本的特征表示,ep和et分别是变换后的应用题题目文本和表达式子树向量,tanh表示双曲正弦激活函数,Wp1、Wp2、Wt1和Wt2为可学习的参数。在一实施例中,利用预设约束项对表达式树结构的子树特征与应用题题目文本的特征表示进行语义对齐处理的步骤,包括:采用L2范数来计算表达式树与问题文本在语义上对齐的约束项Lpt,通过以下公式表示:其中,m表示整个表达式树中子树的数量,ep和et分别表示问题文本和表达式子树的特征。第二方面,本专利技术实施例提供一种基于语义对齐的树结构数学应用题求解系统,包括:应用题题目获取模块,用于获取待求解的应用题题目文本;上下文特征表示表示模块,用于将所述待求解的应用题题目文本通过第一神经网络转化为语义编码后的上下文特征表示;根节点向量构建模块,用于将所述上下文特征表示利用第二神经网络构建根节点向量;表达式树结构构建模块,用于利用第三神经网络对根节点向量进行节点类别,根据节点类别采用先序遍历的方式构建表达式树结构;语义空间转化模块,用于利用第四神经网络分别对表达式树结构的子树特征和应用题题目文本的特征表示进行非线性变换,将两者转换到相同的语义空间;语义对齐处理模块,用于利用预设约束项对表达式树结构的子树特征与应用题题目文本的特征表示进行语义对齐处理;待求解的方程获取模块,用于采用中序遍历的方式,将语义对齐处理后的表达式树结构解析成完整的数学表达式作为待求解的方程。第三方面,本专利技术实施例提供一种计算机设备,包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器执行本专利技术实施例第一方面所述的训练多任务目标检测模型的方法,以及本专利技术实施例第一方面所述的基于语义对齐的树结构数学应用题求解方法。第四方面,本专利技术实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,以使所述至少一个处理器执行本专利技术实施例第一方面所述的基于语义对齐的树结构数学应用题求解方法。本专利技术技术方案,具有如下优点:本专利技术实施例提供基于语义对齐的树结构数学应用题求解方法及系统,本文档来自技高网...

【技术保护点】
1.一种基于语义对齐的树结构数学应用题求解方法,其特征在于,包括:/n获取待求解的应用题题目文本;/n将所述待求解的应用题题目文本通过第一神经网络转化为语义编码后的上下文特征表示;/n将所述上下文特征表示利用第二神经网络构建根节点向量;/n利用第三神经网络对根节点向量进行节点类别,根据节点类别采用先序遍历的方式构建表达式树结构;/n利用第四神经网络分别对表达式树结构的子树特征和应用题题目文本的特征表示进行非线性变换,将两者转换到相同的语义空间;/n利用预设约束项对表达式树结构的子树特征与应用题题目文本的特征表示进行语义对齐处理;/n采用中序遍历的方式,将语义对齐处理后的表达式树结构解析成完整的数学表达式作为待求解的方程。/n

【技术特征摘要】
1.一种基于语义对齐的树结构数学应用题求解方法,其特征在于,包括:
获取待求解的应用题题目文本;
将所述待求解的应用题题目文本通过第一神经网络转化为语义编码后的上下文特征表示;
将所述上下文特征表示利用第二神经网络构建根节点向量;
利用第三神经网络对根节点向量进行节点类别,根据节点类别采用先序遍历的方式构建表达式树结构;
利用第四神经网络分别对表达式树结构的子树特征和应用题题目文本的特征表示进行非线性变换,将两者转换到相同的语义空间;
利用预设约束项对表达式树结构的子树特征与应用题题目文本的特征表示进行语义对齐处理;
采用中序遍历的方式,将语义对齐处理后的表达式树结构解析成完整的数学表达式作为待求解的方程。


2.根据权利要求1所述的基于语义对齐的树结构数学应用题求解方法,其特征在于,所述第二神经网络、第三神经网络以及第四神经网络均为可实现非线性变换的神经网络。


3.根据权利要求2所述的基于语义对齐的树结构数学应用题求解方法,其特征在于,将所述待求解的应用题题目文本通过第一神经网络转化为语义编码后的上下文特征表示的步骤,包括:
将待求解的应用题题目文本输入中的每个词标记通过查找单词表的方式被转换为词嵌入;
将词嵌入向量被从头到尾和从末到头两种方式输入到循环神经网络中,对应产生两个隐状态向量;
将两个隐状态向量相加,得到应用题题目文本的语义编码后的上下文特征表示。


4.根据权利要求3所述的基于语义对齐的树结构数学应用题求解方法,其特征在于,将词嵌入向量被从头到尾和从末到头两种方式输入到循环神经网络中,对应产生两个隐状态向量的步骤,包括:
将词嵌入向量被从头到尾和从末到头两种方式输入到双向门控循环单元中,对应产生两个隐状态向量和隐状态向量的生成过程通过以下公式表示:






其中,GRU(.,.)表示两层双向门控循环单元的函数。


5.根据权利要求2所述的基于语义对齐的树结构数学应用题求解方法,其特征在于,将所述上下文特征表示利用第二神经网络构建根节点向量的步骤,包括:
将所述上下文特征表示通过两层带门控机制的前馈神经网络构建根节点向量,根节点向量通过以下公式表示:
n0=σ(Wqg0)⊙tanh(wtg0)
其中,n0表示根节点向量,σ表示sigmoid激活函数,tanh表示双曲正弦激活函数,Wq和Wt分别表示两层神经网络的网络参数,g0表示编码后的上下文特征表示。


6.根据权利要求1所述的基于语义对齐的树结构数学应用题求解方法,其特征在于,所述节点类别包括:应用题题目文本中已经给出的变量的数值、数学操作数的集合、未在题目文本中出现,但已经成为常识的常量的数值以及应用题题目文本中需要计算的未知数。


7.根据权利要求6所述的基于语义对齐的树结构数学应用题求解方法,其特征在于,根据节点类别采用先序遍历的方式构建表达式树结构的步骤,包括:
当节点被识别为数学操作数时,当前节点向量需要被用来推导左右...

【专利技术属性】
技术研发人员:龚科周启贤
申请(专利权)人:暗物智能科技广州有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1