框架化问题
汉明以一个陷阱开始。"机器能思考吗?"听起来像是一个简单的是或否问题。但他辩称,这个问题隐藏了三个独立的难题:什么算作机器,什么算作思考,以及这个问题是否有意义的答案。
他花了一年时间试图找到他会相信能思考的最小程序。一年失败后,他得出结论,他一直在问错误的问题。也许思考不是一个二元属性。也许它有程度之分。
他转变了框架:不问'机器能思考吗?',而是问'机器在多大程度上能减轻生活中的智力负担?'这个问题直接指向实用性,而不是形而上学。
确定性的危险
汉明警告说,两个极端都带来专业风险。相信机器不能思考:你将低估它们的使用,落后于人。相信机器显然能思考:你将过高估计它们,构建以你没有预料到的方式失败的系统。
两种信念都不安全。你必须发展自己经过深思熟虑的立场。
图灵测试
艾伦·图灵在1950年提出了一个行为测试:如果一个人在电传打字机前无法将人类与适当编程的机器区分开来,那么根据定义,这台机器'思考'。
汉明尊重这一举措的聪慧。图灵避免了关于内在体验的无法回答的哲学问题,用可观察的行为取代它。这是很好的科学直觉。
但汉明有一个结构性的反对:图灵的测试违反了标准的科学方法。科学从最简单的问题开始,而不是最难的。如汉明所说,图灵的测试是先难后易。它在我们理解简单学习或遵循规则之前,就评估完整的对话智能。
无法用语言表达的东西
汉明关于机器智能极限的中心论点:并非所有人类知识都能转化为规则或指令。有些知识抵抗形式化——不是因为我们缺乏努力或智力,而是因为言语化不是恰当的媒介。
1980年代的专家系统试图将专业知识捕捉为规则库:如果症状A且症状B,那么诊断C。它们在狭窄、定义明确的领域工作良好。它们在这些领域的边界处失败了,正是在那里,经验丰富的从业人员的隐性知识最重要。
化学家对哪个反应会进行的直觉、经验丰富的焊工对合适弧间隙的感觉、外科医生感知组织何时看起来不对劲的敏感度——这些不仅仅是等待被表述的规则。汉明辩称有些可能永久无法编码化。
为什么这对自动化很重要
基于规则的系统在定义明确的领域的中心做得很好。它们在边界处失败。经验丰富的从业人员生活在边界处。这种不对称性决定了自动化可以做什么,不能做什么。
识别隐性知识
迈克尔·波兰尼的短语表达了这一点:'我们所知道的比我们能说的要多。'他用人脸识别的例子——大多数人可以立即识别成千上万的面孔,但无法描述他们使用的规则。
汉明将这一点与专家系统联系起来:更深层的问题不是我们还没有写出规则;而是对于某些领域,没有完整的规则集存在。
4×4×4井字棋
汉明以4×4×4三维井字棋作为他的工作示例。棋盘有64个方块和76条获胜线。二维井字棋有已知的平局策略;它不展示任何有趣的智能。4×4×4版本足够难,需要真正的启发式方法。
程序的结构
第1步:列举合法走法。
第2步:偏好'热点'——角和中心有比边或面心方块更多通过它们的获胜线。使用立方体的中心-角对偶性:存在一个立方体的反演,将角发送到中心,中心发送到角,同时保持所有76条线。
第3步:在大致相等的走法中随机选择。确定性走法让耐心的对手映射你的策略并找到漏洞。随机性防止系统性的被利用。
第4步:按优先顺序应用连续规则。
连续规则,按优先顺序:(1) 如果存在获胜走法则赢;(2) 阻止对手的获胜走法;(3) 如果可用则制造分叉;(4) 阻止对手的分叉;(5) 进行强制走法;(6) 回到启发式方法。
注意结构:确定性规则涵盖明确定义的情况。启发式方法处理其他所有情况。它们之间的线界正是隐性知识开始的地方。
塞缪尔的跳棋程序
IBM的阿瑟·塞缪尔写了一个跳棋程序,因为击败州冠军而闻名。使它显著的原因:它使用了学习机制。塞缪尔参数化了评估函数(权衡棋盘控制、王优势、活动性、棋子钉制等),然后让两个具有略有不同参数设置的程序副本彼此对弈。表现更好的版本存活下来。
这是参数搜索,而不是规则发现——但它以有意义的意义构成学习。程序改进了,而无需程序员明确写出更好的规则。
汉明问:塞缪尔的程序在做出令人惊讶的走法时是否表现了原创性?你无法证明它做过,但你也无法证明你有任何排除跳棋程序的意义上的原创性。
专家系统及其极限
1970-80年代的专家系统代表了将专业知识形式化为机器可执行规则的最系统的尝试。医学诊断、地质调查、财务分析、电路设计——每个领域都吸引了自己的基于规则的系统。
在定义明确的子问题中的表现通常令人印象深刻。但系统共享一个失败模式:当问题超出规则覆盖范围时它们工作良好,然后彻底失败。人类专家优雅地降级;规则系统从悬崖上掉下来。
汉明确定的根本原因:构建专家系统的人没有系统的方法知道什么是缺失的。专家可以表述他们的规则——但专家用他们的无法编码化的判断来决定哪些规则在给定情况下适用。那个元级别的判断从未进入系统。
对你职业生涯的正确问题
实际有用的问题不是'机器能思考吗?'而是:对于你领域中的任何任务,关键困难是否存在于规则覆盖的中心,还是在判断和隐性知识操作的边界?自动化可靠地处理前者。它在后者中挣扎。你的职业策略来自知道这种区别。