机器之心编辑部报道

神经网络也能解数学题,DeepMind发布千万数学题海数据集

从中学数学到高数微积分,我们需要做大量数学题。知识点看懂了并不算懂,能解题才是王道。那么神经网络是不是也能理解数学题,并解出这些题目呢?因为从数据上来说,数学题也就是一个序列而已,神经网络说不定能将这个序列映射到正确的答案。

为了促进这方面的研究,DeepMind 近日发布了一个新型数据集,包含大量不同类型的数学问题(练习题级别),旨在考察模型的数学学习和代数推理能力。

数据集地址:https://github.com/deepmind/mathematics_dataset

目前该数据集发布了 1.0 版,其每个模块包含 200 万(问题答案)对和 10000 个预生成测试样本,问题的长度限制为 160 字符,答案的长度限制为 30 字符。每个问题类型中的训练数据被分为「容易训练」、「中等训练难度」和「较难训练」三个级别。这允许通过课程来训练模型。

该数据集包含以下类别:

如下所示为该数据集的示例,其中 Question 是待解决的数学题目,Answer 是对应题目的解。这些题目涉及上述多种数学问题,且进行了分级。

图 1:数据集示例。

什么是神经网络的数学推导能力

深度学习模式匹配机器翻译强化学习等领域取得了巨大成功。但是,深度模型的稳健性和灵活性远不及人类。它们对陌生环境的泛化能力不足,且易受对抗样本的影响。

人类智能区别于神经模型且优于后者的一个领域是对「代数泛化」对象和实体的离散组合推理。人类在该领域的泛化能力是复杂、多面的,与双语翻译领域的泛化有显著区别。例如,考虑以下数学问题(答案是 −70x − 165):

为了解决这个问题,人类需要使用多种认知技能:

  • 将字符解析成实体,如数字、算术运算符、变量(加在一起可组成函数)和单词(决定问题是什么)。

  • 规划(例如,识别组合顺序正确的函数)。

  • 使用子算法进行函数复合(加、乘)。

  • 利用工作记忆存储中间值(如复合函数 h(f(x)))。

  • 应用所需的规则、变换、过程和定理。

这个数据集项目提出了什么

该数据集包含多种不同类型的数学问题。其动机是,模型如果不具备一些代数泛化能力,则很难处理多种数学问题(包括泛化)。

该领域对神经架构分析非常重要。该数据集除了提供大量问题以外,还有多个优势:数学提供了一个自洽的环境;不同问题类型的符号是相同的,这使得该数据集可以轻松扩展;在一个问题上学到的规则和方法通常可用于其他问题。例如,数字加法的规则在哪里都是一样的,且可作为其他问题(如乘法、多项式加法)的「子程序」(subroutine)。能够执行知识迁移的模型会在这个数据集上取得较好的性能,要想解决较难的问题,知识迁移必不可少。

数学本身是一个有趣的领域,尽管解决该数据集中学校级别数学问题的模型没有实际应用,但它们可能会带来更强大的模型,用于解决大量有趣新颖的数学问题。一般来说,用于验证旨在捕捉算术/系统性推理新架构的实验通常来自数学领域,而这并非巧合。因此 DeepMind 希望通过为此类模型提供大规模训练和评估框架,来为数学领域之外的机器推理研究打下坚实的基础。

贡献

数据集和泛化测试:该序列到序列数据集包含多种不同类型的数学问题,可用于评估数学推理。DeepMind 还提供了生成代码和预生成问题。

实验和模型分析:DeepMind 研究者执行了实验评估来研究当前最优神经架构的代数能力,证明了这些架构能够很好地处理多种数学问题,但无法处理所有问题类型,此外它们的泛化能力也有待提升。

这个数据集测试了什么

在论文中,作者还用该数据集测试了两种主流模型:循环神经网络和 Transformer,它们已经在序列建模问题上展示出当前最优的性能。下图展示了测试使用的 Attention LSTM 与 Transformer,它们都使用编码器-解码器结构建模问题与答案:

图 2:Attentional LSTM 与 Transformer 架构。

下表展示了不同网络架构的 interpolation 和 extrapolation 性能:

图 3:不同模型的准确率,其中 RMC 为关系循环神经网络

如上所示,使用带有多个记忆 slot 的 RMC 在性能上并不会有多大帮助,这表示 RMC 很难使用 slot 操作数学实体。而对于带或不带注意力机制的 LSTM,它们的性能也差不多,作者推测注意力机制并没有学习解析数学问题,因此获得的性能提升并不大。最后,Transformer 明显比其它循环神经网络表现更好一些。

论文:ANALYSING MATHEMATICAL REASONING ABILITIES OF NEURAL MODELS 

论文地址:https://arxiv.org/pdf/1904.01557.pdf

作为人类智能的核心能力,数学推理具有一些独特的挑战:我们不是主要依靠经验和证据来理解和解决数学问题,而是基于推断、学习和利用定律、公理和符号操作规则。在本文中,DeepMind 提出了一个评估(并最终设计)神经架构和相似系统的新挑战,开发了一套数学问题,包括以自由格式文本输入/输出形式的问题和答案序列。

