第4章 1956:人工智能成为一门学科

1956 年夏天,一批数学家、工程师和研究人类认知的学者来到美国新罕布什尔州的达特茅斯学院。他们并没有在某一天按下开关,让世界上第一台人工智能突然醒来。没有那样一台机器,也没有一个所有人共同见证的“诞生时刻”。有些人只停留了部分时间,参与者对应该研究什么也各有主张。(Nilsson 2010年)

可是,后来的历史仍然不断回到这个夏天。原因不在于这里完成了某个孤立的发明,而在于这份研究计划把一些此前分散的问题放到同一面旗帜下:机器能否使用语言?能否形成抽象概念?能否解决原本只有人会解决的问题?能否改进自己?这面旗帜有了一个新名字:人工智能(Artificial Intelligence)。(McCarthy 等 1955年)

一门学科的形成,通常不像发明一件器具。它更像是在地图上画出一块新区域:许多道路原本已经存在,但从此以后,人们开始把它们看作通向同一个地方。

在“智能”之前,先换一个问题

1950 年,艾伦·图灵发表《计算机器与智能》。文章开头提出“机器能思考吗”,随即指出,这句话中的“机器”和“思考”都可能把讨论拖进无休止的定义争论。他于是换了一个更便于观察的问题:在一种文字交流游戏中,如果提问者无法可靠地区分人和机器,我们应该怎样评价这台机器的表现?(Turing 1950年)

后来,人们把这种思想实验概括为图灵测试。它真正重要的地方,不是给“智能”下了最后定义,而是完成了问题的转换:

与其先解决“思考的本质是什么”,不如先规定一种交互任务,再观察机器能否表现出某些通常需要智能的行为。

这个转换极其现代。今天评测语音识别、围棋程序或语言模型时,我们仍在做类似的事:先定义输入、输出、规则和评价方式,再比较系统的表现。不过,任务成绩和完整智能之间不能画等号。一个系统可能在对话中善于模仿,却缺少稳定的事实判断;也可能在棋盘上远超人类,却不能把同样的能力迁移到厨房。

核心判断

图灵测试是一种把哲学问题改写为行为实验的方案,不是关于意识的检测仪,也不是人工智能的唯一合格线。

图灵的文章还讨论了学习机器。他没有把未来方案局限为一份由程序员手工写完的规则表,而是设想先制造一种类似“儿童机器”的系统,再通过教育使它改变。这个想法要过很多年才成为机器学习的主流,但问题已经出现了:如果最终行为太复杂,能不能让机器通过经验获得一部分能力?

许多支流已经开始汇合

达特茅斯会议以前,“让机器表现出智能”的零件并非一片空白。

逻辑学提供了形式化推理的方法;可计算性理论说明某些符号操作可以由通用机器执行;信息论给出了度量和传输信息的语言;控制论研究反馈如何改变系统行为;神经元的数学模型则提示,许多简单单元连接起来也许能够进行复杂计算。上一章看到的这些思想,来自不同学科,使用不同词汇,也各有自己的研究社群。

还有一条重要道路来自游戏。国际象棋规则明确,胜负清楚,看上去很适合计算机;但几步之后,可能局面的数量便迅速增长。克劳德·香农在 1950 年讨论计算机下棋时,已经区分了穷举大量变化与选择有希望变化的策略。(Shannon 1950年) 这暴露出一个后来贯穿 AI 的矛盾:规则可能很短,可能性却多得无法全部检查。

因此,1950 年代初的研究者已经面对三类不同问题:

问题 机器需要什么 真正的困难
按规则计算 明确的符号和步骤 规则是否足以描述任务
在许多方案中选择 搜索与评价方法 可能性会组合爆炸
从经验改进行为 可调整的内部状态 什么经验能带来泛化

这些问题后来分别延伸出符号推理、搜索、机器学习等路线。1956 年的特殊之处,是研究者开始相信它们可以成为一个共同工程的组成部分。

图 1: 人工智能成为学科以前,自动门与机械计算把动作和算术交给装置,分析机与程序设想提出按操作序列工作的机器,可计算性建立通用符号步骤模型;神经元、信息与反馈研究在 1940 年代发展,1950 年的行为测试和棋类搜索把智能改写为可检验任务,1955 至 1956 年的提案、会议和命名再把这些道路组织成共同研究纲领。

一份大胆的提案

1955 年 8 月 31 日,约翰·麦卡锡、马文·明斯基、纳撒尼尔·罗切斯特和克劳德·香农提交了一份暑期研究项目提案。他们计划在第二年夏天邀请大约十名研究者,在达特茅斯共同工作两个月。提案写下了后来被反复引用的基本假设:

学习的每一个方面,或者智能的任何其他特征,原则上都能被精确描述,以至于可以制造一台机器来模拟它。(McCarthy 等 1955年)

