「我是可微分编程的粉丝」,Gary Marcus再回应深度学习批判言论

百家 作者:机器之心 2018-01-15 06:06:51

选自Medium

作者:Gary Marcus

机器之心编译


近日,Gary Marcus 针对各研究者与开发者的评论作出了回应,他从什么是通用人工智能开始回应了常见的 14 个质疑或问题,其中就包括 LeCun 所说的「mostly wrong」。此外,Marcus 还重申了他对深度学习的观点,并继续补充了一些他在上一篇文章所没提到的局限性。


所有真理必经过三个阶段:第一,被嘲笑;第二,被激烈反对;第三,被不证自明地接受。——叔本华(德国哲学家,1788-1860)


在上篇文章中(参见:打响新年第一炮,Gary Marcus 提出对深度学习的系统性批判),我列出了深度学习的十大挑战,并认为深度学习本身尽管很有用,但不太可能独自实现通用人工智能。我认为深度学习「并非一种通用的解决方案,而只是众多工具之一」。


取代纯粹深度学习的将是混合模型,它不仅具有深度学习的监督形式,还包含其他技术,比如符号处理(symbol-manipulation)和无监督学习(也可能会被重新概念化)。我同样敦促社区将更多的先验结构(innate structure)纳入 AI 系统。


文章一推出,引来数千人在 Twitter 上讨论,有些人非常认同(比如「这是很多年来我读过的最好的深度学习与 AI 文章」),有些人反对(「很有想法… 但大部分是错的」)。


我认为清晰地认识这些问题很重要,因此我编辑了一个包含 14 个常见问题的清单:无监督学习的用武之地在哪儿?为什么我没有描述有关深度学习的更美好事情?是什么给了我权利首先讨论这一事情?让神经网络实现从偶数到奇数的泛化有何意义?(这是最重要的问题)以及更多其他问题。我没有涉及所有问题,但是我尽量做到有代表性。


1. 什么是通用智能?


机器学习著名教授 Thomas Dietterich,我目前最彻底而明确的反对者,给出了一个让我非常满意的回答:


「通用智能」是一个系统,可在一系列的目标和环境中智能地执行动作。可参见 Russell 与 Norvig 的教科书《人工智能:一种现代方法》,其中把智能定义为「理性地行动」。


2. Marcus 不喜欢深度学习。他应该多说些深度学习的大量应用所取得的实际成果。


上面提及的 Thomas Dietterich 教授写到:Gary Marcus 的文章令人失望。他很少述及深度学习的成就(比如自然语言翻译),并小看了其他成果(比如包含 1000 个类别的 ImageNet 是小型的/「非常有限」)。


对于第一点,我当然可以说出更多成果,但是却没有,就像我忘记提及 Dietterich 的最佳实例;不过我在《Deep Learning: A Critical Appraisal》第一页就提到:


深度学习取得了大量的当前最佳结果,比如在语音识别、图像识别和语言翻译领域,并在当前广泛的 AI 应用中发挥着重要作用。


稍后我将在文中引用若干个很不错的文本和博文,其中包含大量的实例。但是其中大多数不能被称为 AGI,这是我的论文主旨。(比如,谷歌翻译非常赞,但不通用,它无法像人一样回答关于其翻译内容的问题。)


第二点更加真实。1000 个分类真的很有限吗?是的,如果与认知的灵活性相比的话。认知科学家通常认为个体所知道的概念数量是 50000 个,并且人类可以轻易地把这些概念组合成数量更多的复杂想法。宠物(pet)和鱼(fish)很可能在这 50000 个概念之中;而一个不同的概念宠物鱼(pet fish)很可能不在。并且我可以轻易地接受「a pet fish that is suffering from Ick」这个概念,或者注意到「it is always disappointing to buy a pet fish only to discover that it was infected with Ick」(我小时候得过 Ick 这种病,至今依然很排斥)。我可以表达多少像这样的想法?明显超过 1000。


我并不确切知道人类可识别多少视觉范畴,但我的猜测大体不差。试着谷歌一下有关「pet fish」的图像,没问题;然后再试下「pet fish wearing goggles」,你得到的大多是带着眼镜的狗,错误率超过 80%。


依我看,ImageNet 限定为 1000 个类别本身对机器学习就是一种危害,它取得了短期的成功,却避开了更难、更开放、必须最终解决的问题(比如场景和语句理解)。相较于本质上我们可以看到和理解的无限的语句、场景,1000 个类别实在是太少了(参见文末 Note 2)。


3. Marcus 说深度学习没有什么用,但它对很多任务都有实际意义


当然深度学习是有用的,我从没这样说过它没有用。只是说在目前监督学习的形式下,深度学习可能正接近它的极限;这些极限将阻碍我们通往通用人工智能的进程——除非我们开始结合符号运算和先天经验等。