数学领域涵盖算术、代数、概率和微积分,其结构化性质使构建训练和测试分割成为可能。该训练和测试分割旨在清晰地阐明不同架构的能力和故障模式,以及评估它们组合与关联知识和学习过程的能力。描述了数据生成过程及其潜在的未来扩展之后,DeepMind 还对来自两种最强序列到序列架构的模型进行了全面分析,并发现了它们在解决数学问题和泛化知识方面的显著差异。

理论数学神经网络DeepMind
3
相关数据
DeepMind机构

DeepMind是一家英国的人工智能公司。公司创建于2010年,最初名称是DeepMind科技(DeepMind Technologies Limited),在2014年被谷歌收购。在2010年由杰米斯·哈萨比斯,谢恩·列格和穆斯塔法·苏莱曼成立创业公司。继AlphaGo之后,Google DeepMind首席执行官杰米斯·哈萨比斯表示将研究用人工智能与人类玩其他游戏,例如即时战略游戏《星际争霸II》(StarCraft II)。深度AI如果能直接使用在其他各种不同领域,除了未来能玩不同的游戏外,例如自动驾驶、投资顾问、音乐评论、甚至司法判决等等目前需要人脑才能处理的工作,基本上也可以直接使用相同的神经网上去学而习得与人类相同的思考力。

深度学习技术

深度学习(deep learning)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法。 深度学习是机器学习中一种基于对数据进行表征学习的算法,至今已有数种深度学习框架,如卷积神经网络和深度置信网络和递归神经网络等已被应用在计算机视觉、语音识别、自然语言处理、音频识别与生物信息学等领域并获取了极好的效果。

模式匹配技术

在计算机科学中,模式匹配就是检查特定序列的标记是否存在某种模式的组成部分。 与模式识别相比,匹配通常必须是精确的。 模式通常具有序列或树结构的形式。 模式匹配的使用包括输出令牌序列内的模式的位置(如果有的话),输出匹配模式的某个分量,以及用另一个令牌序列(即搜索和替换)替换匹配模式。

规划技术

人工智能领域的「规划」通常是指智能体执行的任务/动作的自动规划和调度,其目的是进行资源的优化。常见的规划方法包括经典规划(Classical Planning)、分层任务网络(HTN)和 logistics 规划。

注意力机制技术

我们可以粗略地把神经注意机制类比成一个可以专注于输入内容的某一子集(或特征)的神经网络. 注意力机制最早是由 DeepMind 为图像分类提出的,这让「神经网络在执行预测任务时可以更多关注输入中的相关部分,更少关注不相关的部分」。当解码器生成一个用于构成目标句子的词时,源句子中仅有少部分是相关的;因此,可以应用一个基于内容的注意力机制来根据源句子动态地生成一个(加权的)语境向量(context vector), 然后网络会根据这个语境向量而不是某个固定长度的向量来预测词。

机器翻译技术

机器翻译(MT)是利用机器的力量「自动将一种自然语言(源语言)的文本翻译成另一种语言(目标语言)」。机器翻译方法通常可分成三大类:基于规则的机器翻译(RBMT)、统计机器翻译(SMT)和神经机器翻译(NMT)。

神经网络技术

(人工)神经网络是一种起源于 20 世纪 50 年代的监督式机器学习模型,那时候研究者构想了「感知器(perceptron)」的想法。这一领域的研究者通常被称为「联结主义者(Connectionist)」,因为这种模型模拟了人脑的功能。神经网络模型通常是通过反向传播算法应用梯度下降训练的。目前神经网络有两大主要类型,它们都是前馈神经网络:卷积神经网络(CNN)和循环神经网络(RNN),其中 RNN 又包含长短期记忆(LSTM)、门控循环单元(GRU)等等。深度学习是一种主要应用于神经网络帮助其取得更好结果的技术。尽管神经网络主要用于监督学习,但也有一些为无监督学习设计的变体,比如自动编码器和生成对抗网络(GAN)。

准确率技术

分类模型的正确预测所占的比例。在多类别分类中,准确率的定义为:正确的预测数/样本总数。 在二元分类中,准确率的定义为:(真正例数+真负例数)/样本总数

对抗样本技术

对抗样本是一类被设计来混淆机器学习器的样本,它们看上去与真实样本的几乎相同(无法用肉眼分辨),但其中噪声的加入却会导致机器学习模型做出错误的分类判断。

微积分技术

微积分(Calculus)是高等数学中研究函数的微分(Differentiation)、积分(Integration)以及有关概念和应用的数学分支。它是数学的一个基础学科。内容主要包括极限、微分学、积分学及其应用。微分学包括求导数的运算,是一套关于变化率的理论。它使得函数、速度、加速度和曲线的斜率等均可用一套通用的符号进行讨论。积分学,包括求积分的运算,为定义和计算面积、体积等提供一套通用的方法 。

序列到序列技术

强化学习技术

强化学习是一种试错方法,其目标是让软件智能体在特定环境中能够采取回报最大化的行为。强化学习在马尔可夫决策过程环境中主要使用的技术是动态规划(Dynamic Programming)。流行的强化学习方法包括自适应动态规划(ADP)、时间差分(TD)学习、状态-动作-回报-状态-动作(SARSA)算法、Q 学习、深度强化学习(DQN);其应用包括下棋类游戏、机器人控制和工作调度等。

推荐文章
暂无评论
暂无评论~