这是一个研究假设,不是已经得到证明的结论。它把非常不同的任务装进同一个计划,包括自动计算、自然语言、神经网络、自我改进、抽象和随机性等。提案者还判断,只要精心挑选的一组科学家共同工作一个夏天,就能在其中一些问题上取得显著进展。

今天读来,这种时间估计显得过分乐观。但若只把它当成一则“先驱者说错了”的趣闻,我们会错过当时的证据。电子计算机刚刚展示了远超人工的计算速度;逻辑可以写成符号;一些过去依靠智力完成的任务开始能够编程。研究者看到的不是凭空幻想,而是从少数成功实验向广阔未知区域作出的外推。

真正的问题是,这个外推跨过了太多尚未被看见的鸿沟。实验室中的题目通常边界清楚、符号干净、目标明确;现实世界却充满缺失信息、含糊语言、例外、噪声和不断变化的环境。完成一道精心选择的题目,距离稳定处理开放世界还有很远。

Logic Theorist:机器怎样证明定理

达特茅斯项目前后,一个程序为这种乐观提供了格外有力的证据。艾伦·纽厄尔、赫伯特·西蒙和克利夫·肖开发的 Logic Theorist 尝试证明《数学原理》中的命题。它不是把每一条证明逐字存入机器,而是从公理和推理规则出发,寻找能够到达目标的变换序列。(Newell 和 Simon 1956年; Nilsson 2010年)

把证明看成搜索,可以先想象一个很小的例子:

  1. 当前状态是已经知道的公式;
  2. 合法动作是应用一条推理规则;
  3. 每次应用规则都会产生新的公式;
  4. 如果新公式与目标一致,搜索成功;
  5. 如果每条规则在每一步都尝试,分支会迅速增多。

人类数学家很少平均地尝试所有规则。看到目标形式后,我们会优先选择“看起来更接近”的方向。Logic Theorist 也使用类似的启发式方法(heuristic):它不保证一开始就选中正确道路,而是利用经验性线索,把有限计算投入更有希望的分支。

技术深潜:启发式不是另一条逻辑规则

必须区分两类知识:

  • 推理规则决定一步变换是否合法;
  • 启发式信息决定在许多合法步骤中先尝试哪一步。

前者关系到证明是否正确,后者关系到能否在可接受的时间内找到证明。如果状态集合记为 \(S\),从状态 \(s\) 可采取的动作集合记为 \(A(s)\),纯穷举会不断展开所有后继状态。启发式函数 \(h(s)\) 则为状态提供一个优先级估计。它可能出错,但只要经常把搜索引向更有希望的位置,就能大幅减少实际检查的分支。

这形成了早期 AI 的一个核心范式:

\[ \text{智能求解} \approx \text{形式表示} + \text{搜索空间} + \text{启发式选择} \]

这个等式不是智能的定义,而是一种工程分解。下一章将看到,迷宫、下棋和规划都能用它描述;同时也会看到,当表示不完整或搜索空间过大时,它为何失效。

研究报告称,Logic Theorist 为《数学原理》第二章最初 52 个定理中的 38 个找到了证明,其中一些证明不同于书中版本。(Newell 和 Simon 1956年) 重要的不是“机器从此成为数学家”,而是更具体的证据:一种通常与人类思考联系紧密的活动,至少有一部分可以写成符号状态之间的搜索。

这项成果也揭示了一种容易延续至今的评价陷阱。程序在目标集合上的成功,证明了机制可行;它没有自动证明同一机制能处理任意数学、理解证明的意义,或者选择值得研究的新定理。演示证明的是它实际完成的任务,不是旁观者从演示联想到的全部能力。

1956 年究竟“诞生”了什么

如果算法、计算机和智能程序都已有先例,为什么仍把 1956 年称为人工智能的起点?至少有四件事在这里汇合。

第一,领域获得了名字。“人工智能”把研究目标直接放在“制造智能行为”上。名称能够进入论文标题、实验室、课程、资助申请和公共讨论。它也划出一种身份:研究者不再只是在做自动机、逻辑、控制或计算机应用,他们可能是在做 AI。

第二,问题被组织成研究纲领。语言、抽象、学习、推理和自我改进不再只是互不相干的奇想,而被视为可以分解、实验并逐步推进的工程问题。

第三,已经出现了可展示的程序。Logic Theorist 这样的系统让讨论不只停留在哲学可能性。机器可以运行、输出结果,也可以在失败时被修改。

第四,一个研究共同体开始形成。不同路线的研究者有了交流、竞争和争取资源的共同场域。学科由此获得持续性:一个项目结束之后,还有新的学生、机构和问题继续进入。

因此,说“AI 诞生于 1956 年”是一种有用的历史压缩,但必须读懂压缩掉了什么。它没有抹去更早的逻辑、神经科学和计算理论,也不表示当年夏天已经形成统一理论。准确一些的说法是:1956 年前后,人工智能作为一个有名称、有纲领、有原型系统和研究共同体的领域开始成形。

