AI发展的理想路线是什么?学者们为了这个争起来了
雷锋网 AI 科技评论按:近几年来,随着深度学习的学术研究和工业应用都越发火热,大多数研究者们开始形成一个共识,那就是「未来的通用人工智能(AGI)一定不会是多层神经网络」。逻辑推理、高层次概念抽象、小样本多任务学习等等重要的智慧组成部分在多层神经网络上都欠奉,整个领域逐渐形成这样的认知就理所当然了。
但近几天的一篇文章揭示了另一个真正有争议的问题:关于 AI 研究的方法论,是要「设计会学习的、能利用大规模计算能力的方法(元算法),即便我们现在的计算能力还不足以支持这样的方法,但我们静等算力发展就好」,还是「想办法把人类的知识直接做成模型的一部分,这才是原理化、结构化的做法」。这个问题形成了不小的讨论,许多知名学者都发表了自己的意见。
强化学习开路人首先发难
Richard Sutton 是强化学习领域的开拓者,有「强化学习之父」之称。Richard Sutton 是如今鼎鼎大名的 DeepMind 研究科学家、AlphaGo 主程序员 David Silver 的老师,他本人如今也在 DeepMind 工作。
3 月 13 日,Richard Sutton 在自己的个人主页 incompleteideas.net 发表了一篇博客,名为 「The Bitter Lesson」(苦涩的教训)。 我们把全文编译如下。
AI 研究这七十年的发展中,我们学到的最有用的一课是,能够充分利用计算能力的通用方法最终往往是效果最好的,而且要比其他方法的表现高出一大截。这个结论背后最重要的原因是由于摩尔定律,或者说,摩登定律的实际影响是让每单位计算能力的价格指数级地降低。大多数 AI 研究进行的时候都默认了智能体可以使用的资源是固定的(在这种情况下,能继续提高智能体表现的方法并不多,借助人类的知识就是其中一种);但是,只需要不长的时间,比如只比一个一般的研究进行的时间再长一点,我们就一定会有更多的计算资源可以拿来用。研究人员们总是想要找到能在短期内带来提升的方法,所以他们的成果往往是想办法把他们已经掌握的人类知识利用起来;但是长期来看,真正重要的事情是利用更多的计算能力。这两种路线其实并不是对立的,但是在实践中大家往往只做其中一个,就好像在心里做出了承诺必须要一条路走到黑一样。选择了利用人类知识这条路的研究人员们就免不了会让方法变得复杂,更复杂的方法也就更不容易像通用方法那样使用更多的计算资源。有很多 AI 研究人员都是做了很久研究之后才学到这个教训。下面我给大家讲几个比较重大的例子,希望大家看过之后都能有些收获。
在用计算机下国际象棋的尝试中,1997 年击败人类国际象棋冠军卡斯帕洛夫的方法,就是基于大规模深度搜索的。当时大多数计算机下棋的研究人员选择的方法都尝试运用人类对棋盘上特殊结构的理解,所以当他们看到大规模深度搜索的方法首先击败了人类的时候,他们都不免有些惊愕和沮丧。不过他们也并没有立即就认输,面对着依靠专门的软硬件+简单的搜索就能得到高超表现的方法,他们声称「暴力搜索」也许这次胜利了,但这并不是一种通用的策略,而且人类也不是这样下棋的。他们希望某个基于人类知识的系统可以突然出现并胜出,但遗憾的是这样的事情并没有发生。
计算机下围棋的研究里也出现过类似的故事,只不过时间上要迟 20 年左右。研究人员们起初投入了大量的时间精力研究如何利用人类的知识,或者是利用棋局中的特殊特征,以避免使用暴力搜索。显然最终他们的努力仍然白费了,而且这次还要更糟糕一点,一旦基于搜索的方法开始大规模、高效地使用起来,那些方法就再也没有追上的机会。同等重要的是一种新方法开始得到使用:通过自我对弈的过程,学习价值函数(很多其它的游戏/比赛中也有这样的做法,只不过在 1997 年的那个国际象棋程序里没有很多运用)。「自我对弈学习」,以及「学习」这件事总地来说,其实就像是一种搜索,它能让大规模计算能力更好地发挥作用。在 AI 研究中,搜索和学习是能够利用大规模计算能力的最重要的两类技术。下围棋的研究就和下象棋的研究一样,大家一开始都是直接尝试如何运用人类的理解(这样就不需要那么多搜索),然后直到后来他们开始拥抱搜索和学习的时候才获得了巨大的成功。
在语音识别领域,早在 1970 年代就有 DARPA 赞助的语音识别竞赛。当时参加比赛的很多都是利用人类知识的方法——单词知识、音节、人声的频率特征,等等;同时也有新一些的方法,它们在本质上更像统计学的方法,而且也需要更多的计算,基于的理论是隐马尔可夫模型(HMMs)。再一次,基于统计的方法胜过了基于人类知识的方法。在这之后的几十年中,自然语言处理领域逐渐发生了巨大的变化,基于统计学和计算的方法逐渐占据了主导地位。近几年出现的用于语音识别的深度学习方法更是这个方向上的坚定一步。深度学习对人类知识的依赖更小、使用的计算能力更多,再加上是在非常大的训练数据集上学习的,最终得到的语音识别系统的表现也有了大跨度的飞跃。在游戏中也是一样,研究人员们总是先尝试理解自己的思考方式,然后据此设计系统。他们很努力地尝试把自己的知识融入到系统中,但是最终结果表明这样的做法并没有什么好处,也浪费了研究者自己的大量时间精力;而同时,通过摩尔定律,大规模计算能力变得触手可及,我们也有了新的方式让这些计算能力派上用场。
计算机视觉领域也有类似的模式。早期的方法认为视觉任务是寻找边缘,或者是泛化的圆柱体,或者是一些 SIFT 特征。如今这些方法都扔进垃圾堆了。现代深度学习神经网络只需要一个卷积的概念和某几种变种,然后就可以获得好得多的表现。
这是一个很大的教训。但是作为一个领域,我们还没能完全吸取这个教训,因为我们还在持续地犯相同的错误。为了能看清这点,以及有效地避免这种错误,我们要能够理解这些错误的诱人之处。我们必须要学到这个苦涩的教训,那就是我们对自己的思考方式的了解,长期看来是行不通的。对于过往历史的观察已经表明了:
-
AI 研究人员总是会尝试把知识构建到他们的智能体中;
-
短期总是可以看到回报的,这对研究者当事人来说是好的;
-
长期看来这会延缓甚至阻止更大的进步产生;
-
真正的突破性进展最终来自完全相反的方向,那就是基于大规模计算能力的搜索和学习。
虽然最终取得了成功,但这条路上布满了苦涩,而且成功的果实也无法完全消化,因为成功毕竟并不来源于人们更喜欢的、更以人为中心的途径。
在这个苦涩的教训中我们应该学到一件事,那就是通用目标方法含有巨大的力量,随着可用的计算能力变多,这些方法的表现可以变得越来越好。搜索和学习这两种方法的表现随着计算能力增加而变好的程度简直是没有上限的。
还有一件事需要我们学到,那就是人类思维的真正内容是极其复杂、无法描述的。我们需要停止尝试寻找更简单的方法理解我们自己的思维,比如用简单的方法理解空间、物体、多智能体、对称性,等等。所有这些都是无穷多样的、本征复杂的外部环境的一部分。我们没办法尝试把这些元素构建成为系统的一部分,因为它们的复杂性本来就是无穷高的。相反地,我们应该做的是,构建那些可以自己寻找并捕捉这种任意复杂性的元方法。这些方法的关键点是它们能够找到好的近似,但是寻找近似的过程也是这些方法自己执行,而不是我们(通过增加人类知识的方法)替他们完成。我们希望智能体可以像我们一样探索发现,而不是直接包括我们已经探索发现好的。把我们已知的东西放在里面,只会更难看到真正的探索发现过程是如何发生的。
AI 研究学者们反应不一
Richard Sutton 的文章发表后在 Twitter 上的 AI 学者圈子里引发了热烈的讨论,赞同和反对的声音都有很多。
赞同的包括
谷歌大脑研究员 David Ha 转推评论:(Sutton「苦涩的教训」文章)这就像扩大简单的随机搜索的规模就可以避免使用集成了领域知识的难搞的强化学习算法。(雷锋网 (公众号:雷锋网) AI 科技评论注:David Ha 近期就在关注一些简单的随机搜索获得比强化学习更好表现的论文)。我得到的收获是,往往是那些可以拓展规模的方法才能够经受时间考验。能够拓展的系统具有简单、优雅的设计,也便于理解。设计这样的系统也需要更高的人类智慧。如果研究 AI 的人有时候可以思考得不那么像科学家或者工程师,而是更像设计师或者艺术家的话,他们可能会有新的收获。AI 研究有时候更像艺术而不是科学(也有人说像「炼丹」)。
OpenAI CTO Greg Brockman 转发评论:Sutton 的这篇文章观察了历史上反复发生的事情,发现 AI 计算规模的增加总是可以击败那些自以为精妙的设计(而且他也解释了为什么这个事实很难让人接受)
特斯拉 AI 总监 Andrej Karpathy :推荐阅读 Sutton 的这篇关于算法中的领域知识能否持久的文章。实际上如果你翻翻老的 AI 杂志也能很明显地看到这点。
反对的声音有
牛津大学计算机科学学院教授 Shimon Whiteson 发表长推特:
Richard Sutton 发表了一篇新博客「苦涩的教训」,我表示强烈反对。他在文中说道,AI 领域的历史告诉我们,对计算能力的应用最后总是能够胜过对人类知识的应用。我觉得这是对历史的故意曲解。
确实有很多尝试把人类知识集成到 AI 中的尝试最终失败了,但同时随着计算力(以及钱、存储空间、能源、数据)变得越来越充裕,很多其它的方法也被抛弃了。然而,如今我们得到的成功的方法仅仅归功于有充足的资源是不对的,其中还有很多我们保留下来的人类知识。要是没有卷积、LSTM、ReLU、批归一化等等人类开发出的技术,我们还怎么做深度学习?即便是围棋,也需要有“这是一个静态、零和、完全可观察博弈”的先验知识。
所以 AI 的历史并不是一部集成人类知识的失败史,恰恰相反,如今 AI 的成功正是因为留下了有用的人类知识,而且这个过程也是完全正常的科研策略体现:我们尝试了各种各样的东西,我们丢弃了其中不成功的 99%;但正是最后剩下的那 1% 对现代 AI 来说无比关键,我们能充分利用大规模计算能力也正是依靠它们。
Sutton 说,因为世界是本征复杂的,所以我们不应该尝试在系统里集成先验知识。但我得出的是相反的结论,对于 Sutton 提出的我们所依赖的搜索和学习方法来说,如此高的复杂性是难以处理的,只有通过适当的先验知识、正确的归纳偏倚,我们才能更好地对付这样的复杂性。
他还说「现代深度学习神经网络只需要一个卷积的概念和某几种变种,然后就可以获得好得多的表现」。他句子里的「只需要」就已经表明了他这句话说得有多么不负责任。没有这些卷积和变体的深度学习确实无法成功,但这些已经是最基础的东西,也足够通用了。这样说起来,他的文章讨论的「要不要集成人类知识」(因为显然大家的答案是要),但其实他避开了那个真正的问题,那就是「什么样的知识是值得集成的,我们要在何时、如何运用它」。
Sutton 说,「我们希望智能体可以像我们一样探索发现,而不是直接包括我们已经探索发现好的」。这话没错,但我们人类擅长探索发现的原因正是因为我们生来就有适当的归纳偏倚。回看 AI 历史,我觉得我们获得的是「甜蜜的教训」,虽然找到正确的归纳偏倚很难,但是这种做法让我们有能力处理其他方法束手无策的问题。
也有中立的发声
康奈尔大学博士、MIT 博士后、机器学习量化分析师 Seth Stafford 转推评论 Shimon Whiteson 的长推特:Richard Sutton 和 Shimon Whiteson 观点的区别是,把人类的知识集成到模型里所增加的价值是否符合我们希望的「原则性」的方法。Sutton 的苦涩的教训是,针对单个任务的技巧是不行的;但 Whiteson 认为更深入的(原则性更强的)方法是可以的。
高通 AI 研究院 深度学习研究员 Taco Cohen 转推评论:大家仔细看看这个。不要再浪费时间考虑那些领域专用的技巧了。好好做一做平滑度、关系模型、成分性、等方差不等方差、局部性、稳定性、层次性、因果性等等抽象和通用的归纳偏倚。仔细考虑考虑如今的 AI 里到底缺的是什么。
巧合的是,我们的往期文章「 AI领域的蝙蝠侠大战超人:LeCun与Manning如何看待神经网络中的结构设计 」中,Yann LeCun 与 Christopher Manning 也对类似的问题进行过讨论,感兴趣的读者可以看看他们的观点。
对于这种领域发展趋势的观察以及各方的言论,你的看法如何呢?欢迎留言与我们讨论。
雷锋网 AI 科技评论报道
。