揭秘Google两大超级工程师:AI领域绝无仅有的黄金搭档

时间:2018-12-21 12:14:05 来源:高滩岩资讯网 作者:匿名



根据雷锋的说法,无数的工程师参与了谷歌从一家初创公司到一代巨头的成长,其中杰夫迪恩和桑杰热狗是唯一两位达到谷歌高级研究员级别(11级)的超级工程师。他们俩仍然是很有友谊的好朋友。于是,《纽约客》杂志通过一篇长篇文章描述了这两个人的故事,而雷锋网在不改变原意的情况下编写了这篇文章。

2000年3月的一天,谷歌最强大的工程师中有六位聚集在公司的临时“战争室”,当时搜索巨头遇到了前所未有的麻烦。在新千年的十月,谷歌的核心系统(抓取网页以建立索引的系统)突然崩溃。虽然用户仍然可以在Google上搜索,但他们实际上是在5个月前查看过时的数据。

事实上,当时的情况比谷歌工程师意识到的还要糟糕。谷歌联合创始人拉里佩奇和谢尔盖布林都要求爷爷告诉奶奶借用雅虎的搜索引擎。他们还向用户吹嘘Google的索引比以前大10倍,并与互联网完全同步。如果他们过去失败,可以想象后果。

这个临时的“战争室”相当简陋。为了尽快完成工作,Google工程师直接将门框起来作为桌面。当时,27岁的克雷格·西尔弗斯坦也搬到了“战争室”,作为谷歌的第一个员工,他在创业初期就加入了布林,并且还开始重写了很多代码。

经过四天四夜的战斗,他和一位名叫Bogdan Cocosel的罗马尼亚工程师没有收获。 “我们当时所做的分析毫无意义,”西尔弗斯坦回忆道。 “哪一点不对,但我们找不到原因。”已经在战争室里待了两个多月的Sanjay Ghemawat加入了谷歌几个月,还有一位老同事杰夫·迪恩将他介绍给搜索巨头。这两个程序员都是超级铁人,他们甚至爱上了编写代码。在“战争室”中,杰夫将车站直接搬到桑杰。后者敲了敲键盘,前者纠正了它。

在对索引进行一些研究之后,他们发现一些关键字在搜索过程中直接消失了。例如,如果您去搜索“邮箱”,则无法找到结果。有时,搜索结果仍处于混乱状态。然而,即使经过几天的“排雷”,两人仍然找不到致命的虫子。

程序员有自己的工作逻辑。他们有时将软件概念化为不同层次的层次结构,冒险进入架构的底层意味着处理电力和硅。在转瞬即逝的情况下,在“战争室”工作的第五天,Jeff和Sanjay开始怀疑问题不在于软件逻辑,而在于物理层面。因此,他们将混乱索引文件转换为最原始的形式:二进制代码。他们想看看机器在做什么。

这个测试确实是一个奇迹。 Sanjay发现最初由0表示的数字是1.在Jeff和Sanjay将所有串行命令集成在一起之后,他们发现每个命令都有问题,并且机器的内存像这样搞乱了。

谷歌的硬件错误在过去几个月里有所增加,而这几个月正处于计算机设备快速扩张的时期。一般来说,计算机硬件崩溃的可能性很小,但是在基数很大之后,事情就不那么简单了。主板过热,电缆松动或硬盘坏道可能导致硬件崩溃。与此同时,机房的一些设备可能永远不会转弯,而其他设备则没有任何警告的迹象。当然,我们必须考虑到环境因素的变化,超新星爆炸释放的宇宙射线可能会损坏大量的计算机芯片,让0和1逆转。事实上,像美国宇航局和金融机构这样的特殊单位等计算机系统可以解决这些问题,但当时谷歌是一家创业公司,他们购买的廉价电脑无法拥有这些附加功能。此外,随着计算集的不断扩大,不应该出现的硬件问题已经不可避免。

找到根后,杰夫和桑杰迅速开始修复。不久之后,新指数完成,临时“战争室”也被解散。在竞选活动结束后,谷歌的第一名员工西尔弗斯坦变得非常困惑。他是一个很好的Bug猎人,但这次他没有和同事们深入挖掘。

