真名叫张晓东,乌镇智库的老大。
全方位解读人工智能的起源,深度点评 AI 历史趣事。
《人工智能简史》全面讲述人工智能的发展史,几乎覆盖人工智能学科的所有领域,包括人工智能的起源、自动定理证明、专家系统、神经网络、自然语言处理、遗传算法、深度学习、强化学习、超级智能、哲学问题和未来趋势等,以宏阔的视野和生动的语言,对人工智能进行了全面回顾和深度点评。
《人工智能简史》作者和书中诸多人物或为师友或相熟相知,除了详实的考证还有有趣的轶事。本书既适合专业人士了解人工智能鲜为人知的历史,也适合对人工智能感兴趣的大众读者作为入门的向导。
书里讲到的人极多,而且绝不泛泛而论,都是用实际的人情世故来带出技术的发展,给人一种不浮夸的感觉。
发明编程语言的、提出科学理论的、发明算法的、编出划时代AI程序的、存在于大学课本上的人物、图灵奖得主等比比皆是。
整本书12章,外加4篇附录。用12篇独立成章的文字,勾勒出了人工智能的发展脉络。
达特茅斯会议:人工智能的缘起
人工智能(英语:artificial intelligence,缩写为 AI)
现在一说起人工智能的起源,公认是 1956 年的达特茅斯会议。
此次会议有10位大牛参与,会议由麦卡锡(1927-2011,发明了LISP编程语言)和他的好基友明斯基一同发起,邀请了很多大牛前来赴会,不想却被纽厄尔和司马贺抢了风头,这二人搞了一个叫做「逻辑理论家」的程序,这可是第一个可工作的AI程序。
开聊达特茅斯会议之前,先说说 6 个最关键的人。
- 麦卡锡(John McCarthy)
- 明斯基
- 塞弗里奇
- 香农(Claude Shannon)
- 纽厄尔
- 司马贺(Herbert Simon)
首先,会议的召集者麦卡锡(John McCarthy)当时是达特茅斯学院的数学系助理教授。
达特茅斯会议的另一位积极的参加者是明斯基。他也是普林斯顿大学的数学博士,和麦卡锡在读书时就相熟。
塞弗里奇被后人提及不多,但他真是人工智能学科的先驱。塞弗里奇是模式识别的奠基人, 他写了第一个可工作的 AI 程序。所谓“顾客永远是对的”(The customer is always right.)就出自塞尔福里奇。
信息论的创始人香农(Claude Shannon)被麦卡锡拉大旗做虎皮也请到会上打酱油。其实麦卡锡和香农的观点并不一致,平日相处也不睦。香农的硕士、博士论文都是讲怎么实现布尔代数的,他一直在贝尔实验室做密码学的工作,图灵在 1943 年曾秘访美国,和同行交流破解德国密码的经验,其间和香农曾有会晤,一起聊过通用图灵机。战后 香农去英国还回访过图灵,一起讨论过计算机下棋。
1950 年香农在《哲学杂志》发表过一篇讲计算机下棋的文章,为计算机下棋奠定了理论基础。香
农比其他几位年长十岁左右,当时已是贝尔实验室的大佬。
另外两位重量级参与者是纽厄尔和司马贺(Herbert Simon)。纽厄尔是麦卡锡和明斯基的同龄人,他硕士也是在普林斯顿大学数学系读的,
司马贺比他们仨都大 11 岁(怀特海比罗素也大 11 岁),那时是卡内基理工学院(卡内基梅隆大学的前身)工业管理系的年轻系主任,他在兰德公司学术休假时认识了纽厄尔。
1953 年夏天,麦卡锡和明斯基都在贝尔实验室为香农打工。
麦卡锡给这个1956年的活动起了个当时看来别出心裁的名字:人工智能夏季研讨会(Summer Research Project on Artificial Intelligence)。
麦卡锡和明斯基的建议书里罗列了他们计划研究的 7 个领域:
(1) 自动计算机,所谓“自动”指的是可编程;
(2) 编程语言;
(3) 神经网络;
(4) 计算规模的理论(theory of size of a calculation),这说的是计算复杂性, 明斯基后来一直认为计算理论是人工智能的一部分,他早期对理论问题时 不时会动动手,后来一手组建了麻省理工学院的计算理论队伍;
(5) 自我 改进,这个是说机器学习;
(6) 抽象;
(7) 随机性和创见性。
除了那六君子外,另外还有 4 人也参加了达特茅斯会议。他们是来自 IBM 的塞缪尔(Arthur Samuel)和伯恩斯坦,他们一个研究跳棋,一个研究象棋。
达特茅斯的教授摩尔(Trenchard More)也参与了,他后来在工业界混的时间长,少为外人所知。达特茅斯会议中一位被后人忽视的“先 知”是所罗门诺夫(Solomonoff)。
人工智能的两大派:逻辑和神经网络都发源于老卡-哲学家卡尔纳普(Paul Carnap)。
现在计算机科学已成为成熟的学科,每个计算机系大都有三拨人: 理论、系统和AI。20 年前的美国计算机圈子曾有一种说法:理论和系统的人互相看不起,但又同时看不起 AI 的人。AI 这几年火了,但曾几何时, AI 的人是被压迫者。哲学曾经孕育了科学,但一旦问题被确定,就分离成为单独的科学。最新的例子是逻辑学,现在的逻辑学家都在数学系和计 算机系,哲学系被彻底空洞化。
司马贺 1957 年曾预言十年内计算机下棋会击败人。1997 年,IBM 的下棋程序“深蓝”击败了卡斯帕罗夫。
2006 年,达特茅斯会议 50 周年时,当时的 10 位与会者中有 5 位仙逝, 活着的 5 位:摩尔、麦卡锡、明斯基、塞弗里奇和所罗门诺夫在达特茅斯 团聚,忆往昔展未来。
自动定理证明兴衰纪
数学哲学有三大派:逻辑主义、形式主义以及直觉主义。
自动定理证明大事记
从专家系统到知识图谱
一个领域成熟与否的主要测度之一是赚不赚钱。人工智能没有商业应用一直是被批评的原因之一。
知识表示一直是人工智能不温不火的一个领域,催生者是专家系统和自然语言理解。
逻辑是最方便的知识表示语言,从亚里士多德开始人们就熟悉,逻辑同时具有各种数学性质。任何一本逻辑入门书都会有那个著名的苏格拉底的例子:
人必有一死,苏格拉底是人,所以苏格拉底必死。
框架(Frame)就是类型。金丝雀是鸟,所有鸟的性质自动流传给金丝雀,鸟能飞,金丝雀也能飞。苹果手机是手机,手机能打电话,苹果手机也能打电话。框架导致了面向对象(OO,Object-Oriented)的设计哲学, 相关的程序设计语言都受此影响。从这个意义上还真验证了:当一个概念有了成熟的实现时,就自动脱离了人工智能。
2010 年 Metaweb 被谷歌收购,谷歌给它起了个响亮的名字“知识图谱”。
第五代计算机的教训
1978 年,日本通产省(MITI,Ministry of International Trade and Industry) 委托日本计算机界大佬、时任东京大学计算机中心主任的元冈达(Tohru Moto-Oka)研究下一代计算机系统。
当时的计算机工业按照电路工艺划 分计算机的发展:
第一代计算机是电子管,
第二代是晶体管,
第三代是集成电路,
第四代是超大规模集成电路(VLSI)。
1981 年,以元冈达为首的委员会认真提交了一份长达 89 页 的报告,他们认为第五代计算机不应再以硬件工艺为划分,更应看重体系结构和软件。这份报告的题目就是《知识信息处理系统的挑战:第五代计算机系统初步报告》。报告提出了 6 种先进的体系结构:
(1) 逻辑程序机,
(2) 函数机,
(3) 关系代数机,
(4) 抽象数据类型机,
(5) 数据流机,
(6) 冯诺伊曼机上的创新。
五代机的衰落在 1988 年就已露出端倪。五代机没有能证明它能干传统机不能干的活,在典型的应用中,五代机也没比传统机快多少。
神经网络简史
I bet the human brain is a kludge.
人脑就是一台计算机。
——Marvin Minsky(明斯基)
自图灵提出“机器与智能”起,就一直有两派观点:一派认为实现人工智能必须用逻辑和符号系统,这一派看问题是自顶向下的;还有一派认为通过仿造大脑可以达到人工智能,这一派是自底向上的,他们认为如果能造一台机器,模拟大脑中的神经网络,这台机器就有智能了。前一派,我想用“想啥来啥”来形容;后一派就称之为“吃啥补啥”,估计他们的 思想来源于中国古代的原始思维,套一句庸俗的哲学词,前者偏唯心,后 者偏唯物。这两派一直是人工智能领域里“两个阶级、两条路线”的斗争, 这斗争有时还你死我活。
模拟神经网络的原创文章发表于 1943 年,两位作者都是传奇人物: 麦卡洛克(Warren McCulloch)和皮茨(Walter Pitts)。
神经网络研究的后一个大突破是在 1957 年。康奈尔大学的实验心理 学家罗森布拉特(Frank Rosenblatt)在一台 IBM-704 计算机上模拟实现了一 种他发明的叫作“感知机”(Perceptron)的神经网络模型。这个模型可以 完成一些简单的视觉处理任务。这在当时引起了轰动。
而人工智能领域最火的词儿就是“深度学习”。神经网络由一层一层的神经元构成。层数越多,就越深,所谓深度学习就是用很多层神经元构成的神经网络达到机器学习的功能。
理论上说,如果一层网络是一个函数的话,多层网络就是多个函数的嵌套。
深度学习的实测效果很好。辛顿一直用深度信任网络做图像识别, 在 2012 年举办的图像识别国际大赛 ILSVRC(ImageNet Large Scale Visual Recognition Challenge)上,辛顿团队的 SuperVision 以绝对领先的成绩击败众竞争对手拔得头筹。该比赛用 1000 万张图像训练,用 15 万张图像测试, 目标是识别测试图像到底是动物,是花儿,还是船,等等。在 2012 年前, 普遍的错误率在 26%。但 SuperVision 头次参赛就把错误率控制在了 15%之 下,以超过 10%的惊人优势遥遥领先。
计算机下棋简史:机定胜人,人定胜天
1951 年,图灵的朋友斯特拉切(Christopher Strachey)在曼彻斯特 Mark-1 上写了第一款跳棋程序。图灵在 1952 年曾与之对弈一局,轻松取胜。
几乎和图灵同时,冯诺伊曼也在研究计算机下棋,他和经济学家摩根斯顿合作的《博弈论》1944 年出版,其中首先提出两人对弈的 Minimax 算法。香农(Claude Shannon)1950 年在《哲学杂志》发表“计算机下棋程序”(Programming a Computer for Playing Chess)一文,开启了计算机下棋的理论研究,其中主要思路在“深蓝”和 AlphaGo 中还能看到。
IBM 的外号叫 Big Blue,于是新的项目 1996 年被命名为“深蓝”(Deep Blue)。
1997 年 5 月 11 日,卡斯帕罗夫卡认输,“深蓝”成了第一位战胜当时世界冠军的机器。事后,卡斯帕罗夫回忆:第二局是关键,机器表现超出他的想象,它经常放弃短期利益,表现出非常拟人的危险(“showing a very human sense of danger”)。
围棋和 AlphaGo 使用强化学习。
强化学习从 20 世纪 80 年代就被发明,但一直不被重视,是 AlphaGo 使得它发出亮光。
自然语言处理 (英语:natural language processing,缩写作 NLP)
1953 年至 1954 年,IBM 资助美国乔治敦大学(Georgetown)进行了有史以来的第一次机器翻译。
魏森鲍姆(Joseph Weizenbaum)1923 年生于柏林,父母是德国犹太人,他最显赫的成就就是对话程序 ELIZA。现在对话程序有 一个更流行且形象的词儿“聊天机器人”(chatbot 或 chatterbot),但根儿 都在 ELIZA。
一次魏森鲍姆接待一位 BBN 的副总,副总在终端上玩了一会儿以为真是在和一个人聊天,于是走时打 了一句“给我打个电话,号码是 401-1850”,结果终端没回复,把副总气得够呛,其实是他最后一句话没打句号,机器不是傲慢,而是一直在等他结束输入。
2016 年,谷歌发布神经机器翻译(Google Neural Machine Translation, 简称 GNMT)系统,再次大幅提高机器翻译的水平。
向自然学习:从遗传算法到强化学习
哲学家和人工智能
休伯特·德雷弗斯是美国为数不多的欧陆派哲学家之一,他出名主要靠的还是批判人工智能。《计算机不能干什么》,变成了对人工智能 的全面批评。德雷弗斯的书出来后,他马上成了人工智能学界的死敌。
德雷弗斯从以下四个层面批评人工智能。
不同层面 | 人工智能假设 | 德雷弗斯的反驳 |
---|---|---|
生物层面 | 麦卡洛克-皮茨的神经元是 二元的,像布尔电路 | 人脑是模拟的 |
心理学层面 | 纽厄尔-司马贺的信息处理 和规则 | 常识和背景无法用规则表示 |
认识论层面 | 麦卡锡:所有知识都可以形式化 | 人的知识不是形式化的。可以用微分 方程描述星体运动,不意味着星体在 求解微分方程 |
本体论层面 | 世界由事实构成,方法论是还原论 | 人是人,物是物。物理的东西是还原 论。人需要现象学 |
德雷弗斯的批评随着人工智能的进展也与时俱进,但可以总结为多 少有些互相矛盾的两句话:其一,所有人工智能研究者搞的东西都是哲学家玩剩下的,;其二,有好多人能干的事,现在的计算机干不了。
塞尔和中文屋
塞尔是德雷弗斯之后又一位批评人工智能的干将。
所谓“中文屋”思想实验是这样的:假设有个只懂英文不懂中文的人(塞尔的第一人称“我”)被锁在一个房间里,屋里只给“我”留了一本手册或一个计算机程序,这个手册或程序教“我”在收到中文信息时如何用中文应对。屋外的人用中文问问题,屋里的“我”依靠程序用中文回答问题,沟通方式是递纸条。塞尔的问题是:假设屋外的人不能区分屋里的人是不是母语为中文,那么屋里的“我”是不是就算懂中文?塞尔自己认为“我”不懂中文。很明显,这个场景源自图灵测试,只不过图灵测试的环境是英文,而中文屋里既有中文又有英文。
智能的进化
计算机科学起源于图灵 1936 年那篇无论怎么夸赞都不过分的文章 “论可计算的数”,这是人类文明最重要的成果之一。
图灵在这篇文章中定义了后来被他的导师丘奇称为“图灵机”的计算装置: 一条无穷长的纸带,一个读写头在一个控制装置的控制下在纸带上方左移右移,读取纸带上的内容并在纸带上写 0 或 1。图灵的初衷是让他的机器模仿人类计算者(computer),那时 computer 的涵义是人类计算者,而机器计算者是 computing machinery。
人工智能又有强弱之别,强人工智能是说机器会全面达到人的智能,强人工智能有时也会和“通用人工智能”(Artificial General Intelligence)同义;而弱人工智能是说机器会 在某些方面达到人的智能——AlphaGo 就是弱人工智能的代表。
当我们谈论生死时,我们在谈论什么?
苏格拉底说:哲学家只研究“正在死”(dying)和“刚刚死”(being dead)。除了这个啥都不管。
图灵及图灵测试
图灵(Alan Turing)生于 1912 年 6 月 23 日,逝于 1954 年 6 月 7 日, 活了不到 42 岁。生得不伟大,死得不光荣。一方面由于他的性取向,另 一方面由于他在二战中从事过机密工作,图灵在生前并没有被广泛了解。
图灵 1950 年在英国哲学杂志《心》(Mind)上发表文章“计算机与智 能”,文中提出“模仿游戏”,被后人称为“图灵测试”。这篇文章被广泛 认为是机器智能最早的系统化科学化论述。但图灵在 1941 年战时就开始 思考机器与智能的问题,1947 年图灵在伦敦皇家天文学会就机器智能发表 演讲。
严肃的“机器智能”的概念应该就是由图灵 1948 年在这篇 NPL 报告 中最早提出的。
1948 年文章的结尾已经预示了“图灵测试”:设想 A,B,C 是三个水 平一般的人类棋手,还有一台会下棋的机器。有两个房间,C 处于一个房间,而待在另一个房间的可能是 A 或机器。让 B 来做操作员,在两个房 间之间传递对手的棋招。让 C 来判断另一个房间里是 A 还是机器。图灵 没有再进一步说明他的目的。而在 1950 年的文章开头第一节标题就是“模仿游戏”。在“模仿游戏”中,C 是一个提问者,而一男一女 A 和 B 分别 待在两个不同的房间,C 和另外两个房间的通讯只能通过打字机进行。让C 来判别两个房间内哪个是男哪个是女。而进一步让机器分别替换 A、B 和 C,又会怎样。如果 C 不能识别房间里是人还是机器,那么机器就是 有智能的。
冯诺伊曼与人工智能
冯诺伊曼生于 1903 年 12 月 28 日,逝于 1957 年 2 月 8 日。他在数学、理论物理和逻辑领域都做出了很多贡献。
二战期间他为曼哈顿计划工作。 二战结束后,他的大部分精力都花在电子计算机项目上。计算机科学一直都有两条互相交错的路线,工程路线终究可以追溯到冯诺伊曼,而理论的起源则在图灵。他们共同关注的课题是大脑和智能。
冯诺伊曼欣赏并提携了图灵。