Auto Byte

专注未来出行及智能汽车科技

微信扫一扫获取更多资讯

Science AI

关注人工智能与其他前沿技术、基础学科的交叉研究与融合发展

微信扫一扫获取更多资讯

曹绮桐作者

如何让AI理解数学?Facebook神经网络通过「语言翻译」求解数学难题

近年来,随着 AI 的崛起,神经网络一词也不断出现在人们的视线中。事实上,神经网络并不是什么新兴词汇。

早在 70 多年前,神经网络就被 AI 前沿的工作人员用来探索人类大脑的运作模式—— 人类大脑里有着数十亿的神经元相互连接,形成错综复杂的生物神经网络,负责理各种感官数据,并作出相应的应激反应,使我们从不断尝试的反馈中总结经验,收获新知。同样,AI 中的“神经网络”也是通过相互连接的不同层面过滤处理大量的数据,通过自我学习,做出相应的预测或模式识别
由于神经网络在 AI 中的决定性地位,以及它面临各种棘手的问题时表现出的强大到几乎无所不能的潜力,神经网络被推崇成“无所不能”的存在。

其中,最具有代表性的问题就是模式识别(pattern recognition)问题。或许你没听说过这个专业术语,但你一定熟悉通过模式识别衍生出许许多多功能强大的应用:比如,如何让 AI 给出地道而不是呆板的翻译,如何让手机相册自动识别并标记照片中反复出现的面孔,甚至包括让 AI 学习下围棋并战胜世界冠军等等,这些都离不开模式识别技术的强大助推。

模式识别,通过计算机技术自动地或半自动(人机交互)地实现人类的识别过程。这里,模式是这样定义的:为了能让机器执行识别任务,必须先将识别对象的有用信息输入计算机。为此,必须对识别对象进行抽象,建立其数学模型,用以描述和代替识别对象。

模式识别是指对表征事物或现象的各种形式的(数值的、文字的和逻辑关系的)信息进行处理和分析,以对事物或现象进行描述、辨认、分类和解释的过程,是信息科学和人工智能的重要组成部分。

模式识别主要包括两种方法:

1.数理统计方法。 统计方法是发展较早的方法,也是应用最广发的一种方法。是将被处理对象进行数字化,通过转化成计算机可以分析识别的数字信息,对样本进行特征值的抽取,将输入模式从对象空间映射到特征空间。这样一来,模式便可用特征空间中的一个点或者一个特征矢量表示。

2.句法方法。其基本思想是把一个模式描述为较简单的子模式的组合,子模式又可描述为更简单的子模式的组合,最终得到一个树形的结构描述,在底层的最简单的子模式称为模式基元。其基本思想是把一个模式描述为较简单的子模式的组合,子模式又可描述为更简单的子模式的组合,最终得到一个树形的结构描述,在底层的最简单的子模式称为模式基元。

然而,看似功能强大、覆盖面广的模式识别在面对高数里复杂的数学符号时,比如微积分里的积分或常微分方程计算,却望而却步。

通过分析上述的模式识别的方法,我们可以简单推出,神经网络之所以在解决数学问题方面止步不前,主要障碍来源于数学问题的本质—— 数学需要的是精确的答案,而神经网络对信息的处理方面更擅长的是概率。

他们往往在给定的大量数据下进行模式识别——比如说在翻译时,在给定的多种的可能的翻译结果中,辨别哪种翻译的更接地气;或者在给定的不同的照片中,标记出人脸,对比相似度,圈出出现概率高的面孔——并根据这些高概率出现的结果,汇总出最有可能出现的模式,并将这种模式定义为新的模式。以其高概率出现的可能性,来进行对未来事件的可能预测。

解决数学问题的新途径——语言翻译

当然,快速发展、不断完善的神经网络并不容许它在数学问题上存在持续的缺陷。去年年底,两位 Facebook 人工智能研究小组的计算机科学家——Guillaume Lample 和 Francois Charton,成功地探索出了用神经网络解决符号数学问题的一种方法。

这个开发出的强大的新程序充分利用了神经网络的一个主要优势:它可以完善自己的隐式规则。