在2000年3月索引崩溃之前,Google系统的源代码总是由斯坦福大学的联合创始人编写。事实上,佩奇和布林不是专业程序员。他们是学术界从事搜索技术实验的人。一旦他们的网络爬虫崩溃,屏幕上就不会显示有用的诊断信息。一些早期的Google员工参考了由Page和Brin编写的BigFiles软件,但是一旦他们在几天内建立的索引代码出现问题,一切都必须回来。

就硅谷而言,谷歌搜索引擎根本无法扩展。

在用户看来,他正在“搜索网络”,但实际上,搜索引擎已经在网络索引中复制了用户的快捷方式。这是真实的地图。 1996年,Google没有更改其名称(当时称为BackRub),而Page中的秘密地图很小,可以轻松加载到计算机中。然而,在4年的3月,世界上最强大的超级计算机无法容纳这张地图。谷歌唯一能做的就是继续购买电脑并将它们分组到计算机中。

作为一家创业公司,计算机的外壳完全浪费了Google的资产,因此他们的房间堆积在各种“内脏”中。由于硬件故障,圣克拉拉大楼1,500个单元中只有1200个可以转向,各种即时错误使系统效率降低。为了生存,Google必须无缝连接这些经常调和的设备。刚刚取得巨大成就的杰夫和桑杰已经承担了这个重担,领导苹果公司Mac开发的Wayne Rosing成为他们的副手。 2000年11月加入Google的工程师表示Jeff和Sanjay真的很有能力。它们不仅每周工作90小时,而且还编写代码以防止单个硬盘驱动器崩溃整个系统。与此同时,他们在爬行动物过程中增加了检查点,即使他们遇到问题,工程师也不必完全彻底改造它们。通过新的编码和压缩方案,Jeff和Sanjay成功地将系统容量翻了一番。

2011年,他们证明谷歌的索引可以直接存储在RAM而不是传统的机械硬盘中。在所有挑剔的用户需要更快的搜索速度之后,这一发现直接重塑了Google的未来。然而,即时搜索的前提是强大的计算能力,而计算能力则是花钱。在关键时刻,Jeff和Sanjay再次站起来成为主力。他们用软件“钉针”。

在2005年离开之后,Alan Eustace成为Google工程团队的负责人。 “如果你想快速解决这些异常问题,你必须掌握最深的细节,”尤斯塔斯说。 Jeff和Sanjay已经克服了无数难题,他们熟悉计算机的细节。杰夫曾经写过一个清单,在他看来,清单上的延迟数字对于每个程序员来说都应该是熟悉的。事实上,这些数字是难以理解的。它们是嵌入Jeff和Sanjay大脑的独家产品,由它们提供的Google核心软件使系统容量达到一个数量级。与此同时,Google数据中心技术人员还听取了Jeff和Sanjay的观点,后者开始用软件生成的指令替换硬盘驱动器,电源和内存模块。任何熟悉谷歌的人都知道搜索巨头的工程师分为10个等级,可以升级到10级。你是业内的顶级专家,这个荣誉可以永远跟随你。然而,当之无愧的Jeff和Sanjay当然是特别的,他们是Google唯一的12位超级工程师。

Google的校园距离山景城仅有几分钟车程。该建筑物很低,没有设计特色。有很多彩色玻璃。去年夏天的一个星期一,完成了他们生意的杰夫和桑杰去了一家名为Big Table的餐馆,餐馆的名字与他们合作的系统有关。

在一次采访中,他们就像一对夫妻,他们的共同记忆支撑着整个故事情节。

“我们都可以手写代码,”桑杰说。 “我们不断进行改变和重写,但总觉得它与上个月没什么不同。”

“或者只是提供索引数据的方式略有不同,”杰夫补充道。

“这些微小的差异是我们的突破,”桑杰说。

“这是本质,”杰夫补充道。

“我不知道如何建立双人合作模式,”桑杰回忆道。

“在加入谷歌之前似乎已经开始,”杰夫说。

“但你为什么要与两个人共用一台电脑呢?”桑杰问道。

“因为办公室中间有一家冰淇淋店,”杰夫回答道。

