(Judea Pearl前几年的各种talk,我只是陆陆续续地看了一些,今年NIPS的讲座还来不及了解,所以可能有疏漏之处。)
我认为从两个方面评价比较妥当:一方面是Judea Pearl在形而上学,尤其是因果关系上的思想;另一方面是他的思想对机器学习领域的重要性。
高赞答主 @陈默 提到Pearl在causality上走火入魔,这一点几乎是无可反驳的。
Pearl一直在试图提出一套「描述因果关系的语言」。我们在日常生活中,「因为……所以……」的表达几乎无处不在。然而,不论是在命题逻辑、谓词逻辑还是概率论里,都没有因果关系的一席之地。
以Karl Pearson为代表的统计学家,对因果关系采取了一种非常保守的态度。每一本入门统计课本里都会在显眼处强调「相关性不代表因果性」;相关性可以从调查研究中得出,而因果性则需要控制变量的实验。一个不那么明显的区别是,因果性的定义比相关性的定义复杂微妙很多。Pearson本人甚至直接否认了因果在统计学中的地位,用contingency table和correlation代替causation。此后的不少统计学家,例如Fisher,把因果关系的检验重新纳入统计学。
也许会有人说,那我们就用直觉来判断因果关系好了。
这种说法有两个问题:
1、目前,我们无法把这种直觉在非人类智能上复现。
我们没有办法说明,自己是如何识别看到的物体的。但是,我们的图像识别算法已经在ImageNet上击败人类,可以大规模复制,从而量化我们的直觉。相比之下,当前的因果推断算法,则远远没有达到类似的程度。
2、根据元归纳,我们的直觉很可能不可靠。(元归纳本身也不保证可靠,但这是另一个问题了。)
在复杂的机械系统出现之前,原始的人类认为,能够称为「原因」的事物只有人类或者神明。事实证明,这种世界观无法解释「一个齿轮造成另一个齿轮运动」的情况。倘若机器坏了,我们要找的原因肯定是那个坏掉的齿轮,而不是某个人或神。
亚里士多德认为,物体的核心特征是它的「目的」,苹果会落地是因为苹果有「落地的目的」。这种想法在当代的我们看来,无疑是荒谬的。但是,它持续了上千年,直到伽利略开始倡导「描述先于解释」、「用数学公式描述现实」。
由此可见,人类对因果关系的认知从不是一成不变的,而因果关系在未来的定义也可能发生变化。在未来人眼中,我们对因果的直觉可能非常滑稽。
没有准确的语言,我们就没法严谨地研究因果关系。
所以,不妨反思:当我们在问「为什么」的时候,我们究竟在问什么?
Judea Pearl认为,相关性基于观察(observation),而因果性基于介入(intervention)。
例:随机变量A——太阳升起;随机变量B——公鸡打鸣。
A和B的相关性毋庸置疑,但是我们从不会认为B导致了A。因为,即使我们「介入」并消灭了世界上所有可以打鸣的公鸡,太阳也会照常升起;或者,即使我们「介入」并强迫公鸡在半夜打鸣,我们也无法让太阳提早出现。
基于观察的物理模型,只包括了一个世界。假设我们制定了一套规则,创造了一个世界W,并对W全知、无能:能以100%的确信度知道W中的任意信息,但不对W进行干涉。此时,W的所有状态都是内在的、封闭的,不存在外来干涉。对于观察者而言,W就是W,不存在因果关系。对人类而言,一个更直观的例子是一张照片:我们能看到照片上的每一个细节,而不会在照片内总结因果关系。因为人类无法影响基本的物理规则,所以我们对物理学的态度更接近于观察。(有意思的是,科学史早期,一部分人反对科学实验的原因是「在实验室里进行实验会干扰/介入自然,得不出可靠的结果」。这在现在的我们看来几乎是不可理喻的。)
基于介入的因果模型,则包括了无数个世界。对于同样的世界W,假设我们的权限变成了全知全能,那么针对某个事件变量E,我们可以动用我们的能力介入,修改E的状态为e,进而创造出一个不同于W的新世界W'。在这种情形下,do(E := e)是外来介入的「因」,W'与W的区别则是介入之后的「果」。对待经济决策、国际政治的态度更接近介入,因为我们不可能做控制变量的科学实验,来观察一条减税政策对国家的影响——这类实验的成本太高,没人负担得起,有些甚至根本不可能。
另外一方面,我们常用的概率论,只能描述观察的结果。观察的结论是对称的,即使我们可以用Bayesian Network这样的有向图表示。我们可以用P(A|B)和P(B)来充分描述一个概率分布,也可以用P(B|A)和P(A)。Bayesian Network里, 和 和 表达的条件独立都是等效的(A、B和C是随机变量)。
显然,因果关系是不对称的。
为此,Judea Pearl拓展了概率论的语言,发展出causal calculus,对P(A|B)和P(A|do(B))做出了区分,do(·)表示介入。
例如,A表示「下雨」,B表示「地面是湿的」。P(A|B)很高:如果我们看到地是湿的,那么很有可能下过雨。P(A|do(B))则没那么高:即使我们把地弄湿,我们也不可能改变之前下雨的概率。
Pearl沿用了Bayesian Network的有向图结构,发展出了Causal Network。Causal Network的特点在于,它要求父节点必须是子节点的原因。 表示A导致了B。
Judea Pearl最深远的贡献在于,他把形而上学中的因果关系融入了机器学习的框架。
绝大多数的机器学习算法的学习思路都是归纳(induction):模型观察到一系列样本,总结出一个隐藏的概率分布。目前,种种模型的表现相当出色。
可是,休谟早已证明,归纳法本身并非绝对可靠。(注意:并非绝对可靠≠不可靠)
归纳法往往依赖于uniformitarianism/doctrine of uniformity这一重大假设。(这个词在中文的翻译似乎都是地质学上的均变说,然而此处并不是这个意思,所以只能用英文了。)doctrine of uniformity假设:这个宇宙中的自然法则,在时间(从古至今)和空间(所有的地方)上都是一致的。处在宇宙内部的我们无法全知,自然无法证明这个假设,只能说这个假设目前仍行之有效。
同理,No Free Lunch Theorem证明,在对原始的数据生成分布一无所知的情况下,任何模型的泛化能力都不相上下。
虽然归纳并不能给出绝对正确的答案,但是演绎(deduction)可以。在一系列默认正确的公理下,数学演绎得出的所有结论都是必然正确的。我们的模型之所以能在现实中拥有优越的表现,是因为我们选择了正确的先验假设——我们的先验假设符合现实的世界。
在提出正确的先验假设时,我们采用的思维方式不再是归纳,而是演绎。例如,朴素贝叶斯的假设来自于我们现实世界的常识,基于常识进行的演绎推理是保证正确的。具体到特定的数据挖掘任务时,「常识」就是某种基于对数据生成分布理解的expert insight。
我们可以用一个简单的例子,对幼稚的归纳法(直接跑模型)和基于演绎的方法(认真分析数据来源,采纳合理的先验假设)进行比较:
上述两种归纳法的幼稚之处在于,只是拟合了表面的特征,却忽视了更底层、更基本的自然规律(这些规律决定了数据生成分布),从而引入了观察者的偏见。在数据科学的实践中,类似但是更隐蔽的错误也存在。
为了解决目前大多数机器学习算法被批判为「炼丹」的局面,Pearl的思路是用演绎的框架套住归纳的模型。
从概率图模型的架构中,我们就可以看出类似的思想。暂时不考虑structure learning的话,不同随机变量之间的条件独立,都是由业内的专家给出。这些先验假设来自于更基本的公理,而不是实际观测到样本的后验数据。
在一个演绎框架下,一个模型可以拥有更强的学习能力、可解释性和安全性。
自半个多世纪前的达特茅斯会议以来,我们见证了硬件运算速度的飞速发展,也见到了越来越多优秀的人工智能算法。不过,我们距离强人工智能似乎总有一段不长不短的距离。随着机器学习的普及,各类基础原理、特征工程、调参的技巧,必然变得平民化、大众化。
然而,即便在脚踏实地学习具体知识的日子里,我仍然会忍不住去想象强AI实现的那一天。
我希望能见到一个在各方面都不逊于人类智能的AI——那时候,我们就可以声称,我们已经能从零开始复现我们的智慧与文明。
不仅如此,我还希望见到一个更广泛的AI,它能适应任何数学上可能的nontrivial环境(例如经济、量化交易等人造环境)并作出优化,而不再受限于我们的物理时空。
这也许只是天马行空的幻想。但谁没有年少轻狂的时候呢?
我不希望未来的自己被局限在某个特定研究领域的一亩三分地里。我希望从各个领域中汲取灵感,除了数理化生之外,我们还有哲学、艺术与诗。
我们需要进一步研究深度学习的指导理论,例如知识图谱与自然语言处理的结合、Judea Pearl的因果概率图模型;这不仅是为了提升AI的智能程度,为人类社会造福,也是为了智慧本身的荣耀。我相信,我们总有一天能发展出强大而可解释的白箱AI,而现在的causal model可能就是无数基石中的一块。
总之,在脚踏实地调参的时候,也不要忘记仰望星空,因为一直都会有人在努力推进深度学习理论解释的前沿。
写了这么一大段中二无比的感想……果然,我现在的问题是书读得太少,却想得太多……
P.S. 上个月开始看Judea Pearl的《Causality: Models, Reasoning, and Inference》,刚读完前四章。这本书是Goodreads上「最受欢迎的关于因果关系的书」之一。因为总是对形而上学的因果关系很感兴趣,所以读完牛津通识读本的《Causation a very short introduction》之后,我就马上开始读《Causality》了。不论从形而上学的角度还是人工智能的角度,都是一本好书。