【按】推荐 Gary 最新文章对于深度学习的批评。非常有历史感和使命感的文字。他首先指出,几年前深度学习吹牛说不再需要培训放射科医生了,因为机器几年内可以取代这个职业。几年过去了,没有一个放射科医生被机器取代。现在的情形是: 医生与机器协力。Gary 对深度学习极端派批评的新文章一再强调了符号与神经的结合,并对于符号被排斥的历史做了批评性回顾。他的符号论有点意思。其实,除了极端派,多数人并不反对符号与神经的结合尝试,只不过这一对冤家本性上脾性不合,不是轻易可以结合的。昨天紧接在我的 talk 后,屠教授(他是朱纯松的弟子)给了一个很有意思的研究报告,他就把正则表达式规则转换成了神经网络,在规则与神经之间构建了一座桥梁。
让我先说几件看似显而易见的事情,”深度学习的“教父”、我们这个时代最著名的科学家之一 Geoffrey Hinton 在 2016 年多伦多的一次领先的人工智能会议上说:放射科医生,你就像已经越过悬崖边缘但还没有往下看的土狼。他推断,深度学习非常适合读取 MRI 和 CT 扫描的图像,人们应该“现在停止培训放射科医生”,而且“很明显,在五年内深度学习会做得更好”。
快进到 2022 年,没有一个放射科医生被替换。相反,现在的共识是放射学机器学习比看起来更难;至少目前,人类和机器是互补的。
(评一下:这是说难度被低估了。但其实,长远来看,趋势应该是明显的:1. 由于机器性能的提升,放射科医生的需求量会降低;2. 幸存下来的放射科医生都会是与机器协作的好手,这就好比以翻译为生的人,需要熟练掌握使用机器翻译工具一样。)
当我们只需要粗略的结果时,深度学习处于最佳状态。
很少有领域比人工智能更充满炒作和虚张声势。它十年又十年地从一个时尚到另一个时尚,总是承诺月亮,但只是偶尔能够兑现交付。前一分钟是专家系统,接下来是贝叶斯网络,然后是支持向量机。2011 年,IBM 的 Watson 曾被标榜为医学领域的一场革命,而最近则以拆散贱价出售。如今,事实上自 2012 年以来,深度学习一直被青睐,作为一种价值数十亿美元的技术,它推动了当代 AI 的发展。Hinton 帮助开创了这一技术:他的论文被引用了惊人的 50 万次并与Yoshua Bengio 和 Yann LeCun 一道荣获 2018 图灵奖。
像他之前的 AI 先驱一样,Hinton 经常预示着即将到来的大革命。放射学只是其中的一部分。2015 年,在 Hinton 加入谷歌后不久,《卫报》报道称,该公司正处于“开发具有逻辑、自然对话甚至调情能力的算法”的边缘。2020 年 11 月,Hinton告诉MIT Technology Review,“深度学习将无所不能。”
我对此严重怀疑。事实上,我们距离真正理解人类语言的机器还有很长的路要走,与科幻片的机器人 Rosey 的日常智能相去甚远,Rosey the Robot 是一个不仅可以解释各种人类请求的科幻管家,而且可以安全实时地采取行动。当然,埃隆马斯克最近表示,他希望制造的新型人形机器人 Optimus 有一天会比汽车行业市场更大,但就在特斯拉宣布该机器人的 2021 年人工智能演示日,它只不过是一个穿着服装充数的真人。谷歌对语言的最新贡献是一个系统(Lamda),它是如此的轻浮,以至于它自己的一位作者最近承认它很容易产生“废话”。 扭转局面并获得我们真正可以信任的人工智能绝非易事。
随着时间的推移,我们将看到,如果我们想要获得值得信赖的人工智能,深度学习只是我们需要构建的一小部分。
深度学习从根本上说是一种识别模式的技术,当我们需要的只是粗略的结果时,它处于最佳状态,其中必须要求出错的风险很低,同时,完美的结果也不是必要的。前几天我用 iPhone 找了一张我几年前拍的兔子的照片。即使我从未给照片贴上标签,也立即给我找到了。它之所以有效,是因为我的兔子照片与其他带有兔子标签的照片的大型数据库中的其他照片足够相似。但基于深度学习的自动照片标记也容易出错。它可能会遗漏一些兔子照片(尤其是杂乱无章的照片,或者用奇怪的光线或不寻常的角度拍摄的照片,或者兔子被部分遮挡的照片);它有时会混淆我两个孩子的婴儿照片。但即便出错也风险很低。我不会因为它出错就扔掉我的 iPhone 的。
但是,当风险更高时,例如在放射科或无人驾驶汽车中,我们需要对采用深度学习更加谨慎。当一个错误可能会夺去生命时,它还远不够好。当涉及与训练对象大不相同的“异数”(outliers)时,深度学习系统尤其成问题。例如,不久前,一辆特斯拉在所谓的“全自动驾驶模式”下遇到了一个人在路中间举着停车标志。汽车未能识别出该人(部分被停车标志遮挡)和停车标志(训练数据中的停车牌通常是在路旁的);人类司机这时候不得不从自动驾驶手上接管过来。场景离训练数据库太远了,系统不知道该做什么。
40年来第一次,我终于对人工智能感到一些乐观。
【谈到关于超大规模数据的预训练可以解决AI问题...】也许是,但也许不是。关于超大数据训练的立论有严重的漏洞。首先,仅仅是大尺度并没有抓住我们迫切需要提高的东西: 真正的理解。内部人士很早就知道,人工智能研究中最大的问题之一是我们用来评估人工智能系统的测试标准。众所周知的图灵测试旨在衡量真正的智力,结果却很容易被表现得偏执或不合作的聊天机器人所欺骗。扩大卡普兰和他的OpenAI同事所观察的衡量标准——关于预测句子中的单词——并不等同于真正的人工智能所需要的那种深度理解。【他这是说,语言模型,甭管多大规模,并不是理解意义上的语言能力。这与乔姆斯基对于经验主义的经典批判是一致的。】
此外,所谓的大数据定律并不是像万有引力那样的普遍定律,而是可能不会永远成立的纯粹观察结果,就像摩尔定律一样,这是计算机芯片生产中的一个趋势,持续了几十年,但十年前开始放缓。
事实上,我们可能已经在深度学习中遭遇规模限制,可能已经接近收益递减点。在过去的几个月里,DeepMind和其他公司对比GPT-3更大的模型进行的研究表明,在某些方面,如毒性、真实性、推理和常识,一味增加训练数据使系统开始变得不稳定。谷歌2022年的一篇论文得出结论,将类似GPT-3的模型变大会使它们更流畅,但不会更可信。
这些迹象应该给自动驾驶行业敲响警钟,该行业在很大程度上依赖于规模化,而不是开发更复杂的推理【尤其是特斯拉马斯克所依赖和指望的技术路线】。如果规模化不能让我们实现安全的自动驾驶,数百亿美元的规模化投资可能会付诸东流。
我们还需要什么?
除此之外,我们很可能需要重新审视一个一度流行、但辛顿似乎非常总想粉碎的做法: 操纵符号的做法——计算机内部的编码,比如表示复杂概念的二进制位符号串。操纵符号从一开始就对计算机科学至关重要,至少从艾伦·图灵和约翰·冯·诺依曼的先驱论文开始,现在仍然是几乎所有软件工程的基本要素——但符号在深度学习中被视为一个肮脏的词。
然而,在很大程度上,这就是目前大多数人工智能的进展。辛顿和其他许多人曾努力尝试完全摒弃符号。深度学习的希望——似乎不是基于科学,而是基于一种历史怨恨——是智能行为将纯粹从海量数据和深度学习的融合中产生。经典计算机和软件通过定义专用于特定工作的符号操作规则集来解决任务,例如在文字处理器中编辑一行或在电子表格中执行计算,而神经网络通常试图通过统计近似和从示例中学习来解决任务。因为神经网络在语音识别、照片标记等方面取得了如此之多如此之快的成就,许多深度学习的支持者已经放弃了符号。
他们其实不应该这样。
2021年底,一场名为NetHack Challenge的大型比赛给深度学习敲了警钟,这场比赛部分是由脸书(现为Meta)的一个团队发起的。NetHack是早期游戏Rogue的扩展,也是Zelda的前身,是1987年发布的单用户地牢探索游戏。图形是用的纯ASCII字符;不需要三维感知。玩家选择一个有性别的角色(如骑士、巫师或考古学家),然后去探索地牢,收集物品和杀死怪物以寻找护身符。2020年提出的挑战是要让人工智能玩好这个游戏。
对于许多人来说,NetHack对于深度学习应该是易如反掌,它已经掌握了从Pong到Breakout到(借助于树搜索的符号算法)Go和Chess的一切。但在12月,一个纯粹基于符号操纵的系统以3比1的比分击败了最佳深度学习系统——令人震惊。
失败者是如何取得胜利的?我怀疑答案始于这样一个事实,即地牢在每个游戏中都是重新生成的——这意味着你不能简单地记住(或近似)游戏棋盘。要想赢,你需要对游戏中的实体以及它们之间的抽象关系有相当深刻的理解。最终,玩家需要思考在复杂的世界中他们能做什么,不能做什么。特定的移动顺序(“向左,然后向前,然后向右”)太肤浅,没有帮助,因为每一个动作本质上都依赖于新生成的上下文。深度学习系统擅长在他们之前见过的具体例子之间进行插值,但在遇到新事物时经常会出错。
任何时候大卫击败歌利亚,都是重新考虑的信号。
“操纵符号”到底是什么意思?最终,它意味着两件事: 用一组符号(本质上只是代表事物的模式)来表示信息,并以特定的方式处理(操作)这些符号,使用代数(或逻辑,或计算机程序)之类的东西来操作这些符号。该领域的许多困惑来自于没有看到两者之间的区别——拥有符号,并用代数方法处理它们。要理解人工智能是如何陷入这种困境的,有必要了解两者之间的区别。
什么是符号?它们基本上只是代码。符号提供了一种有原则的外推机制: 合法的代数程序,可以普遍应用,独立于已知案例的任何相似之处。它们(至少目前)仍然是手工制作知识的最佳方式,也是在新奇的情况下处理抽象概念的最佳方式。挂有“停”字的红色八角形是司机停车的标志。在现在普遍使用的ASCII码中,二进制数01000001代表字母A,二进制数01000010代表字母B,依此类推。
基本的想法是,这些二进制数字串,即所谓的比特,可以用来编码各种各样的东西,例如计算机中的指令,而不仅仅是数字本身;这至少可以追溯到1945年,当时传奇数学家冯·诺依曼概述了几乎所有现代计算机遵循的架构。事实上,可以说冯·诺依曼对二进制比特可以被象征性地操纵的方式的认识是20世纪最重要的发明之一的核心——实际上你曾经使用过的每一个计算机程序都是以此为前提的。(神经网络中流行的“词嵌入”看起来也非常像符号,尽管似乎没有人承认这一点。例如,通常任何给定的单词都会被赋予一个唯一的向量,这种一对一的方式非常类似于ASCII码。称某物为“嵌入”并不意味着它不是一个符号。)
由图灵和冯·诺依曼以及之后的所有人实践的经典计算机科学,以一种我们认为是代数的方式操纵符号,这才是关键所在。在简单代数中,我们有三种实体,变量(如x和y),运算(如+或-),绑定(例如,它告诉我们,为了某种计算的目的,让x = 12)。如果我告诉你,x = y + 2,y = 12,你可以通过将y绑定到12,然后加上这个值,得到14。事实上,世界上所有的软件都是通过将代数运算串联起来,组装成更加复杂的算法来工作的。例如,你的文字处理器有一串符号,收集在一个文件中,用来表示你的文档。各种抽象操作会将符号从一个地方复制到另一个地方。每个操作都是以这样的方式定义的,即它可以在任何位置处理任何文档。从本质上说,文字处理器是一种应用于变量(如“当前选定的文本”)的一组代数运算(“函数”或“子例程”)的应用程序。
符号操作也是数据结构的基础,如字典或数据库,它们可能保存特定个人及其属性的记录(如他们的地址,或销售人员最后一次与他们联系的时间),并允许程序员建立可重用代码库和更大的模块,从而简化复杂系统的开发。这种技术无处不在,是软件世界的面包和黄油。
如果符号对于软件工程如此重要,为什么不在人工智能中也使用它们呢?
事实上,早期的先驱,如约翰·麦卡锡和马文·明斯基,认为人们可以通过扩展这些技术来精确地构建人工智能程序,用符号来表示个体实体和抽象概念,这些符号可以组合成复杂的结构和丰富的知识库,就像它们现在在网络浏览器、电子邮件程序和文字处理器中使用的一样。他们没有错——这些技术的扩展无处不在(在搜索引擎、交通导航系统和游戏人工智能中)。但是符号本身有问题;纯粹的符号系统有时工作起来很笨拙,在图像识别和语音识别等任务上表现不佳;大数据生态从来都不是他们的所长。因此,人们长期以来一直渴望其他东西。
这就是神经网络的用武之地。
也许我见过的最明显的例子是拼写检查,它说明了在经典的符号操作方法之外可以使用大数据和深度学习。帮助建议未识别单词拼写的旧方法是建立一套规则,该规则本质上指定了人们可能如何出错的心理。(考虑无意中重复字母的可能性,或者相邻字母可能被调换,将“teh”转换为“the”)正如著名的计算机科学家Peter Norvig著名而巧妙的指出的,当您拥有Google大小的数据时,您有了一个新的选择: 只需查看用户如何更正自己的日志。如果他们在查找“teh book”之后查找“the book”,您就有证据表明“teh”可能有更好的拼写。不需要依靠拼写规则。
对我来说,很明显你希望这两种方法都有。在现实世界中,拼写检查者倾向于两者都用;正如厄尼·戴维斯所观察到的,“如果你在谷歌中输入‘cleopxjqco’,它会更正为‘cleopxjqco’,即使没有用户可能会输入它。谷歌搜索整体上使用了符号人工智能和深度学习的务实混合,并可能在可预见的未来继续这样做。但是像辛顿这样的人一次又一次地反对符号的任何作用。
像我这样的人支持融合深度学习和符号操作的“混合模型”,辛顿和他的追随者一次又一次地将符号踢到路边。为什么?没有人给出过令人信服的科学解释。相反,也许答案来自历史——阻碍这一领域发展的敌意。
事情并不总是这样。读到沃伦麦卡洛克(Warren Buffett)和沃尔特皮茨(Walter Pitts)在1943年写的一篇论文《神经活动中内在思想的逻辑演算》(A Logical Calculus of the Ideas in neural Activity)时,我仍会潸然泪下。这是冯诺依曼认为值得在他自己的计算机基础论文中引用的唯一一篇论文。他们的明确目标是创建“一种对(神经)网络进行严格符号处理的工具”,我仍然认为这是有价值的。冯·诺依曼晚年花了很多时间思考这个问题。他们不可能预料到很快出现的敌意。
到20世纪50年代末,出现了一个从未愈合的裂痕。人工智能的许多创始人,如麦卡锡、艾伦·纽厄尔和赫伯·西蒙,似乎很难给神经网络的先驱们任何关注,神经网络社区似乎已经分裂,有时它自己也得到一些惊人的宣传:1957年《纽约客》的一篇文章承诺,弗兰克·罗森布拉特的早期神经网络系统避开了符号,是一个“非凡的机器……[它]能够进行相当于思想的事情。”
认为我们可以简单地放弃符号操作就是对漠视怀疑他们的人的一个回应。
事情变得如此紧张和激烈,以至于《计算机进展》杂志刊登了一篇名为“神经网络争议的社会学历史”的文章,强调了早期在金钱、声望和压力方面的斗争。当时可能已经存在的任何创伤都在1969年被大大放大,当时明斯基和西蒙·派珀特发表了一类神经网络(称为感知机)的详细数学批判,这些神经网络是所有现代神经网络的祖先。他们证明了最简单的神经网络非常有限,并对更复杂的网络能够完成什么表示怀疑(现在看来过于悲观)。十多年来,对神经网络的热情冷却了;罗森布拉特(两年后死于一次航海事故)失去了部分研究经费。
当神经网络在20世纪80年代重新出现时,许多神经网络倡导者努力与符号操作的传统保持距离。这种方法的领导者明确表示,虽然有可能建立与符号操作兼容的神经网络,但他们不感兴趣。相反,他们真正感兴趣的是建立替代符号操作的模型。众所周知,他们认为儿童的过度规则化错误(如goed而不是went)可以用神经网络来解释,这与经典的符号操作规则系统非常不同。(我的论文提出了不同的观点。)
当我在1986年进入大学时,神经网络有了第一次重大的复兴;辛顿帮忙收集的两卷本集子在几周内就销售一空。《纽约时报》在其科学版的头版报道了神经网络(“比以往任何时候都更像人类,计算机正在学习学习”),计算神经科学家Terry Sejnowski在《今日秀》中解释了它们是如何工作的。深度学习当时还没那么深入,但它又开始行动了。
1990年,Hinton在《人工智能》杂志上发表了一期特刊,名为Connectionist Symbol Processing,明确旨在弥合深度学习和符号操作这两个世界。例如,它包括大卫·图尔茨基的BoltzCons体系结构,这是一个创建“动态创立和操纵复合符号结构的连接主义(神经网络)模型”的直接尝试。我一直觉得辛顿当时想做的事情绝对是正确的,我希望他能坚持这个项目。当时,我也在推动混合模型,尽管是从心理学的角度来看。(Ron Sun和其他人也在计算机科学界内部大力推动,但从未得到我认为他应得的关注。)
然而,出于我一直无法完全理解的原因,辛顿最终对和解的前景感到失望。当我私下问他时,他拒绝了我寻求解释的诸多努力,并且从来没有(据我所知)对此提出任何详细的论点。一些人怀疑这是因为辛顿本人在随后的几年里经常被解雇,特别是在21世纪初,当时深度学习再次失去了人气;另一种猜想是,他被深度学习的成功迷住了。
当深度学习在2012年重新出现时,它带有一种不放过任何囚犯的态度,这是过去十年大部分时间的特征。到2015年,他对一切符号的敌意完全具体化了。他在斯坦福大学的一个人工智能研讨会上做了一个演讲,将符号比作以太,说是科学最大的错误之一。当我,一个研讨会上的发言人,在喝咖啡休息时走到他面前想得到一些澄清,因为他的最终提案看起来像是一个称为堆栈的符号系统的神经网络实现(这将是对他想要消除的符号的无意确认),他拒绝回答并让我走开。
从那以后,他的反象征运动愈演愈烈。2016年,Yann LeCun、Bengio和Hinton在科学最重要的期刊之一《自然》上发表了一篇关于深度学习的宣言。文章最后直接攻击了符号操作,呼吁不要和解,而是要彻底取代。后来,辛顿在欧盟领导人的一次聚会上说,在符号操作方法上投入更多资金是“一个巨大的错误”,将其比作电动汽车时代对内燃机的投资。
贬低尚未被充分探索的不流行的想法不是正确的做法。辛顿说得很对,在过去,人工智能研究人员试图——急于——埋葬深度学习。但是辛顿今天对符号操作正在做同样的事情,自然也是错误的。在我看来,他的敌意既破坏了他的遗产,也损害了这个领域。在某些方面,辛顿反对人工智能中符号操作的运动取得了巨大的成功;几乎所有的研究投资都朝着深度学习的方向发展。他变得富有,他和他的学生分享了2019年图灵奖;辛顿的宝宝几乎得到了所有的关注。用艾米丽·本德的话来说,“对像GPT-3这样的模型的过度承诺会吸走所有其他种类研究的氧气。”
具有讽刺意味的是,辛顿是乔治·布尔的玄孙,布尔代数是象征性人工智能的最基本工具之一,也是以他的名字命名的。如果我们最终能把辛顿和他的高曾祖父这两个天才的想法融合在一起,人工智能可能最终有机会实现它的承诺。
至少有四个原因,混合人工智能,而不是单独的深度学习(也不是单独的符号),似乎是最好的前进方式:
世界上如此多的知识,从食谱到历史再到技术,目前主要还是以符号形式存在。试图在没有这些知识的情况下建设AGI,像纯深度学习的目标那样从零开始完全重新学习一切,似乎是一个过度和鲁莽的负担。
即使在算术这样有序的领域,深度学习本身也在继续挣扎。混合系统可能比任何一个单独的系统都更强大。
在计算的许多基本方面,符号仍然远远超过当前的神经网络。他们能够更好地在复杂的场景中推理,能够更系统、更可靠地进行算术等基本运算,能够更精确地表达部分和整体之间的关系(这对解释三维世界和理解人类语言都是必不可少的)。它们在表示和查询大规模数据库的能力方面更加健壮和灵活。符号也更有利于形式验证技术,形式验证技术对于安全性的某些方面至关重要,并且在现代微处理器的设计中无处不在。放弃这些优点而不是将它们利用到某种混合架构中是没有意义的。
深度学习系统是黑匣子;我们可以看到它们的输入和输出,但是我们很难看到内部。我们不知道他们为什么做出这样的决定,如果他们得出错误的答案,我们也不知道该怎么办(除了收集更多的数据)。这使得它们天生笨拙,难以解释,并且在许多方面不适合与人类一起进行“增强认知”。让我们能够将深度学习的学习能力与符号的明确、语义丰富性联系起来的混合体可能是变革性的。
因为通用人工智能将肩负如此重大的责任,它必须像不锈钢一样,更坚固、更可靠,而且就此而言,比它的任何组成部分都更容易使用。没有任何一种人工智能方法是足够的;如果我们要有任何希望的话,我们必须掌握把不同的方法结合在一起的艺术。(想象一个世界,在这个世界里,制铁者喊着“铁”,碳爱好者喊着“碳”,从来没有人想到要把这两者结合起来;这就是现代人工智能的历史。)
好消息是,我一生致力于鼓吹的,也是辛顿曾在1990年左右(虽然短暂)尝试过的神经与符号的象征性和解,从未完全消失,而且最终还在积聚势头。
阿图尔·加塞兹和路易斯·兰姆在2009年为混合模型写了一份宣言,名为《神经符号认知推理》。最近在棋盘游戏(围棋、国际象棋等等,主要由Alphabet的DeepMind领导)中取得的一些最著名的成功是混合型的。AlphaGo将符号树搜索与深度学习结合使用,符号树搜索是20世纪50年代后期的一个想法(并在20世纪90年代通过更丰富的统计基础得到加强);经典的树搜索本身不足以用于围棋,深度学习也是如此。DeepMind的AlphaFold2是一个从核苷酸预测蛋白质结构的系统,也是一个混合模型,它将一些精心构建的表示分子三维物理结构的符号方式与深度学习的强大数据搜索能力结合在一起。
像乔希·特南鲍姆、阿尼玛·阿南德·库马尔和叶筋·崔这样的研究人员现在也朝着越来越多的神经符号学方向发展。IBM、英特尔、谷歌、脸书和微软等公司的大批员工已经开始认真投资神经符号方法。Swarat Chaudhuri和他的同事们正在开发一个名为“神经符号编程”的领域,这个领域对我来说就像音乐一样美妙。
40年来第一次,我终于对人工智能感到一些乐观。正如认知科学家Chaz Firestone和Brian Scholl雄辩地指出的。“没有唯一的思维方式,因为思维不是一个东西。相反,大脑是有部分的,大脑的不同部分以不同的方式运作: 看到一种颜色与计划度假不同,与理解一个句子、移动肢体、记住一个事实或感受一种情绪不同。” 试图把所有的认知都塞进一个圆孔里是行不通的。随着对混合方法的逐渐开放,我想我们终于有机会了。
面对伦理和计算方面的所有挑战,以及语言学、心理学、人类学和神经科学等领域所需的知识,而不仅仅是数学和计算机科学,将需要整个村子一起提高人工智能。我们永远不要忘记,人脑也许是已知宇宙中最复杂的系统;如果我们要建造一个与之大致相当的东西,坦诚的合作将是关键。
借助搜狗MT编译自:
Deep Learning Is Hitting a Wall (by Gary Marcus, March 10, 2022)
Gary Marcus 是一位AI科学家、畅销书作家和企业家。他是 Uber 于 2016 年收购的机器学习公司 Geometric Intelligence 的创始人兼首席执行官,并且是 Robust AI 的创始人兼执行主席。
very sharp, well articulated, and still largely true today!
【相关】
预告:李维《巴别塔影:符号自然语言处理之旅》(人民邮电出版社 2022)