计算机领域大人物:艾伦·图灵牛在哪?

为什么我将最重要的图灵放在最后呢?因为他的工作大家了解得比较多,不需要过多地说明,只需要做一些深度的分析。这样也可以留出篇幅来对这五个人做总结。

今天大家知道图灵,主要是作为计算机之父,而且今天美国计算机协会的最高奖就是以他的名字命名的。另外,顺带说一句,美国电气与电子工程师协会(IEEE)计算机方面的最高奖是冯∙诺依曼奖。我个人觉得后一个奖水平更高,但是有点偏工程。

不过,图灵一生的贡献远不止提出了计算机的数学模型(图灵机),他的贡献非常大,而且非常广。从严格意义上讲,图灵不直接研究计算机,他只是研究可计算性这个数学问题,因此他更应该被看成是一位数学家。此外图灵花了很多时间思考机器智能的本质,并且为了这个目的研究了形式逻辑学。在机器智能方面,他最大的贡献就是提出了一种客观判定计算机是否有智能的标准,即所谓的图灵测试。关于图灵测试,大家可以阅读我的拙作《智能时代》。

今天全世界每年都要搞图灵测试的比赛,看谁设计的计算机回答问题更接近人类的水平。图灵自己不仅仅是理论家,他还试图设计一种能下国际象棋的程序,但是他没有机会实现自己的算法,后来美国洛斯阿拉莫斯国家实验室的科学家们在世界第一台计算机ENIAC上,用他的理论实现了世界上第一个下象棋的电脑程序,不过效果很差,常常一个小时走不出一步棋。但这至少说明图灵在很早就开始思考人工智能的问题,可谓是这个领域的先驱。

图灵一生花精力最多的是在密码学上。在二战期间,他奇迹般地破解了德国人使用的Enigma密码系统,对盟军的胜利有很大帮助。当然,这件事相比他在计算机领域的贡献显得有些平淡。主要原因是,他在计算机领域的贡献今天依然可见,而在密码学上的工作随着二战的结束也就渐渐被人淡忘了。这也应了我关于人生是一条河的说法,图灵作为计算机科学家,是一条很长的河,作为密码学家,是一条很深,但是比较短的河流。

图灵一生的最后几年开始重视生物统计的工作。他和自己的学生古德(Good)有一篇论文,是关于如何解决统计量不足时概率估计的问题。这篇论文只有两页纸,是全世界被引用次数最多的论文之一,今天所有搞概率模型的人都读过这篇论文,我过去在写论文时还要时不时地引用它。


讲到这里,你可能发现图灵远比你知道的牛很多。

那么图灵为什么能做出如此巨大的成就,他牛在哪里?

牛在哪里比较好回答,主要是影响力超越时空,至于他成功的奥秘,我总结了这样五点:

超级聪明,这一点是确定无疑的。

从大师那里获得灵感,我在之前讲过,图灵对可计算问题的思考,受到了冯∙诺依曼和希尔伯特的启发,这也是我们要与聪明人为伍的原因。

死磕精神。世界上再聪明的人都不可能通过蜻蜓点水的方式,接触一个领域就取得一个领域的成绩,所有成功人士光鲜的背后都有看不见的努力。图灵是一个非常喜欢死磕,然后把事情做到极致的人。大家通常只知道他是一个科学家,但不知道他其实还是一位世界级的长跑运动员。图灵的马拉松最好成绩是2小时46分,只比1948年奥运会金牌的成绩慢11分钟。在一次国际田径赛的万米比赛中,他战胜了同年奥运会银牌得主理查兹。图灵为了练长跑,投入了很大的精力,终于达到了世界水平。

在二战期间,图灵在破译德国人的Enigma密码时,一开始毫无头绪,他的同事也没有人知道该如何着手。图灵在一连很长的时间里,吃饭睡觉考虑的都只有这一件事,最后让他找到了德国人设计密码上的一个小破绽,从而彻底破解了该密码机。这件事在事后大家想起来有很大的偶然性,如果按照一般的做法,大家早九晚五地上下班,是无法破译出密码的。