斯坦福大学(Stanford University)的心理学家杰伊·麦克莱伦德(Jay McClelland)曾说,“规则和例外之间没有区别”。在不断尝试“例外”的过程中,人们可以学习并总结出解决相似问题的通理通法,而将这种通法视为“规则”,并运用“规则”去解决更多的“例外”。在不断解决“例外”的过程中,“规则”也会随之完善。

而程序所构建的神经网络,只是模拟了人们在学习数学时在“规则”和“例外”之间不断转化的模式。这意味着程序在解决问题时,并不会遇到最难的积分,而是在不断解决常规问题时,总结出一套“规则”,从而在面对更难的题目时派上用场。

从理论上讲,神经网络或许可以推导出不同于数学家们的“规则”。这就好比那个跟自己下了三天三夜围棋就秒杀人类围棋高手的 AlphaGo Zero,它的棋法完全悖于传统,超乎了传统的认知。

值得一提的是,他们的方法并不涉及数字运算或数值近似。相反,他们将复杂的数学运算问题重新编排,变成了神经网络的拿手好戏: 语言翻译。

传统的计算机是非常善于处理数字的。计算机的代数系统,就是将数十种或数百种算法与预置指令生硬地捆绑在一起,而计算机则是按部就班地按照指令进行运算,执行预设好的特定操作。一旦出现背离程序的操作,计算机就只能缴械投降。但对于许多符号问题,它们产生的数值解与工程和物理的实际应用非常接近。

神经网络则截然不同,他们没有固定的规则。相反,他们可以训练大规模的数据集——越大越好——并利用训练得到的统计数据,对数值解进行很好的近似。在这个过程中,他们学习的是什么方法,什么模式能产生最完美的结果。

这在语言翻译方面表现的尤为出色:在训练过后,他们并不再是逐字逐句地翻译,而是能够协调地翻译文本中的短语。Facebook 的研究人员认为神经网络这种特性是解决象征性数学问题的一个优势,而并不是障碍。它赋予了程序一种解决问题的自由,不同于传统计算机的刻板。

而这种自由对于某些开放性的问题特别有用,比如积分问题。数学家中有句老话:“微分是门技术,而积分是门艺术”。换句话说,求函数的导数只需遵循一些定义明确的步骤;但是求积分通常需要一些别的东西,在判断积分方法以及寻找积分项时,它更需要一些接近人的直觉而不仅仅是计算的东西。

Facebook 的研究小组认为,这种直觉可以通过 AI 的模式识别模拟。“积分是数学中最类似于模式识别的问题之一,”Charton 表示。因此,即使神经网络可能不知道函数是什么或变量是什么意思,它们也会根据大量数据训练发展出一种本能,即神经网络也会开始感觉怎么样计算可以得到答案。

为了让神经网络像数学家一样处理数学符号,Charton 和 Lample 首先将数学表达式翻译成更有用的形式。通过“翻译”, 他们将复杂的数学表达式最终翻译成神经网络可以识别的有效的简化形式——树状图,来总括表达式里的运算符号和数字。

其中,运算符号例如加减乘除成为了树状图的枝,而表达式里的参数(变量和数字) 则变成了叶子。通过转化成树状图, 这能让复杂的数学表达式转化成树状图层层嵌套的简单运算中,从而可以让神经网络识别和运算想应的简化式子,并得到最终的精确结果。

Lample 表示,这个过程与人们解决积分问题,甚至是所有数学问题的过程大体类似。都是通过在复杂数学表达式中,根据经验将他们简化为神经网络以前解决过的子问题。

在构建好这个结构以后,研究人员使用一组初等函数生成了几个训练数据集,总计约 2 亿(树形)方程和解。然后他们将训练数据给神经网络,让神经网络在训练数据集中对这样树状图的方程解法有一个初步的认知。

训练结束后,该看看神经网络现在可以做什么了。

计算机科学家给了它一个包含 5000 个方程的测试集,这个测试数据是没有答案的。令人惊讶的是,神经网络成功地通过了测试:它成功地为绝大多数问题找到了正确的解决方案,并且方程解具有很高的精度。它尤其擅长于积分,解决了几乎 100% 的测试问题。但是,在解决常微分方程时,神经网络表现欠佳。

