自动问题解答的一些基本知识

一、自动解答问题的发展史

        自动问题解答的研究最早开始于上世纪50年代人工智能领域建立之初,该研究自建立之初就是人工智能领域一个十分重要的部分。近年来随着自然语言处理、机器学习、深度学习等理论的发展以及在教育技术行业的需求推动下,该领域又成为了一个研究热点。

二、自动解答领域的研究内容和方法

1、研究内容

        当前的自动问题解答主要包括初等数学的自动解答,语言类题目(如英语作文等)的自动解答,物理电路题自动解答,逻辑推理问题的自动解答等。而其中研究最热门的是初等数学问题的自动解答,其研究方向最多,研究难度也最大。

        而在初等数学的自动解答研究里面又各分为代数题、算术题、几何题(应用题和证明题),概率题,矩阵题,比率题等。代数题、算术题、矩阵题,比率题等可以统一划分为应用题(Math Word Problems)简称MWP,MWP的研究是当前自动问题解答领域最热门的的领域,而几何题的研究是难度最大也是最有待于突破的研究。

2、主要研究方法

        在上世纪60年代至2010年期间,自动问题解答的研究一直停留在开拓阶段,这个阶段的问题求解器(solver)主要依赖于人工。

        进入到2010年以后,研究者开始利用语义解析来设计问题求解器。在这个阶段,研究者将问题中的句子映射成结构化逻辑表示,为问题文本人工定义逻辑模板,再通过逻辑模板实现定量推理的工作以达到求解问题的目的。

        从2017年开始,自动问题解答的研究开始进入深度学习的加强学习阶段,在这个阶段里,研究者开始利用深度学习方法在数据集之上设计求解器,依靠全监督或半监督的方法,这些求解器在他们的实验中能表现出较好的性能,但仍存在的问题是这些问题求解器在大规模的数据集上表现得并不乐观。

        概括地说当前自动问题解答所使用到的技术包括多媒体分析技术,机器学习,模式识别,文本分析技术,图像处理,神经网络等。拥有良好的机器学习和深度学习基础能更好地开始这个领域的研究并取得突破。

三、主流的求解器模型的分类(主要是应用题求解器)

1、基于规则的求解器

        1985年的word-pro能够解决一部的算术问题,他讲多不问题转化为一组命题,并根据命题的推理得到答案。随后的rpbust把word-pro 的架构扩展为多个不同的类别。

2、基于统计的求解器(映射匹配君子模板)

        基于统计的方法利用传统的机器学习模型从问题文本识别实体,数量和运算符,并通过逻辑推理过程产生生数字答案。Aris求解器定义了一个名为state 的逻辑模板,它由一组实体,他们的容器,属性,数量和关系组成。Aris只支持加减法,Aris定义了一个逻辑表示的语料库,让文本句子逐个匹配句子模板。

        基于统计的方法有两个缺点:1)为了防止处理大规模的数据集他需要额外的开销。2)这样的方法本质是基于一组预定义的模板,支持乘除法需要巨大的努力来扩充模板库。

3、基于树表达式的求解器

        基于树的方法的思想是将算术表达式的派生转化为以自底向上的方式逐步构造等价的树结构。树表达式方法的一个优点是其不需要过多的注释,标签或逻辑表达。如下图是一个根据文本生成的树表达式,其对应的题目文本为:A truck travels 100 kilometers in 2 hours. At this speed, if it travels for another 3.5 hours, how many kilometers will it complete for the entire journey ?

 

        基于树表达式的方法通过问题文本来构造表达式的算法框架由两个阶段组成:1)第一阶段:从文本中抽出数字表达形成树的底层。2)第二阶段定义一个评分函数挑选一个最匹配的候选数,该树用于推导出最终的解决方案。

所有基于树的表达式算法的共同特点试试建立一个局部分类器来确定一个算子被选中为内部接地点的可能性,可能性高的节点被保留,否则被丢弃。

算法还需要从构建的多棵树中选出最有可能符合题目求解表达式的树,这是通过一个得分函数实现的,用φ(q)表示相关数量节点的可能性得分,用φ(op)表示相关操作节点的可能性得分,那么,整棵树的得分

                                                        score(E)=∑φ(q)+∑φ(op)

算法选出得分最高的表达式树作为最终求解表达式。

4、DL-Based Methods 深度学习法

        Deep Neural Sover(DNS)是第一个将深度学习用于自动问题求解的模型,他是一个用深度学习解决方程组问题的项目,但其依然是一个Seq2Seq模型。Seq2SeqET改进了DNS的思想,其将表达式树作为输出序列,换句话说其用Seq2Seq模型将问题文本转化为一课表达式树。如图是一个基于深度学习建立的树形表达式:

 

        基于深度学习的算法使用深度学习充当分类器,从序列中选择最有可能的操作符作为树的节点构建。

5、总结

        在数学问题的求解器设计的研究方向上,接下来研究者的工作主要有两个方向,一个是继续完善语义解析理论,一个是扩大深度学习模型的数据集,以训练更好的深度学习模型。

四、相关论文研读

基于语义解析的:

平面几何题目的自动解答研究_甘文斌(华中师范大学2018年博士毕业论文)

基于深度学习的:

Graph-to-Tree Learning for Solving Math Word Problems-ACL-2020

AAAI2021_Learning_by_Fixing

A Goal-Driven Tree-Structured Neural Model for Math Word Problems

关于MWP求解器的综述文章:

The Gap of Semantic Parsing: A Survey on AutomaticMath Word Problem Solvers

        

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值