讲到死磕这件事,还要多说两句。我曾经问一个哈佛的教授,申请哈佛的本科有什么秘诀?因为哈佛本科生的录取最难,研究生比较容易。他告诉我,首先一个高中生的成绩当然不能差,然后要有一项做到极致的专长,比如获得小提琴比赛的第一名。我问他,为什么要求学生做到极致?他说,做到极致非常困难,在这个过程中要克服很多困难,如果一个年轻人能够最终走过来,达到极致,他就练就了一身克服困难的本领。这种人将来会不得了。因此,对哈佛来讲,做到极致是一种能力的训练。而图灵就符合这个标准,他练长跑和破解Enigma密码,克服困难的方法都是相通的。

自我约束,或者说答应的事就必须办到。

一个人做事情要让人信得过,被交代的事情,不论有多少困难都要努力做到,答应别人的事情就一定要做。图灵有一年暑假后返校学习时,遇到铁路工人大罢工,学校离家100多公里。一般人遇到这种情况就给学校打个电报,说明情况,学校也不会计较,但是图灵为了赶上第一天上课,提早一天出发,骑车100公里去上学,途中在一家旅馆住了一夜,第二天按时赶到教室。像这样的人在一个组织中就特别让人放心,自然也会得到更多的机会。

一通百通,和冯∙诺依曼一样,图灵在科学上是个通才,但是他是将所学融会贯通,然后一通百通,而不是生硬地跨界。

图灵的故事在2014年被拍成电影,叫做《模仿游戏》,大家如果有兴趣可以去看。


这周我们介绍完五位牛人,总结一下他们的共同之处。

首先,他们都很聪明。

人大部分时候会自我高估,家长更是会高看自己孩子一眼。俞敏洪老师有一次讲了一句不客气的话,大部分孩子都不适合学习奥数,因为智商不够,有那个时间,不如把数学的基本概念搞清楚。只有当人接触到一些超级聪明的人时,才知道自己在智力上没有什么可值得自豪的,需要加倍努力。冯∙诺依曼和图灵这些人尚且很努力,一般智力的人做了那么少一点事就沾沾自喜,实在应该汗颜。

我测过几次智商,大约排在前万分之几,但是相比身边的很多人,我依然明显不如他们,他们有的甚至是在前十万分之一以内。即使如此,那些人也不敢在智力上托大。因此,那些觉得我们家孩子挺聪明的家长,趁早打消这种想法。

但是,智商再高,如果不能做到终身学习,也没有用。我遇到过三个智商明显高于我的人,过去的大学成绩在北大、清华和加州理工都是无人能望其项背的,今天不过是泯然众人矣。事实上,按照《异类》的作者格拉德威尔的观点,智商达到120以后,再高就没有什么帮助了。人能走多远,要看是否能做到终身学习。当我们这些智商一般的人想到图灵和冯∙诺依曼的智商,就该赶快夹起尾巴行动起来。

其次,对一个领域的本质有精深的了解极为重要。这周讲的五个人,都是对自己的研究领域有深刻认识的。以我的朋友奥科博士为例,他深深地理解机器翻译的本质是数学问题,是机器学习问题,而不是语言问题,这才让他做出别人做不出的结果。

第三,目标要设置在比别人高一个数量级。

图灵和冯∙诺依曼自不消说,他们是开创式的人物。高德纳在算法上前无古人的贡献也不多说了,但就他写的程序,能写到几乎没有Bug,就不是一般人做得到的。大部分工程师都在想,反正程序能工作了就好,对它的逻辑和质量没有很高的要求,这就是他们和高德纳的差别。奥科在做机器翻译时,目标不仅定在了超越所有人,而且要领先其他人5年以上。迪恩设计大系统时,自己将规模定在他人已有系统的千倍水平,当他几年后第二次改进自己的系统时,把目标定在自己第一个系统的10倍以上。

第四,他们都是实干家。

迪恩作为Google第一工程师、美国工程院院士,至今仍在写代码。正因为他具有独一无二的价值,他的收入比一大半财富500强公司的CEO还高。奥科的情况也类似,他一个人的代码占了Google早期机器翻译系统的一大半,要知道那个团队当时可是有几十人。今天很多软件工程师,写了两年代码,就想着怎样指导别人,这样一辈子不会成为稀缺人才。

为什么这周我们要介绍这些人?用罗曼·罗兰的话讲,就是在你周围聚集一些巨人,让你呼吸到巨人的气息。