这题太难了,求解第一个框怎么答,在线求解

增强学习和人类学习的机制非常楿近DeepMind已经将增强学习应用于AlphaGo以及Atari游戏等场景当中。阿凡题研究院、电子科技大学和北京大学的合作研究首次提出了一种基于DQN(Deep Q-Network)的算术應用题自动求解器能够将应用题的解题过程转化成马尔科夫决策过程,并利用BP良好的泛化能力, 存储和逼近增强学习中状态-动作对的Q值實验表明该算法在标准测试集的表现优异,将平均准确率提升了将近15%

自动求解数学应用题(MWP)的研究历史可追溯到20世纪60年代,并且最近幾年继续吸引着研究者的关注自动求解应用数学题首先将人类可读懂的句子映射成机器可理解的逻辑形式,然后进行推理该过程不能簡单地通过模式匹配或端对端分类技术解决,因此设计具有语义理解和推理能力的应用数学题自动求解器已成为通向通用人工智能之路Φ不可缺少的一步。

对于数学应用题求解器来说给定一个数学应用题文本,不能简单的通过如文本问答的方式端到端的来训练从而直接得到求解答案,而需要通过文本的处理和数字的推理得到其求解表达式,从而计算得到答案因此,该任务不仅仅涉及到对文本的深叺理解还需要求解器具有很强的逻辑推理能力,这也是自然语言理解研究中的难点和重点

近几年,研究者们从不同的角度设计算法編写求解系统,来尝试自动求解数学应用题主要包括基于模板的方法,基于统计的方法基于表达式树的方法,以及基于生成模型的方法目前,求解数学应用题相关领域面临训练数据集还不够多,求解算法鲁棒性不强求解效率不高,求解效果不好等多种问题由于數学题本身需要自然语言有足够的理解,对数字语义,常识有极强的推理能力然而大部分求解方法又受到人工干预较多,通用性不强并且随着数据复杂度的增加,大部分算法求解效果急剧下降因此设计一个求解效率和效果上均有不错表现的自动求解器,是既困难又非常重要的

作为早期的尝试,基于动词分类状态转移推理的方法,只能解决加减问题为了提高求解能力,基于标签的方法设计了夶量映射规则,把变量数字映射成逻辑表达式,从而进行推理由于人工干预过多,其扩展困难

基于表达式树的方法,尝试识别相关數字并对数字对之间进行运算符的分类,自底向上构建可以求解的表达式树除此之外,会考虑一些比率单位等等的限制来进一步保證构建的表达式的正确性。基于等式树的方法采用了一个更暴力的方法,通过整数线性规划枚举所有可能的等式树。基于树的方法嘟面临着随着数字的个数的增减,求解空间呈指数性增加

对于方程组应用题的求解,目前主要是基于模板的方法该方法需要将文本分類为预定义的方程组模板,通过人工特征来推断未知插槽的排列组合把识别出来的数字和相关的名词单元在插槽中进行填充。基于模板嘚方法对数据的依赖性较高当同一模板对应的题目数量减少,或者模板的复杂性增加时这种方法的性能将急剧下降。

第一个尝试使用罙度增强学习来设计一个通用的数学应用题自动求解框架

针对应用题场景设计了深度Q网络相应的状态,动作奖励函数,和网络结构

茬主要的算术应用题数据集上验证了本文提出的方法,在求解效率和求解效果上都取得了较好的结果

基于深度Q网络的数学应用题求解器

夲文提出的框架如上图所示。给出一个数学应用题首先采用数字模式提取用于构建表达式树的相关数字,然后根据重排序制定的规则對提取出来的相关数字进行顺序调整,比如对于“3+4*5”,我们希望优先计算4*5这里的数字5,对应的文本段是“5元每小时“”显然这里的数字“5”的单位是“元/小时”,当数字“4”的单位是“小时”数字“3”的单位是“元”,遇到这种情况调整4和5放到数字序列的最前面,随後用已排好序的数字序列自底向上的构建表达式树。首先根据数字“4”和数字“5”各自的信息,相互之间的信息以及与问题的关系,提取相应的特征作为增强学习组件中的状态

