Geoff Hinton亮相Google I/O |极客公园前线记者
Q:20年前,当你发表了一些有影响力的文章。每个人都说,这是个好点子,但是事实上我们没法这样设计计算机。跟我们聊一聊,你为什么坚持,为什么你就相信自己的发现很重要?
A:实际上那是40年前了。对我来说,人脑工作只有一种方式——通过学习神经元之间连接强度来工作。如果你想要一件设备做一些智能的工作,你有两个选择,你可以自己编程或者让机器自己学习,我们当然不选择编程,我们只能想办法让机器学习。所以(我认为)这一定是正确的方式。
Q:在座的大多数人对神经网络都很熟悉了,但还是请你解释一下最初的想法,以及它是如何在你的脑海中形成的。
A:相对简单的处理元素,也就是松散的神经元,它们连接在一起,每个连接点都有一个权重(weight),通过改变连接点上的权重去学习。神经元所做的是将连接点上的活动乘以权重,把它们加起来,然后决定是否发送一个输出。如果和足够大,就发送一个输出,如果和是负的,它就什么也不发送。你需要做的就是把无数的权重连接起来,然后找到调节权重的方法,然后神经网络就能做一切事情。所以这就是一个调节权重的问题。
Q:那么,你是什么时候开始知道它的工作原理是近似大脑的呢?
A:神经网络一直是这样设计的,它模拟了大脑工作原理。
Q:所以在你职业生涯的某个时候,你开始了解大脑是如何工作的,也许是在你12岁的时候,也许是在你25岁的时候,你什么时候决定用计算机模拟大脑工作原理?
A:这就是问题的关键。神经网络的整个想法是有一个像大脑一样学习的设备,像人们认为大脑通过改变连接强度来学习一样,这不是我的想法。图灵也有同样的想法,尽管他发明了很多标准计算机科学的基础,他相信大脑是一个没有组织,有随机权重的装置,它使用强化学习的方式来改变连接,它会学习一切。他认为这是获得智能的最佳途径。
Q:所以你遵循图灵的想法,制造机器最好的方法就是模仿人类的大脑。这就是人脑的工作原理,让我们造一个这样的机器。
A:这不仅仅是图灵的想法,很多人也这样想。
Q:所以你有这样的想法,很多人都有这样的想法。你在80年代末得到了很多赞誉,因为出版的作品而出名,对吗?
A:是的。
Q:最黑暗是什么时候?那些曾经支持图灵想法的人都开始退缩了,但你却继续向前是什么时候?
A:总有一群人一直相信它,尤其是在心理学专业。但是在计算机科学家中,我想在90年代,当时数据集非常小,计算机没有那么快。在小数据集处理上,其他的方法,比如支持向量机(support vector machines)能达到更好的效果,不会被噪音影响。这非常令人沮丧,因为我们在80年代发展了反向传播(back propagation),我们本认为这项技术可以解决所有问题,但是结果相反。这只是一个规模的问题,但我们当时并不真正了解它们。
Q:那你为什么认为这行不通呢?
A:这是因为我们没有非常正确的算法,我们没有正确的目标函数。我认为很长一段时间以来,因为我们试图进行监督学习,你必须给数据贴上标签,而我们本应该进行无监督学习,你只需要从没有标签的数据中学习,最后发现这主要是一个规模的问题。
Q:这很有趣,问题是你没有足够的数据。你认为你有足够的数据但是你没有正确地标记它。所以你只是误解了问题?
A:我认为使用标签是错误的,你不应该利用标签的前提下完成大部分学习,而是基于数据尝试模拟结构。我仍然相信,随着计算机速度越来越快,任何给定的数据集,只要计算机足够快,你能更好地做无监督式学习,一旦你完成了无监督式学习,你将依赖更少的标签学习。
Q:所以90年代,你还是在做研究,仍然在学术界发表研究。但是没有非常大的突破,你曾经想过放弃深度学习的研究,去做一些别的事情吗?
A:这样的工作是一定要去做的,我的意思是大脑学习神经元的连接,我们必须要把这件事弄懂。也许还有很多学习连接强度的方法,大脑用了其中一种,也会有其他的方法。但是你总得学会一种方法,我从没有怀疑过这一点。
Q:那好,你从来不怀疑,那是什么时候开始,你所坚持的有了成果?
A:80年代,如果你建造的网络有很多隐藏层,你无法训练它们。Yann LeCun开发了卷积神经网络(CNN)只能训练相当简单的任务,比如实现机器读取手写,但是大部分深度网络,我们是不知道如何训练它们的。
2005年的时候,我研究出一种深层网络的无监督式训练方法,比如你输入像素值,然后能学习一组特征探测器(feature detectors),能够解释像素值为什么有这样的特征,然后你把这组特征探测器作为数据,你学习到另一组特征探测器,我们能解释这些特征探测器为什么有这些相关性。然后你继续一层一层的学习。有趣的是,你可以做数学计算并且证明,每一次你得到的层不一定具有比上次更好的数据模型,但是你在不断递进。
Q:我知道了,就是你在做观察,结果不是正确的,但是它们越来越接近正确。就比如,我对着观众来做一些概括,不是一下子就正确的,但是我会做的越来越好。大体上是这个意思吗?
A:大概是。
Q:2005年的时候,你在数学上取得了突破。什么时候开始你得到了正确的答案,你在运算什么样的数据,你在语音数据上迈出了自己的第一步突破。
A:这仅仅是大量的数据,非常简单的测量。大约同期,他们开始在研发GPU,研究神经网络的人大约在2007年使用GPU。我有一个非常优秀的学生利用GPU在航空遥感图像中寻找道路。他写了一些代码,然后被其他学生加以复用,在语音中识别音位,然后他们使用Pre-Training的想法,做完Pre-Training后,把标签贴在上面,使用反向传播。事实证明,基于Pre-Training你可得到好的深层网络,然后使用反向传播,得出的结果确实打败了当时语音识别的标准,起初,只是领先了非常小的一步。
Q:它打败了最好的商业可用语音识别,还是打败了语音识别的学术研究?
A:在一个相对小的叫做TIMIT的数据集上,表现略好于最优秀的学术研究,同时也好于IBM的成果。很快,人们意识到这个发展了30年的技术正在打败标准模型,只要再往前进一步就会发展得更好。
所以我的研究生们去了微软,IBM,Google,Google是最快转向生产语音识别器的。到2012年成果在Android展现了出现,从2009年提出发展了3年的时间,Android突然变得更加擅长语音识别。
Q:所以,你从四十年前萌生了这个技术概念,自从你发表文章也过去了20年,你终于领先于你的同行们,你当时是什么心情?
A:我有这个想法才30年。
Q:哈哈,是的,30年,这还是「新」点子。
A:它终于在一个真正的难题上达到了最先进的水平,这感觉真好。
Q:当你开始把它应用到其他问题上时,你意识到了它在语音识别上是有效的。
A:我来举几个例子吧。最早从事语音识别研究的人之一的George Dahl把深度学习应用到分子领域,你想要预测该分子是否会与某种物质结合成一种很好的药物。当时有一场比赛,他把我们为美国心脏协会设计的标准技术应用到预测药物的活动上,他们的胜利是一个标志,标志着深度学习可以得到普遍地应用。我有一个学生叫做Ilya Sutskever跟我说,Geoff你知道吗?深度学习要应用在图片识别中,李飞飞已经创建了正确的数据集,公开的竞争开始了,我们必须要做。所以我们基于Yann LeCun的理论研发了一项技术方法,我的一个学生叫做Alex Krizhevsky,他真的是一个魔法师,擅长编程CPU,我们得到的结果比2012年的标准计算机视觉要好得多。
Q:建模,化学,语音。这是它成功的三个领域。那它在哪些领域失败了?
A:失败只是暂时的。
Q:它在哪个领域失败过?(笑)
A:比如机器翻译,我想我们需要花很长的时间才能成功。比如,你有一串符号进来,又有一串符号出去,在这两者之间,你对一串符号进行操作,这是很合理的,这就是经典的AI。事实上,它并不是这样运行。符号串进来,你把它们变成你大脑中巨大的矢量(vectors),这些矢量相互作用,然后你把它们转换回来,而不是把符号串转换出去。如果你在2012年和我说,在接下来的5年时间里,要用相同的技术实现在多种语言之间进行翻译的效果,Recurrent Net(循环神经网络),但如果只是随机初始权重的随机梯度下降,我不相信事情会发生得比我们预料的要快得多。
Q:所以,最快的领域和最耗时的领域都有什么区别,比如像视觉处理,语音识别,是我们利用感官感知做的核心人类活动,这会是第一个要清除的障碍吗?
A:其他的事情比如运动控制,我们人类擅长运动控制,但是深度学习最终也会取胜。抽象推理,我认为是我们最后要学习的一件事。
「人类能做的事情,神经网络也能做」| Google I/O
Q:所以你一直说神经网络最终会赢得一切?
A:我们拥有自己的神经网络,对吗?人类能做的事情,神经网络也能做。
Q:人脑未必是有史以来最高效的计算机,有没有一种建模机器的方法比人脑的效率更高?
A:从哲学上来讲,我不反对可以用完全不同的方法来做这一切的观点。这种方法可能是,你从逻辑开始,你尝试自动化逻辑,做了一些很好的改进,你进行推理然后决定通过推理来进行视觉感知。这种方法有可能会成功,但结果却是没有成功。但我并不反对哲学上的胜利,只是我们知道大脑做不到。
Q:但也有一些事情是我们的大脑做不好的,这些事会不会神经网络也做不好?
A:很有可能。
Q:还有一个单独的问题,我们完全不知道这些东西是如何工作的,我们不明白自顶向下的神经网络。
A:可以看一下现在的机器视觉系统。大多数基本上是前馈的,它们不用反馈链接。目前的机器视觉系统还有一点就是,它们非常容易出现对抗性的例子。你可以稍稍改变几个像素,比如一张熊猫的照片,你看它是熊猫,但机器就突然说它是鸵鸟,但问题是你知道这是个熊猫。最开始我们以为这些机器没问题,然后出现了类似熊猫鸵鸟的问题以后,我们又开始有些担心。
我认为这部分问题在于,它们没有从高级的表征中重建,它们试图做有区别的学习,你只需要学习一层又一层的特征检测器,整个目标就是改变权重,这样你就能更好地得到正确的答案。他们并没有在每一层的特征检测器上做类似的事情,检查一下你是否可以从这些特征检测器的活动中重构底层的数据。
最近在多伦多,我们发现,或者尼克·弗罗斯特(Nick Frost)发现,如果你引入重建,它会帮助你更好地抵御连环攻击。所以我认为在人类的视角,我们在学习时会做重建重构,也因为我们通过重构进行了大量的学习,所以我们对对抗攻击更有抵抗力。
Q:我们来聊一个更大众的话题。现在神经网络就能解决各种各样的问题了,人类大脑中是否有任何奥秘是神经网络无法捕捉到的?
A:没有。
Q:没有?所以比如情感,爱,意识都能通过神经网络重构?
A:当然。一旦你弄明白了这些东西是什么。我们就是神经网络,不是吗?
另外,意识,我对这个很感兴趣。人们其实并不知道它是什么,人们对意识也有各种各样的解释,我觉得这是个未得到科学验证的术语。比方说一百年前,你问人们,生命是什么?他们会说,所有生物都有生命力,一旦死去,生命力就飘走了,这就是生与死的区别,就是你有没有这种生命力。
现在呢?现在我们不会说自己有什么生命力,我们会觉得这是个迷信的说法,现在我们懂了生物化学,懂了分子生物学,我们不需要生命力来解释生命了。我觉得意识也是这个道理。我觉得「意识」是用某种特殊的本质来尝试解释心理现象,而一旦我们用科学解释了意识,你就不需要这种「特殊的本质」了。