对于几乎所有的问题,实验构造的程序都可以在不到1秒的时间内生成正确的解决方案。尤其是在积分问题上,它在速度和精度上都优于目前流行的软件 Mathematica 和 Matlab 中的一些内置包。Facebook 团队报告说,就连证两个软件无法解决的一些数学问题,神经网络都可以给出答案。

当然,这也只是一个对未来的展望而已。但毋庸置疑,这个团队回答了一个存在了几十年的问题——人工智能能做符号数学吗? 而答案是肯定的。他们在 AI 探索符号数学的道路上迈出了显著的一步。麦克莱伦德说:“他们确实成功地构建了神经网络,并且可以解决超出机器系统规则范围的问题。”


新型模式初探的局限性和展望

尽管得出了这些结果,Mathematica 开发公司 Wolfram 的负责人,数学家罗杰·格蒙森(Roger Germundsson)还是提出了异议,他表示,实验中只是拿了 Mathematica 的部分功能和神经网络作了简单粗暴的比较。这种比较局限于 Mathematica 特定的指令,比如“integrate”指令被用于求取积分,“DSolve”指令被用于解决微分方程——但事实上,Mathematica 用户还可以使用其他上百种的方法和指令去解决一个较为复杂的方程。

Germundsson 还注意到,尽管实验中所给的训练数据集非常庞大,但是所包含的方程都只有一个单一的变量,并且只是设计初等函数的运算。“这种方程在可能涉及到的方程运算中只能占到极小的部分,”他说。这个神经网络没有测试物理和金融中经常使用的更复杂的函数,比如误差函数或贝塞尔函数。(对此,Facebook 团队表示,在之后的测试中,可能只需要在训练神经网络时,给训练集做几次非常简单的修改。)

加州大学圣巴巴拉分校(University of California, Santa Barbara)的数学家弗雷德里克·吉布(Frederic Gibou)研究过用神经网络求解偏微分方程的方法,他并不认为 Facebook 小组的神经网络是绝对可靠的。“研究人员需要有信心,如果神经网络可靠,它就可以解决任何形式的方程。”

也有其他批评者指出,Facebook 小组的神经网络并没有真正理解数学,这更像是一种特别的猜想,而非实际的解决方法。

尽管如此,反对者还是承认新方法是有用的。Germundsson 和 Gibou 相信神经网络将在下一代符号数学求解工具中占有一席之地——但它也可能只是一席之地而已。“我认为它将只是众多工具中的一个,”Germundsson 表示。

另一个尚未解决的问题是:没有人真正了解它们是如何工作的,这也是神经网络发展最令人不安的一方面。

模式识别中,我们只需要将训练数据集在一段输入,相应的预测数据集就会在另一端输出,但是并没有人知道这中间发生了什么,让神经网络成为了一个完美的学习者。它理解输入的公式和算法吗?还是只是按部就班的按照指令处理数字?

对此,Charton 表示:“我们知道数学是如何工作的,通过使用特定的数学问题作为测试,看看神经网络在哪里成功,在哪里失败,我们就可以了解神经网络是如何工作的。”

他和 Lample 计划将数学表达式输入到他们的神经网络中,并跟踪程序对表达式中的微小变化的响应方式。映射输入中的变化如何触发输出中的变化,可能有助于揭示神经网络的操作方式。

Zaremba 认为这是在测试和确定神经网络是否具有理性,以及是否真正理解它们所回答的问题上的积极探索。“数学问题中很容易变换参数或者其它部分——我们可以通过观察神经网络在面对改动后的方程后作出的反应来窥测它的运行方式。我们可能会真正了解其中的原因,而不仅仅只是方程的解。”

神经网络探索的另一个可能的方向,是自动定理生成器的开发。数学家们正越来越多地研究使用人工智能来生成新的定理和证明的方法,尽管“这种技术还没有取得很大进展,”Lample 说,“这是我们正在研究的东西。”

Charton 描述了他们的方法至少有两种方法可以推动人工智能定理的发现。首先,它可以作为一种数学家的助手,通过识别已知猜想的模式来帮助解决存在的问题;其次,这台机器可能会生成一个列表,列出数学家们漏掉的可能可证明的结果。“我们相信,如果你能做集成,你就应该能做证明。”他说。

