20世纪80年代初,人工智能领域的研究走入了死胡同。自1950年阿兰·图灵在他的论文《计算机器与智能》中第一次提出图灵测试的挑战以来,人工智能的主导机制就一直是所谓的基于规则的系统或专家系统,它将人类知识组织为具体事实和一般事实的集合,并通过推理规则来连接两者。例如:苏格拉底是一个人(具体事实)。所有人都会死(一般事实)。从这个知识库中,我们(或一台智能机器)可以使用普遍推理规则推断出苏格拉底会死的事实,也就是:如果所有A都是B,x是A,那么x也是B。
这种方法在理论上是可行的,但硬性规则通常很难捕捉到真实生活中的知识。我们可能并没有意识到自己一直在应对例外情况和证据的不确定性。到了1980年,专家系统显然被证明难以从不确定的知识中做出正确的推断。计算机无法复制人类专家的推理过程,因为专家本身无法使用系统所使用的语言阐明他们的思维过程。
20世纪70年代末,人工智能领域针对如何处理不确定性因素展开了激烈讨论,各种主张层出不穷。伯克利大学的罗特夫·扎德提出了“模糊逻辑”(fuzzy logic),其中,陈述既非真也非假,而是一系列可能的真实值。堪萨斯大学的格伦·谢弗提出了“信念函数”(belief functions),它给每个事实分配两个概率,一个表示其“可能”的概率,另一个表示其“可证明”的概率。爱德华·费根鲍姆和他斯坦福大学的同事则提出了“确定性因子”,将不确定性的数值度量融入用于推断的确定性规则之中。
遗憾的是,这些方法虽然具有独创性,却有一个共同的缺陷:它们模拟的是专家,而不是现实世界,因此往往会产生意外的结果。例如,它们不能同时在诊断模式(从结果推理原因)和预测模式(从原因推理结果)中运行,而这正是贝叶斯法则无可争议的优势。在确定性因子方法中,陈述“若起火,则冒烟(具有确定度c1 )”与规则“若冒烟,则起火(具有确定度c2 )”无法被合乎逻辑地结合在一起,强行结合只能引发信念的失控,导致主观性杂质的入侵。
当时的研究者们也考虑过借助概率来解决这一问题,但因为这种方法对存储空间和处理效率的要求非常高,以当时的条件来看根本不可能满足,此类主张一经提出就饱受诟病。我本人进入这个领域的时间相当晚,是在1982年,当时我提出了一个表面上平淡无奇但实际上非常激进的建议:将概率视作常识的“守护者”,聚焦于修复其在计算方面的缺陷,而不是从头开始创造一个新的不确定性理论。更具体地说,我们不能再像以前那样用一张巨大的表格来表示概率,而是要用一个松散耦合的变量网络来表示概率。假设我们只让每个变量与它的几个相邻变量发生相互作用,那么我们就可以克服导致其他概率论者犯错的计算障碍。
这个想法并非凭空而来。它来自加州大学圣迭戈分校的大卫·鲁梅哈特的一篇文章。大卫·鲁梅哈特是一位认知科学家,也是神经网络的先驱。他在1976年发表的关于儿童阅读的一篇文章中明确指出,阅读是一个复杂的过程,其涉及许多不同层次的神经元同时发挥作用(见图3.4)。有些神经元仅负责识别个体特征,比如是圆圈还是线条。在它们之上,另一层神经元则负责将这些形状组合在一起,形成关于字母可能是什么的猜想。图3.4中,我们大脑中的神经网络正在为辨别第二个词语到底是什么而加班加点地工作。在字母层面上,它可能是“FHP”,但在词汇层面,这个字母串是没有意义的。在词汇层面上,这个词更可能是“FAR”、“CAR”或“FAT”。神经元将这些信息向上传递到句法层面,我们因此判断出在“THE”之后出现的应该是一个名词。最后,这些信息被传递到语义层面,我们进而意识到因为前一句提到了大众汽车,所以这个短语很可能是“THE CAR”,代指同一辆大众汽车。关键的一点是,所有的神经元都是同时来回传递信息的,自上而下,自下而上,自左向右,自右向左。这是一个高度并行的系统,与我们此前对大脑的认知,即它是一个单一的、集中控制的系统完全不同。
图3.4 大卫·鲁梅哈特的神经网络草图,表明了我们大脑的信息传递网络是如何学会识别短语“THE CAR”的(资料来源:美国加州大学圣迭戈分校的大脑与认知中心)
在阅读鲁梅哈特的论文时,我更确信了这一点,即任何人工智能都必须建立在模拟我们所知道的人类神经信息处理过程的基础上,并且不确定性下的机器推理必须借助类似的信息传递的体系结构来构建。但是,这些信息具体指的是什么呢?这个问题花了我好几个月才弄明白。我终于认识到,信息是一个方向上的条件概率和另一个方向上的似然比。
更确切地说,我认为网络应该是分层的,箭头从更高层级的神经元指向较低层级的神经元,或者从“父节点”指向“子节点”。每个节点都会向其所有的相邻节点(包括层次结构中的上级节点和下级节点)发送信息,告知当前它对所跟踪变量的信念度(例如,“我有2/3的把握认为这个字母是R”)。接收信息的节点会根据信息传递的方向,以两种不同的方式处理信息。如果信息是从父节点传递到子节点的,则子节点将使用条件概率更新它的信念,如同我们在茶室例子中见到的那样。如果信息是从子节点传递到父节点的,则父节点将通过用自己的初始信念乘以一个似然比的计算得到更新信念,如乳房X光检查的例子所示。
将这两条规则反复应用于网络中的每个节点的做法就被称为信念传播。回想一下就能发现,这两条规则中并没有任何主观臆断或捏造的成分,它们严格遵守贝叶斯法则。真正的挑战是要确保无论这些信息以什么顺序发送出去,事情最终会达到一个恰到好处的平衡,并且最终的平衡将体现对所有变量的信念的正确状态。此处我所说的“正确”是指,最终的概率需要看起来像是我们根据统计教科书的方法计算出来的结果,而不是根据信息传递网络计算出来的结果。
应对这一挑战耗费了我和我的学生、同事数年的时间。而在20世纪80年代末,我们最终解决了这一难题,使贝叶斯网络成为机器学习的一个切实可行的解决方案。在接下来的10年中,贝叶斯网络在现实生活中的应用场景不断得到拓展,包括应用于垃圾邮件过滤器和语音识别工具等。然而,在那个时候,我已经开始尝试攀登因果关系之梯,将贝叶斯网络的概率研究委托给了其他人。