现在杰夫有两个女儿,但桑杰还未婚。每当杰夫旅行时,桑杰都会加入他们,每周五的晚餐更加困难。

社会学家迈克尔·法瑞尔在2001年的书中指出:“支持新愿景基础的大多数脆弱见解不是在整个团队聚集在一起时,也不是在成员单独工作时,而是在两者中。两个合作和相互支持出现了。“甚至约翰·列侬(约翰·列侬,英国摇滚乐队“甲壳虫乐队”的成员)也表示,他不可能没有保罗·麦卡特尼(披头士乐队的前成员)。毕竟,一个人很容易走入死胡同,太多人会选择困难。在大多数情况下,双人合作通常是“一人导航,一人驾驶”,但Jeff和Sanjay有点不同。它们有时看起来像是心脏的两半。

1968年7月,杰夫出生在夏威夷。因为他的父母是两位医学专家,杰夫在他年轻的时候经常搬家。然而,他很早就接触过计算机,而高中开始做流行病学数据收集项目,而数据库最终销售了数万份,节省了大量的生命。

当他获得博士学位时,杰夫专注于编译工具,将人工编写的代码转换为计算机优化的机器语言。说实话,这是一项相当无聊的工作。

在攻读康奈尔大学之前,Sanjay根本没有接触过电脑。在印度北部工业城市长大的技术天才有一位父亲是植物学教授。与此同时,他们的家人仍然是一个学术家庭。许多孩子都被美国着名大学录取。 Sanjay甚至生活在一个好兄弟的阴影下。解不开的。

当他还是麻省理工学院的研究生时,桑杰遇到了很多朋友。他是一个安静但自豪的人,但他似乎对约会不感兴趣。

在谷歌,杰夫的受欢迎程度要??高得多,但知道如何知道的人,桑杰也是一流的天才。 “杰夫非常看好想法和原型,而桑杰是能够坚持到底的人,”两位老同志威尔森谢谢评论道。在生活中,这两个人外向内向。但是,编写代码时则相反。 Jeff的代码太开拓了,Sanjay更加平易近人。

西尔弗斯坦曾经说过,有些程序员编写的代码太松散了,很难看出他的意图,有些程度太紧凑,看起来很累。 Sanjay正处于两者之中,一切都恰到好处。 “当你想在他的代码中添加一些新功能时,你会发现桑杰已经保留了一个位置。这真是无敌,但我无法弄清楚他是如何做到的,”西尔弗斯坦解释道。2003年,Jeff和Sanjay在四个月内为Google带来了一次重大升级,催化剂是一款名为MapReduce的软件。实际上,当两个人重写Google抓取工具和索引器时,这个想法发生了三次,每次他们解决了主要问题,即协调大量具有不同地理分布的独立计算机才能工作。当这个解决方案诞生时,这意味着Google工程师不必一遍又一遍地重新审视同样的问题。与此同时,该技术已成为允许任何Google工程师操纵数据中心机器的工具。

对于普通人来说,MapReduce绝对是一件令人困惑和复杂的事情。在软件诞生之前,程序员必须弄清楚如何分割和分发数据并安排工作,还必须自己记录硬件错误。使用MapReduce,程序员可以采用结构化方法来思考这些问题,并通过隐藏数据来控制数据分发的细节。

第二年,Jeff和Sanjay用MapReduce重写了Google的爬虫和索引系统。当其他工程师发现软件的强大功能时,两位伟大的神开始使用它来升级谷歌地图。

在这里,我担心有些人会发现谷歌实际上只是一个假装搜索的人工智能公司。 2001年,与Noam Shazeer并肩工作的Noam Shazeer发现Google实际上雇用了大量来自其他公司的拼写检察官,这是一场大型游戏的一部分。 Shazeer编写了一个带有文本统计信息的程序,以确定搜索框中拼写错误的单词。在公司展示之后,大多数程序员都不知道为什么,但在Jeff和Georges Harik加入之后,Shazeer成功地将类似技术整合到Google的广告系统中,而广告是Google的生命线。从那时起,谷歌的反馈循环已经形成,它是谷歌智慧,财富和增长的源泉。与此同时,它也是谷歌规则的权威。

