【翻译】苦涩的教训
里奇·萨顿
2019 年 3 月 13 日
从 70 年的人工智能(AI)研究中能得到的最大教训是,利用计算的通用方法最终是最有效的,而且优势明显。其根本原因在于摩尔定律,或者更确切地说,是每单位计算成本持续呈指数级下降这一广义现象。大多数人工智能研究进行时似乎都假定智能体可利用的计算资源是恒定的(在这种情况下,利用人类知识将是提高性能的唯一途径之一),但是,比一个典型研究项目稍长一点的时间之后,必然会有大量更多的计算资源可供使用。为寻求短期内能产生效果的改进,研究人员试图利用他们对该领域的人类知识,但从长远来看,唯一重要的是对计算的利用。这两者不一定相互抵触,但在实践中往往是相互对立的。花在一方的时间就意味着没有花在另一方的时间。人们在心理上倾向于对一种或另一种方法进行投入。而且,基于人类知识的方法往往会使方法复杂化,从而使其不太适合利用基于计算的通用方法。人工智能研究人员有许多很晚才吸取这一苦涩教训的例子,回顾一些最突出的例子是有启发性的。
在计算机国际象棋领域,1997 年击败世界冠军卡斯帕罗夫的方法是基于大规模深度搜索的。当时,大多数致力于利用人类对国际象棋特殊结构理解的计算机国际象棋研究人员对这种方法感到沮丧。当一种更简单、基于搜索且配有特殊硬件和软件的方法被证明更为有效时,这些基于人类知识研究国际象棋的人员却输不起。他们说“暴力”搜索也许这次赢了,但这不是一种通用策略,而且不管怎样这不是人类下棋的方式。这些研究人员希望基于人类输入的方法获胜,当它们没有获胜时就感到失望。
在计算机围棋领域也出现了类似的研究进展模式,只是又延迟了 20 年。最初人们投入巨大精力通过利用人类知识或游戏的特殊特征来避免搜索,但一旦大规模有效应用搜索,所有这些努力都被证明是无关紧要的,甚至更糟。同样重要的是通过自我对弈来学习价值函数(就像在许多其他游戏甚至国际象棋中一样,尽管在 1997 年首次击败世界冠军的程序中学习并没有起到很大作用)。自我对弈学习以及一般意义上的学习,与搜索类似,都能使大量计算发挥作用。搜索和学习是人工智能研究中利用大量计算的两类最重要的技术。在计算机围棋领域,就像在计算机国际象棋领域一样,研究人员最初的努力方向是利用人类的理解(这样就可以减少搜索量),而很久之后才通过接受搜索和学习取得了更大的成功。
在语音识别方面,20 世纪 70 年代有一场由美国国防部高级研究计划局(DARPA)赞助的早期竞赛。参赛者包括许多利用人类知识(关于单词、音素、人类声道等的知识)的特殊方法。另一方则是更新颖、本质上更具统计性且基于隐马尔可夫模型(HMMs)进行更多计算的方法。同样,统计方法胜过了基于人类知识的方法。这导致整个自然语言处理领域在几十年间逐渐发生了重大变革,统计和计算开始主导这个领域。深度学习在语音识别中的近期兴起是这个一贯方向上的最新一步。深度学习方法更少依赖人类知识,使用更多计算,并在庞大的训练集上进行学习,从而产生了效果显著更好的语音识别系统。就像在游戏中一样,研究人员总是试图构建按照他们自己认为大脑工作方式运行的系统——他们试图把这种知识融入他们的系统——但当通过摩尔定律有了大量计算资源可用并且找到了有效利用这些资源的方法时,这种做法最终被证明是适得其反的,并且是对研究人员时间的巨大浪费。
在计算机视觉领域也有类似的模式。早期的方法将视觉构想为搜索边缘、广义圆柱体或者基于尺度不变特征变换(SIFT)特征。但如今这一切都被摒弃了。现代深度学习神经网络仅使用卷积概念和某些不变性概念,并且性能要好得多。
这是一个重大的教训。作为一个领域,我们仍然没有彻底吸取这个教训,因为我们还在继续犯同样的错误。要认识到这一点并有效抵制这种情况,我们必须理解这些错误的吸引力所在。我们必须吸取这个苦涩的教训:从长远来看,植入我们自认为的思维方式是行不通的。这个苦涩的教训基于以下历史观察:1)人工智能研究人员经常试图将知识构建到他们的智能体中;2)这在短期内总是有帮助的,而且对研究人员个人来说是令人满意的;3)但从长远来看,这种做法会达到瓶颈,甚至会阻碍进一步发展;4)最终突破性的进展是通过基于搜索和学习扩展计算的相反方法实现的。最终的成功带着苦涩的意味,而且往往不能被完全理解,因为这是对一种受青睐的、以人类为中心的方法的胜利。
从这个苦涩的教训中应该学到的一点是通用方法的强大力量,这些方法在可用计算资源变得非常庞大时仍能随着计算量的增加而不断扩展。似乎能以这种方式任意扩展的两种方法是搜索和学习。
从这个苦涩的教训中应该学到的第二个一般性观点是,思维的实际内容极其复杂且无法简化;我们应该停止试图寻找思考思维内容的简单方法,比如思考空间、物体、多个智能体或对称性的简单方法。所有这些都是任意的、本质上复杂的外部世界的一部分。它们不应该被植入(到智能体中),因为它们的复杂性是无穷无尽的;相反,我们应该植入能够发现和捕捉这种任意复杂性的元方法。这些方法的关键在于它们能够找到良好的近似值,但对近似值的搜索应该由我们的方法来进行,而不是由我们(直接)进行。我们想要的人工智能智能体是能够像我们一样发现(知识)的智能体,而不是包含我们已经发现的知识的智能体。植入我们的发现只会让我们更难看清发现过程是如何进行的。
原文转载如下:
The Bitter Lesson
Rich Sutton
March 13, 2019
The biggest lesson that can be read from 70 years of AI research is that general methods that leverage computation are ultimately the most effective, and by a large margin. The ultimate reason for this is Moore’s law, or rather its generalization of continued exponentially falling cost per unit of computation. Most AI research has been conducted as if the computation available to the agent were constant (in which case leveraging human knowledge would be one of the only ways to improve performance) but, over a slightly longer time than a typical research project, massively more computation inevitably becomes available. Seeking an improvement that makes a difference in the shorter term, researchers seek to leverage their human knowledge of the domain, but the only thing that matters in the long run is the leveraging of computation. These two need not run counter to each other, but in practice they tend to. Time spent on one is time not spent on the other. There are psychological commitments to investment in one approach or the other. And the human-knowledge approach tends to complicate methods in ways that make them less suited to taking advantage of general methods leveraging computation. There were many examples of AI researchers’ belated learning of this bitter lesson, and it is instructive to review some of the most prominent.
In computer chess, the methods that defeated the world champion, Kasparov, in 1997, were based on massive, deep search. At the time, this was looked upon with dismay by the majority of computer-chess researchers who had pursued methods that leveraged human understanding of the special structure of chess. When a simpler, search-based approach with special hardware and software proved vastly more effective, these human-knowledge-based chess researchers were not good losers. They said that ``brute force” search may have won this time, but it was not a general strategy, and anyway it was not how people played chess. These researchers wanted methods based on human input to win and were disappointed when they did not.
A similar pattern of research progress was seen in computer Go, only delayed by a further 20 years. Enormous initial efforts went into avoiding search by taking advantage of human knowledge, or of the special features of the game, but all those efforts proved irrelevant, or worse, once search was applied effectively at scale. Also important was the use of learning by self play to learn a value function (as it was in many other games and even in chess, although learning did not play a big role in the 1997 program that first beat a world champion). Learning by self play, and learning in general, is like search in that it enables massive computation to be brought to bear. Search and learning are the two most important classes of techniques for utilizing massive amounts of computation in AI research. In computer Go, as in computer chess, researchers’ initial effort was directed towards utilizing human understanding (so that less search was needed) and only much later was much greater success had by embracing search and learning.
In speech recognition, there was an early competition, sponsored by DARPA, in the 1970s. Entrants included a host of special methods that took advantage of human knowledge—knowledge of words, of phonemes, of the human vocal tract, etc. On the other side were newer methods that were more statistical in nature and did much more computation, based on hidden Markov models (HMMs). Again, the statistical methods won out over the human-knowledge-based methods. This led to a major change in all of natural language processing, gradually over decades, where statistics and computation came to dominate the field. The recent rise of deep learning in speech recognition is the most recent step in this consistent direction. Deep learning methods rely even less on human knowledge, and use even more computation, together with learning on huge training sets, to produce dramatically better speech recognition systems. As in the games, researchers always tried to make systems that worked the way the researchers thought their own minds worked—they tried to put that knowledge in their systems—but it proved ultimately counterproductive, and a colossal waste of researcher’s time, when, through Moore’s law, massive computation became available and a means was found to put it to good use.
In computer vision, there has been a similar pattern. Early methods conceived of vision as searching for edges, or generalized cylinders, or in terms of SIFT features. But today all this is discarded. Modern deep-learning neural networks use only the notions of convolution and certain kinds of invariances, and perform much better.
This is a big lesson. As a field, we still have not thoroughly learned it, as we are continuing to make the same kind of mistakes. To see this, and to effectively resist it, we have to understand the appeal of these mistakes. We have to learn the bitter lesson that building in how we think we think does not work in the long run. The bitter lesson is based on the historical observations that 1) AI researchers have often tried to build knowledge into their agents, 2) this always helps in the short term, and is personally satisfying to the researcher, but 3) in the long run it plateaus and even inhibits further progress, and 4) breakthrough progress eventually arrives by an opposing approach based on scaling computation by search and learning. The eventual success is tinged with bitterness, and often incompletely digested, because it is success over a favored, human-centric approach.
One thing that should be learned from the bitter lesson is the great power of general purpose methods, of methods that continue to scale with increased computation even as the available computation becomes very great. The two methods that seem to scale arbitrarily in this way are search and learning.
The second general point to be learned from the bitter lesson is that the actual contents of minds are tremendously, irredeemably complex; we should stop trying to find simple ways to think about the contents of minds, such as simple ways to think about space, objects, multiple agents, or symmetries. All these are part of the arbitrary, intrinsically-complex, outside world. They are not what should be built in, as their complexity is endless; instead we should build in only the meta-methods that can find and capture this arbitrary complexity. Essential to these methods is that they can find good approximations, but the search for them should be by our methods, not by us. We want AI agents that can discover like we can, not which contain what we have discovered. Building in our discoveries only makes it harder to see how the discovering process can be done.