【AI原力觉醒】《纽约时报》两万字长文,深度剖析谷歌大脑简史
文章中阐述了谷歌大脑团队如何用神经网络改变谷歌翻译这一谷歌重要产品,还探讨了机器学习将如何重塑计算机这一概念本身。
序言:谷歌机器翻译的威力
(文/Gideon Lewis-Kraus)11月的一个周五晚上,东京大学著名的人机交互教授Jun Rekimoto正准备在线上进行一次报告。忽然,他在社交网络上发现一个消息,谷歌翻译忽然之间有了巨大的提升。他亲自访问了谷歌翻译的页面开始体验。他被震惊了。躺到床上后,谷歌翻译的威力还萦绕在他脑海中,让他无法停止想象。
他起身在自己的博客上写下了自己的发现。首先,他比较了两位日本翻译家所翻译的《伟大的盖茨比》中的几句话与谷歌翻译的结果。他认为,谷歌翻译的结果在日语上非常流畅。他认为,谷歌的翻译虽然有些不自然,但是比起翻译家的作品,对他个人而言,却更加易懂。
随后,他又在谷歌翻译上输入日文(海明威的作品日文版),进而翻译为英文,结果发现机器翻译与海明威英文原著有着惊人的相似度。
四天之后,大量的记者、企业家和广告商汇集到了谷歌位于伦敦的工程办公室,这里会有一个特殊的消息公布,大家都开始猜测是不是会发布翻译工具包。
伦敦市长Sadiq Khan首先发言,随后,谷歌首席执行官Sundar Pichai上台。Pichai在伦敦的任务有一部分是为谷歌新的大楼举行典礼。他曾经在多个场合中提到,谷歌的未来,是要以“AI为先”。这句话的实际含义非常复杂,也引来了诸多推测。而实际上,这句话的含义,指的是很快这家公司的产品代表的将不再是传统计算机编程的成果,而是“机器学习”。
谷歌CEO SundarPichai在他位于加州山景城的办公室外面。来源:Brian Finke for The New York Times
谷歌很少提到的一个部门——谷歌大脑,创建于5年前,遵循的这样一条简单的原理:人工的“神经网络”能通过试错,来熟知世界,正如婴儿所做的那样,这将为机器带来一些像人一样的灵活性。这一概念并不新鲜,它出现在20世纪40年代早期,但是绝大部分计算机科学家认为这是很难实现的、甚至是神秘的。2011年开始,谷歌大脑开始用这一方法进军人工智能,希望能解决传统方法尝试了数十年都没有突破的难题。语音识别此前一直做得不好,但是谷歌大脑采用新方法后,让安卓手机上的语音识别几乎做到了人类水平。在图像识别上也是如此,一年多以前,谷歌大脑首次把这一技术应用到了商业化的产品中。
谷歌翻译从2006年开始推出,已经成为谷歌最可信最流行的产品之一。Pichai在演讲中提到,难民危机使得谷歌再次意识到,跨地区性的翻译多么重要。他背后的显示屏展示了最近在谷歌上阿拉伯语和德语之间的翻译请求数量在增多。
谷歌决心围绕AI重组公司,是整个产业界机器学习热的第一个重要证明。在过去的4年间,至少有6家公司——谷歌、Facebook、苹果、亚马逊和微软,以及百度,都在抢夺AI人才,特别是在大学中。企业对资源和自由的承诺,已经吸引了一些学术界人士。起薪7位数也不再是什么新鲜事。另外,学术会议参会人数几乎翻了四倍。他们关注的不再是零碎的创新,而是要控制作为整体的代表的计算平台——普遍性的、无处不在的人工智能。
“人工智能”一词被提起时,好像它的意思是不言而喻的,但它一直都是争议的根源。想象一下,如果你回到20世纪70年代,在街上拦住一个人,拿出一个智能手机,向他展示谷歌地图。一旦你设法说服她,你不是一个奇怪穿着的巫师,从你的口袋里拿出的不是一个黑色护身符,而只是一个比阿波罗穿梭机更强大的电脑,谷歌地图几乎肯定似可以让他认为是“人工智能”的一个好例子。在一个非常真实的意义上,它确实是。它可以做任何人类在地图上能做的工作,比如让你从你的酒店到机场,而且它可以做得更快更可靠。它也可以做人类显然不能做的事情:它可以评估交通,计划最好的路线,在你走错路时重新定位自己。
Pichai在演讲中重新区分了现在的AI 应用和通用人工智能的目标。通用人工智能将不是关于具体指令的遵守,而是带有阐释性和理解性的推动。它将成为一种通用的工具,为通用环境、通用目的而设计。Pichai认为,谷歌的未来所仰仗的,就是类似通用人工智能的这种东西。想象一下,如果你能告诉谷歌地图,我要去机场,但是我还要在半路去给侄子买礼物。然后让它给你计划路线。这就是一种更通用版本的智能,一个无处不在的助手。就像电影《Her》中描述的那样,她能知道所有的事情,比如,你侄子的年龄、你通常会在礼物上花费多少、怎么找到一家营业的商店。这一般是亲密的朋友会知道的事。但是,一个真正智能的地图还能知道更多,它知道你真正想要什么。根据你此前的行为会给你做出判断。
现在流行的AI助手:苹果的Siri、Facebook的M和亚马逊的Echo,都是机器学习的产物,有着相同的作用。企业的机器学习梦想是无穷尽的,他们的目的是对消费者有更深的洞察。
下文讲述的故事,就是从一两个人,到三四个人,再到最后100多人的谷歌大脑,是如何在这一方向上取得巨大进展的。
第一部分:会学习的机器
1. 谷歌大脑的诞生
虽然Jeff Dean的头衔是高级研究员(senior fellow),实际上确实谷歌大脑的大脑。Dean身材消瘦,瘦长的脸上眼窝深陷,透露着一股热诚。作为医学人类学家和公共卫生流行病学家的儿子,Dean从小周游世界——美国的明尼苏达州、夏威夷、波士顿、阿肯色州,此外日内瓦、乌干达、索马里、亚特兰大等地,他在高中和大学期间写的软件被世界卫生组织拿去用。他25岁左右,也就是1999年以来就一直在Google工作,从那时起,他在几乎参与了开发所有重大项目的核心软件系统。关于他的种种传说Jeff Dean Facts在公司里成了一种文化。
2011年初的一天,Dean遇到了吴恩达,那时候吴恩达还是斯坦福计算机科学教授,是谷歌的顾问。吴恩达告诉了Dean他自己帮助在谷歌内部建立的一个项目——Project Marvin(以著名的AI先驱马文·明斯基命名),用于研究“神经网络”,模仿人类大脑结构的数字网格。Dean 1990年在明尼苏达大学读本科时也做过类似技术的原始版,当时那段时间神经网络还算流行。现在,在过去的五年中,从事神经网络研究的学者数量已经开始再次增长,从很少几个到几十个。吴恩达告诉 Dean,由谷歌X实验室支持的Project Marvin已经取得了一些好的结果。
Dean对这个项目很感兴趣,于是拿出他20%的时间参与进来——每个Google员工都要拿出20%的时间从事自己核心业务以外的工作。很快,Dean建议吴恩达邀请有神经科学背景的同事Greg Corrado加入,那时候Corrado听说过人工神经网络,但了解不多。后来,吴恩达最好的一个研究生Quoc Le也作为项目的第一个实习生加入了团队。到那时,一些Google工程师开始用Google Brain称呼Project Marvin。
从“人工智能”这个词在1956年夏天达特茅斯会议诞生时起,大多数研究人员一直认为创造AI的最佳方法是写一个非常大的、全面的程序,包含了逻辑推理的规则和有关世界的充分的知识。这种观点通常被称为“符号AI”,它对认知的定义是基于符号逻辑的。
符号AI有两个主要问题。一是非常耗费人力和时间,二是只有在规则和定义非常清楚的领域才能有用:比如数学或国际象棋。使用符号AI做机器翻译效果极差,因为语言虽有规则,但复杂多变,并且还有很多例外。但对于数学和国际象棋来说,符号AI工作得很好,而符号AI的支持者也认为,没有什么比数学和国际象棋更能代表“通用智能”。
但符号AI系统能做的事情是有限的。20世纪80年代,CMU的一位机器人研究员指出,让计算机做成人能做的事情很简单,但让计算机做一岁儿童做的事情几乎不可能,比如拿起一个球或识别一只猫。到20世纪90年代,尽管在国际象棋上取得了很大的进步,我们仍然离通用人工智能很是遥远。
关于AI还有一个不同的看法,这种观点认为计算机将从底层(数据)而不是从顶层(规则)学习。这个概念可追溯到20世纪40年代初,当时研究人员发现灵活自如智能的最佳模型就是人类大脑本身。说到底,大脑只是由神经元组成的,神经元之间可以相互通电(或不通电)。单个神经元并不重要,重要的是神经元的整体连接。这种简单的结构为大脑提供了很多优势,能够适应环境。大脑可以在信息很差或缺失的情况下工作;可以承受重大的损害,也不会完全失去控制;可以以非常有效的方式存储大量的知识;可以清楚区分不同的模式,同时又保留足够的混乱以处理歧义。
你可以用电子元件模拟这种结构,1943年的实验表明,简单的人工神经元网络可以执行基本的逻辑运算。这些电子元件至少在理论上,可以学习我们人类做事的方式。在生活中,我们会通过各种试错改变神经元对之间的突触连接的强弱。人工神经网络也可以做到类似的事情,通过不断试错,改变人工神经元之间的数字关系。人工神经网络不需要使用固定的规则预编程,它可以改变自身以反映所吸收的数据中的模式。
这种对人工智能的看法可以说是演化论而不是创造论。如果你想要一个灵活的机制,能够适应环境,你最开始就不想灌输它固定的规则。你可以从非常基本的能力——感官知觉和运动控制开始,希望更高的技能有机地出现。人类不是通过背诵字典和语法书学习理解语言,所以为什么要让计算机这样做呢?
谷歌大脑是第一个对上述想法进行商用投资的机构。Dean、Corrado和吴恩达(兼职)开始合作,立即就取得了进展。他们从最近的理论大纲以及自20世纪80年代和90年代的想法中吸取灵感,并利用谷歌无与伦比的数据储备和庞大的计算基础设施。他们将大量“标记”数据输入网络,计算机的输出不断改进,愈发接近现实。
“动物演化出眼睛是一个巨大的发展,”Dean有一天告诉我。我们像往常一样坐在会议室里,Dean在白板上画了一条繁复弯曲的时间线,表现Google Brain以及这个团队与神经网络的历史关系。“现在计算机也有眼睛了。我们可以以此为基础让计算机理解照片。机器人将得到彻底地改变。机器人将能够在一个未知的环境中,处理许多不同的问题上。”他们在机器人身上开发的这些能力可能看起来很原始,但其意义却是深远的。
2. 多伦多大学教授Hinton成为谷歌的实习生
Geoffrey Hinton在谷歌多伦多办公室。他的想法为谷歌神经网络机器翻译方法奠定了基础。来源:Brian Finke for The New York Times
Dean表示,Google Brain成立后一年左右,开发具有一岁儿童智力的机器的实验取得了巨大的进展。谷歌的语音识别团队将其旧系统的一部分改为神经网络,并且效果得到很大提升,甚至取得了近20年中最好的成果。谷歌物体识别系统的能力也提高了一个数量级。这不是因为Google Brain团队成员在短短一年间产生了一系列超棒的新想法,而是因为谷歌终于投入了资源——计算机和越来越多的人力。
Google Brain成立的第二年,Geoffrey Hinton加入了,而吴恩达则离开(现在是百度首席科学家,领导1300人规模的AI团队)。Hinton当时只想离开多伦多大学在谷歌待三个月,所以由于各种原因,谷歌不得不被聘他为实习生。在实习生培训过程中,辅导人员会说“输入你的LDAP(即用户登录码)”,Hinton会举手问:“什么是LDAP?”在场所有二十几岁的年轻人,只知道人工智能的皮毛,都在想“那个老家伙是谁?为什么他连LDAP都不懂?”
Hinton说,直到有一天,有人在午餐时对他说“Hinton教授!我选修了你的课!你在这里做什么?”自此以后,再也没有人质疑Hinton作为实习生的存在。
几个月后,Hinton和他的两个学生在ImageNet大型图像识别竞赛中取得了惊人的成果,让计算机不仅识别出猴子,而且区分蜘蛛猴和吼猴,以及各种各样不同品种的猫。谷歌很快就向Hinton和他的学生提出了Offer。他们也都接受了。“我以为他们对我们的知识产权感兴趣,”Hinton说:“结果他们对我们这几个人感兴趣。”
Hinton出身于一个古老的英国家族。他的曾祖父George Boole在符号逻辑方面的基础工作为计算机专业打下基础;Hinton的另一个曾祖父是著名的外科医生,Hinton的父亲是一个热爱冒险家的昆虫学家,Hinton父亲的表哥在Los Alamos研究所工作,等等等等。Hinton先后在剑桥大学和爱丁堡大学学习,然后在卡内基梅隆大学读博士,最后到了多伦多大学,现在Hinton大部分时间都在多伦多大学。(Hinton的工作长期以来一直受到加拿大政府的慷慨支持。)我在Hinton的办公室访问了他。Hinton说话睿智诡异,比如“计算机会比美国人更早理解讽刺”。
Hinton从上世纪60年代末在剑桥大学读本科开始,一直致力于研究神经网络,也被认为是该领域的先驱。很长时间以来,每当Hinton说起机器学习,人们都用不屑的眼神看着他。神经网络一度被视为学术死路,主要是由于感知机(Perceptron)这个当时得到过度吹捧的概念。感知机是康奈尔心理学家Frank Rosenblatt在20世纪50年代末开发的一个人工神经网络。当时《纽约时报》报道,感知机项目自助者美国海军期望它“能够走路、说话、会看、会写,会生产(reproduce)自己,意识到自己的存在”。结果这些感知机基本都没实现。马文·明斯基(Marvin Minsky)在1954年普林斯顿的论文中以神经网络为研究主题,但他对Rosenblatt关于神经范式所做的夸张说法已经厌倦了。(明斯基也在争取国防部的研究资金。)后来,明斯基与MIT的同事合作出版了一本书,证明有一些非常简单的问题是感知器永远不能解决的。
明斯基当时对感知机的批评只涉及只有一个“层”的网络,也就是在输入和输出之间只有一层神经网络——后来明斯基阐述了与当代深度学习非常相似的想法。但是,当时Hinton就已经知道,如果使用很多层神经网络,就可以执行复杂的任务。简单说,神经网络就是一台机器,能够从数据中发现模式并以此进行分类或预测。有一层神经网络,你可以找到简单的模式;有多层神经网络,就可以找出模式中的模式。以图像识别为例,执行图像识别的神经网络主要使用“卷积神经网络”(这在1998年的一篇开创性论文中阐述的概念,该论文的主要作者、法国人Yann LeCun跟着Hinton在多伦多大学做了博士后,现任Facebook人工智能实验室负责人),网络的第一层学习识别图像非常基本的视觉效果“边缘”,也就是一个像素旁边没有什么任何东西(反之亦然)。接下来网络的每一层都在前一层中寻找模式。边缘的模式可以是圆形,也可以是矩形。圆形或矩形的图案可能是面部,等等。这种方法类似于人眼将信息组合在一起的方式,从视网膜中的光线感受器返回信息到大脑的视觉皮层。在每个步骤中,不立即相关的细节被丢弃。如果几个边缘和圆圈合在一起成为一张脸,你不会在乎在视野中这张脸的位置;你只会在乎它是一张脸。
多层也即“深度”神经网络的问题是试错法部分非常复杂。单层的网络很容易,多层的训练起来就复杂了。Hinton和其他几个人发明了一个方法(或者说,改进了一个旧的方法)解决这个多层出错的问题,那是在20世纪70年代末到80年代,为此计算机科学家对神经网络的兴趣又短暂地复燃了一会儿。“人们对此非常兴奋,”Hinton说:“但我们把它夸大了。”于是,计算机科学家很快回到了认为像Hinton那样的人是怪人和神秘主义者的状态。
不过,这些想法在哲学家和心理学家之间仍然很受欢迎,他们称之为“连接主义”或“并行分布式处理”。尽管加拿大政府很慷慨,但就是没有足够的计算机力或足够多的数据。Hinton 表示,支持我们想法的人不断说:“是的,只要有一个大的机器就会工作了,但这不是一个非常有说服力的论据。”
3. 深度学习的深度解读
当Pichai在说谷歌将以“AI为先”时,他并不仅仅在描述公司的商业战略,也同时把这一长久以来都没有起到多大作用的概念扔给了公司。Pichai在资源上的分配保证了像Jeff Dean和Hinton之类的人,有足够的计算能力和数据,来取得可靠的进展。一个人类的大脑保守估计有1000亿个排列着的神经元。每一个神经元与10万个类似的神经元相连,也就是说,突触的数量在100万亿到1000万亿之间。对于20世纪40年代提出的一个简单的人工智能神经网络来说,即使要简单的复制这一网络都是不可想象的。我们现在离建造这样一个网络依然还有很远的路要走,但是,谷歌大脑的投资,至少可以让人工神经网络可以与大脑的某一切片功能相当。
要理解扩展性(Scale)为什么那么重要,你需要理解更多的细节,也就是,机器究竟对数据作做了什么?我们对AI的普遍性的恐惧,大都来源于认为它们会像一个神秘的学者一般在图书馆挖掘学习知识,然后,从前只会裁纸的机器或许有一天能像对待一只蚂蚁或者莴苣一样对待人类。但这并不是AI的工作方式。它们所做的全部事情都是搜索信息,寻找共同点,最开始是基本的模式,随后会变复杂,最后,最大的危险在于,我们所喂给它们的信息从一开始就是错误或者带有偏见的。
“知道什么”和“做什么”的权衡具有真正的文化及社会影响。在聚会上,Schuster走到我跟前,诉说向媒体解释他们的论文的挫折。他问我:“你看了最早出来的新闻吗?”他复述早报上的一个标题,一个字一个字地指着念:“谷歌说AI翻译已经与人类无差”。在论文即将完成的最后几周,团队没停下过奋斗。Schuster经常重复地向人解释,论文表达的是“谷歌翻译比以前好多了,但还不如人类好”。他表达的很明确,他们的努力不是说要替代人类,而是辅助人类。
4. 识别猫脸的论文
在谷歌大脑成立的第一年到第二年间,他们让机器掌握一岁小孩的技能的努力幸运地达成了,所以,他们的团队也从谷歌X实验室“毕业”,转变为更大的研究机构。(谷歌X的主管曾经说过,谷歌大脑负担了所有X实验室的成本支出。)他们的人数在当时仍然少于10个人,对于最终会实现什么,也只有一些模糊的感觉。但是,即便是在当时,他们的思想也走在了前面,想着接下来会发生什么。人类的思维中,首先学习的是形状,比如说一个球,然后也会很舒服地接受所学到的知识,停留一段时间,但是迟早的电脑会需要问关于这个球的事,这就过渡到了语言。
在这一方向上,谷歌大脑做的第一件事是“识别猫”,这也是令谷歌大脑声名大噪的一件事。“识别猫”的论文展示的是,带有超过10亿个“突触”连接的神经网络,这比当时任何公开的神经网络模型都要大好几百倍,但是与人类的大脑相比,依然小了好几个数量级。这一神经网络能识别原始的、费标签的数据,并识别高难度的人类概念。谷歌大脑的研究者向神经网络展示了几百万帧静态的Youtube视频,然后,神经网络的感觉中枢开始运转,分离出了一个稳定的模型。和所有的小孩一样,这一模型能毫不犹豫地识别出猫的脸。
研究员从未把关于猫的先验知识编程输入到机器中,机器直接与现实世界交互并且抓住了“猫”这一概念。(研究者发现,这一神经网络就好像核磁共振成像一般,猫的脸部的阴影会激活人工神经元,让它们产生集体的唤醒。)
当时,绝大多数机器的学习都受到标签数据的数量限制。“识别猫”的论文展示了,机器同样能识别原始的非标签数据,有时候或许是人类自身都还没建立起知识的数据。这一研究看起来并不仅仅是让机器识别猫脸的巨大进步,对于人工智能的整体发展都有很大意义。
“识别猫”的研究第一作者是Quoc Le。Le又矮又瘦,说话轻柔但语速极快,他从小在越南长大,父母都是农民,小时候家里甚至都没有电。但是,他在数学上的天赋显然来自他的童年时期。20世纪90年代,他还在上学时,就曾经尝试开发聊天机器人。他在想,这会有多困难呢?
“但是实际上”,他告诉《纽约时报》的记者,“这非常难”。
随后,他离开了越南到澳大利亚的堪培拉大学学习,主要研究计算机视觉一类的AI任务。当时,这一领域使用的方法,是要给机器填入大量的关于事物的定义性概念,这让他觉得像是在作弊。Le当时并不知道,或者说不是清楚地知道,世界上另外一些地方至少有几十名计算机科学家和他一样,也同时在情不自禁地想象:机器是能够从零开始学习的。
2006年,Le在德国的马克斯普朗克研究所生物控制部门任职。在那里的一个读书小组中,他看到了Geoffrey Hinton的两篇论文,他觉得自己的双眼瞬间明亮了。
“当时有很大的争议”,他告诉我说,“非常非常大的争议”。他看了一眼自己画在白板上曲线,又轻声重复到,“我从来没有见到过那么大的争议。”
他记得自己在阅读小组中站起来,并说:“这就是未来。” 他回忆说,在当时,这并不是一个很受欢迎的决定。他在澳大利亚的旧导师曾写邮件问他,“你为什么做了这个决定?”
“当时我并没有想到好的答案,我只是好奇”,他说,“(论文)提出了一个很成功的范式,但是老实说,我只是对这一范式感到好奇。”随后,他去了斯坦福,加入了吴恩达的团队,开始追求Hinton的理念。“2010年年底,我已经非常确信,会有一些事情发生了。”
随后,他到伦敦开始第一份实习,并完成了毕业论文,这也是“识别猫”的论文的前身。
在一个简单的层面上,Le想看看计算机是否可以被训练,从而自己识别对于给定图像绝对必要的信息。他给神经网络填入了一个他从YouTube采取的静态片段。然后他告诉神经网络丢弃图像中包含的一些信息,虽然他没有指定应该或不应该丢弃的东西。机器抛弃了一些信息,最初是随机的。然后他告诉计算机:“刚才是开玩笑!现在重新创建初始图像,你只是根据你保留的信息进行显示。”就像他要求机器找到一种方法来“总结”图像,然后从摘要再回溯到最初的图像。如果摘要是基于不相关的数据,如天空的颜色,而不是胡须,机器就不能执行好的重建。
机器的反应跟远古时期的人类很像,他们对于一只老虎的印象,是在自己看见狰狞的老虎时跑开的过程中留下的。但是,与人类的祖先不同的是,Le的神经网络,需要进行一次一次又一次的尝试。每一次,从数学的层面上,都会选择对不同的信息进行优化,然后表现会越来越好。
但是,神经网络是黑箱。它确实产生了一个模型,但是模型本身通常很难被人类理解或者观察到。
Le并没有觉得“猫脸识别”的成果让他变得更有发言权,但是,他感受到了一种动力,这种研究也许跟他早年希望开发的聊天机器人有联系。在“识别猫”的论文发表以后,他意识到,如果你能让一个神经网络对照片进行总结,你也可以让它对一些句子进行总结。在接下来的两年中,这些想法一直缠绕着Le,以及他在谷歌大脑的同事——Thomas Mikolov。
有一段时间,他们与谷歌的高管分享同一个办公室。后来有一天他们从管理员处得到一封电子邮件,要求他们不要再让团队成员在Larry Page和Sergey Brin的套房前面的沙发上睡觉。后来,他们终于在街道对面分到了一个办公室。
在谈到Mikolov时,Le变得很严肃,但是又不断提起他们的合作。后来才知道,原来Mikolov 后来去了Facebook。
Google Brain团队成员2012年合影,他们著名的“计算机识别猫脸”展示了神经网络分析未标记数据的能力。来源:谷歌
他们在这段时间试图设计出的神经网络架构,不仅可以适应简单的照片分类,这是静态的,而且还复杂的结构,随着时间的推移变化的,如语言或音乐。这些概念许多是在20世纪90年代首次提出的。Le和他的同事回到了那些长期被忽视的概念中,看看他们可以收集什么。他们知道,一旦你建立了一个具有基本语言预测能力的设施,你就可以继续做其他各种智能的事情, 例如预测一个合适的电子邮件回复,或预测一个智能的谈话的流程。你就可以侧重于那种看起来很像思维的能力,至少从表面看是这样的。
第二部分:语言机器
语言学的转折
谷歌大脑中现在有上百名的成员,但是它看起来并不像是一个有着明显的层级结构的部分,而是更像一个俱乐部或者学术团体,或者一个小酒吧。团队成员不少是来自谷歌整个体系中最自由、最受敬仰的员工。他们现在在一个两层蛋壳建筑中办公,有巨大的窗户:他们的小厨房有一个桌式足球我从来没有见过使用;Rock Band我从来没有见过使用;和一个Go工具箱我看到使用了几次。
我在6月份第一次到谷歌大脑办公室时,还有许多空余的办公位,但是现在已经全满了。
谷歌大脑的成长使得Jeff Dean对公司如何处理需求感到有些担忧。他希望避免在谷歌被称为“成功灾难”——这种情况指的是,公司的理论研究能力超过了实际开发产品的能力。某一天,他在做了一些计算后,向高管作了汇报,只用了两页的PPT。
“如果未来每个人每天都对自己的安卓手机说话三分钟,”他告诉高管,“(由此产生的数据计算需求)就是我们所需要的机器数量。”未来,他们需要把自己的全球计算配置翻2-3倍。
“这也就是说,你必须建造新的大楼,”Jeff Dean在说这话时,带了明显的犹豫和斟酌。
但是,他们显然还有另一个选择——设计出大规模生产的,能在不同的数据中心分散使用的新芯片。加快运算速度。这些芯片被称为TPU。这些芯片比传统芯片在精确度上要低一些。但是运算速度更快。从12.246X64.392变为12X54 。
在数学层面上,神经网络只是数百或数千或数万的矩阵乘法,以连续不断的形式出现。所以,让计算更快比更准确要重要。
“通常,”Dean说,“专用硬件是个坏创意。它通常只可以加速一件事。但是由于神经网络的通用性,你可以利用这个专用硬件来处理很多其他事情。”
就在芯片设计接近完工时,Le和他的两位同事终于证明了神经网络可能可以处理语言结构。他描绘了一个“词嵌入”的概念,这一概念出现已经有10年了。也就是说,当你对图像进行总结时,你可以分隔图像,来分阶段组成总结,比如边缘、圆圈等等。当你用相同的方式对语言进行总结,你最重要的是要制造出关于距离的多维度地图。机器不会像人类一样去“分析”数据,使用语言规则来区分是名词还是动词。它们只是转化和改变或者组合地图中的词。
如果你能把所有法语中的词和所有英语重点词放在一起,至少在理论上,你可以训练一个神经网络,来学习如何把一个句子放到空间中,并产生一个类似的句子。
你要做的是把这些数百万的英语句子作为输入,把可能的法语句子作为输出,在多次训练后,模型能是被出相关的词语组合模型,这和图像识别中的像素模型是一样的。然后你就能给机器一个英语句子,让他它产出一个与之匹配的法语句子。
词和像素最大的不一样在在于,图中的像素是一次性能全部拿到的,但是,词的出现是根据时间渐进的。你需要让网络“记住”这种连续性,或者序列性。2014年9月,有三篇论文发表,一篇是Le写的,另外两篇来自加拿大和德国,这些论文至少提供了完成这些任务所需要的理论工具。这些研究让谷歌大脑中的一些项目成为了可能,比如研究机器如何生成艺术作品和音乐的Magenta。研究也为机器翻译等实用性应用打下了基础。Hinton对《纽约时报》的记者说,他本来认为这些研究要至少5年或者更多的时间才能做成。
6. 伏击
Le的论文显示神经翻译是可行的,但他只使用了一个相对较小的公共数据集。(所谓的小只是相对于Google的体量而言。这个数据集实际上是世界上最大的公共数据集。十年来,原有的Google Translate已经收集了上百到上千倍的生成数据。)更重要的是,Le的模型对长于约七个字句子的效果不是很好。
谷歌大脑的研究科学家Mike Schuster接手了指挥棒。他知道,如果谷歌没有找到一种方法来扩展这些理论洞见至生产水平,那么别人会。这个项目花了他接下来的两年。 “你会认为,”Schuster说,“要翻译东西,你只需得到数据,运行实验,你就完成了,但实际不是这样的。”
Schuster是个紧张、专注、不显老的人,长着一个晒黑的、活塞形的脑袋,窄肩,长迷彩短裤垂至膝盖之下,脚踏绿色Nike Flyknits鞋。他的模样看起来好像早上他刚从莲蕊中醒来,抓起他那小而无边的椭圆眼镜,像松鼠吃橡子般补充了卡路里,并在来办公室的路上完成了一个轻松的沙漠十项全能。在现实中,他告诉我,他骑行了18英里来上班。
Schuster在前西德的重工业区杜伊斯堡长大,研究电气工程,然后前往京都从事早期的神经网络。在20世纪90年代,他用来运行实验的神经网络机像会议室一样庞大; 它要花费数百万美元,必须训练几个星期,却只能做一些你现在可以一小时内在电脑桌面能做到的事。他在1997年发表了一片文章,在之后的十五年里几乎无人引用;而今年,这篇论文已被引用了大约150次。他不失幽默,但他经常露出严厉的表情,我认为这种表情体现了他的德国式克制和日本式克制的结合。
Schuster必须处理的问题是缠结性的。首先,Le的代码是定制化的,它与Google当时开发的新开源机器学习平台TensorFlow不兼容。Jeff Dean在2015年秋天向Schuster指派了另外两位工程师,Wu Yonghui和Zhifeng Chen。他们花了两个月的时间把Le的结果复制到新系统。Le也在附近,但即使Le本人也不是总能理解项目的进展。
正如Schuster所说,有些东西的进展不是能完全意识到的。工程师自己也不知道新系统为什么行得通。
今年二月,谷歌的研究机构 ——该机构是谷歌的一个较为散漫的部门,大约1000名员工,致力于前瞻性和不可分类的研究 —— 在旧金山威斯汀酒店的联合广场上召集骨干进行外出静思会,酒店的豪华程度略逊于谷歌在一英里外的自家店铺。上午进行了几轮“闪电会谈”,快速交流了研究前沿,下午则在跨部门的“互促性讨论”中度过。谷歌希望静思会可以带来不可预测的、间接的、贝尔实验室式的交流,以让谷歌这个成熟的公司保持多产。
在午餐时间,Corrado和Dean结伴寻找谷歌翻译的主任Macduff Hughes。Hughes正在独自吃饭,Corrado和Dean从两侧截住了他。正如Corrado所说,“我们伏击了Hughes”。
“嘿,”Corrado对屏住呼吸、面露怀疑的Hughes说:“我们有东西告诉你。”
他们告诉Hughes,2016年似乎很适合用神经网络对谷歌翻译—— 由数十名工程师10多年积累的代码 ——进行大修。旧系统采用的是所有机器翻译系统已经用了30年的工作方式:它从每个连续句子中分出片段,在一个大型统计词库中查找这些词,然后应用一组后处理规则以附加适当的词缀,并重新排列以产生意义。这种方法被称为“基于短语的统计机器翻译”,因为当系统到达下一个短语时,它并不知道上一个短语是什么。这也就是Google Translate的输出有时看起来像一大包冰冻磁铁的原因。Google Brain引入的大修,将使它能一次性阅读和渲染整个句子,让它能捕捉语境,以及某种近似于意义的东西。
项目带来的利益似乎很低:谷歌翻译产生的收入很低,而且这种状况大概会持续下去。对大多数英语用户来说,即便服务性能实现了彻底升级,他们也只会将之视为预期之内的进步。但这个团队要证明,实现人类质量的机器翻译不仅具有短期必要性,而且会带来长远的革命性发展。在不远的将来,它将对公司的业务战略至关重要。谷歌估计,50%的互联网使用英语,这可能占世界人口的20%。如果谷歌要在中国—— 在中国搜索引擎流量的大部分份额属于其竞争对手百度——或印度进行竞争,体面的机器翻译将是基础设施不可或缺的一部分。百度本身已经在2015年7月发表了一篇关于神经机器翻译可能性的开创性文章。
在更遥远的、可推测的未来,机器翻译也许是朝向一个具有人类语言能力的通用计算设施的第一步。而这将代表通向真正人工智能的一个重大拐点。
硅谷的大多数人都知道机器学习的前景正在快速接近,所以Hughes也预计到了他会被机器学习团队的人伏击。但他仍然感到怀疑。他是一个温和,固执、一头灰发的中年男子。他是一个老牌的流水线型工程师,那种在1970年代的波音公司能看到的工程师。他的牛仔裤口袋里经常塞着奇形怪状的工具,好像他正要去测量磁带或热电偶,和许多为他工作的年轻人不同,他有自己的柜子。他知道在谷歌和其他地方的各种人一直在尝试进行应用层面的神经翻译工作,这些工作已持续多年但没什么进展。
Hughes听了Corrado和Dean的建议,最后他谨慎地说,也许他们可以把计划延迟到三年之年之后。
Dean不这么认为。他说,“我们可以在年底之前做到这一点,如果我们全神贯注去做的话。”人们如此喜欢和钦佩Dean的一个原因是,他长期以来总是能全神贯注地办成事。另一个原因是,当他真诚地说出“只要我们全神贯注就能办成”的时候,他一点也不怕尴尬。
休斯很确定,这种系统转换不会在短时间内发生。但他也不拒绝尝试。他回去后告诉他的团队:“让我们为2016年做准备吧。我不会是那个说Jeff Dean无法带来改变的人。”
一个月后,他们终于能够运行一个并行实验以比较Schuster的新系统和Hughes的旧系统。Schuster想用英语-法语语言对来测试它,但Hughes建议他尝试别的语言对。“英语-法语翻译已经很好了,改进不会很明显。”
这是一个令Schuster无法抗拒的挑战。评估机器翻译的基准度量被称为BLEU分数,它将机器翻译与大量可靠的人类翻译的平均值进行比较。当时,英语-法语的最佳BLEU分数值高达20多。将分数提升一个点,将被认为是非常好的改进; 提升两个点就会被认为是是杰出的。
在英语到法语语言对上面,神经系统相比旧系统带来了高达7分的改进。
Hughes告诉Schuster的团队,在过去四年里,他们在自己的系统中从没有出现过这么强劲的改进。
为了确保这不是一个侥幸,他们也雇人进行人工对比。在用户体验得分系统中,样本句子的分值从0到6,神经系统带来的平均改善达0.4,这大致相当于旧系统在其整个生命周期中带来的总增益。
谷歌的Quoc Le(右),他的工作证明了神经翻译的合理性,Mike Schuster则帮助将这项工作应用于谷歌翻译。来源:Brian Finke for The New York Times
3月中旬,Hughes给他的团队发了一封电子邮件:旧系统上的所有项目都将立即暂停。
7. 让概念成为产品
在那之前,神经翻译团队只有三个人 ——Schuster、Wu和Chen ——但随着Hughes的支持,更广泛的团队开始合并。他们星期三下午2点在Schuster的引领下来到了位于Quartz Lake的Google Brain办公室内的一个角落房间。会议有十几人参加。当Hughes或Corrado在场时,他们往往是唯一的两名英语母语人士。工程师们有的讲中文,越南语,有的讲波兰语,俄语,阿拉伯语,德语或日语,虽然在现实中他们大多使用高效的混杂语数学来交流。在Google,人们并不总是清楚谁正在组织开会,但这一次的会议目的则很清楚。
即便如此,他们需要采取的步骤仍不是完全清楚。“其中有很多不确定性 —— 整个过程的不确定性,”Schuster告诉我。“软件,数据,硬件,人。”他伸出他长而宽松的手臂,轻轻在肘部弯曲,“这就像在大海里游泳,你只能看到这远。”他把他的手伸出到胸前8英寸那么远。“目标在某处,或许它就在那里。”
大多数Google的会议室都配有视频会议显示器,当闲置时,会显示极高分辨率的Google+照片,包括田园风光、北极光或帝国议会大厦的照片。Schuster向其中一个屏幕打了个手势,那个屏幕上正显示着华盛顿纪念碑的夜间一瞬。
“外人会认为,每个人都有双筒望远镜,可以看到前方。”
让他们到达此地的理论工作已经用光,但要把它变成一个可行的产品 ——这被学术科学家称为“纯粹的”工程的部分——仍非常难。首先,他们需要确保他们在良好的数据上进行训练。 Google用来进行“阅读”训练的数十亿词语料主要是由中等复杂性的完整句子组成,这些句子就像你可能在海明威作品里读到的那些。其中一些是公共领域文献,统计机器翻译的最初语料是加拿大议会的数百万页完整双语记录。然而,它的大部分是从10年来由热心者众包的人类翻译作品中筛选而来。该团队的语料仓库里有9700万个互不相同的英语“词”。但是一旦他们删除了表情符号、拼写错误和冗余,剩下的工作词汇只有大约16万。
而后,团队必须重新去关注用户实际想要翻译哪些内容,而这通常并非标准而合理的语言。谷歌发现很多人并不使用谷歌翻译来翻译完整、复杂的句子。他们用它来翻译古怪的小碎片般的语言。如果你希望网络能够处理用户查询的数据流,你就必须确保能在这个方向上前进。神经网络对用于训练的数据非常敏感。正如Hughes向我提到的:“神经翻译系统正在学习一切。它就像一个孩子。”他笑道。“它会说,‘哦爸爸发疯的时候才会这么说话!’你必须要小心。”
不管怎样,他们需要确保整个事情快速可靠,从而不给用户带来困扰。在2月,神经系统翻译10个字的句子需要10秒钟。公司不可能向用户推出这么慢的东西。翻译小组开始对一小部分用户进行延迟实验,假装翻译时间会延迟,以观察用户的忍耐程度。他们发现,如果翻译时间只延长了两倍甚至五倍,便不会被用户注意到。如果延长了八倍,就会被注意到。团队不需要确保所有语言都是这样。在(如法语或中文等)高流量语言的情况下,翻译服务几乎不会放慢速度。团队想知道,对于那些更模糊的语言翻译,用户不会因为轻微的延迟而拒绝更好的翻译质量。他们希望能防止人们放弃使用翻译、也防止人们转去使用竞争对手的翻译服务。
Schuster承认,他并不知道他们是否能够使它变得足够快。他记得在餐室中他曾对Chen说:“肯定有一些我们不知道的东西能使它变得足够快,但我不知道它是什么。”
不过,他知道他们需要用更多的计算机——更多的图形处理器来重新配置神经网络进行训练。
Hughes去问Schuster的想法:“我们是不是应该要求一千台GPU?”
Schuster回答,“为什么不是2000台?”
十天后,他们拿到了新加的2000个GPU处理器。
到4月份,原来的三人阵容已变成超过30人。其中一些人,如Le,来自Google Brain;也有许多人来自Google Translate。5月,Hughes为每对语言配置了一种临时主管,每个主管都将进展结果录入一个大型共享的绩效评估电子表格。任何时候,都有至少20个人正在进行他们自己的独立的、长达一周的实验和处理意外问题。有一次某个模型开始毫无理由地把所有的数字从句子中剔除。经过了几个月才解决这个问题。“人们几乎气得要大吼。”舒斯特说。
到春季末期,各组的工作都聚集在一起。团队引入了一些诸如“word-piece”模型,“coverage penalty”,“length normalization”之类的东西。Schuster说,每个部分都把结果改进了几个百分点,但合起来它们有显著的效果。一旦模型被标准化,它将是一个单一的多语言模型,将随时间而改进,而不是目前使用的150个不同的翻译模型。不过, 当创造一个工具通过机器学习来实现普遍化时,实现自动化的过程总是需要超出寻常的人类天分和努力。这个项目也是如此:每层要多少神经元?1024还是512?要多少层?一次运行多少句子?训练多久?很多决定都依赖内心深处的直觉。
“我们做了数百次实验,”Schuster告诉我,“直到有一天我们知道,我们可以在一个星期后停止训练。你总是会问:我们什么时候能停下来?我怎么知道我完成了?你永远不知道你做完了。机器学习的机制从来不是完美的。你需要训练,在某些时候你必须停止。这是这个系统的一个非常令人痛苦的特质。对一些人来说这很难。这是有点像艺术 ,像用画笔作画。有些人做得更好,有些人做的比较糟。”
到5月份,Google Brain团队了解到,他们唯一能够使系统作为产品快速实现的方法是,在T.P.U.上运行Dean所要求的专用芯片。正如Chen所说:“我们甚至不知道代码是否能工作。但是我们知道如果没有T.P.U.,肯定是干不成的。”他记得,他们曾经一个接一个地去向Dean请求,“请为我们保留一些T.P.U.的份额。”Dean为他们保留了份额。然而,T.P.U.无法顺利工作。Wu花了两个月坐在硬件团队的人的旁边,试图找出这是为什么。他们不只是调试模型,他们也调试芯片。神经翻译项目将成为对这整个基础设施投资概念的一个验证。
6月的一个星期三,Quartz lake办公室的会议上,人们对百度发表在领域核心期刊上的一篇文章议论纷纷。Schuster让会议室恢复了秩序。 “是的,百度出了一篇新论文。感觉就像有人看透了我们做的东西——论文有类似的结构,类似的结果。”百度公司的BLEU分数基本吻合Google在2月和3月内部测试中取得的成绩。Le并未感到不快。他的结论是,这是一个迹象,表明谷歌是在正确的轨道上。“这个系统与我们的系统非常相似。”他安静地说。
Google团队知道。如果他们早些时候发布了他们的结果,可能会打败他们的竞争对手,但正如舒斯特所说:“启动产品比发布论文更重要。人们会说,‘哦,这个发现是我先做到的。’但到了最后,谁会关心呢?”
然而,这确实要求他们必须更好地研发自己的翻译服务。Hughes希望,他们甚至不用告诉用户他们已经更换了系统。他们只需等待,看看社交媒体是否会发现这些巨大的改进。
“我们不想说这是一个新的系统,”他告诉我。劳动节之后第二天下午5:36,他们向10%的用户推出了中文到英语的神经翻译服务,没有将切换告诉任何人。 “我们想确保它能行得通。最理想的情况是,它在Twitter上引起了爆炸:‘你看过谷歌翻译有多棒吗?’”
8. 庆祝
在缺乏季节感的硅谷,只有两个感知季节的方法,一是小厨房里水果的变化——仲夏时期是杏李,早秋换成梨和柿子——二是技术进步的曲折。9月下旬一个天气温暖得让人不自在的周一下午,团队的论文终于发布了。论文有31位作者。第二天,谷歌大脑和翻译团队的成员们聚在一起,在翻译部门的小厨房开了一个小小的庆祝会。
夏威夷风格的小厨房的一面墙是一幅有纹理的海滩照片,以及一个小小的装饰着花环的茅草屋似的服务台,中间有一只毛绒鹦鹉,天花板上挂着纸灯笼一样的装饰。那天早上,他们庆祝翻译团队成立十周年,有许多已经在新部门的前团队成员过去了。某种程度上,他们也是庆祝十年的合作努力,在那一天终于得以中途休息。两个团队的工程师和计算机科学家们似乎都很高兴。
“这就像在泥海里游泳,目之所及只有这么远。”Schuster伸手在胸前比划了大约8英寸。
谷歌的神经翻译终于成功了。在庆祝会之前,团队已经测试了1800万条汉英翻译。翻译团队的一位工程师拿着手机到处跑,试图用百度翻译测试汉英整句翻译。任何人听他讲话他都很高兴。他说:“如果同时输入两个以上的字符,它就会超时!”(百度说从来没有用户报告过这个问题。)
消息传得很快,接下来的几周,谷歌已经将神经翻译引入到谷歌翻译的中译英。有些人猜测这是谷歌取得好结果的唯一的语言对。但当时庆祝会上的每个人都已经知道,他们所取得的成就将在11月公之于众。不过到那时,团队的许多人可能已经进入其他项目。
Hughes清了清嗓子,走进这间夏威夷风情的小酒吧。他穿着一件褪色的绿色polo衫,领子有点皱,腹部位置染上了暗色的汗渍。他说,最后有一个问题,然后是最最后还有一个问题,说了论文中存在的一个严重的测试误差,以及系统中有一个奇怪的与符号有关的bug。但一切都解决了,或者至少是暂时已经解决了。庆祝会上人们都安静了。Hughes开会非常高效,他对唠唠叨叨或者一面之词的容忍度很低,但场面的严肃让他停下来。他承认他可能是在比喻,但他认为强调事实很重要,他说,神经翻译项目本身就是“使用不同语言的团队成员之间的合作”。
他继续说道,神经翻译项目是一个“向前的阶跃”,即一种并不连续的进步,是垂直的飞跃,而不是平滑曲线式的进步。与翻译相关的不只是两个团队之间的合作,而且是从理论到现实的实现。他举起香槟:
“为了沟通,”他说,“以及合作!”
工程师们聚在一起,互相看看,发出略显慎重的欢呼声和掌声。
Jeff Dean与Corrado和Schuster一起站在小厨房的中央,他的手插在口袋里,肩膀微微内耸。Dean注意到他的在场令气氛有些凝重,他以非常有他的特点的低调方式,轻快、简洁地补充了一句。
他说,他们同时做成了两件事:“做研究,以及,我估计,在5亿人之前做成了。”
大家都笑了,不是因为这句话夸张了,而是因为它一点也不夸张。
结语:会说话的机器
也许历史上最有名的对人工智能的批判,或者说是以它的名义的断言,即暗示了翻译的问题。1980年伯克利哲学家John Searle提出“中文房间”(Chinese Room)实验,借以反驳强人工智能的观点。在Searle的思想实验中,一个对汉语一窍不通,只说英语的人被关在一间只有一个开口的封闭房间中。房间里有一本用英文写成的手册,指示该如何处理收到的汉语讯息及如何用汉语相应地回复。房外的人不断向房间内递进用中文写成的问题。房内的人便按照手册的说明,查找到合适的指示,将相应的中文字符组合成对问题的解答,并将答案递出房间。房内的人很快就熟悉手册指示的内容,他的答案也很快变得“与中文母语者的难以区分”。难道房内的人“理解”了中文吗?Searle认为显然不是。
在上述过程中,房外人的角色相当于程序员,房中人相当于计算机,而手册则相当于计算机程序:每当房外人(程序员)给出一个输入,房内的人(计算机)便依照手册(程序)给出一个答复(输出)。而正如房中人不可能通过手册理解中文一样,计算机也不可能通过程序来获得理解力。Searle后来写道,这个计算机的隐喻,引出了这样一种观点:“有正确的输入和输出,并且被正确编程的数字计算机,将因此具有心智,正如人类具有心智一般。”
但即使像谷歌这样庞大的创新机构也将面临这种自动化浪潮的威胁,一旦机器能够从人类的话语学习,即使是程序员这类的舒适工作都将受到威胁。
【编者按】本文转自新智元。文章来源:NYT,作者:Gideon Lewis-Kraus,编译:胡祥杰、王楠、朱焕、刘小芹。
最后,记得关注微信公众号:镁客网(im2maker),更多干货在等你!
硬科技产业媒体
关注技术驱动创新