随着MapReduce的普及,Google已经获得了无限的权力来转录用户的语音邮件,回答他们的问题,自动补充用户的搜索并翻译100多种语言。虽然这个系统的基础并不是一个完美的机器学习算法,但当数据足够大时,工作将会很简单。换句话说,数据已成为谷歌的最高指令。

实际上,在Google诞生之前,一些现在更加红色的概念(如分布式计算,云计算和大数据)就诞生了。然而,如果没有Jeff和Sanjay的软件,Google对它们的控制根本达不到目前的水平。用户也可能会感受到一些变化,即Google的云服务变得越来越智能化。

2004年,Jeff和Sanjay撰写了一篇论文,以促进天文学家,遗传学家和其他需要处理大量数据的科学家。关于MapReduce的这篇论文是一个救世主,廉价硬件和移动服务的普及已经产生了大量数据,但很少有公司可以通过软件处理它。

后来,Mike Cafarella和Doug Cutting免费提供了MapReduce,Hadoop,现在几乎是大公司的标准。与此同时,Hadoop已经成为“大数据”的代名词。目前,Facebook使用“Hadoop MapReduce”来存储和处理用户元数据。此外,这个工具也是LinkedIn和Netflix的好帮手。国家安全局(NSA)前负责人兰迪加勒特也对这项技术印象深刻。在分析任务时,它比旧的NSA系统快18倍,它还产生了收集情报的新方法。杰夫是一个不可阻挡的人,一旦他能找到问题的答案,他就会对这个问题失去兴趣。 2011年,云计算的概念最受欢迎。那时,他与吴恩达一起在Google的一个秘密项目上工作,专注于神经网络。事实上,杰夫大学毕业前已经接触过类似的技术,但当时的技术对于从事神经网络来说太不现实了。现在它是不同的。吴恩达告诉他,斯坦福大学取得了很大进展。如果你可以利用谷歌庞大的规模,神经网络可以爆发出巨大的力量。

神经网络不是传统的计算机程序,它们的行为方式并不依赖于程序员。相反,他们依靠输入和反馈数据来改进。大学毕业后,杰夫与神经网络没有多少接触,但他的学习能力。在项目开始之后(谷歌大脑),他花了一天时间,但许多谷歌员工对这项技术持怀疑态度。他认为杰夫领导这个项目是浪费人才。甚至桑杰也无法理解杰夫。行为。

在接下来的七年里,Google Brain团队的神经网络处于语音,翻译和图像识别的低迷状态,让其他公司无法回头看。最终,这项技术得到了Google搜索的支持,再次巩固了他们在行业中的地位。与此同时,Google Brain已成为公司内发展最快的团队。

Cui是2001年加入的工程师,他说Jeff的参与是Google AI项目的转折点。

作为业界顶级系统工程师,Jeff还在AI世界中构建了MapReduce—— TensorFlow。在2015年TensorFlow首次亮相后,它成为人工智能的通用语言。最近,谷歌首席执行官桑达皮采确定了该公司的“人工智能第一”战略,杰夫成为人工智能部门的绝对领导者。今天,杰夫每周4天都在谷歌大脑上,他有超过3000人。由于他的日程繁忙,他每周只能与Sanjay一起编写代码。

既然Jeff和Sanjay走的是一条不同的道路,不是社交的Sanjay没有冷酷的语音助手,但Jeff为他的工作感到自豪。

现在Sanjay是谷歌的“孤独的狼”,他独自工作,不参与管理。这种状态让他很开心,Sanjay不想做杰夫的工作。在谷歌,他为工程师开发了新软件,帮助他们更轻松地集成和控制数十个程序。但是,他仍然会每周参加领导小组会议,做出一些影响公司未来的决定。如果Google是一所房子,那么Jeff负责装修,而Sanjay负责房屋的结构,他还必须加固螺丝和基础。

两个黄金合作伙伴最近有一个新的AI项目,他们正准备培养一个庞大的机器学习模型,以完成数百万个工作。对于这个项目,Jeff已经计划多年,在Sanjay的帮助下,原型产品将能够更快降落。

杰夫的妻子海蒂也说:“他们都开始想念今年的私密时间。”

通过纽约客,雷锋网络汇编

小米科技有限责任公司

相关新闻
新闻排行