为什么早期成功令人信服

站在今天回看,很容易只看见早期系统的局限:题目小、输入经过整理、机器昂贵、程序脆弱。但在当时,程序能够证明定理、玩简单游戏或操作符号,本身就在改变“计算机是什么”的观念。

传统计算任务给人一种印象:人先知道精确步骤,机器只是快速执行。早期 AI 程序展示了另一种可能:人规定表示、操作和评价方式,机器在大量候选中寻找人没有逐步写出的答案。输出仍受程序约束,但求解路径不必由程序员事先完整指定。

证据可以分成不同强度:

已观察到的证据 可以支持的判断 尚不能支持的判断
程序证明了若干形式定理 搜索可用于某类形式推理 程序理解数学意义
程序在规则明确的游戏中选步 启发式能减少部分搜索 同一方法能处理所有现实决策
程序能修改内部参数或规则 某些行为可由经验改变 系统能像人一样自主学习一切

许多关于 AI 的争论,其实是把表格中间一列与右边一列混在了一起。谨慎不是否认成果,而是让结论与证据保持同样大小。

乐观中埋着下一阶段的难题

早期研究纲领作出了一个影响深远的选择:把智能活动表示为机器可以操作的形式对象。棋盘可以表示为局面,证明可以表示为公式,规划可以表示为状态与动作。只要表示成功,搜索就有了落脚点。

但每一次表示也会丢掉东西。真实语言中的一句话依赖语境和常识;现实行动受到连续物理世界约束;专家判断常包含说不完整的经验。一旦关键知识没有进入表示,逻辑再严密也推不出正确结果。即使表示完整,候选数量也可能随问题规模呈指数增长。

这两个困难将支配随后几十年的 AI:

  1. 怎样表示世界中的知识?
  2. 怎样在巨大可能空间中有效寻找答案?

第二部将首先沿着当时最有影响力的路线继续前进:让机器按照规则思考。我们会看到搜索、符号系统、规划和专家系统怎样把早期设想变成真正有用的程序,也会看到一套在小型演示中奏效的方法,为什么在进入复杂世界后遭遇瓶颈。

本章小结

  • 1956 年不是智能机器从无到有的单点时刻,而是名称、研究纲领、原型程序与共同体的汇合点。
  • 图灵把“机器能否思考”改写为可观察的行为问题,但图灵测试不是意识或通用智能的最终定义。
  • Logic Theorist 展示了“形式表示 + 搜索 + 启发式选择”可以复现一部分定理证明活动。
  • 早期乐观有真实实验依据,但从封闭任务外推到开放世界时,低估了组合爆炸、常识和表示困难。
  • 评价 AI 需要让结论与证据相称:会完成一个任务,不等于已经获得人类全部相关能力。

思考问题

  1. 如果一台机器通过了某种对话测试,但经常编造事实,这两种现象是否矛盾?
  2. 在地图导航、考试答题或聊天中,哪些信息属于“合法规则”,哪些更像“启发式线索”?
  3. 为什么给一个研究方向命名,会影响它后来能获得的成果与资源?

延伸阅读

  • 图灵的原始论文值得完整阅读。特别留意他如何逐项讨论反对意见,而不只阅读“模仿游戏”一节。(Turing 1950年)
  • 达特茅斯提案篇幅不长,适合逐项比较当年的研究问题与今天仍未解决的问题。(McCarthy 等 1955年)
  • Logic Theorist 论文适合理工科读者观察早期研究者如何描述符号、控制结构与启发式搜索。(Newell 和 Simon 1956年)

参考文献

McCarthy, John, Marvin L. Minsky, Nathaniel Rochester, 和 Claude E. Shannon. 1955年. A Proposal for the Dartmouth Summer Research Project on Artificial Intelligence. http://www-formal.stanford.edu/jmc/history/dartmouth/dartmouth.html.
Newell, Allen, 和 Herbert A. Simon. 1956年. 《The Logic Theory Machine: A Complex Information Processing System》. IRE Transactions on Information Theory 2 (3): 61~79. https://doi.org/10.1109/TIT.1956.1056797.
Nilsson, Nils J. 2010年. The Quest for Artificial Intelligence: A History of Ideas and Achievements. Cambridge University Press. https://doi.org/10.1017/CBO9780511819346.
Shannon, Claude E. 1950年. 《Programming a Computer for Playing Chess》. The London, Edinburgh, and Dublin Philosophical Magazine and Journal of Science 41 (314): 256~75. https://doi.org/10.1080/14786445008521796.
Turing, Alan M. 1950年. 《Computing Machinery and Intelligence》. Mind LIX (236): 433~60. https://doi.org/10.1093/mind/LIX.236.433.