我的核心观点是:尽管我提出了这么多问题,但我不认为我们需要放弃深度学习。相反,我们需要对其进行重新概念化:它不是一个普遍的解决办法,而仅仅只是众多工具中的一个。我们有电动螺丝刀,但我们还需要锤子、扳手和钳子,因此我们不能只提到钻头、电压表、逻辑探头和示波器。


4. Gary Marcus 说 DL 对于层级结构来说并不够好,但是 LeCun 表明深度学习非常擅长利用这种层级结构


这是 Ram Shankar 提出的非常机敏的问题,我应该更清楚地回答:我们能考虑的层级结构有很多种。对于层级特征,深度学习是非常好,也许是有史以来效果最好的。就像 LeCun 所说的那样能高效处理特征层面的层级结构,我们通常把它表示为层级的特征检测。这就像我们用点构建线、用线构建字、用字构建句子那样。Kurzweil 和 Hawkins 也着重强调这一点,且这种层级结构真的可以追溯到 Hubel 和 Wiesel(1959)的神经科学试验和 Fukushima 在 AI 上的观点(Fukushima, Miyake, & Ito, 1983)。Fukushima 在他的神经认知学模型中手动构建了许多抽象特征的层级表示,而 LeCun 和很多研究者表示我们不需要手动完成这件事,让机器执行就行了。


