云栖号资讯:【点击查看更多行业资讯】
在这里您可以找到不同行业的第一手的上云资讯,还在等什么,快来!
神译局是36氪旗下编译团队,关注科技、商业、职场、生活等领域,重点介绍国外的新技术、新观点、新风向。
编者按:众所周知,人工智能有两大流派。一是符号主义,另一个是联结主义。符号主义擅长逻辑演绎;联结主义擅长归纳总结,典型代表是机器学习。通常来说,演绎推理这种事情不是联结主义的菜。不过最近Facebook的一个AI小组却在这件事情上取得进展:让神经网络用语言翻译的原理去解微积分方程。这算是新突破吗?Stephen Ornes介绍了他们的成果,原文发表在quantamagazine.org上,标题是:Symbolic Mathematics Finally Yields to Neural Networks
划重点
大家把神经网络看作是AI的灵丹妙药,能够解决可以重述为模式识别问题的技术难题
困难的符号数学问题一直是神经网络的弱点
Facebook人工智能研究小组工作的计算机科学家,公开了第一个成功用神经网络解决符号数学问题的方案
他们将数学表达式转换为树状结构,然后训练网络在符号当中找到有关解的线索
这种方法可以充当数学家的助手,通过识别已知猜想中的模式为一个之前存在的问题提供帮助
更加令人兴奋的是,这种神经网络有可能帮助揭开神经网络本身黑匣子的秘密
通过将符号数学转换为树状结构,神经网络最终可以开始解决更多抽象问题。
插图:机器人把微积分转换成树状分支结构
70多年前,作为思考大脑工作机制的一种革命性的手段,处在人工智能研究前沿的研究人员引入了神经网络。在人的大脑里,数十亿个互连的神经元网络会处理感知的数据,让我们能够从经验中学习。人工神经网络还可以按照它们自学而来的规则,通过互连的层过滤大量数据,从而预测和识别模式。
到目前为止,大家把神经网络看作是AI的灵丹妙药,能够解决可以重述为模式识别问题的技术难题。他们提供听起来显得很自然的语言翻译。照片应用用它们来识别相册里面的老面孔并对其进行分类。由神经网络驱动的程序在围棋和国际象棋等游戏中击败了全世界上最好的棋手。
但是,在一个很惹眼的领域神经网络始终滞后,那就是:解决困难的符号数学问题。包括微积分课程的标志,比方说积分或常微分方程。障碍源于数学本身的属性,那需要有精确的解决方案。但神经网络擅长的往往是概率。他们学会了识别模式——比如哪个西班牙语翻译听起来是最好的,或者你的脸型看起来怎样——还可以生成新的模式。
这种情况在去年年底的时候发生了改变。当时,Guillaume Lample和François Charton这两位在巴黎Facebook人工智能研究小组工作的计算机科学家,公开了第一个成功用神经网络解决符号数学问题的方案。他们的方法不涉及数字运算或数值逼近。相反,他们发挥了神经网络的优势,把数学问题用一个实际上已被解决的问题重新进行诠释:这个问题就是语言翻译。
研究AI在数学当中的应用的Charton 说:“我们两个的专业都是数学和统计学。数学是我们的母语。”
因此,Lample 和Charton的程序可以为复杂的积分和微分方程提供精确的解决方案,里面包括内置了一些显式的解决问题规则的流行数学软件包。
Facebook的AI研究员François Charton(左) 和 Guillaume Lample(右)想出了一个办法,将符号数学转化成神经网络可以理解的形式
这个新程序利用了神经网络的主要优点之一:它们开发出自己的隐式规则。斯坦福大学的心理学家Jay McClelland说,其结果是,“规则与例外之间没有区别。” McClelland研究的是用神经网络来模拟人们如何学习数学。实际上,这意味着程序不会被最困难的积分给难倒。从理论上讲,这种方法可以得出非常规的“规则”,从而可以在人或机器当前无法解决的问题上取得进展,比方说发现新证明或理解神经网络本身性质的数学问题。
当然,那种情况还没有发生。但是很显然,这支团队已经回答了那个已有几十年历史的问题——人工智能可以搞符号数学吗?——而且是用肯定的语气。AI研究组织OpenAI的联合创始人Wojciech Zaremba 说:“他们已经建好了模型。算法也已经确立。他们用巧妙的方式给问题做出了公设。”
McClelland 说:“他们的确成功地想出了一个神经网络,一个能够解决超越遵循规则机器系统范畴问题的神经网络。这非常令人兴奋。”
教计算机讲数学语言
处理数字一直是计算机的擅长。计算机代数系统结合了数十种乃至数百种跟预设指令硬连接的算法。它们通常是严格的规则遵循者,能够执行特定的操作,但无法容纳异常。对于许多符号问题来说,它们能够产生对工程和物理应用而言足够接近的数值解。
神经网络不一样。对它们没有硬性规定。相反,它们靠大型数据集来训练——规模越大越好——而且用统计数据可以得出很好的近似值。在此过程中,它们会学习哪些生成了最佳的结果。语言翻译程序尤其令人眼前一亮:它们不用逐字地进行翻译,而是根据整个文本的上下文来翻译短语。Facebook研究人员认为这对解决符号数学问题来说是一种优势,而不是障碍。它为程序提供了一种解决问题的自由。
对于某些开放性的问题,比方说积分法来说,这种自由特别有用。数学家之间流传着一句老话:“微分是技术;积分是艺术。” 这意味着要想找到函数的导数,你只需要遵循一些明确定义的步骤即可。但是要找到一个积分往往需要一些别的东西,某种更接近直觉而不是计算的东西。
他们的模型已经确立。那些算法已经确立。他们以巧妙的方式对问题提出了公设。
——Wojciech Zaremba,OpenAI
该Facebook小组猜测这种直觉可以用模式识别来逼近。Charton 说:“积分是数学当中跟模式识别最类似的问题之一。” 因此,哪怕神经网络可能无法理解函数的作用或变量的含义,它们也的确会发展出一种本能。就算不知道为什么,神经网络能够慢慢感觉出什么才是有效的。
比方说,一位数学家被要求对类似
这样的表达式求积分的话,他的直觉会怀疑原函数——也就是导致积分出现的那个被微分的表达式——会包含类似y²+ 1的平方根这样的东西。
为了让神经网络能够像数学家一样处理符号,Charton 和Lample 首先将数学表达式转换成了更有用的形式。他们最终将它们重新解释为树——这种形式在精神上跟图解的句子比较相似。数学运算符(比方说加,减,乘和除)会变成这颗树的连接点。自乘或者三角函数之类的操作亦然。参数(变量和数字)变成了树叶。除了极少数的例外,这种树形结构抓住了把操作嵌套在更长的表达式里面的那种方式。
Lample 说“当我们看到一个大型函数时,我们可以把它看成是由较小的函数组成的,并且对解是什么有一些直觉。我们认为该模型试图在符号当中找到有关解的线索。” 他说,这个过程跟大家解决积分(其实也是所有数学问题)的方式类似,办法就是把它们简化为以前解决过的可识别的子问题。
关于新程序如何将符号数学转换成树状结构的简要说明
在提出这种架构之后,研究人员用了一组基本函数来生成多个训练数据集,总计有约2亿个(树形)方程和解。然后,他们把数据“馈送”给神经网络,让后者学习这些问题的解。
训练结束后,就该看一下这个网络能做什么了。计算机科学家为它提供了含有5000个方程的测试集,但这次并不提供答案。(这些测试问题均未被归类为“无法解决。”)神经网络出色地通过了测试:它设法为绝大多数问题找到了正确的解,包括精度等等。这个网络尤其擅长积分,可以解决将近100%的测试问题,但是对于解常微分方程却不太成功。
对于几乎所有问题,该程序只用了不到1秒钟的时间即可生成正确的解。对于积分问题,它在速度和准确性方面均胜过了流行的软件包Mathematica 和Matlab 里面的某些求解器。Facebook团队报告说,神经网络还生成了那些商业求解器都没法处理的问题的解。
进入黑匣子
尽管取得了这些结果,但做出了Mathematica的Wolfram研究与开发负责人,数学家Roger Germundsson却对这种直接比较提出了质疑。Facebook研究人员只是把他们的方法跟Mathematica的部分函数(即对积分进行“积分”和对微分方程进行“DSolve”处理)进行了比较,但Mathematica用户还可以使用数百种其他的求解工具。
Germundsson 还指出,尽管这个训练数据集很庞大,但纳入进来的只是只有一个变量的方程,而且只包含了那些以基本函数为基础的方程。他说:“这只占可能的表达式的一小部分。” 他们还没有对神经网络进行过物理和金融领域常用的更难处理的函数(比方说误差函数或贝塞尔函数)的测试。(Facebook的这个小组表示,将来的版本可能会做此类测试,只需要非常简单的修改。)
Frédéric Gibou,加利福尼亚大学圣塔芭芭拉分校数学家,他曾经调查过利用神经网络解决偏微分方程的各种手段,也并不认为Facebook这个小组的神经网络是万无一失的。他说:“你得确信它能够一直有效,而不仅仅是解决某些选定的问题,但事实并非如此。” 其他批评家则指出,Facebook小组的神经网络其实并不真正理解数学。它只是猜答案的能力特别出色。
不过他们还是认同了这种新方法会被证明是有用的。Germundsson 和Gibou 认为,神经网络将在下一代的符号数学求解器列表当中占据一席之地——只不过这张表会很庞大。Germundsson 说:“我认为它会是众多工具之一。”
除了解决符号数学的这一特定问题外,Facebook这个小组的工作是这类方法的原则和力量的一个令人鼓舞的证明。剑桥大学数学家Anders Hansen表示:“ 如果这些技术能够解决人们以前无法解决的问题,那么数学家总的来说会感到印象深刻。”
我们认为该模型试图在符号当中找到有关解的线索。
——Facebook AI Research 的Guillaume Lample
神经网络可以去探索的另一个可能方向是自动定理生成器的开发。Lample说,尽管“目前的技术水平还没有取得太多的进展,”但数学家们正在加大如何用人工智能来产生新的定理和证明的力度。“这是我们在寻找的东西。”
Charton介绍了他们的办法至少有两种方式可以推动AI定理发现。第一,它可以充当数学家的助手,通过识别已知猜想中的模式为一个之前存在的问题提供帮助。其次,机器可以生成数学家错过的潜在可证明的结果列表。他说:“我们相信,只要可以积分,就应该能够证明。”
为证明提供帮助可能最终会成为杀手级的应用,其效果甚至超出了Facebook团队的描述。证明定理的一种常见办法是提出一个反例,证明它不成立。这是这类神经网络有朝一日可能非常适合的一项任务:找到一把意想不到的扳手然后扔进机器里面。
这种方案展现出解决希望的另一个未解决问题是神经网络最令人不安的方面之一:没有人真正了解它们是如何工作的。训练的比特从一头输入,然后预测比特就会在另一头出现,但是中间发生了什么——让神经网络得出那么好的正确率的确切的过程——仍然是一个关键的,悬而未决的问题。
另一方面,符号数学显然没有那么神秘。Charton 说:“我们知道数学是如何工作的。通过用特定的数学问题作为测试来看看机器在什么地方取得了成功,在哪些地方失败了,我们就可以学习神经网络的工作原理。”
不久之后,他和Lample 计划将数学表达式输入到他们的网络里面,然后跟踪程序对表达式当中的微小变化是如何响应的。把输入触发器的变化跟输出对应起来,也许就能帮助揭示神经网络的运行方式。
Zaremba 认为,这种理解是教神经网络学会推理和真正理解它们正在回答的问题潜在的步骤。他说:“在数学上做出改变,让表达式发生变化,然后看看神经网络工作效果如何是很容易的。我们也许能够真正地学会推理方法,而不仅仅是得出答案。这样结果将会非常的强大。”
译者:boxi。
【云栖号在线课堂】每天都有产品技术专家分享!
课程地址:https://yqh.aliyun.com/live立即加入社群,与专家面对面,及时了解课程最新动态!
【云栖号在线课堂 社群】https://c.tb.cn/F3.Z8gvnK