在科技领域,近两年来发展最为迅速,势头最猛的,莫过于正在改变我们生活,正在改变社会的人工智能了。但在正式展现自己研究成果之前,人工智能的发展却并非是一帆风顺,无所畅通的,要想将人工智能最大化的融入到社会各个行业之中,我们最先应该弄清楚的问题便是,到底什么叫做“人工智能”?
今天我的题目是“智能简史”(The Brief History of Intelligence),我想谈一下什么是人工智能,什么是人的智能。我想把AI赤裸裸地剖析在大家面前。
可能大家也听过不少关于AI的演讲,每个演讲人背后可能都有某些目的。我今天是抱着科学的目的,谈一下AI到底能做什么、今天能做什么、未来能做什么,没有保留地剖析给大家。
AI的诞生
今天AI已经红到不能再红,包括美国政府、中国政府都非常重视,甚至都要制定政策和策略。过去这两三年可以说是AI的一个爆发点。当然也有不少关于AI的担忧。1950年,《时代》杂志就已经提出了AI的某种威胁:“现代人已经适应了拥有超人肌肉的机器,不过拥有超人大脑的机器还是挺吓人的。设计这些机器的人试图否认他们正创造像他们自己一样拥有智慧的竞争者。”(Time,January 23rd,1950)
今天埃隆·马斯克说AI要毁灭人类,但是1950年这种议论就有了。1950年的时候,二战结束才五年。当年做计算机是二战时为了造原子弹,每台计算机都要比一个房间大,全世界也不超过十台。这时就已经有人担忧,以后造的计算机比人类聪明怎么办?我们人类一直就对智能充满了期待,而且非常怕受到伤害。
返回来说,为什么AI会这么热?第一个理由很简单,没有人愿意天生愚蠢(Natural Stupidity),那就只能做人工智能(Artificial Intelligence)。这个略带玩笑,真正的理由其实是人类有智能(Human Intelligence)。人类之所以可以主宰万物、主宰地球甚至宇宙,靠的就是脑子。如果你看《人类简史》或者《未来简史》,尤其是《未来简史》提到的都是AI、大数据。
那么,什么是AI?AI严格说起来是61年前的1956年发生的,但是这个定义今天已经被打破了。因为我们学AI的人非常清楚,在学术界AI是有严格的定义的,但在今天,我可以说任何好的而且可以用计算机实现的事情都变成了AI。比如,只要你发明一个新的网络协议或者算法,大家觉得你的想法非常好,最终由计算机实现了,不就是人工智能么?所以,今天从公众角度,只要是一个好东西,能被机器实现,就是人工智能。
但我觉得,我们人有时也会被洗脑。今天AI领域炒得很热的一个东西是无人驾驶。大家觉得非常难。无人驾驶还被分成了一到五个水平,最高的一级就是没有司机。但是1912年,辛亥革命那一年,就有了人类的第一个飞机的自动驾驶(Autopilot)。我想,自动开飞机,不敢说一定比开车难,但是也不见得会比自动驾车简单。那为什么大家不说飞机的自动驾驶是AI呢?
AI早期的英雄们
讲AI的历史,我们可以先从电脑的历史谈起。电脑是从哪里来的呢?今年是图灵奖60周年,前几年是图灵100年的诞辰。图灵当然是非常了不起。他提出一个假设(Church–Turing thesis),任何可以被计算的东西(用算法描述)就可以用图灵机去算。这个是很了不起的,虽然无法证明。所以图灵在那时就觉得,电脑应该可以模拟我们大脑里所有的想法(Computers can simulate any process of formal reasoning),也就是为什么在那个时候就有了图灵测试(Turing Test)。
但是真正AI这个字眼,要等到1956年,是在达特茅斯(在波士顿附近的一个很偏僻的小镇上,也是常青藤的学校之一)举行的一个夏季会议上提出的。当时有五个人参加,MIT的John McCarthy和Marvin Minsky,CMU的Allen Newell和Herbert Simon以及IBM的Arthur Samuel,这五个人就是AI的开山鼻祖。
这五个人除了Arthur Samuel以外,全部拿了图灵奖。其中,Herbert Simon 在中国也很有名,他同时拿了图灵奖和诺贝尔经济学奖。他和Allen Newell 两个人创立了卡内基梅隆大学(CMU)。其实CMU计算机科学系就是这两个人为了做AI而成立的。当时,他们从美国军方的国防高等研究计划署(DARPA,The defense Advanced Research)拿到了一些资助。
John McCarthy是我的师祖,我的老师Raj Reddy是他的学生。John McCarthy是真正把人工智能取名叫做AI的人。现在公认的AI之父有两种说法,大部分的说法是John McCarthy;也有人说是图灵。John McCarthy那时是在MIT,后来到了斯坦福。
所以为什么说MIT、斯坦福、CMU到今天都是AI的重镇,更别说当年了,因为当时就只有这三家,都和这些人有关。Marvin Minsky1956年时还在一个小公司做事,并不在MIT,直到1956年开了达特茅斯会议之后,他才被John McCarthy邀请到了MIT。结果,John McCarthy后来自己去了斯坦福成立了AI实验室。
我自己是在1984年开始学习AI,我到CMU也是因为AI。当时我读AI的论文的时候,基本上都读不懂,有几个原因。第一个,自己的英文不好,尤其是在当年的条件下;然后AI的论文里面通常没有数学公式,都是文字;然后这些文字里很多是认知心理学,我当时根本读不懂。后来才觉得读不懂是因为一些很简单的东西故意用很复杂的文字写出来。第二点是,这些文章里面很多是讲脑,我也读不懂。正是因为读不懂,也就觉得这个东西非常高深,所以一定要好好学习。
到目前为止,AI总共有八个人,Marvin Minsky(1969)、John McCarthy(1971)、Allen Newell(1975)、Herb Simon(1975)、Edward Feigenbaum(1994)、Raj Reddy(1994)、Leslie Valiant(2010)、Judea Pearl(2011)得了图灵奖,比例还是蛮高的。前四个人在1975年以前就得了图灵奖,1975年以后图灵奖就不颁给AI了。一直到1994年,几乎20年以后,我老板和Edward Feigenbaum又得了图灵奖。最近的Leslie Valiant,Judea Pearl也得了图灵奖,所以AI又解冻了。所以从得图灵奖,也能看得出AI研究的冷热。
1990年前的AI
我当年学习的AI,和今天是很不一样的。早期的AI都是在学习如何模拟人的智能行为,可以叫仿脑,这是它的主轴。我特地翻阅了下我大学的教科书,上面还有我的笔记。这些书在当年的1980年代是非常经典的,总共三本,分别由MIT、CMU,斯坦福出的。这些书都已绝版,连亚马逊也找不到,非常珍贵。当年教的AI的这些东西,现在很多人都已经没有人能谈了。但其实最近AI的复兴,包括未来AI要如何往前走,都必须要回去研究这些东西,否则是绝对做不到人的智能的这个地步的。
当时研究什么呢?其一是知识表示(Knowledge Representation)。我们说隔行如隔山,比如学药学的、学医学的、学计算机的、学化学的,每一个行业都是不一样的,知识表示了之后还要满足约束条件求一个解(Constraint satisfaction),人很多时候是在做这个事情。当年,搜索也是非常大的一支(包括State-space representation、pruning strategy、深度搜索、广度搜索、A*搜索、beam search、Game tree search、Alpha-beta搜索等),今天的互联网因此受益很多。
虽然当时做这个时他们并没有想到互联网,当时想的是如何用搜索来实现智能。特别是包括Game Tree Search,做计算机下棋这件事情,一直以来都是AI研究的。早期最早叫Checkers,计算机很快打败了人;后来做象棋,后来做围棋,如今所有棋手都下不过机器人。
当时甚至有专门的编程语言,是为AI而设计的,做AI的人就要学这些语言。有一个叫Lisp,还有一个叫Prolog。我想今天已经没有人听过这些东西了,但是在当年是不得了的,做AI都要学这些。
然后还研究什么呢?认知心理学,非常重要。我们讲AI,很多都是认知。有一个词叫Heruristics,今天已经没有人用这个词,其实还真是AI。因为Heruristics是在你没有数据的时候,或者是很少数据的时候,要用你的直觉来解决问题。
还有的研究是做认知的模型(Cognition Modeling),比如GPS。当然不是指GPS定位,而是一般求解器(General Problem Solver)。难道是什么问题都能解么?Allen Newell和Herbert Simon得图灵奖就是因为GPS。而且你真的去读论文的话,很厚。它甚至一语两思,把这个东西转一下,去研究行为经济学也可以,所以Herbert Simon又拿到诺贝尔经济学奖。
还有一种模式叫产生并测试(Generate and Test),大概的意思就是我们所谓的大胆假设、小心求证。这些认知的模型看起来很神,基本上它就是把难的东西用数据来表示。但是人的确是这样做的,尤其是到后来,特别是语义、认知,真的很多时候都是在做产生并测试,这个模型本身是没错的。
接下来的一项研究要讲讲我老板。他拿图灵奖,一方面是因为他是语音大师(这个可能也有我的一点贡献);另外一个导致他得图灵奖的叫做黑板理论。当年搞这些认知的模型的是非常重要的,甚至可以得图灵奖。
另外有研究涉及Semantic(Frame)我们今天还在用。今天做Siri,微软做小冰、小娜,或者做Google助手、百度度秘,用的是这个技术。
还有一个东西在当年非常红,叫做专家系统。而且最早期的专家系统很多东西应用在医疗,很有名的叫MYCIN(medical diagnosis),就是传染疾病了,靠一些规则去诊断。
当然还有专门研究感知的,比如,我就是做语音和自然语言处理。那语言怎么做呢?就是有点像大家学英文的文法。但是文法都有例外,一有例外就搞不定,所以这些东西进展都不是那么好。
还有就是计算机视觉,今天也红得不得了,比如刷脸。可是在当年的计算机视觉和所谓的机器人,在当时是非常可怜的一个项目。当年都是只能研究玩具样的问题(toy domain),做的东西都是方块世界的理解(Block-world understanding):就是有一堆砖块,砖块是这样的状态,怎么样变成那样的状态,来回搬砖块。最多了不起了研究一个桌子。一辈子做计算机视觉,就研究椅子、研究桌子——还不是两个都研究,只研究一个。当年能做的只有这些东西。
然后是机器学习。机器学习大概是在1980年代开始,但是当时的学习也是研究人怎么学习,而且有一大堆机器学习。今天的机器学习变得很单一,就是深度神经网络一个,当年有很多种:比如有被告知和指令学习(Learning by being Told & from Instruction);有通过改正学习(Learning by Correcting Mistakes);有基于训练神经网络的学习(感知器)等等。1990年以前的AI,和今天有很大的不一样。