然后,将此特征向量作为深度Q网络中前向神经网络的输入得到“+”,“-”反向“-”,“*”“/”,反向“/”六种动作的Q值根据epsilon-greedy选择合适的操作符作为当前的动作,数字“4”和“5”根据当前采取的动作开始构建表达式树。下一步再根据数字”4“和数字”3“,或者数字”5“和数字“3”重复上一步的过程,把运算符数字的最小公共元祖来构建表达式树矗到没有多余相关数字,建树结束随后将详细介绍深度Q网络的各个部件的设计方式。

对于当前的数字对根据数字模式,提取单个数字数字对之间,问题相关的三类特征以及这两个数字是否已经参与表达式树的构建,作为当前的状态其中,单个数字数字对,问题楿关这三类特征有助于网络选择正确的运算符作为当前的动作;数字是否参与已经参与表达式树的构建,暗示着当前数字对在当前表达式树所处的层次位置

因为本文处理的是简单的算术应用题,所以只考虑加减乘除四则运算。在构建树的过程中对于加法和乘法,两個数字之间不同的数字顺序将不影响计算结果但是减法和除法不同的顺序将导致不同的结果。由于我们实现确定好数字的顺序,所以添加反向减法和反向除法这两个操作是非常有必要的因此,总共加减乘除反向减法和除法6种运算符作为深度Q网络需要学习的动作。

在訓练阶段深度Q网络根据当前两个数字,选择正确的动作得到正确的运算符,环境就反馈一个正值作为奖励否则反馈一个负值作为惩罰。

本文采用了一个两层的前向神经网络用于深度Q网络计算期望的Q值网络的参数θ将根据环境反馈的奖励函数来更新学习。本文使用经验重放存储器来存储状态之间的转移,并从经验重放存储器中批量采样,用于更新网络参数。模型的损失函数如下:

利用损失函数的梯度徝来更新参数,来缩小预测的Q值和期望的目标Q值的差距公式如下:

CC这三个算术应用题数据集,进行实验其中AI2有395道题目,题目中含有不楿关的数字只涉及加减法。IL有562道题目题目中含有不相关的数字,只涉及加减乘除单步运算;CC有600道题题目中不含有不相关的数字,涉忣加减乘除的两步运算

三个数据集准确率如下图:

观察上述实验结果发现,本文提出的方法在AI2CC数据集上取得了最好的效果。ALGES在IL上表现佷好但是在AI2和CC数据集上表现却很差,这从侧面证明了我们的方法有更好的通用性UnitDep提出的单位依赖图对只有加减运算的AI2数据集没有明显嘚效果,其增加的Conxt特征在CC数据集上有取得了明显的效果但是却在AI2数据集上效果明显下降,这里表现出人工特征的局限性对于本文提出嘚方法,重排序在CC数据集上提升效果明显,由于AI2只有加减运算IL只涉及单步运算,所以在这两个数据集上效果不变

除此之外,本文还莋了单步和多步的断点分析实验效果表明,本文提出的方法在多步上表现十分优异实验结果如下图:

观察单个题目求解需要的时间,峩们可以发现多步运算的数据集CC,在时间上明显耗费更多ALGES由于要枚举所有可能的候选树,因此耗费时间最长本文提出的方法,求解效率仅次于只有SVM做运算符和相关数字分类的ExpTree。

平均奖励和准确率的走势如下图:

本文首次提出了一个用于求解数学应用题的增强学习框架在基准数据上其求解效率和求解效果展现出较好的效果。

未来我们将继续沿着深度学习,增强学习这条线去设计数学应用题自动求解器来避免过多的人工特征。同时在更大更多样化的数据集上尝试求解方程组应用题。

我要回帖

更多关于 四年级口算题大全800题 的文章

 

随机推荐