让人工智能解数学题 可能没你想象的那么简单

>>>> 知识问答系统

作为新一代的知识搜索引擎的代表,WolframAlpha能理解用户搜索问题并直接给出答案,而不是返回一堆网页链接。其中WolframAlpha被搜索过的一类典型的问题就是数学问题。输入数学题,它能给出数学模型、解题步骤以及答案。数学解题是此类引擎的核心构件之一。

>>>> 智能问答

智能对话系统的终极目标是实现人机自由对话,计算机能够响应来自用户的各种问题。其中,自然也包括数学解题。微软小冰实际上已经开始了这方面的尝试,它目前已可以解决比较简单的算术题。

SigmaDolphin——微软亚洲研究院的数学解题

SigmaDolphin是微软亚洲研究院在2013年初启动的解题项目。Sigma即西格玛大厦,是微软亚洲研究院的诞生地;而Dolphin则是该系统被赋予的期望——像海豚一样聪明。

目前SigmaDolphin主要有两个研究成果。

● Dolphin解题

SigmaDolphin定义了一套针对数学解题的抽象表示语言(被命名为Dolphin Language),包含了数学相关的类和函数。该语言人工定义了1000多种数学类型以及7000多种从Freebase和其它网页自动抽取的概念类型,加上其定义的函数和数据结构,使得该语言十分适合表达数学概念及运算,并能很好地构建出一个精准的数学解题系统。同时Dolphin Language具有大约1万条语法规则,把自然语言解析成Dolphin Language的表示,继而进行推理得到数学公式。有关该方法的详细介绍已经发表在EMNLP 2015, 题为“Automatically Solving Number Word Problems by Semantic Parsing and Reasoning” 。

● Dolphin18K数据集

目前该研究领域正在使用的数据集规模都相对较小,而且题型都比较简单。众所周知,机器学习的关键是数据,特别关键的是数据规模。然而,数学题库需要提供公式和答案,人工标注十分耗时。微软亚洲研究院团队采用半自动地方法从雅虎问答获取数学题,经过人工筛选题目,并自动抽取公式和答案作为标注,构建一个新的数据集Dolphin18K。该数据集包含了1万8千多道数学题。有关该数据集的详细介绍已发表在ACL 2016,题为“How Well Do Computers Solve Math Word Problems? Large-Scale Dataset Construction and Evaluation”。过往的系统在各自的数据集上都有高达60%至80%的准确率,但由于评测的数据集都在几百道题目的规模上,而且都有不同的题型限制,导致其得出的结论可能不够有代表性。对比之前的数据集,Dolphin18K题目数量增加了10倍以上,涵盖了不同年级、不同难度的数学题,且题型更加全面丰富,更具有挑战性。目前,在Dolphin18K的评测上,过往的这些数学解题系统平均只能获得20%左右的准确率,说明了数学解题并没有想象中的那么简单。

如上所述,目前智能解题任务仍然存在众多的挑战。但我们仍可以期冀,通过不断的数据积累和方法创新,智能解题系统的能力终将逼近甚至超过人类——答题能力能从及格逐渐提升至100分的水平。

登陆|注册欢迎登陆本站,认识更多朋友,获得更多精彩内容推荐!