参考资料:
Ornes, S. (n.d.). Symbolic Mathematics Finally Yields to Neural Networks. Quanta Magazine. Retrieved May 27, 2020, from https://www.quantamagazine.org/symbolic-mathematics-finally-yields-to-neural-networks-20200520/
模式识别. (n.d.). 边肇祺、张学工编著. 模式识别(第二版). 清华大学出版社, 2004. Retrieved May 27, 2020, from http://www.intsci.ac.cn/ai/pr.html

AMiner学术头条
AMiner学术头条

AMiner平台由清华大学计算机系研发,拥有我国完全自主知识产权。系统2006年上线,吸引了全球220个国家/地区800多万独立IP访问,数据下载量230万次,年度访问量1000万,成为学术搜索和社会网络挖掘研究的重要数据和实验平台。

https://www.aminer.cn/
专栏二维码
理论神经网络Facebook
1
相关数据
人工智能技术

在学术研究领域,人工智能通常指能够感知周围环境并采取行动以实现最优的可能结果的智能体(intelligent agent)

参数技术

在数学和统计学裡,参数(英语:parameter)是使用通用变量来建立函数和变量之间关系(当这种关系很难用方程来阐述时)的一个数量。

生物神经网络技术

生物神经网络(Biological Neural Networks)一般指生物的大脑神经元,细胞,触点等组成的网络,用于产生生物的意识,帮助生物进行思考和行动

模式识别技术

模式识别(英语:Pattern recognition),就是通过计算机用数学技术方法来研究模式的自动处理和判读。 我们把环境与客体统称为“模式”。 随着计算机技术的发展,人类有可能研究复杂的信息处理过程。 信息处理过程的一个重要形式是生命体对环境及客体的识别。其概念与数据挖掘、机器学习类似。

导数技术

导数(Derivative)是微积分中的重要基础概念。当函数y=f(x)的自变量x在一点x_0上产生一个增量Δx时,函数输出值的增量Δy与自变量增量Δx的比值在Δx趋于0时的极限a如果存在,a即为在x0处的导数,记作f'(x_0) 或 df(x_0)/dx。

神经网络技术

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

映射技术

映射指的是具有某种特殊结构的函数,或泛指类函数思想的范畴论中的态射。 逻辑和图论中也有一些不太常规的用法。其数学定义为:两个非空集合A与B间存在着对应关系f,而且对于A中的每一个元素x,B中总有有唯一的一个元素y与它对应,就这种对应为从A到B的映射,记作f:A→B。其中,y称为元素x在映射f下的象,记作:y=f(x)。x称为y关于映射f的原象*。*集合A中所有元素的象的集合称为映射f的值域,记作f(A)。同样的,在机器学习中,映射就是输入与输出之间的对应关系。

逻辑技术

人工智能领域用逻辑来理解智能推理问题;它可以提供用于分析编程语言的技术,也可用作分析、表征知识或编程的工具。目前人们常用的逻辑分支有命题逻辑(Propositional Logic )以及一阶逻辑(FOL)等谓词逻辑。

神经元技术

(人工)神经元是一个类比于生物神经元的数学计算模型,是神经网络的基本组成单元。 对于生物神经网络,每个神经元与其他神经元相连,当它“兴奋”时会向相连的神经元发送化学物质,从而改变这些神经元的电位;神经元的“兴奋”由其电位决定,当它的电位超过一个“阈值”(threshold)便会被激活,亦即“兴奋”。 目前最常见的神经元模型是基于1943年 Warren McCulloch 和 Walter Pitts提出的“M-P 神经元模型”。 在这个模型中,神经元通过带权重的连接接处理来自n个其他神经元的输入信号,其总输入值将与神经元的阈值进行比较,最后通过“激活函数”(activation function)产生神经元的输出。

微积分技术

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

人机交互技术

人机交互,是一门研究系统与用户之间的交互关系的学问。系统可以是各种各样的机器,也可以是计算机化的系统和软件。人机交互界面通常是指用户可见的部分。用户通过人机交互界面与系统交流,并进行操作。小如收音机的播放按键,大至飞机上的仪表板、或是发电厂的控制室。

围棋技术

围棋是一种策略性棋类,使用格状棋盘及黑白二色棋子进行对弈。起源于中国,中国古时有“弈”、“碁”、“手谈”等多种称谓,属琴棋书画四艺之一。西方称之为“Go”,是源自日语“碁”的发音。

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