但是这种方式并不需要追踪所遇到的子成分,顶层系统不需要明确地编码整个输出的结构,这也是为什么深度学习系统会出现对抗样本的挑战。例如在典型的图像识别深度网络中,没有完全认知到校车由轮子、底盘、车窗等构成,因此它们会认为黄色和黑色的条纹就是校车((Nguyen, Yosinski, & Clune, 2014),且这种条纹的模型与校车的输出单元激活值密切相关。[Note 3]


我所讨论的层级结构是不同的,它围绕着可以被明确解释的整体和部分之间的关系而构建。经典的证明是乔姆斯基的层级观点,在一个有复杂语法单元组成的句子中,如使用新颖的短语「the man who mistook his hamburger for a hot dog with a larger sentence like The actress」代替「she would not be outdone by the man who mistook his hamburger for a hot dog」。


我不认为深度学习在理解上述的女演员、男人、和热狗之间的关系,尽管它会尝试着去理解。


即使在视觉上,问题也会存在,例如 Hinton 最近关于 Capsule 的研究(Sabour, Frosst, & Hinton, 2017),他们试图通过使用更多结构化的网络在编码方向上构建更鲁棒的图像识别模型。我认为这是一个很好的趋势,也是一个潜在能解决对抗样本问题的方法。


5. 在通用人工智能的环境下讨论深度学习是有问题的,因为深度学习的目标就不是通用人工智能!


这个问题最好的回答是魁北克教授 Daniel Lemire 所说的:「Oh! Come on! Hinton, Bengio… are openly going for a model of human intelligence」。


其实有很多学界领军人物都表明深度学习是很难找到它的极限的,它能面对超乎我们想象的困难。DeepMind 最近的 AlphaGo 论文 [见 Note 4] 有类似的定位,Silver 等人(Silver et al., 2017)表明:


「我们的研究结果全面地证明了,一个纯粹 [深度] 强化学习方法是完全可行的,即使在最具挑战的领域。」


总之而言,人们持续对人类水平和 AI 系统的性能进行基准测试,很大的原因就是因为 AGI 就是我们的目标。


6. Marcus 认为有问题的是监督学习,并非深度学习。


Yann LeCun 在我的 Facebook 主页中发表了以下评论:


我没有时间做出完整的回应,但总而言之:(1)我认为文章的大部分观点都有错误。如果文中所有「深度学习」的实例都被「监督学习」取代,那么错误就会大大减少。(2)寻找一种将深度学习的概念拓展到无监督学习和推理中的方法,正是过去 2.5 年来我一直倡导的。我不只是在倡导它,实际上我一直在努力...... 你对这件事很了解,但是你没在论文中写明。


上述评论中,所谓我不承认 LeCun 最近的工作这一部分有些奇怪。诚然,我没能找到一篇能在我文中引用的总结性文章(当我问 LeCun 时,他通过邮件告诉我还没有这样一个文章),但是我明确地提到了他的兴趣:


最近深度学习先驱 Geoffrey Hinton 和 Yann LeCun 都表明无监督学习是超越有监督、少数据深度学习的关键方法。


我同样在文中指明:我们要清楚,深度学习和无监督学习并不是逻辑对立的。深度学习主要用于带标注数据的有监督学习,但是也有一些方法可以在无监督环境下使用深度学习。


我的结论也是积极的。虽然我对目前建立无监督学习系统的方法表达了保留意见,但我最终的结语是乐观的:如果我们建立了能设定自身目标的系统,并在更抽象的层面上进行推理和解决问题,那么人工智能领域将会有重大的进展。


LeCun 的评论中正确的部分是,我提到的许多问题是监督学习中的普遍问题,而非深度学习所特有的问题。我本可以更清楚地阐明这一点。许多其他的监督学习技术面临类似的挑战,例如泛化以及对海量数据集的依赖;而在我所说的问题中,深度学习所特有的问题相对较少。


但是,其他监督学习技术同病相连,无法真正帮助深度学习。如果有人能提出一个真正令人钦佩的、以无监督的方式进行深度学习的方法,可能对深度学习需要重新进行评估。然而,我没有看到那种无监督学习,至少是目前所追求的。目前,它们都无法对于我提出的挑战(例如推理、层级表征、迁移、鲁棒性和可解释性)进行补救。现在看来,这只是一个金融期票而已。[Note 5]


正如波特兰州立大学和圣达菲研究所教授 Melanie Mitchell 迄今为止在一条无答复的 tweet 中提到的:……LeCun 说 Gary Marcus 文章是「大部分错误」,但是如果限制在监督学习,那么「错误大大减少」。我很愿意听到(现有的)无监督学习项目的例子,希望有这种例子能说明 Gary Marcus 的说法是错误的。


我也很愿意听到这样的消息。


同时,我认为没有原则性的理由能让人相信无监督学习可以解决我提出的问题,除非我们首先加入更加抽象、象征性的表述。


7. 深度学习不仅包括卷积网络(Marcus 所批评的那种),它「本质上是一种新的编程风格——『可微分编程』——而且该领域正试图用这种风格实现可重用构造。我们已有一些方向:卷积、池化、LSTM、GAN、VAE、记忆单元、路由单元等。」——Tom Dietterich


这似乎(在 Dietterich 的更长的一系列推文中)作为一种批评被提出。但我对此感到困惑,因为我是一个可微分编程的粉丝,而且我也是这么说的。也许关键在于,深度学习可以采取更广泛的方式。


无论在什么情况下,我都不会将深度学习和可微分编程(例如我所引用的、像神经图灵机和神经编程这样的方法)等同起来。深度学习是许多可微分系统的组成部分。但是这样的系统也完全插入了从符号处理技术中提取的重要元素,我也一直在敦促这个领域对此整合(Marcus,2001; Marcus,Marblestone,&Dean,2014a; Marcus,Marblestone,&Dean,2014b)。这其中包括记忆单元、变量操作以及其他系统(比如近两篇论文所强调的路由单元)。如果把这所有都融合到深度学习中能让我们得到通用人工智能,那么我下面的结论将会完全正确:对于扩展来说,大脑可能被视为由「一系列可重复使用的计算基元组成 - 基本单元的处理类似于微处理器中的一组基本指令。这种方式在可重新配置的集成电路中被称为现场可编程门阵列(FPGA)」,正如我在其它地方(Marcus,Marblestone,&Dean,2014)所论述的那样,逐步丰富我们的计算系统所建立的指令集会有很大的好处。


8. 现在 vs 未来。也许深度学习现在不起作用,但我们的子孙后代可能实现 AGI。


有可能。我认为深度学习在将我们导向 AGI 上可能扮演着重要的角色,如果首先添加一些关键的东西(许多还没有被发现)的话。


但是,补充哪些因素至关重要?这个未来的系统,应该称为深度学习本身,还是更为合理地称之为「使用深度学习的某某某」?这取决于深度学习在终极解决方案的哪个部分起作用。例如,也许在真正充分理解自然语言的系统中,操作符号的方法将扮演深度学习的同样重要的角色,或者更重要的角色。


当然,术语学是这个问题的一部分。最近一个好朋友问我,为什么我们不能将包括深度学习在内的任何东西都称为深度学习,即使它包含操作符号的方法?深度学习的优化处理应该很关键。对此我作出回应:为什么不把包含符号操作在内的任何东西都称为符号操作,即使它包含深度学习呢?


基于梯度的优化应该得到应有的效果,但符号处理也应该是这样。符号处理是系统地表示和实现高级抽象的唯一已知工具,它基本上覆盖了世界上所有复杂的计算机系统,包括电子表格、编程环境、操作系统等。


最后,我猜想,最后的成功也将归因于神经网络和符号处理之间的不可避免的联姻,混合系统将把这两个同样于 20 世纪 50 年代初发展起来的 20 世纪人工智能的伟大思想汇集在一起。其他尚未发明的新工具也可能至关重要。


对于一个深度学习的真正追随者而言,任何东西都是深度学习,无论它如何与其他技术融合,无论它与现有技术有多么不同。(帝国主义万岁!)如果你用一个神经元代替了经典的、符号性微处理器中的每一个晶体管,但是保持芯片的逻辑完全不变,一个真正的深度学习追随者仍然会宣告胜利。但是,如果我们把所有技术混在一起,我们就无法理解推动(最终)成功的关键法则。[Note 6] 


9. 没有机器可以推断。因此期望神经网络可以从偶数中生成奇数并不公平。


这里有一个以二进制位为表达式的函数。


f(110) = 011;

f(100) = 001;

f(010) = 010。


那么 f(111) 等于多少?


普通人或许会猜测 f(111) 等于 111。但如果你是上文讨论的那种神经网络,你的答案或许并非如此。


如果你曾数次听说过神经网络中的隐藏层可以「抽象化函数」,那么你应该对此感到惊讶。


如果你是人类,你可能认为该函数就是某种「逆转」,可以用一串计算机代码轻松表达。如果你是某种神经网络,那么学习以从偶数扩展到奇数的方式将这种逆转抽象化非常困难。不过是否有可能做到呢?如果你没有对整数的先验知识,则不可能。试试另一种情况,这次是十进制位:f(4) = 8;f(6) = 12,f(5) 等于多少?人类读者不会关心这个问题需要从偶数扩展到技术,而大量神经网络却会产生困惑。


当然,由于示例较少,该函数并不确定,但是大部分人会认为 f(5)=10,这一点非常有趣和重要。


同样有趣的是,大部分标准多层感知机(代表二进制位数字)给出的答案并非如此。这给了我们一些启示,但是神经网络社区的很多人对此不以为然,François Chollet 是一个例外。


重要的是,识别一个可以应用到所有整数的规则就相当于神经网络识别在一个语境中使用的新名词可以在大量其他语境中使用。我第一次听说 blicket 这个词表示物体时,猜测它可用于多种情况,如 I thought I saw a blicket、I had a close encounter with a blicket,以及 exceptionally large blickets frighten me 等等。我就可以生成和解释此类句子,而无需特殊的训练。blicket 是否与我听到的其他词语音相近并不重要。如果大部分机器学习系统处理该问题时遇到问题,那么我们理应认为大部分机器学习系统有问题。


那么我「公平」吗?公平,也不公平。我确实让神经网络做一些违反它们假设的事情。


神经网络拥护者或许会说「等一下,在你的『逆转』示例中,输入空间有三个维度,分别代表最左边的二进制位、中间的二进制位和最右边的二进制位。训练过程中最右边的二进制位只能是零,如果那个位置的数字是 1 的话,网络就不知道该怎么做了。」比如,康奈尔大学的一位博后 Vincent Lostenlan 说:「我不理解你在 3.11 中想证明什么。f 是输入空间中(n-1)维超立方体顶点的恒等函数。你为什么对 DNN,或者说任何 ML 模型感到震惊,而不是「泛化」至第 n 维?」


Dietterich 也持相同观点,只不过更为准确:「Marcus 抱怨深度学习无法推断,但是『没有』方法可以推断。」


但是尽管对于深度学习难以解决奇偶数的问题(本文语境下)二者都说得对,但是在更大的问题上,他们的观点都是错误的,理由有三:


一,人类可以推断。在上述两个示例中,人类都可以推断出正确答案。你打算相信谁,我还是你自己的眼睛?


对于在当代机器学习中浸淫已久的人来说,我的奇偶数问题似乎并不公平,因为训练过程中并没有说明特定的维度(限制最右的二进制位的值为 1)。但是当人类看到上述示例时,你不会被训练数据中的这一差距阻挠,你甚至不会注意到它,因为你的注意力处于更高级的规律。


人们通常用我刚才描述的方式进行推断,比如从上文给出的三个训练示例中识别出字符串逆转。从技术角度看,这是推断,而你恰好做到了。我在《The Algebraic Mind》中认为这种推断是在训练示例空间以外泛化全称量化一对一映射(universally quantified one-to-one mapping)。如果我们想要赶上人类学习,则找到该问题的解决方案非常重要,即使这意味着动摇原有的假设。


现在,很可能有人用这个理由认为这不公平:人类泛化此类映射时,明显依赖于先验知识。


确实如此。但是重点是:某种神经网络缺乏好的方式来整合合适的先验知识。准确地说是因为这些网络缺乏好的方式来整合先验知识,如「很多泛化适用于无界类别的所有元素」或「奇数除以 2,余数为 1」,神经网络缺乏对变量的运算时就会失败。合适的先验知识允许神经网络获取和表示全称量化一对一映射。标准的神经网络无法表示此类映射,除了使用有限的一些方式(比如卷积)。


二,当前没有任何系统(深度学习或其他)可以用我上文描述的方式进行推断,这样说并非没有理由。其他架构可能「处于险境」,但是这不意味着我们应该放弃游向岸边。如果我们想实现通用人工智能,就必须解决这个问题。


三,当前没有系统可进行推断的论断是错误的;已经存在很多 ML 系统至少能够推断出我描述的部分函数,你或许就拥有一个:Microsoft Excel,具体来说是它的快速填入(Flash Fill)函数(Gulwani, 2011)。支持它的方法与机器学习大相径庭,但是它可以进行某种推断,尽管是在比较狭窄的领域中。


它甚至可以用你所用的方式,即使在百位数的训练维度中没有正例。该系统从你想要的函数示例中学习,并进行推断。小菜一碟。深度学习系统可以用三个训练示例做到吗?即使有在其他小型计数函数上的大量经验。


也许吧,但这样做的唯一方法可能就只是变量运算的混合,这与大多数深度学习中典型的卷积神经网络所采用的方法是不同的。


为了把所有这一切都变得不同,一个粗略的方法就是考虑目前大多数机器学习系统所处的阶段是什么 [Note 7],即它们并不是考虑被设计为「outside the box」,它们被设计为在黑箱内完美的嵌入器。对于一些目标来说,这是没什么问题的,但并不是所有。人类比目前的 AI 更擅长于站在黑箱外思考,我不认为有人会反驳这一点。


但是没有机器能处理类似人那样广度的问题,如果机器学习工程师希望为 AGI 努力,那么他们真应该朝这个方向发展。


10. 你所论述的事实该领域中的每个人都已知道了,它并没有新意。


当然,并不是所有人都知道。正如前所述,很多评论者都表明我们还不知道深度学习的极限在哪,还有人认为极限会有一些,但是我们目前还没有发现。也就是说,我从来没有说过我的观点是全新的,我引用了很多学者的研究结果,他们都独立地得出了相似的观点。


11. Marcus 没有引用 XXX。


是的没错,文献引用是不完整的。我未引用的论文中最重要的是 Shanahan 的 Deep Symbolic Reinforcement(Garnelo,Arulkumaran & Shanahan,2016);我也漏掉了 Richardson 和 Domingos(2006)的 Markov Logic Networks。如果现在来看,我还希望引用 DeepMind 的 Evans 和 Edward Grefenstette 2017 年的一篇论文,以及 Smolensky 有关张量计算的文章(Smolensky 等人 2016)。以及多种形式归纳编程的研究(Gulwani 等人,2015),以及概率编程(Goodman、Mansinghka、Roy、Bonawitz & Tenenbaum,2012)。所有这些研究都努力在将网络与规则联系在一起。


此外还有 Jordan Pollack 等先驱者们的早先研究(Smolensky 等人,2016)。以及 Forbus 和 Gentner(Falkenhainer,Forbus & Gentner,1989)以及 Hofstadter 和 Mitchell 1994 年进行的类比工作,还有很多。还有很多文献是需要引用的。


总之,我试图找出其中具有代表性的研究,而非全面引用,但我承认还是应该做得更好……


12. Marcus 不是站在业内的角度思考问题的,他不是推动者,他只是一个批评者。


关于是否列出这个问题,我有些犹豫,但我看到有很多人都持有这种观点,其中甚至包括一些知名专家。正如 Ram Shankar 提到的,「作为一个社区,我们必须把批评限制在科学和价值的层面上。」真正重要的不是我的资历(事实上我认为自己有资格写这样的文章),而是论证的有效性。


要么我的论点是正确的,要么不是。


不过,对于那些希望了解我的背景的人,在本文附录中有一些可以参考的资料。


13. Re:层次结构,Socher 的 tree-RNN 如何呢?


我已写邮件向作者问询,希望进一步了解这项技术。我也在推动其他一些研究团队尝试 Lake 与 Baroni(2017)这类的研究。


Pengfei 等人(2017)也提出了一些有趣的讨论。


14. 你对深度学习的批判应该更强烈。


明面上还没有人这么说,但有一些类似的话已经出现了,大多是在私下里。


例如有些人就指出:深度学习可能会在未来预测上出现一些严重错误。


目前,对于深度学习成功的感觉正以指数级的速度快速发展……这就像鸟儿低空掠过树枝,看到大量果实,一旦飞过果树,进行深度推理的速度就会变慢了。此外,我不明白在识别猫正确率刚刚达到 95% 的今天,为什么人们对于通用人工智能、伦理、道德有这么多的思考。后一类的问题应该存在于更复杂的空间之上。


这位同事还补充说:[研究者们] 在宣布在某些领域取得胜利的速度过快了。比如图像处理:我们已经发现了一类计算机更加擅长解决的图像处理问题,确实如此,但同样这些算法仍然会被对抗攻击迷惑。此外,当它们出错时,错误往往非常离谱。与之相对的,当我在街道上驾驶汽车时,我可能会把一棵树误认为是路灯柱,但我不会有那些深度学习网络犯的那些奇怪错误(这是因为我对含义和背景信息有深入的理解)。人们确实通常知道这些局限性,但 ImageNet 的结果给人们带来了一个基本观点:计算机比人类更擅长图像识别。


另一位同事、机器学习研究者和作者 Pedro Domingos 指出了一些我没有提到的当前深度学习方法的其它短板:


和其它灵活的监督学习方法类似,深度学习系统可能不稳定——训练数据的少许改变可能会导致所得模型发生巨大变化。


即使更少量的数据就足够了,但它们还是需要大量数据。(数据增强的成本非常高,而在人类看来,这应该不是必需的。)


它们可能很脆弱:数据上的微小变化可能会导致灾难性的失败(比如将数字数据集中的黑白像素翻转(Hosseini, Xiao, Jaiswal, & Poovendran, 2017))。


它们的准确度往往比我们推断的更低(比如 Ribeiro, Singh and Guestrin (2016) 发现在从 ImageNet 提取出的一个数据集上实现的狼与狗辨别的高准确度主要是通过检测狼图像中的白色雪堆得到的。)


在机器学习的历史中,到目前为止,每一种范式在失势之前往往会主导大约十年的时间(比如神经网络主导了八十年代,贝叶斯学习主导了九十年代,核方法主导了 2000 年代)。


正如 Domingos 指出的那样,我们不能保证这种起起伏伏还会重复。神经网络之前已经经历过几次起伏了,一直可以追溯到 1957 年 Rosenblatt 的第一个感知器。我们不应该将这种周期性的热情误认为是智能的完全解决方案——在我看来,这仍然还需要数十年的时间。


如果我们想实现 AGI,我们自己必须清晰地认识到我们成功路上所面临的挑战。


备注


1. 感谢 Amy Bernard、Josh Cohen、Ernie Davis、Shlomo Shraga Engelson、Jose Hernandez-Orallo、Adam Marblestone、Melanie Mitchell、Ajay Patel、Omar Uddin 和 Brad Wyble 给出的评论。


2. 依赖这 1000 个图像集还存在其它问题。比如,在阅读本论文的草稿时,Melanie Mitchell 向我指出了 Loghmani 及其同事 (2017) 最近在评估深度学习在真实世界中的表现的重要成果。该论文的摘要写道:「分析深度表征从网络图像到 [现实中的] 机器人数据的可迁移性。尽管 [使用网络图像开发的表征] 得到了出色的结果,但实验表明在真实机器人数据上的物体分类还远未得到解决。」


3. 而且文献正在快速增长。12 月底有一篇关于欺骗深度网络使其将两位滑雪者误认为狗的论文(https://arxiv.org/pdf/1712.07113.pdf)以及另一篇关于用于构建真实世界对抗补丁的通用工具的论文(https://arxiv.org/pdf/1712.09665.pdf,也可参阅 https://arxiv.org/abs/1801.00634。)(https://arxiv.org/abs/1801.00634%E3%80%82%EF%BC%89) 深度学习在真实环境中竟如此脆弱,想想都可怕。


对于这个问题,可以查阅 Filip Pieknewski 的博客了解为什么使用照片训练的深度学习系统难以将它们所学到东西迁移到线条图画上:https://blog.piekniewski.info/2016/12/29/can-a-deep-net-see-a-cat/。视觉并不像很多人以为的那样已经得到了解决。


4. 正如我将在即将到来的论文中会解释的那样,AlphaGo 实际上并不是一个纯粹的(深度)强化学习系统,尽管引用的段落看起来好像是这样。这实际上是一个混合系统——其中包含由操作符号的算法驱动的组件以及一个经过精心设计的深度学习组件。


5. 随便一提,AlphaZero 并不是无监督的,而是自监督的——使用了自我对弈和模拟作为生成监督数据的方式;我会在接下来的论文中更详细地讨论该系统。


6. 比如谷歌搜索以及理解它的可能方式。谷歌最近已经在其用于搜索的大量算法中加入了深度学习算法 RankBrain。而且谷歌搜索肯定是在输入数据和知识后以分层的方式处理它们(按 Maher Ibrahim 的说法,这就是算作深度学习所需的一切)。但是,深度学习实际上只是众多算法中的一个;比如知识图谱组件则主要基于遍历本体(traversing ontology)的经典人工智能概念。从任何合理的角度看,谷歌搜索都是一个混合系统,深度学习只是其中众多方法中的一种。


将谷歌搜索整体上称为「一个深度学习系统」是一种严重的误导,就好像是因为木工活涉及到螺丝刀就把木工活称为「螺丝刀」。


7. 归纳逻辑编程、归纳函数编程(微软 Flash Fill 背后的大脑)和神经编程等是重要的例外。这些全部都取得了一些进展;其中一些甚至包含了深度学习,但在它们原本的操作运算之外还包括对变量的结构化表征和操作;这就是我要求的一切。


8. 我的人工智能实验始于青少年时期,其中包括用 Logo 编程语言编写的一个拉丁语-英语翻译器。在研究生学院,我与 Steven Pinker 一起研究探索了语言习得、符号规则和神经网络之间的关系。(我也要感谢我的本科导师 Neil Stillings)。我为我的论文(Marcus et al., 1992)收集的儿童语言数据已经被引用了数百次


在 20 世纪 90 年代末,我发现了多层感知器中一些特定的可复现的问题(Marcus, 1998b; Marcus, 1998a);基于这些观察,我设计了一个被广为引用的实验。该研究发表在 Science 上(Marcus, Vijayan, Bandi Rao, & Vishton, 1999),表明年幼的婴儿可以提取代数规则,而 Jeff Elman(1990)的当时流行的神经网络则无法做到。所有这些在 MIT Press 2001 年出版的一本书(Marcus, 2001)中达到了高潮,其中包含了各种代表性的原语,其中一些已经开始出现在最近的神经网络中;尤其是在新的差分编程领域(Daniluk, Rocktäschel, Welbl, & Riedel, 2017; Graves et al., 2016)中对变量的操作,相关研究应该在某个位置引述这本书。使用记忆记录也得到了重点强调,在 Facebook(Bordes, Usunier, Chopra, & Weston, 2015)等的关于记忆网络的研究中可以看到相关思想。接下来的十年我研究的其它问题包括遗传性(innateness,Marcus, 2004)(我会在接下来关于 AlphaGo 的论文中详细讨论)和进化(Marcus, 2004; Marcus, 2008),我最后又回到了人工智能和认知建模。我在 2014 年发表在 Science 上的一篇关于皮质计算的文章(Marcus, Marblestone, & Dean, 2014)也预测了一些当前差分编程领域正在发生的情况。


最近我离开了学术界,在 2014 年创立了并领导着一家机器学习公司;从任何合理的角度看,这家公司都很成功——在成立大约两年之后被 Uber 收购了。作为联合创始人和 CEO,我组建了一个包含世界上一些最好的机器学习人才的团队,其中有 Zoubin Ghahramani、Jeff Clune、Noah Goodman、Ken Stanley 和 Jason Yosinski;该团队在开发我们的核心知识产权和塑造我们在智能上的使命方面发挥了关键性作用(Zoubin Ghahramani 和我本人联合撰写的一个专利正在申请中)。


尽管我们做的很多工作都是机密,现在也归 Uber 所有,而不是我,但我可以说我们工作中的很大一部分都是为了将深度学习整合进我们自己的技术中,这让我很大程度上熟悉了 TensorFlow 和梯度消失(爆炸)问题的乐趣和艰难。我们的目标是让我们日常就能在稀疏数据上使用混合深度学习系统来得到当前最佳的结果(有时候成功了,有时候没成功)。


参考文献


Bordes, A., Usunier, N., Chopra, S., & Weston, J. (2015). Large-scale Simple Question Answering with Memory Networks. arXiv.

Daniluk, M., Rocktäschel, T., Welbl, J., & Riedel, S. (2017). Frustratingly Short Attention Spans in Neural Language Modeling. arXiv.

Elman, J. L. (1990). Finding structure in time. Cognitive science, 14(2)(2), 179–211.

Evans, R., & Grefenstette, E. (2017). Learning Explanatory Rules from Noisy Data. arXiv, cs.NE.

Falkenhainer, B., Forbus, K. D., & Gentner, D. (1989). The structure-mapping engine: Algorithm and examples. Artificial intelligence, 41(1)(1), 1–63.

Fukushima, K., Miyake, S., & Ito, T. (1983). Neocognitron: A neural network model for a mechanism of visual pattern recognition. IEEE Transactions on Systems, Man, and Cybernetics, 5, 826–834.

Garnelo, M., Arulkumaran, K., & Shanahan, M. (2016). Towards Deep Symbolic Reinforcement Learning. arXiv, cs.AI.

Goodman, N., Mansinghka, V., Roy, D. M., Bonawitz, K., & Tenenbaum, J. B. (2012). Church: a language for generative models. arXiv preprint arXiv:1206.3255.

Graves, A., Wayne, G., Reynolds, M., Harley, T., Danihelka, I., Grabska-Barwińska, A. et al. (2016). Hybrid computing using a neural network with dynamic external memory. Nature, 538(7626)(7626), 471–476.

Gulwani, S. (2011). Automating string processing in spreadsheets using input-output examples. dl.acm.org, 46(1)(1), 317–330.

Gulwani, S., Hernández-Orallo, J., Kitzelmann, E., Muggleton, S. H., Schmid, U., & Zorn, B. (2015). Inductive programming meets the real world. Communications of the ACM, 58(11)(11), 90–99.

Hofstadter, D. R., & Mitchell, M. (1994). The copycat project: A model of mental fluidity and analogy-making. Advances in connectionist and neural computation theory, 2(31–112)(31–112), 29–30.

Hosseini, H., Xiao, B., Jaiswal, M., & Poovendran, R. (2017). On the Limitation of Convolutional Neural Networks in Recognizing Negative Images. arXiv, cs.CV.

Hubel, D. H., & Wiesel, T. N. (1959). Receptive fields of single neurones in the cat』s striate cortex. The Journal of physiology, 148(3)(3), 574–591.

Lake, B. M., & Baroni, M. (2017). Still not systematic after all these years: On the compositional skills of sequence-to-sequence recurrent networks. arXiv.

Loghmani, M. R., Caputo, B., & Vincze, M. (2017). Recognizing Objects In-the-wild: Where Do We Stand? arXiv, cs.RO.

Marcus, G. F. (1998a). Rethinking eliminative connectionism. Cogn Psychol, 37(3)(3), 243—282.

Marcus, G. F. (1998b). Can connectionism save constructivism? Cognition, 66(2)(2), 153—182.

Marcus, G. F. (2001). The Algebraic Mind: Integrating Connectionism and cognitive science. Cambridge, Mass.: MIT Press.

Marcus, G. F. (2004). The Birth of the Mind : how a tiny number of genes creates the complexities of human thought. Basic Books.

Marcus, G. F. (2008). Kluge : the haphazard construction of the human mind. Boston : Houghton Mifflin.

Marcus, G. (2018). Deep Learning: A Critical Appraisal. arXiv.

Marcus, G.F., Marblestone, A., & Dean, T. (2014a). The atoms of neural computation. Science, 346(6209)(6209), 551—552.

Marcus, G. F., Marblestone, A. H., & Dean, T. L. (2014b). Frequently Asked Questions for: The Atoms of Neural Computation. Biorxiv (arXiv), q-bio.NC.

Marcus, G. F. (2001). The Algebraic Mind: Integrating Connectionism and cognitive science. Cambridge, Mass.: MIT Press.

Marcus, G. F., Pinker, S., Ullman, M., Hollander, M., Rosen, T. J., & Xu, F. (1992). Overregularization in language acquisition. Monogr Soc Res Child Dev, 57(4)(4), 1–182.

Marcus, G. F., Vijayan, S., Bandi Rao, S., & Vishton, P. M. (1999). Rule learning by seven-month-old infants. Science, 283(5398)(5398), 77–80.

Nguyen, A., Yosinski, J., & Clune, J. (2014). Deep Neural Networks are Easily Fooled: High Confidence Predictions for Unrecognizable Images. arXiv, cs.CV.

Pengfei, L., Xipeng, Q., & Xuanjing, H. (2017). Dynamic Compositional Neural Networks over Tree Structure IJCAI. Proceedings from Proceedings of the Twenty-Sixth International Joint Conference on Artificial Intelligence (IJCAI-17).

Ribeiro, M. T., Singh, S., & Guestrin, C. (2016).「Why Should I Trust You?」: Explaining the Predictions of Any Classifier. arXiv, cs.LG.

Richardson, M., & Domingos, P. (2006). Markov logic networks. Machine learning, 62(1)(1), 107–136.

Sabour, S., dffsdfdsf, N., & Hinton, G. E. (2017). Dynamic Routing Between Capsules. arXiv, cs.CV.

Silver, D., Schrittwieser, J., Simonyan, K., Antonoglou, I., Huang, A., Guez, A. et al. (2017). Mastering the game of Go without human knowledge. Nature, 550(7676)(7676), 354–359.

Smolensky, P., Lee, M., He, X., Yih, W.-t., Gao, J., & Deng, L. (2016). Basic Reasoning with Tensor Product Representations. arXiv, cs.AI.


原文链接:https://medium.com/@GaryMarcus/in-defense-of-skepticism-about-deep-learning-6e8bfd5ae0f1



本文为机器之心编译,转载请联系本公众号获得授权

✄------------------------------------------------

加入机器之心(全职记者/实习生):hr@jiqizhixin.com

投稿或寻求报道:content@jiqizhixin.com

广告&商务合作:bd@jiqizhixin.com

关注公众号:拾黑(shiheibook)了解更多

[广告]赞助链接:

四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
让资讯触达的更精准有趣:https://www.0xu.cn/

公众号 关注网络尖刀微信公众号
随时掌握互联网精彩
赞助链接