因果强化学习讲座笔记-全-
因果强化学习讲座笔记(全)
001:因果强化学习——第1-2部分




大家好,下午好,很高兴今天能在线上与大家交流。感谢各位的到来。同时,也感谢组织者Alessandra和Jerry邀请我今天在此发言。我是Elilia,来自哥伦比亚大学因果人工智能实验室。首先,我想为我的声音道歉,我有点不舒服。但我认为今天一切都会顺利。我将分享过去几年我对因果强化学习的思考。

这是一个涉及多方面的巨大努力,有许多人帮助实现这一愿景。这是与因果人工智能实验室及众多合作者的共同工作。特别地,我今天将讨论与Taand Deline Howaan、Sanha John Z、Yuda、Andrew Delier和Thomas等人的合作。能与这个出色的合作团队交流,我感到非常高兴和幸运。
首先,我想分享一个更宏观的图景。

这是一个从两万英尺高空俯瞰的宏大图景,是我在实验室试图实现的目标,因果强化学习是其中的一部分。我认为这有助于理解我的思考方式。如果你对这些主题(包括因果强化学习)的合作、问题或想法交流感兴趣,请告诉我。这是一个我认为非常雄心勃勃的图景,是一项需要一代人努力的事业。我在这里的目标是说服你们这些问题很重要,并为大家提供贡献的机会,同时也寻求帮助。
我认为这里的核心见解非常简单但非常强大:现实可以依据因果机制进行分解,我们称之为结构因果模型,尽管它们并非总是可观测的。这类系统的一个重要特性是它们具有自主性或模块性。这一特性在哲学、经济学等许多文献中都有讨论,它将为通用人工智能、机器学习和数据科学带来巨大力量。
我们遵循这样一个图景:现实存在,并且是模块化的。这意味着它可以被建模为一组因果机制的集合。我将在讲座中具体阐述这一点。我特意在这里放上DNA结构图,是为了传达一个观点:这就像是底层现实或底层系统的蓝图。我个人常开玩笑说,这就像是为人工智能发现了DNA结构,而我们现在正试图理解其后果,就像1953年沃森和克里克在《自然》杂志上发表论文后,分子生物学领域的人们所做的那样。自那项发现以来,我们仍在努力理解这些问题,我认为理解这些问题的起点就是结构因果模型,以及将其视为因果机制集合的观点。
从这个视角审视现实,我们有两面硬币,或者说结构模型的两个方面。我多次使用这个名称,并会先定义它。一方面,我们喜欢解释底层系统发生了什么,这是科学的目标。我们喜欢打开自然的黑箱,解释事物如何运作,或者如何用更基本、更可解释的组件来理解。在因果推断领域,关于这个主题有很多著作,它涉及不同的任务,如效应识别、组合、偏倚分析、公平性、鲁棒性和泛化能力等。
另一方面,可以说我完全不在乎科学或解释什么,我是一个实用主义者。我有公司要运营,我想提高利润。如果我是政策制定者,我想改善我所在人群的社会状况,我只想做出决策来改进某些事情。这是另一个视角,即决策制定。这里的任务是如何利用从不完美匹配的数据中学习如何干预一个群体或系统。在机器学习中,这属于强化学习,即序列决策制定的范畴。在科学中,它可能有其他名称,如健康科学中的随机对照试验等。
当然,两者之间存在一些相互作用。如果你对系统有更多理解,通常意味着我们可以更精准、更迅速、更精确或更有效地带来我们想要的社会或经济变革。另一方面,即使理解有限,但如果我们有决策制定或干预能力,我们可以干预系统,搅动事物。如果我们足够谨慎和深思熟虑,我们也可以从中学到关于系统的知识。毕竟,即使在科学方面,我们也是通过这种方式进行的——我们以某种方式隔离系统,以便能够发现新知识,这通常通过实验的思想实现。
这是理论性较强的部分。我们也有兴趣将其应用于教育和软件等领域。应用方面大致可以分为两大块:数据科学和人工智能。在数据科学中,我们试图从大量数据集中进行原则性推断,这里的“原则性”意味着我们希望其具有科学性。在人工智能方面,我们试图学习设计鲁棒且适应性强的学习系统的原则和工具。
今天我们将聚焦于人工智能和机器学习,特别是强化学习问题。我们将讨论因果强化学习。
那么,第一个问题就是:什么是因果强化学习?为了回答这个问题,我想提出两个观察。首先,强化学习非常擅长处理简单复杂性和信用分配问题。考虑到存在延迟——你现在采取行动,效果可能在很久以后才显现,强化学习在这方面表现出色。另一方面,我们知道因果推断也非常擅长利用跨设置、条件和环境的结构不变性。

这两个学科几乎是独立发展的,尽管存在一些交叉。一个显而易见的问题是:我们能否兼得两者之长?我坦诚地说:可以。考虑到我对这个主题的热情,问题在于如何实现。解决方案非常简单,可以用一个简单的公式表示:
因果强化学习 = 因果推断 + 强化学习
这听起来像是个玩笑,但事实如此。更严肃地说,我们的目标是开发一个统一的框架,从第一性原理出发,将两种形式主义的能力优势结合起来。我们希望这不是一个临时的修补,而是为了开发下一代人工智能系统。
这无疑是一个雄心勃勃的目标。当然,人们对这个主题的反应各不相同,从很多年轻人在理解后感到兴奋,到来自因果推断和强化学习领域的一些保守派的阻力。我的经验是,阻力通常源于双方不理解对方在说什么。本教程的目标就是弥合这一差距,提供一个共同语言,让我们理解新的挑战以及我们试图实现的目标。
为了实现这一愿景,讲座大纲如下。我将首先介绍因果强化学习的基础,包括结构因果模型、因果层次结构以及因果层次定理。然后,我们将通过这个视角来理解当前的因果强化学习和因果推断方法。这是第一部分,虽然有些抽象,但对于理解因果强化学习的新挑战和机遇是完全必要的。
我将大致分为六个小节进行讲解。目标是介绍主要思想、原则和任务,而不是专注于实现细节。正如我提到的,人们常常各说各话,所以让我们尝试奠定基础,明确原则和真正要解决的任务。后续的细节可以在文献中找到,自从我在2014/15年左右开始思考这个问题以来,相关想法已经散布在许多论文中。一份新的因果强化学习综述即将发布,我会在URL cr.causeyI 上提供链接。
现在,让我们从强化学习方面开始,并由此展开。我将尝试理解其中的微妙之处。这是教科书式的强化学习定义:它是一种目标导向的学习,旨在最大化数值奖励信号。我们通过与外部环境交互来学习。在每个时间步,动作是从一组不断演化的协变量(如特征和动作历史)中提取的。我们根据当前观察和过去行为自适应地改变策略。
这里有几个组成部分:我们从交互中学习,有目标的概念,有外部环境的概念。这意味着我们划了一条线,区分了外部环境和需要决定做什么的智能体。这是一个没有系统完整规范的学习问题,我们不是在规划。不过,我今天要讨论的许多问题,即使在做规划时也会出现,但今天我会强调学习的这个方面。
根据教科书定义,这是典型的图示:左边是智能体,右边是环境。智能体感知环境状态,经过处理,决定并执行动作 X = x。然后环境反馈动作的效果,以奖励的形式。智能体的效用由奖励函数定义,目标是学习如何行动以最大化期望效用或期望奖励。这是人工智能中统一的思想:我们希望开发理性智能体,而理性与最大化期望效用或奖励之间存在经典联系。
现在,我在思考如何对这个教科书图示进行最小的改变,以传达我认为因果强化学习的核心。这就是我想出的图示。

在右边,我们有环境,但环境现在由一个称为结构因果模型的东西给出。环境是因果机制的集合,我们稍后会定义。在左边,我们有智能体,智能体是参数化的,但现在我们有了因果图。这个图将被正式定义。在图中,我认为存在不同类型的交互。智能体可以被动地通过观察与环境连接,可以主动地通过干预与环境交互,或者可以进行某种内省、反思或想象,这被称为反事实推理,我稍后会展开。

为了更清晰,我想尽可能简洁地说明我想添加到图示中的两个要点。

第一,如果你试图将强化学习转向因果强化学习,环境和智能体将通过一对 (SCM, 因果图 G) 联系起来。SCM在环境侧,因果图在智能体的“心智”中。第二,我们定义了不同类型的交互动作,这由因果层次结构给出,以避免歧义。这就是目前我希望你们理解的图景:两个要点,即 (SCM, 图 G) 这对组合,以及作为交互中介的因果层次结构。
现在,让我们从结构因果模型和因果图开始深入探讨。

我想从一些直觉开始,解释什么是结构因果模型。我们试图表示一个数据生成模型,即环境或自然的生成模型。这是一种基于过程的方法。举个例子,在药物背景下,假设我们试图理解药物摄入与头痛之间的关系。
我们有一个基于过程的方法,其中药物由一个机制赋值。这个机制 F_D 以人的年龄 A 和未观测变量 U_D 为输入。U_D 是生成药物变量变化的所有其他变量。第二个机制是头痛的机制。头痛 H 的值由函数 F_H 决定,该函数以药物 D、年龄 A 和未观测变量 U_H 为输入。U_H 是除药物和年龄外所有可能影响头痛的变量。
我们也可以有一个对应的图。为了简化,我用 X, Y, Z 代替药物、头痛和年龄,以避免具体名称分散注意力。我特意没有选择机器人学或其他领域的例子,因为我想说明因果强化学习比那更普遍。X 可以是任何动作,Y 是结果,Z 是一组协变量。
左边是描述现实的过程,右边是因果图。因果图不是贝叶斯网络,不是马尔可夫随机场,也不是其他模型。它是一个因果图。因果图箭头的含义是:如果一个变量参与了某个机制,就添加从该变量指向结果变量的箭头。例如,如果年龄 Z 参与了药物 X 的机制 F_D,则添加箭头 Z -> X。如果药物 X 参与了头痛 Y 的机制 F_H,则添加箭头 X -> Y。这是一种编码,存在信息损失。
需要指出的是,这里的 F_D 可以是任何函数,从简单的线性函数到极其复杂甚至混沌的函数。我没有在幻灯片中具体化它,而是保持开放,允许任何可能的函数。但在特定问题中,它是具体化的。目前,我们对这个函数一无所知,我们只能有一些粗略的概念。
从这个过程我们可以采样,得到可观测变量 Z, X, Y 上的概率分布 P。我们今天在这里,可以进行统计或机器学习。但你们今天在这里是因为想了解因果关系,以及它如何与干预和强化学习联系起来。
干预的思想是:当系统经历某种变化时,它会如何反应?变化可以是:我们作为外部智能体,决定改变药物分配的方式,使药物等于“是”。我们决定让我们的人群都能获得这种药物,比如冠状病毒疫苗。这就是干预操作:我们用一个新的机制(这里是常数“是”)替换原来的机制 F_D。当我们进行这种干预时,其他变量的机制(给定我们进行了干预)保持不变。这就是自主性或模块性的体现。
注意,我这里讨论的是干预“是”,但在进行随机对照研究时,有一个随机硬币决定药物的值。它仍然是一个不同的机制,是随机的,但与人们通常获取药物的机制不同。你可以有更复杂的策略,例如依赖于年龄组的策略 π(A),我们决定以不同的概率给药。这与人们自行选择药物的机制 F_D 不同。这里有一些关于条件策略的微妙之处,但为了讨论,我们暂时忽略。
这个操作也有对应的图形表示。在机制层面,Z 不再影响 X,因为 F_D 不再活跃。X 被设置为“是”。这表现为箭头被移除。如果你能在现实世界中创造这样的情境,你就可以从这个过程采样,得到所谓的实验分布或干预分布 P(z, y | do(X=是))。你也可以用其他符号表示,如 P(z_{X=是}, y_{X=是}),这涉及到反事实符号,我稍后会提到。目前我们坚持使用 do 符号。
如前所述,通常我们谈论的药物 X 可以是任何决策,结果 Y 可以是任何结果(如效用),Z 是特征集。我使用这些术语与因果推断中的符号保持一致。
这里的挑战是,通常你观察不到这些机制,有时你可能观察到因果图(这已经很有揭示性),但很多时候你无法进行干预。通常我们只有来自左侧的数据,却试图推断右侧,就好像我们进行了干预一样。这是经典问题:从被动观察系统,我们想做出关于干预效果的陈述。如果你能进行这种非常困难的预测,你就可以更精准,最终可以避免实验的副作用,更安全等。
现在,让我将干预和方程或机制的思想推广,更正式地定义结构因果模型。它是一个四元组 (V, U, F, P(U))。
V是内生变量或可观测变量的集合{V1, V2, ..., Vm}。在前面的例子中,V1可以是药物D,V2可以是头痛H,V3可以是年龄A。U是系统外生变量的集合,是未观测的,有很多个。F是一个函数集合,决定了每个内生变量Vi的值。对于每个Vi,有一个函数Fi,它以Vi的父变量集合PAi(可观测变量)和外生变量Ui为输入。P(U)是外生变量U上的概率分布,它总结了模型外部宇宙的初始条件状态。
事实证明,这类系统有一个公理化特征,这在Halpern(1998)以及Galles和Pearl的工作中得到了很好的理解。Halpern是逻辑学家,在康奈尔大学从事这方面出色的工作。本质上,今天推导出的任何结果都可以追溯到这个基础。
我目前更感兴趣的是以下观察:一旦你有了一个具体的SCM实例 M,它就隐含了我们所说的因果层次结构。我想为了理解上下文,更多地打开这个“盒子”。因果层次结构是《为什么》这本书的主要主题,也被称为“因果阶梯”。


这只是回顾。如果你没读过那本书也没关系,我会以我的方式回顾并阐述,这在数学上是相同的。如果你读过那本书,那很好。那么,我们谈论很多的因果层次结构是什么?我来描述每一层:典型符号、典型活动、典型问题和例子。
第一层 L1 称为关联层。符号上表示为 P(y | x)。它与“看到”的活动相关:看到 X = x 可能让我对变量 Y 产生什么信念?例如,一个症状 X 能告诉我们关于疾病 Y 的什么?在现代机器学习中,这对应于多年来在统计学和其他领域研究的问题,在机器学习中非常成功,属于监督或无监督学习的范畴。有大量关于如何评估像 P(y | x) 这样的表达式的理论,例如决策树、贝叶斯网络、回归、分层模型、神经网络等。这里的挑战是,如今你处理的 X 可能是特征集,Y 是标签,维度可能高达数十万甚至数百万。这在计算复杂性和样本复杂性上都非常困难,因为你没有所有的组合。这就是为什么这是一个如此具有挑战性的问题。
第二层 L2 称为干预层。符号上写作 P(y | do(x), c),其中 c 是上下文或状态。它与“做”的活动相关:如果我做 X(例如服用阿司匹林),我的头痛会治愈吗?在机器学习中,这与强化学习问题非常相关,这也是我们今天在这里的原因。有不同的形式主义可以处理它,例如因果贝叶斯网络、马尔可夫决策过程等。
第三层 L3 是反事实层。我暂时跳过符号。它与想象、内省、反思的活动相关。例如“为什么”类型的问题:如果我当时采取了不同的行动会怎样?为什么我服用的阿司匹林治好了我的头痛?假设我服用了阿司匹林(X'),现在我被治愈了(Y'),我在想:如果我没有服用阿司匹林(X),我会生病吗(Y)?这里负载很重:有一个反事实世界,在事实世界我服用了并且没事。在机器学习文献中,这并没有真正的对应物。虽然有各种说法,但大致上没有。在因果推断领域有大量工作,但仍有更多待完成。处理这类问题的形式主义是结构模型。
我想说明为什么这是一个层次结构。层次结构意味着,从 L1 到 L2 再到 L3,你从较少的细节(X 和 Y 之间的相关性)到更详细的描述(反事实)。这可能听起来有点抽象,但请跟我一起,稍后我会用例子说明第三层。这已经是关于世界碰撞的不同任务,与归责、信用分配、公平性、可解释性等问题非常相关,这些都落在 L3,尚未被充分探索。
换句话说,我认为你应该研究它。为了说明它在何种意义上形成一个层次结构,我想从我们拥有的关于真实环境、真实因果机制的信息量角度来阐述。给定我的期望是你们大致理解这些是不同的东西,我想更详细地解释我们所谓的因果层次定理。这类似于中心极限定理在因果推断中的核心地位。历史上,Pearl等人长期相信类似的结果,这也是我非常兴奋的原因之一。这个结果最近才被普遍证明。
给定SCM M 隐含因果层次结构,并且我们可以证明 M 定义或诱导了因果层次结构,我们可以证明以下结果:因果层次定理。在SCM集合上,满足某些技术条件(我引用是因为我尚未定义“测度零”),任何因果层次结构坍缩的子集是测度零的。
换句话说,对于你可能得到的几乎任何SCM(通常你不知道你的环境是哪一个,它是未观测的),因果层次结构不会坍缩,即层次结构的各层保持 distinct。你不会遇到观察和干预概念相同的情况。在《为什么》一书中,如果你思考一下,或者关于想象,也许在某些世界中它们可能是相同的,但我们不知道如何将一个还原为另一个。或者可以说,不,这不是真的,一个严格比另一个更强大。然后,有一些陈述是 L2 能做出而 L1 无法做出或无法充分说明的。
让我继续阐述,以奠定因果强化学习的基础。为了回答关于特定类型交互的 L_i 层问题,需要来自 L_i 层或更高层的知识。





让我试着连接我们所说的内容。我说过,每个SCM M 诱导了这个层次结构,即这些不同类型的交互、关于观察、干预和思考的不同概念。这听起来很好很美妙。那么问题来了:为什么因果推断不平凡?如果我有SCM,我就可以计算一切。这是我经常遇到的最常见问题之一。
这是一个非常有趣的想法或梦想,因为事实上这并不正确。事情并不那么容易,不幸的是,正是因为我在这里标题中所写的:SCM几乎永远不可观测。尽管这很重要,尽管存在一个机制集合,但我们并不能完全观测到它。我们通常只观测到一些片段,这些片段在层次结构中。一般来说不是全部。
我必须说,这几乎是“永远不”。当然有例外,比如在物理学、化学,有时在生物学中,各种科学领域试图了解这些机制,他们有时会深入到非常详细的层面,有时需要100年或250年才能从一个物理时代过渡到另一个。但在现实中,他们分析的现象允许他们这样做。我认为,在我们感兴趣的大多数嵌入人工智能的场景中,特别是涉及人类时,实际上不可能获得SCM的描述。人类在循环中是不可预测的,存在某种混沌成分,本质上涉及复杂现象、社会互动和许多其他类型的互动,我们无法以如此清晰的方式隔离系统。这是我们需要承认的第一个困境:我们无法获得SCM。
那么,该怎么办呢?假设有一个智能体嵌入在这个环境中,智能体持续观察世界上发生的事情,通过观察获得 L1 类型的数据。这与之前的图示一致。智能体获得观察结果,现在智能体想推断它在这个系统中应该做什么。那么,是否可能使用 L1 的数据来对 L2 做出陈述?不幸的是,答案是否定的。我在这里放了一个障碍。为什么?我们刚刚讨论过,因果层次定理说我们不能跨层移动,因为 L1 的信息不足以确定 L2。这是定理。
那么,不可能吗?问题在于,考虑到SCM的不可观测性,再加上因果层次定理,似乎在因果层次结构内无法进行任何推断?我们不能从因果层次结构中获得任何信息?考虑到我无法观测到这个指南,并且我们有因果层次定理的证明,那么问题是你还能做什么?这是一个很强的否定性结果。其意义在于,这正是为什么你需要研究关于SCM的某些东西的动机。这些东西就是我们所说的结构约束。而因果图无非就是一组结构约束。
有不同类别的图,或者说获取它的不同方式。我列出常见的几种:
- 使用模板:这在文献中经常隐含。例如,我们有一个多臂老丨虎丨机、一个MDP或一个POMDP。这是一个模板。即使人们从算法上思考,如果你打开算法,你就能提取出它们对环境所做的假设的图。已经有一些论文在做这件事,但这是一个模板。
- 知识工程:也许你对环境有额外的信息。例如,在经济学中,人们能够确定工具变量,那么你可以利用这一点,它对底层SCM施加了某种约束。当然,这比第一种更通用,因为无论第一种是什么,我们都愿意相信世界符合某种 cookie-cutter 模式,但很多时候并非如此。
- 因果发现:如果你想从头开始测试、建模甚至构建一个婴儿智能体,你希望它参与其中而不想硬编码,这被称为因果发现。
换句话说,这就是动机。让我试着把提到的许多概念块拼凑起来,我认为总结一下是好的。


环境或机制可以被建模为SCM M。这个特定的环境,本质上是在你的系统中抛出数据的那个,很少是可观测的。尽管如此,每个SCM M 可以通过性质不同的交互或分布类型(即因果层次结构:观察、干预和反事实)来探测。不仅是交互类型,也是推理模式。有一种与自然交互的方式,但现在因果层次定理说,对于几乎任何SCM,较低层(比如 L_i)的信息不足以确定较高层 L_{i+1} 或更高层。这在某种程度上限制了智能体基于其与环境的不同类型交互和数据所能推断的内容。
具体来说,我已经给出了这个例子:从被动观察环境(这是一种数据),它无法推断如何行动。从干预环境(所有可能的干预,你得到 L2 类型的数据),它无法推断如果她采取不同行动事情会怎样。这是另一种类型的陈述。因果图是这个底层系统的替代物,相对于我称之为结构不变性的东西。因果图是底层 M 的结构不变性的替代物。
好的,这就是我认为我们拥有的构建模块。正如所承诺的,我们有了 (M, G) 这对组合,它包含了环境与智能体之间的关系。现在我有了因果层次结构,关于这些部分如何交互或你可能拥有的交互模式。虽然仍然抽象,但请跟我一起。现在我想讨论一下,这如何允许我们解释今天在强化学习和因果推断中的方法,通过我称之为因果强化学习透镜的机制。这就是我们刚刚建立的机制。
现在的目标是学习一个策略 π。策略 π 使得当你应用这个策略时,会产生一系列动作 x1, x2, ..., xn,以最大化某种奖励 E[Y | do(X), π]。我只是在这里说,X 的值是由 π 决定的。这是我使用的符号,有不同的符号。这里的参数我留作未指定,但它可以是任何类型的参数,比如上下文 C、过去状态等。
当前文献中发现的策略,我将给出一个概览,然后详细说明。我给出三种:
- 在线学习或实验性学习:智能体自己进行实验。这些系统的输入是形式为
(do(x_i), y_i)的实验,以学习Y | do(X),从而评估其某种平均值。 - 离线策略学习:智能体从其他智能体的行动中学习。一个智能体自己实验,另一个智能体从其他行动中学习。我们不仅有其他实验,还有样本,形式为
(do(x_i), y_i)。我们仍然试图学习Y | do(X)。 - 观察学习:智能体观察其他智能体行动,并想从中学习。这里的输入是
(x_i, y_i)的样本。注意,这里我们有x_i,而之前我们有do(x_i)。这里有实验和样本,但这里我们只有样本。这很微妙。关于第二种的最常见问题,两者都是离线的。这里的微妙之处在于,关键点是智能体是有意的。我们是从其他智能体的有意行动中学习,这就是为什么你仍然放do,但因为是样本,因为你没有进行实验。另一方面,在do演算中,你有样本和x_i,因为你不知道导致智能体选择这个x的其他关键原因。
我逐一讲解。第一种,我们忽略现有的任何东西,直接进行干预,试图从其他智能体的行动转移到作为智能体的我的行动。最后一种,我们只是观察一个人在做某事,我们不知道这是否是有意的,甚至可能是潜意识的。稍后我会给出一些任务中的例子,我们试图从中学习如何行动。
现在,我逐一稍慢地讲解。首先是一些符号:do(x) 表示干预,x 表示观察。
让我更具体地阐述在线学习。一旦学习了 Y | do(X),找到最优 X* 是直接的。这里的挑战是,Y | do(X) 可以通过随机实验或自适应策略来估计。你可以使用UCB、Thompson采样等任何方法自适应地进行,但这就是在线学习的思想。举两个突出的例子,你可以进行单次实验。积极的一面是,它对未观测的混杂因素(即影响多个可观测变量的变量)具有鲁棒性。


消极的一面是,实验可能昂贵、不可能进行、不道德(难以对人类受试者进行实验),可能导致副作用,甚至可能因为有害或最终邪恶而导致社会破坏。每当你进行这些在线实验时,这就是你最终得到的。
这是你必须有的图:无论这里发生什么,你都有某种决策 X,结果 Y,然后有这个未观测的圆圈 U,它同时影响 X 和 Y,可以是宇宙中的任何变量。现在我们说,无论世界上有什么,我将把这个系统提交给这个策略 π,它将选择 X 的值。这就是在线学习的含义。我认为,这是上个世纪(20世纪初)关于如何做到这一点的最大洞见之一,它开启了整个因果推断领域,也开启了新千年。


无需明确知道或这样做。这是图示。我喜欢从数据角度思考的另一种方式,我只是复制了之前的图示,但现在我喜欢从数据角度思考。无论世界上发生什么,在我希望你忽略数据之前,我将把世界提交给这个策略 π,并开始获取样本,即这里的这些垂直线。这意味着,最终当我在采样并获取由 π 决定的 x 时,我将能够获得某种 Y | do(X) 的估计,平均到 Y 上,但这没问题。这就是智能体“心智”中的内容。
关于协变量特定的因果效应或上下文设置或有状态设置,我需要做个说明。我刚才给出的只有 X、Y 和 U 的模型可以扩展以适应一组观测到的协变量,也称为上下文或状态。U 将是剩余的未观测混杂因素 U_C。然后你可以有一些这些 U 并将其作为 C 提取出来。这完全可能。这里的目标将类似:我们试图学习一个条件策略 π(C),以最大化基于 C 特定因果效应 P(Y | do(X), C) 的优化。
为什么这很重要?首先,因为我们通常有上下文或状态,其次,因为它非常具有挑战性。通常 C 的维度很高,可能是一百万维,我们谈论的是像素或视频等。这里有一个有趣的连接,我喜欢我在这里的迪士尼级别的动画。也许在这个市场上,在这个动画之后,我可以提供P级。但这是目前非常热门的话题。也就是说,鉴于我们有超高维的 C,甚至从像素级别,我们希望有一些函数逼近或某种降维方法,以便能够选择决策 X,实现从 C 或 S 到 X 的映射。深度学习非常适合这一点,而深度强化学习实际上正在利用这种连接。
这是一个我不打算在今天详细讨论的点。我认为这很酷,我会保持谦逊。有些人认为这不好,但在这个意义上,为什么我现在不操作这个级别?如果你好奇,可以稍后问我。但在这里,我试图展示或只是展示这些其他维度的交互类型。我想隔离这些问题,所以这没问题,但它可以以我们通常的方式进行复合。虽然不常见,但没关系。
第二种模式是在线学习。第二种是离线策略学习。Y | do(X) 可以通过其他智能体以不同策略进行的实验来估计。积极的一面是,不需要进行实验,这几乎是梦想,因为我们不想伤害社会或人们,有时进行实验也不道德,成本也很高。进行一项涉及几百人的实验可能花费大约五百万美元。这依赖于两个假设:A1) 相同的变量被随机化;A2) 上下文需要匹配。让我用图示说明,这就清楚了。
注意,在左侧,有一个智能体在线进行实验,比如使用策略 π' 决定 X 的值。同样,你可以放一个上下文 C,但决定 X 的值。现在你想推测或预测当你使用策略 π 时会发生什么。我所说的假设A1是:相同的变量在策略范围内。那么 π' 控制 X,π 也控制 X,这没问题。上下文需要相同,即它们需要匹配。这里的 C 是相同的。策略至少 C 等于空集。因为它平均了 U,而这里 C 是零,那也没问题。然后我们可以使用一种技术,例如逆概率加权,它允许我们利用从策略 π' 收集的数据来计算策略 π 的效果。
我想用我通常喜欢的数据图示来阐述。这里有一个智能体收集许多数据点,遵循策略 π',这些是这些垂直线。现在我们另一个智能体不想去环境,只想知道策略 π 的效果。想法是使用IPW。这是一个公式,展示了如何通过使用你所做概率的倒数来折现效果,然后乘以新概率,从而得到新策略 P(Y | do(X)) 的效果。


为什么这有趣?为什么人们关心这个?在非平凡领域有数百篇论文。想法是,每当你在上下文设置中,有这里的 C,你又有维度问题。你可以做更多的统计,尝试双重鲁棒性,理解倾向得分等,或者你可以做机器学习,尝试降维,但仍然有很多挑战,或者说非常棘手,因为方差可能爆炸,这是一个问题。这是离线策略的总结。



它们作用于相同的动作空间和相同的上下文,它们有相同的感知。



我认为这很难成立,但我会在第二部分回到这一点。没有两个智能体是相同的,即使是两个机器人,让它们进化,它们开始有不同的传感器,外观略有变化,感知世界的方式等等。这很难成立,但有时作为近似成立,我们会讨论。
现在我们有了第三种模式:观察学习。Y | do(X) 可以从非实验数据中估计,也称为自然机制或行为机制。积极的一面是,即使上下文已知且实验变量不匹配,估计也是可行的。换句话说,我们之前的离线策略假设被违反了。

消极的一面是,结果依赖于模型。对于弱模型,效应可能无法唯一计算,可能不可识别。这是模型:在左侧,你可以有这个被动的世界,即现实如何运行。注意,U 仍然影响 X 和 Y,但也许你有额外的知识,即机制中有一个第三变量 Z,F_Z 以变量 X 为输入,而变量 Y 不再以 X 为输入,而是以 Z 为输入。这里没有这种链,这是知识,这是结构知识。你不知道确切的机制,但这创造了一些可以利用的推断。
你可以进行 do 演算推断,并且你希望在智能体的“心智”中知道 P(Y | do(X)),以遵循这里的策略 π,而无需进行干预。这里有更多细节,这在因果推断中是一个被充分研究的问题。至少在这份我与Uda合作的国家科学院院刊综述中,我认为对这个问题感兴趣的人应该看看。
这是我们之前的图示。再次从拓扑或不变性角度思考,或者我们想要谈论的世界,这是从数据角度。我有大量观察收集的数据 (Z, X, Y)。我们不知道这个人是否进行了任何干预。在这种情况下,我忘了说,在这种情况下,离线策略的假设明显被违反了。注意,A1是相同的(或者你甚至不知道现实中),但A2被违反了,因为第一个智能体的策略上下文是这个变量 U,而第二个智能体无法访问 U,因为 U 对现实中的智能体是不可观测的。所以这里存在不匹配。你可以尝试,当然你可以用IPW进行评估得到数字,但结果并不真实。它不等于策略的效果。
现在你可以运行这个 do 演算推断引擎,你有一些映射。这是一个函数(我应该加上),它是 P(Z, X, Y) 上的函数,允许我们创建映射。有一些观察结果,有一些比这更一般的结果,即使你没有干预,只有观察,但我们有实验的组合。这是与SunAC和Ju合作的一篇论文,我开头提到过,幸运的是这是去年UAI的最佳论文,非常出色的工作。但它正是关于如何以某种方式处理不同模式数据的普遍性,就这些干预而言。我稍后会详细讨论,但让我回到这里的总结。
我快讲完第一部分了,大概还有两分钟。我讨论了三种不同的模式。我讨论了在线学习,人们忘记环境中发生了什么,没关系,我就去那里,忘记之前是什么,我就去那里,把世界提交给决定 X 值或 π(C) 决定 X 值的策略 π,我不断这样做,并从系统中采样很多。这被称为在线学习。
你有离线策略方法,这里有一个策略 π' 在运行,它决定 X 的值,你实际上想了解如果你执行 π 世界会怎样。X 的值由 π 选择,我们有用IPW翻转事物并计算它的想法。它依赖于我们所说的关于相同动作空间、相同动作随机化以及相同上下文、相同感知的假设A1和A2。两个智能体必须有相同的感知。
现在我有了第三种模式,至少基本版本是,我们有来自环境的观察,我们不知道,这不是有意的,人们如何选择行动?也许他们甚至观察了 U,或者 U 是……抱歉,但我们不知道,甚至在潜意识层面,或者也许他们要求智能体按事实行动,但你没有观测到 U。你不知道我所说的关键原因。对于行动 X,没有随机化,没有可控性,我们实际上想了解当你控制时效果会怎样。这里的问题是:这些策略总是有效吗?这些因素穷尽了所有可能性吗?我认为这是更广泛的问题:交互系统中的学习本质上完成了吗?


关于交互系统中的学习是否已经完成的观点,如图所示,这意味着世界上所有可能的学习,被称为深度强化学习或其他,都适合这些桶中的一个。最近我引用了一位非常杰出的企业家和学者的话,他接触数十亿美元,在采访中说(当然不提及是谁),但这个人说:“哦,解决人工智能需要什么?”或者“需要多长时间?”但这是什么意思?这个人说:“哦,解决人工智能需要扩大规模。如果你继续这样做,也许我们再花几十亿,希望这是物理生命寒冷的一部分,也许需要更多,很多很多亿,但最终会到达。”现在我问的是:完成了吗?你需要像那样一栋楼,里面有很多顶尖地方的博士,薪酬丰厚,我们会做更多常规的事情,然后就会完成,因为我们会适合这些桶中的一个?或者还有其他东西,其他学习模式最终是必需的?我认为从因果视角来看,我们知道需要更多。问题是缺少什么?这就是我稍后想讨论的。

我将要做的是,为每种模式获取我能想到的最
002:因果表征学习教程


在本教程中,我们将探讨因果表征学习这一前沿领域。我们将回顾因果推断的历史背景,理解为何从非结构化数据(如图像)中学习潜在因果变量是一个具有挑战性的问题,并介绍一系列旨在解决这一问题的核心技术与理论结果。我们将看到,通过引入额外的假设(如分布变化、稀疏性、时间动态等),我们有可能从观测数据中识别出有意义的潜在因果变量。
因果推断简史:从实验到观测数据
上一节我们概述了本教程的目标。本节中,我们来看看因果推断是如何发展到今天的。
因果推断的历史可以大致分为两个阶段。在最初的约250年里,实验是理解复杂世界的主要工具。例如,18世纪的詹姆斯·林德通过实验证明了柑橘类水果可以预防坏血病。19世纪的约翰·斯诺通过移除伦敦宽街的水泵手柄,证明了霍乱由受污染的水源引起。这种方法在20世纪初由罗纳德·费希尔在其著作《实验设计》中正式确立。
然而,实验方法存在局限性。这在20世纪50年代关于吸烟与癌症的辩论中尤为突出。当时,吸烟与肺癌之间存在强相关性,但像费希尔这样的统计学家反对直接赋予其因果解释。他指出,可能存在某种基因,既使人更容易对香烟上瘾,也使人更容易患癌。虽然随机对照试验在理论上可以解决这个问题,但在伦理和实践上均不可行。
这推动了从观测数据中进行因果推断的研究。通过如朱迪亚·珀尔(计算机科学)、唐纳德·鲁宾(统计学)、杰米·罗宾斯(流行病学)以及约书亚·安格里斯特(计量经济学)等学者的工作,我们发展出了一套丰富的工具来从观测数据中估计因果效应。
这种转变在经济学领域尤为明显。2019年的一项研究分析了顶级经济学期刊的标题词云,发现从20世纪50年代到80年代,经济学是一个理论驱动的领域。而从90年代至今,“证据”一词开始占据主导地位,这通常指来自观测因果推断或随机对照试验的证据。这一变革在2021年授予大卫·卡德、约书亚·安格里斯特和吉多·因本斯的诺贝尔经济学奖中得到了认可。
为什么需要因果推断?可检验的假设
上一节我们看到了因果推断如何改变了社会科学。本节中,我们来探讨应用科学家为何青睐因果推断。
关键在于,当我们研究的系统很复杂时,我们无法通过分析来推理,而必须从数据中估计变量之间的关系。然而,我们不仅仅是想做出预测,我们更想估计一种可以被其他科学家检验的关系。因果效应的定义决定了,如果我们做好了因果推断,我们就可以用一个数据集上得到的估计去检验另一个数据集上的估计,而无需假设这两个数据集的分布完全相同,只需关注相同的效应。
这一切的前提是我们的假设成立,并且我们有足够的数据。但这通常假设我们已知系统中起作用的变量,并且大部分变量是可观测的。
新的前沿:从非结构化数据中学习
上一节我们讨论了传统因果推断的设定。本节中,我们来看看当前面临的新挑战。
我们今天要讨论的场景是,我们无法直接观测到系统的变量,而是得到变量的非结构化代理。例如,在药物发现中,研究人员收集显微镜下的细胞图像。决定细胞状态的潜在变量对我们来说是隐藏的,我们看到的只是图像中的像素。我们需要弄清楚如何处理这些数据。
生物学涉及对复杂相互作用系统平衡态的推理,这与经济学有相似的结构。我们可以越来越详细地观测生物系统,并以自动化方式大规模收集数据。我们也可以进行干预,这从因果推断的角度来看非常有利。但问题在于,与社会科学不同,我们通常无法直接观测到变量,而是得到这种非结构化数据。
更一般地,思考如何构建一个“AI实验科学家”有助于理解这个问题。这与标准视觉系统的区别在于,我们需要一个能将图像映射到抽象变量的系统,并且我们希望这些变量在不同数据集中保持一致。换句话说,就像因果推断中学习的假设可以被其他科学家检验一样,我们希望视觉系统推断出的抽象变量也能被其他机器人同样推断出来。重要的是,我们希望仅从无标签数据中做到这一点,因为这些系统本身尚未被充分理解。
因果表征学习:问题定义
上一节我们明确了新挑战。本节中,我们来正式定义因果表征学习问题。
我们将假设存在一组潜在变量 Z 来描述系统的底层状态。但我们观测到的是 X(例如图像),它由某个生成函数 G 从潜在变量渲染而成。我们感兴趣的问题是:能否从 X 中恢复这些潜在变量 Z?
为了使问题更具体,考虑一个简单的玩具问题:我们知道生成函数 G(例如一个游戏引擎),输入是每个球的位置和颜色等参数。我们知道确切的潜在状态,并得到渲染后的图像。问题是:我们能从图像中恢复那大约15个用于渲染的参数吗?
为什么这很困难?非辨识性示例
上一节我们定义了问题。本节中,我们通过几个例子来看看为什么这个问题本质上很困难。
首先,我们看自编码器中的非辨识性。假设我们有一个完美的编码器 G⁻¹,它能从 X 完美恢复原始的 Z。我们唯一的约束是自编码器学习恒等函数(即完美重建)。问题是,如果我对潜在空间应用任意可逆变换 A,然后在解码前应用其逆变换 A⁻¹,由于 A⁻¹A 是恒等变换,我仍然能满足完美重建的约束。这样我就得到了一个新的编码器和解码器,它们在损失函数下与原始方案无法区分。实际上,存在无限多个这样的解。
其次,我们考虑另一个极端:假设生成函数 G 是线性的,并且进一步要求潜在分布是独立的。在这个强假设下,观测 X 只是潜在 Z 的线性变换。即使如此,如果我们从完美的编码器开始,并应用一个旋转矩阵 R,由于高斯分布是旋转不变的,我们仍然满足独立性约束,并且可以通过在重建前进行逆旋转来满足重建约束。因此,我们仍然有无限多个解(旋转后的解)。这些解是有问题的,因为它们纠缠了坐标。例如,如果原始坐标是位置X和位置Y,旋转后的坐标变成了两者的线性组合。
可接受的模糊性:排列与缩放
上一节我们看到即使有强假设,问题依然棘手。本节中,我们来界定什么是“可接受”的解决方案。
有些模糊性是无法避免且可以接受的。例如,如果我们交换 Z1 和 Z2 的标签,我们无法知道哪个是哪个。这就像我们只是以不同的顺序写下潜在变量,而潜在变量本身构成一个集合,所以排列顺序不应有影响。同样,我们无法知道数据生成过程中使用的测量单位,所以潜在变量的缩放因子也是可以接受的。
因此,理想情况下,我们希望以这样的方式恢复每个潜在变量:每个恢复的变量只依赖于原始的一个坐标。也就是说,我们满足于得到一个估计 Ẑ,它等于某个排列矩阵 P 乘以某个对角缩放矩阵 S 再乘以原始 Z。
突破:独立成分分析(ICA)
上一节我们定义了可接受解的范围。本节中,我们来看第一个能在此范围内提供辨识性的经典结果:独立成分分析。
假设生成函数 G 是线性的,且潜在变量独立。如果所有潜在变量都是高斯的,我们之前看到旋转会导致非辨识性。但是,如果至多有一个潜在变量是高斯的,情况就不同了。皮埃尔·科蒙在1994年ICA的奠基性论文中证明,在此条件下,独立成分分析可以辨识潜在变量,最多相差一个排列和缩放。
这是一个重要的辨识结果,但它是在极其受限的设定下取得的:线性混合和独立潜在变量。我们如何将其推广到更现实的情况?
推广到非线性混合:负结果
上一节我们在线性设定下看到了希望。本节中,我们尝试放松线性混合函数的假设,看看会发生什么。
现在,我们允许生成函数 G 是任意单射非线性函数。我们想找到一个编码器,能够恢复位置和颜色等潜在变量(最多相差可接受的变换)。
我们再次从完美编码器开始,并寻找满足我们约束的变换。潜在分布被选为明显非高斯的,以便容易排除线性旋转纠缠。但问题是,编码器现在是一个非线性函数。是否存在某个非线性变换 A,能以某种奇怪的方式纠缠 Z_i 和 Z_j,使得它们不再是原始潜在变量的函数,而是两者的函数?
我们可以显式地构造这样一个 A。步骤如下:
- 对每个坐标分别应用其累积分布函数(CDF),映射到单位超立方体。
- 应用标准高斯分布的逆CDF,得到标准高斯分布。
- 应用一个旋转矩阵(高斯分布是旋转不变的)。
- 应用标准高斯分布的CDF,映射回单位超立方体。
- 应用原始分布的逆CDF,映射回原始分布。
这个复杂的变换没有改变底层分布(因此满足独立性约束),但它使坐标纠缠在一起。因此,仅靠独立性假设不足以确定正确的表示。
辨识性策略概述
上一节我们看到了负结果。本节中,我们来概述获得辨识性所需的各种策略。
就像没有假设就无法进行因果推断一样,没有假设也无法进行因果表征学习。我们需要考虑可以对感兴趣的数据分布做出哪些合理假设,数据生成过程如何被干预扰动,以及可以观测到什么。
我们将方法大致分为利用以下几类思想:
- 潜在变量的分布假设(如ICA中的非高斯性)。
- 分布的变化(跨环境、跨时间)。
- 对混合函数的约束(如线性、稀疏性)。
- 多视图与稀疏性。
思路是,我们从所有可逆函数开始,然后施加约束(如假设的潜在分布族、对生成函数的额外约束),希望这些约束共同作用后,能留下唯一(或可接受范围内唯一)的解。
策略一:分布变化与非线性ICA(TCL)
上一节我们概述了策略。本节中,我们深入探讨第一个策略:利用分布变化,即时间对比学习。
这是该领域的首个重要结果。我们不再假设单一的潜在分布,而是假设存在多个分布(例如,在不同时间段)。生成函数 G 对所有分布保持不变。为数学便利,假设潜在分布属于指数族,且混合函数是从 R^d 到 R^d 的(即潜在空间与观测空间维度相同)。
算法上,做法很直观:将观测数据按时间段分桶,然后训练一个分类器来预测给定观测数据来自哪个时间段。令人惊讶的是,他们证明最终隐藏层的表示,经过一个逐点函数和旋转后,等价于原始的潜在变量。通过后续的ICA可以处理掉这个旋转。
为什么?简略推导如下:在通用逼近假设下,最优分类器的最终隐藏层激活与对数密度比相关。通过贝叶斯规则和指数族假设,可以将其转化为潜在变量充分统计量的线性函数。再利用变量变换公式将观测密度与潜在密度联系起来,经过一系列代数运算,可以证明隐藏状态是源信号的线性函数。因此,表示是线性可辨识的,再通过ICA处理旋转即可。
推广:iVAE
上一节我们介绍了TCL。本节中,我们看看其推广:iVAE。
iVAE进行了几项重要推广:
- 环境变量:将“时间”推广到一般的“环境”变量,只要该变量能引起潜在分布的变化。
- 处理噪声:允许观测中存在噪声。
- 处理维度不匹配:允许潜在维度与观测维度不同。
- 多重充分统计量:使用具有多个充分统计量的指数族,这有助于解决缩放模糊性。
核心思想仍然是利用多个环境下的条件独立性先验,通过变化来锚定表示。
策略二:多任务/环境下的稀疏性
上一节我们讨论了利用分布变化进行辨识。本节中,我们转向另一种策略:利用多任务或多环境下的稀疏性。
考虑一个例子:我们有基因表达数据,以及一些介导疾病表型的潜在变量(如蛋白质水平)。我们想从基因表达中恢复这些潜在变量。一个深度学习方法是学习一个特征提取器(编码器),并在其上用一个线性映射来预测疾病表型。问题是,仅此约束是否足够?
在模型设定正确(即真实模型确实是线性的)的情况下,恢复真实潜在变量和真实线性映射的解确实能最小化预测误差。但我们可以对真实潜在变量应用一个旋转,然后让线性映射学习去抵消这个旋转,从而构造出另一个同样最小化预测误差但表示不同的解。
为了打破这种模糊性,我们引入多个环境,每个环境中结果变量 Y 与潜在变量 Z 的线性映射 w 略有不同。我们假设这些环境通过树结构关联,从父环境到子环境,线性系数通过添加一个稀疏的线性偏移 δ 来变化。稀疏性意味着从一个物种到另一个物种,通常只有一个蛋白质的效应发生变化,其他保持不变。
现在,我们在最小化预测误差的同时,对偏移矩阵 δ 施加 L0 稀疏性惩罚。为什么这有帮助?对于旋转后的错误解,为了学习正确的模型,它需要应用 A⁻¹ 来“反旋转”。但稀疏偏移 δ 乘以 A⁻¹ 后通常会变得稠密。因此,施加稀疏性惩罚后,正确的表示更可能产生稀疏的 δ,从而被选中。
这个思想可以推广到多任务学习:我们有多个不同的任务(标签),每个任务只依赖于潜在变量的一个小子集(稀疏关系)。同样,旋转后的解需要学习稠密的系数来完成任务,而正确的解具有稀疏系数,稀疏性惩罚有助于选择正确的表示。
策略三:时间机制与稀疏性
上一节我们利用任务关系的稀疏性。本节中,我们看看如何利用时间动态中机制的稀疏性。
我们假设一个隐马尔可夫模型:潜在状态随时间根据某个转移函数(机制)演化,每个时间点通过生成函数 G 渲染观测。G 跨时间保持不变,但潜在状态变化。
关键假设是:转移关系是稀疏的。即,并非前一时刻的每个变量都影响后一时刻的每个变量。例如,在一个机器人、球和树的系统中,机器人踢球只影响球的位置,而树的位置可能保持不变。
我们可以利用这种稀疏性。真实解允许我们构造一个稀疏的转移函数,而旋转后的解可能无法做到这一点。在额外的假设下(如变量间没有完全对称的因果模式),这种稀疏性约束有助于挑选出正确的解。
另一种形式化方法是将非辨识性集合表征为机制的等变性。也就是说,那些与机制交换的变换(如排列、缩放)构成了我们无法区分的解。对于仿射机制,在足够的变异性条件下,我们可以获得与TCL类似的线性辨识性结果。
策略四:配对样本与稀疏干预
上一节我们讨论了时间机制。本节中,我们看看如何利用稀疏干预下的配对样本。
假设我们可以对系统进行干预,且这些干预在潜在空间中是稀疏的——每次只改变一个潜在变量。我们得到同一图像在不同稀疏干预下的多个视图(配对样本)。
在正确的表示中,图像的变化可以通过沿单个潜在轴移动来实现。在旋转后的表示中,为了表示同样的变化,可能需要沿多个轴进行密集的移动。因此,如果我们要求模型用最稀疏的潜在变化来解释观测到的图像对,那么正确的表示将被选中。
如果真实变化不是单稀疏(1-sparse)而是k-稀疏的,那么我们可能无法辨识到单个坐标,但可以辨识到块(blocks),即潜在变量可以在块内纠缠,但块间是分离的。
策略五:非配对样本与支持独立性
上一节我们讨论了配对样本。本节中,我们简要介绍利用非配对样本和一种称为“支持独立性”的新准则。
假设我们可以进行硬干预,将某个潜在变量固定为一个常数。如果我们能对每个潜在变量都进行这样的干预,那么就能很容易地确定每个维度的含义。
更一般地,当干预可能同时改变多个潜在变量时,可以利用“支持独立性”这一特性。我们期望不同潜在变量的支持集是独立的(例如,形成一个超矩形)。即使联合分布不独立,支持集也可能是独立的。旋转一个超矩形通常会破坏这种支持独立性,因此这可以作为一个辨识信号。
总结与展望
本节课中,我们一起学习了因果表征学习的核心挑战与多种辨识策略。

我们回顾了因果推断从实验到观测数据的发展,并指出了当前的前沿:从非结构化数据中学习潜在因果变量。我们看到了问题的固有难度(非辨识性),并探讨了通过引入额外假设来获得辨识性的多种途径:
- 分布变化(如TCL, iVAE):利用跨环境/时间的分布变化,结合指数族假设。
- 稀疏性:在多任务、时间机制或干预中利用稀疏关系作为正则化。
- 机制约束:利用时间动态或干预的特定结构。
- 支持独立性:利用干预后潜在变量支持集的几何特性。
所有这些策略都围绕一个核心思想:寻找正确的坐标系。就像从地心说到日心说的转变一样,正确的表示能使下游的推理和因果发现变得简单而有效。

然而,要构建一个真正的“AI科学家”,我们仍面临许多开放问题,例如:如何评估学到的表示?如何在不同的坐标系间进行权衡?如何将理论结果扩展到更复杂、更高维的真实世界数据?因果表征学习是一个活跃而充满希望的领域,它为机器理解世界的底层因果结构提供了新的工具和视角。
003:因果强化学习
概述
在本节课中,我们将学习因果强化学习的基本概念。我们将探讨因果推理与强化学习如何结合,以及这种结合为何是实现通用人工智能的关键路径。课程将涵盖因果推理的核心思想、当前强化学习的局限性,以及因果强化学习如何解决这些问题。
因果推理与强化学习的结合动机
上一节我们介绍了课程主题,本节中我们来看看为何要将因果推理与强化学习结合。
首先,因果推理拥有悠久的历史。朱迪亚·珀尔在其著作中将因果概念追溯至《圣经》时代。人类很早就开始使用因果解释来理解世界。
当前的人工智能虽然在特定任务上超越了人类,例如图像识别、围棋和星际争霸,但这并非通用人工智能。以星际争霸为例,模型难以将学到的知识迁移到其他任务,并且需要远超人类经验的数据量进行训练。
马库斯和勒昆在关于通用人工智能的辩论中达成了一些共识,其中包括:
- 无模型强化学习目前并非答案。
- 人工智能系统需要更好的内部前向模型。
- 常识推理至关重要。
因果模型可能是最接近物理模型的前向模型,也是表征常识并进行推理的最佳方式。强化学习模仿了自然学习过程:观察、行动、获得奖励并更新模型。然而,当前的强化学习存在根本性缺陷。
当前强化学习的局限性
上一节我们提到了强化学习的潜力,本节中我们来看看它面临的具体挑战。
强化学习常被比喻为蛋糕上的樱桃,因为它所依赖的奖励信号信息量极少,且通常是人为设计的,难以涵盖任务的完整信息。这导致其在现实世界中难以应用。
强化学习面临的核心问题包括:
- 探索与长期信用分配困难:在连续的状态-动作空间中,无法遍历所有可能性。
- 数据效率低下:通常需要从零开始训练,无法有效利用先验知识。
- 非独立同分布数据:强化学习的数据是顺序生成的,但经验回放等技术试图将其变为独立同分布数据,这可能导致信息丢失。

为何需要因果强化学习
了解了强化学习的局限后,本节我们探讨因果推理如何为其提供解决方案。
朱迪亚·珀尔指出,强化学习是实现因果推理的一种方式,但仅限于干预层面。因果模型则能超越干预,考虑反事实分布,从而覆盖更广泛的分布范围。
韦哈提出了两个关键问题,凸显了结合的必要性:
- 人类从高维数据中提取高级概念进行高效学习,而强化学习处理高维数据却非常困难。
- 经验回放破坏了数据的时序依赖性。
从自然科学角度看,传统方法是从数据中归纳模式(如爱因斯坦前的物理学),而现代方法则是先提出理论再验证(如爱因斯坦后的物理学)。因果强化学习恰好融合了这两种路径:强化学习通过干预探索世界,因果推理基于假设进行验证。
人类通过干预自然总结规则,并利用这些规则改进后续的探索与适应。因果强化学习正是让智能体通过与环境的交互学习因果结构,并基于此优化策略。
核心概念回顾
在深入因果强化学习之前,我们需要简要回顾两个领域的基础概念。

强化学习基础
强化学习框架包含以下要素:
- 状态 (s):环境的状态。
- 动作 (a):智能体采取的行动。
- 奖励 (r):环境反馈的奖励。
- 状态转移:动作导致环境状态变化。
- 奖励假设:所有目标都可以用期望累积奖励最大化来描述。
G_t = R_{t+1} + γ R_{t+2} + γ^2 R_{t+3} + ...
因果推理基础
因果推理与关联分析有本质区别。赖欣巴哈原则指出,若两个变量统计相关,则可能的因果情况为:X导致Y、Y导致X,或存在隐变量同时导致X和Y。
因果关系的优势在于:
- 干预:可以预测对变量进行干预后的结果。
- 反事实:可以预测从未观察到的情况。
另一个关键概念是独立因果机制。例如,温度(T)和海拔(A)的联合分布可以有两种分解方式:P(T|A)P(A) 或 P(A|T)P(T)。只有前者符合物理机制,因为海拔分布P(A)的改变不会影响物理机制P(T|A)。这有利于迁移学习。
混杂因子是常见挑战。例如,在治疗肾结石的例子中,若忽略结石大小这个混杂因子,会得到错误的治疗结论。只有当混杂因子被观测到时,才能通过校正得到一致估计。
反事实推理是因果推理的核心。例如,已知学生Joe的鼓励程度(X)、学习时间(H)和考试分数(Y),我们可以问:“如果Joe的学习时间翻倍,他的分数会是多少?”这需要基于观测数据估计噪声项(背景信息),然后在模型中执行干预并计算结果。
因果模型中有三类可识别性问题:
- 能否将干预分布表示为观测分布。
- 能否从数据中唯一确定因果图结构。
- 在隐变量模型中,能否唯一确定参数。
因果强化学习的框架与关联
本节我们将看到因果强化学习如何运作,并与其他机器学习概念关联。
因果强化学习包含两个主要方向:
- 利用因果推理帮助更高效地学习强化学习策略。
- 利用强化学习进行因果发现。
这与因果推理的两部分对应:因果推理(给定结构进行推断)和因果学习(从数据中学习结构)。
它可以自然地与多个领域关联:
- 迁移学习:智能体在不同地形中奔跑。因果强化学习可以学习环境中的鲁棒因果结构,并直接迁移,而无需预先知道地形特征。
- 元学习:目标是学习能处理一系列任务的家庭。如果不同任务共享独立的因果模块,则可以快速复用这些模块。
- 多智能体强化学习:面临巨大联合动作空间等挑战。因果发现可以帮助减少动作空间。此外,合作场景需要考虑共同知识理性,这涉及到反事实推理——“如果我采取不同行动,对方会如何反应?”,从而推断其他智能体的意图。
潜在应用领域
因果强化学习在多个领域有广阔的应用前景。
- 视频预测:基于少量帧预测长期视频轨迹。仅依靠像素统计模型难以进行长时程预测,需要考虑全局因果结构。
- 机器人学:在真实行动前进行规划,预测不同行动的未来轨迹并评估风险,从而节省时间和成本。
- 自动驾驶:一个例子表明,如果模型错误地将刹车指示灯(结果)与车窗视觉信息(原因)关联,可能导致智能体只会刹车。需要学习正确的因果结构以避免此类问题。
- 医疗、金融等序列决策:从纯观测数据(如历史医疗记录)中学习策略和因果结构,而无需与环境实时交互。一个通用模型包含时变和时不变混杂因子,目标是从观测奖励中学习干预下的奖励函数,从而得到最优策略。
总结与资源推荐
本节课我们一起学习了因果强化学习的核心思想。
总结来说,因果强化学习的大框架包含两部分:用因果帮助强化学习,以及用强化学习进行因果发现。目前大部分工作集中于前者,后者因缺乏基准和仿真环境而更具挑战性。一个重要的结论是:因果强化学习为实现通用人工智能而生。
最后,推荐一些深入学习的资源:
- 书籍:
- 《The Book of Why》 - Judea Pearl (科普)
- 《Causality》 - Judea Pearl (经典)
- 《Causal Inference in Statistics》 - Judea Pearl 等 (入门)
- 《Elements of Causal Inference》 - Jonas Peters 等 (侧重条件独立性检验)
- 《Cause and Correlation in Biology》 - Bill Shipley (生物学视角)
- 论文:Bernhard Schölkopf 在 arXiv 上关于因果机器学习的综述论文提供了很好的总结。

因果推理在不同领域(物理、医学、心理学)的定义和侧重点不同,但正逐渐形成一个统一的框架,并与强化学习等方向深度融合,推动人工智能向前发展。
004:因果强化学习——第2-2部分


在本节课中,我们将深入探讨因果强化学习(CRL)本身,这是本教程中最令人兴奋的部分。我们将介绍CRL带来的新挑战和学习机会,并列举一些具有代表性的任务。这些任务包含了现实世界中存在但尚未被充分研究的新组件,使得它们极具吸引力。我们将使用因果推断、因果层次理论(CHT)以及环境模型M作为结构因果模型(SCM)和图的语言来理解和解决这些任务。
总共有六个任务或维度。前三个任务我们将花费15到20分钟详细讨论,介绍任务本身以及一些可能的解决方案思路。然后,我们将用一两分钟简要总结其余三个任务。
任务一:广义策略学习(GPL)
到目前为止,我们假设世界是“一刀切”的,即在线学习和离线学习的模型完全匹配真实模型。离线学习包括离策略学习和基于do演算或因果演算的学习。然而,我们很快会看到第一个例子,事情并不那么简单,单独使用这些方法无法解决问题。这就是我们所说的广义策略学习(GPL)。
上一节我们介绍了CRL的总体框架,本节中我们来看看第一个具体任务:广义策略学习。

在线学习通常由于财务、技术或伦理约束而不可取。通常,我们希望利用在不同条件下收集的数据来加速学习,而不是从头开始。然而,离线学习所需的条件在许多实际场景中并不总是满足。在这个任务中,我们转向更现实的学习场景,将在线和离线模式结合起来,包括当最传统且被证明必要的假设不成立时。这一点很重要——这些假设是必要且可证明的。
让我们从一个例子开始。假设我们试图学习一个输入分布P(X, Y),其中X是行动,Y是结果或奖励。我们希望学习P(Y | do(X))。这可以是机器人通过演示学习,而教师可以观察到比学生更丰富的上下文(例如,有更精确的传感器)。或者是在医学背景下,从观察数据中进行最优实验设计。
例如,输入数据来自一个数据集P(X, Y),X是决策(如用药),Y是结果(如康复)。存在一组未观测变量U,同时影响X和Y。这些数据可能来自某个医院,有100万个数据点。任务是学习药物对结果(如五年存活率)的因果效应。我们真正想要的是P(Y | do(X))。
如果我们尝试应用离策略学习,会发现假设A2(观测上下文相同)被违反了。医生可能观测到更丰富的上下文,但并未记录在电子健康记录中,或者存在于潜意识层面。这导致了混杂偏差。如果尝试使用do演算,也会发现在这个图中无法进行推断。这似乎证明了需要进行在线实验。
但我的建议是:考虑到我们有这100万个数据点,而在线实验可能只涉及300人并花费500万美元,让我们尝试利用观察数据。我们忽略医生和FDA决策者之间的差异,假设他们在因果意义上是可交换的(技术上称为“天真”假设)。换句话说,我们将尝试使用观察数据作为先验,即得到P(Y | X),并尝试在某种在线学习程序中使用它作为先验。
我使用汤普森采样(Thompson Sampling)作为示例方法,你可以选择任何方法。目标是展示最简单的设置来讨论核心问题。先验自然地融入其中,并且我们使用二元变量(最受限的设置)。如果变量有更多自由度,这个问题会更频繁、更明显地出现。

但结果图看起来并不好。使用观察数据作为先验的“天真TS”方法,其累积遗憾曲线几乎是平坦的。相比之下,传统的TS(抛弃所有观察数据)则表现出预期的学习曲线,在大约500次试验后就能以高置信度区分最优臂。
为什么会这样?这似乎违背了“更多数据总是更好”的基本统计原则。数据竟然在损害性能。
为了理解内部发生了什么,我们查看详细图表。真实情况(智能体未知)是do(X=0)的期望奖励高于do(X=1)。但在来自医院的观察数据中,P(Y|X=1)却高于P(Y|X=0)。智能体将观察数据作为先验(例如,使用250个数据点),其95%置信区间显示do(X=1)的估计高于do(X=0)。因此,智能体在初期大量选择次优臂X=1,陷入了困境。而传统TS从50/50先验开始,经过探索后很快就能识别出最优臂。

即使观察数据量增加到250、500、1000,天真TS也需要大约2000轮交互才能赶上传统TS。这令人难以置信,因为我们的目标正是利用大量观察数据来“预热”学习,减少实验。但在这里,正是这些样本在损害性能。
现在,我想更深入地解释这种行为,并引入不可识别性的问题。这是我们之前看到的因果图。



这是生成之前图表的SCM。这个观测世界的SCM导致了两个不同的分布:L1(观察性)分布和L2(实验性)分布。我们可以看到,在L2中,do(X=0)大于do(X=1),所以选择do(X=0)是更好的。但同时,在L1数据中,P(Y|X=1)却大于P(Y|X=0)。在实践中,我们看不到L2分布,我们正是因为不知道才进行学习。整个挑战在于我们没有L2数据。因果层次理论告诉我们,L1数据蕴含的信息少于L2数据。

那么,这是否意味着我应该抛弃所有非由我(智能体)收集的数据,总是从头开始学习?在非常受限的模型下,答案可能是否定的。但一般来说,没有希望仅从离线数据学习。然而,对于其他模式,答案应该是“不”,因为其他条件非常严格,智能体往往是“双胞胎”且在相似环境中演化。
观察数据中是否有任何有用信息?我会说是的,存在有用信息。问题是如何利用这些L1数据或混杂数据?


我们采取一个非常简单的三步法来解决这个问题。


第一步:从混杂的观察数据中提取因果信息。我们采取的解决方案是进行边界估计。我们不试图进行点识别(即从P(X,Y)计算P(Y|do(X))并假装它们相同),而是尝试基于任何分布P(X,Y)的观察结果,来界定P(Y|do(X))的平均效应。存在由这些表达式给出的上下界。重要的是,这些表达式是观察分布的函数,不包含do运算符,没有L2数据。这很好。

边界估计有不同的形式。这里展示的是我喜欢的一种,更相关于线性规划形式,是非参数的(如果你对F和P(U)没有任何假设)。如果加入参数知识(例如,知道F或U的某些函数形式),可以得到更紧的边界。我的建议是,通常从这些开始,如果它们效果很好,那很好;如果它们非常宽松,那么可以开始考虑使用哪些合理的假设来加速学习。

第二步:将这些因果边界纳入学习过程。我选择汤普森采样是因为易于解释。UCB版本更容易证明一些结果。我在这里突出显示更改:为每个臂输入因果边界,并加入某种拒绝采样,以确保我们从数据中采样的值在边界内。
一个很好的问题是:如果你没有那么多观察数据怎么办?我们可以更谨慎,加入某种分布,不那么严格。这是一个很好的合作问题。
第三步:在实践中,这效果非常好。整个过程从使用数据的不良方式(不收敛),到抛弃数据(无法学到任何东西),再到这个简单方法可以显著减少初始探索。目标正是利用观察数据来“砍掉”大量初始探索。

在实践中,可以实现数量级的改进。第三步是:你能证明这转化为遗憾边界吗?可以查阅参考文献。
让我总结一下。我们有这个因果图,有许多观察数据(竖线表示数据点)。我们应用GPL边界估计,无法得到点估计,因此需要在线进行一些探索。我们有一个策略π,它受到这些边界的影响或基于其构建。然后我们在线交互。



以下是该任务的模板:
- 如果策略可以通过离线方法识别,则直接返回最优策略(使用do演算、IPW或其他估计方法)。
- 否则,从观察数据中提取因果信息,并根据可用的结构假设(可以是关于图G的假设,或关于函数形式的假设)构建因果边界。
- 然后在线进行,将因果边界纳入在线分配程序。
- 如果你做对了,可以证明这会反映在遗憾边界中。
这很酷。我时间有点紧,但想快速提一下一个新结果:动态治疗 regimens(DTR)设置。这在医学领域非常流行。我们有一个序列性质:X1, Y1, C1, X2, Y2... 同样存在潜在变量影响所有节点。我们可以将GPL边界应用于此。现实中的结果非常好。这是随机化解决方案(Murphy等人)与我们的解决方案的对比图。我们的解决方案利用了DTR设置中已有的结构假设。绿色曲线(仅使用观察数据)效果就很好。这是一个非常酷的结果。

任务二:何时及何处干预(精炼策略空间)

这是与我的博士后Sanghack Lee的合作。在文献中,通常假设策略空间是固定的,例如动作集A={X1, X2, ..., Xk},并且干预通常被假定会导致积极结果。我们在这个任务中的目标是理解何时需要干预,或者干预是否可能导致意想不到的后果(副作用、安全问题等)。另一方面,如果干预是必要的,我们想理解应该改变环境中的哪些部分以实现期望的结果。这涉及到“何时”干预和“何处”干预。
让我通过一个例子来理解什么是策略空间。考虑一个图 bandit 模型:X是决策,Y是结果,U是潜在变量。我们的目标是优化变量Y(奖励),我们希望尽可能保持Y高。我们并不先验地承诺干预任何特定变量,我们只想保持Y高,甚至可能根本不干预。
现在考虑一个与标准bandit的偏差:我们有三个变量Z, X, Y。Z影响X,X影响Y。结构机制是:X = f_x(Z, U_x),Y = f_y(X, U_y),Z = f_z(U_z)。策略空间是各种干预的组合:不干预(让系统自然演化)、干预X、干预Z、同时干预X和Z。这些选项之间存在某种子集关系。
现在考虑一个我称之为“因果不敏感”的策略:我们忽略因果结构G,将变量Z和X视为一个大变量,并尝试基于函数E[Y | do(X=x, Z=z)]进行优化。第一个观察是:智能体心中的隐含因果图G'(来自此标准优化过程)与环境中的真实因果图G不同。在智能体心中,Z和X只是被π设定的值,它们指向Y。但真实因果模型G施加了底层环境的约束。

一个合理的问题是:尽管智能体心中或优化函数是什么,它都将通过SCM进行评估。那么,忽略图G,我们不能直接做更多干预(更多do操作)并最终收敛吗?我想展示情况并非如此。
这个例子来自大约五年前的一次晚餐讨论。因果图如下:

SCM如下:Z = U_z,X = Z + U_x,Y = X + U_y。且P(U_z=1)=P(U_x=1)=0.5。
首先评估“因果不敏感”策略。可以证明,在这个模型中,Y | do(X, Z) 等于 Y | do(X)。因为对Z的干预被X阻断。那么,如果我们干预X(设X=1),Y = 1 + U_y。要Y=1,需要U_y=0,概率为0.5。同样,如果X=0,Y=U_y,要Y=1,需要U_y=1,概率也是0.5。因此,无论我们对X做什么干预,最大期望奖励只有0.5。


现在对比干预Z。如果我们do(Z=1),X可以自由变化:X = 1 + U_x。那么Y = X + U_y = (1 + U_x) + U_y = 1 + (U_x + U_y)。由于U_x和U_y独立且期望为0.5,但更关键的是,在这个特定参数化下,可以计算出E[Y | do(Z=1)] = 1。这比干预X好得多!

“因果不敏感”策略(我们称之为“全干预一次”策略,即同时干预所有可干预变量)将永远不会选择do(Z)干预,因此永远不会收敛。图表显示,累积遗憾线性增长,选择正确动作的概率始终很低。


有人可能会说:那么让我们尝试所有子集干预(即幂集)。这显然会包含do(Z)。但问题是,我们能比这两种策略做得更好吗?
我们来讨论策略空间。给定图G,策略空间包含不同的干预集合。对于每个元素,我们有具体的干预赋值(例如,do(X=0), do(X=1))。原始的“天真”策略是“全干预一次”。而“暴力”策略是尝试所有子集及其赋值。
我们想研究策略空间相对于模型M和图G施加的拓扑约束的性质。第一个性质:如果Y | do(X, Z) = Y | do(X),那么显然干预Z是多余的。这意味着我们更倾向于简单的do(X),而不是浪费样本尝试do(X,Z)组合。这引出了第一个定义:最小干预集(MIS)。给定图G和结果Y,一个可观测变量集X(不包含Y)被称为MIS,如果不存在其真子集X',使得对于所有与G兼容的SCM,都有Y | do(X') = Y | do(X)。
第二个性质:比较MIS之间的期望奖励。考虑观察期望E[Y]。可以写出E[Y] = Σ_z E[Y | Z=z] P(Z=z)。这等于E[Y | do(Z)](因为Z没有父节点)。可以证明,E[Y] ≤ max_z E[Y | do(Z=z)]。这意味着,对于这个特定图,干预总是比不干预好。但存在反例表明,有时不干预可能是最好的。
这引出了第二个定义:可能最优MIS(POMIS)。给定图G和结果Y,一个MIS X被称为POMIS,如果存在一个与G兼容的SCM,使得使用X能获得的最大期望奖励大于所有其他MIS W能获得的最大奖励。
在我们的例子中,不干预不是POMIS,因为我们已经展示了存在SCM使得do(Z)占优。我们可以从策略空间中移除它。现在,do(X)和do(Z)都是POMIS,这意味着基于拓扑结构,智能体需要在线尝试这两者。我们至少需要尝试这四个选项。
一个快速说明:为什么直觉上认为干预更接近Y的变量(X)总是更好?因为你想控制Y。但在这个例子中,我们需要干预更上游的Z。如果你干预X,你会搞砸什么?思考一下这个例子,当干预X时,你实际上固定了X,但U_x的影响被消除了,而U_x可能携带了关于如何最大化Y的信息。通过只干预Z,你允许X自然响应Z和U_x,从而可能获得更好的结果。
POMIS之间并非独立。存在一些连接。例如,在一个更复杂的图中,通过干预B,你也可以学习关于干预C的信息。或者通过干预C,你可以学习关于不干预的信息。这很酷。这意味着存在一种识别算法,可以连接这些臂。
我们可以将这些连接纳入任何在线算法。我们使用了一个基本算法来展示其有效性。图表显示,我们甚至没有展示“全干预一次”的朴素方法。“暴力”方法尝试所有子集。“MIS”方法只尝试最小集。“POMIS”方法只尝试可能最优集。而绿色曲线则利用了臂之间的连接,尽可能提高样本效率。
我想快速提一下一个新结果:除了决定在哪里干预,智能体还需要决定在哪里观察。智能体被信息轰炸,需要谨慎选择关注哪些地方。假设我们有一个因果图,有上下文C。策略可以是:干预X2,让X1自然变化;或者不干预X1,让X2只听从C,等等。这产生了一个策略空间。这项工作的一个很酷的发现是,策略空间中存在等价类:具有相同最大期望奖励的策略可以被聚类。你可以进行过滤,类似于MIS和POMIS的概念,得到“最小策略”,并在策略之间建立偏序关系。然后,你可以识别出“可能最优策略”。对于一个3节点的图,这可以将策略数量从15个减少到2个。如果你感兴趣,可以查看论文。
任务三:反事实决策制定


这是与我的朋友Andrew Forney和Uygar Sümbül的合作。按时间顺序,这是CRL中出现的第一个任务(约2014-15年)。智能体通常以反射方式行动,不考虑行为的原因或因果。在这种情况下,它们可能被利用而从未意识到。这是在线学习中的一个普遍现象,当智能体基于随机化进行优化时(即所有非因果/因果不敏感的设置,忽略因果结构),就会发生这种情况。
我们的目标是为智能体提供执行反事实推理的能力,将它们自己的意图考虑在内,这将导致基于反事实归一化的更精细的遗憾概念和新的优化函数(L3类型)。
反事实决策制定要回答的问题是:应该如何为特定单元U=u选择处理x*,以最大化期望奖励Y?我们感兴趣的不是平均效应E[Y | do(x)](对所有人群平均),而是针对这个特定个体(具有特定年龄、性别、种族等)。一个次要问题是:如果你有观察性(L1)和实验性(L2)数据怎么办?应用场景很多:机器人开始拥有自己的意图时;个性化医疗;职业培训项目评估。
为了具体说明,我想谈谈“贪婪赌场”的例子,来自我们2015年的论文。赌场雇佣专家团队研究顾客行为,得出结论:决定因素是醉酒程度;醉酒者被更炫目的机器吸引,清醒者则避开它们。赌场有两种机器X0和X1,奖励Y(赢/不赢),未观测变量是机器是否闪烁(B)和顾客是否醉酒(D)。赌场根据这些发现设置了支付结构:如果机器闪烁且顾客醉酒,则支付较低;如果机器不闪烁且顾客清醒,支付也较低。换句话说,如果人们遵循他们的自然倾向,他们就会吃亏。这就是“陷阱”。
我们作为玩家,不知道这些。我们首先在赌场地板进行随机抽样(L1数据),收集了10000个数据点,发现E[Y | X=0] = E[Y | X=1] = 0.15。这低于规定的30%支付率,我们怀疑有问题。第二天,监管检查员进行了随机对照试验(RCT,L2数据),发现E[Y | do(X=0)] = E[Y | do(X=1)] = 0.3。赌场声称一切合规。
现在,我们作为机器学习学生,在第三天想玩这个游戏。我们应该怎么做?我们和普通顾客可交换吗?我们已经看到了数据,而他们没看过。假设我们可交换。如果我们只是随机选择(抛硬币),我们得到0.3的奖励。如果我们使用标准的bandit算法(如汤普森采样),基于do分布进行优化,结果令人失望:学习曲线几乎是线性的,选择正确动作的概率保持在0.5,和随机抛硬币一样。我们并不比检查员好。
在第四天,我们尝试运用因果推断知识,使用L3反事实。我们提出一个称为反事实决策准则(RDC) 的新准则:最大化 E[Y_{X=x1} | X=x0]。这个反事实句子的意思是:给定我即将玩机器X0,如果我玩了机器X1,我的结果会怎样?这被称为“对已处理者的处理效应”(ETT)。相比之下,之前我们优化的是E[Y | do(x)],在L3符号中可写为E[Y_x]。


问题在于,反事实通常难以甚至不可能仅从数据评估,除非满足特殊条件(如二元变量、后门条件成立等)。那么,我们如何评估这样的表达式呢?

技巧在于:智能体即将玩机器X0,这意味着未观测函数f_x(B,D)即将被评估为X0。我们暂停决策流程,思考:我即将遵循我的直觉选择X0,我是应该遵循直觉,还是应该违背它选择X1?这是第一次我们可以设想AI在说:我即将做某事,但不知道原因。
如果我们不中断,让X=x0,那么我们就像第一天的“猴子”一样,产生了L1数据。如果我们中断并进行随机化(抛硬币),我们就消除了U的影响,得到了do分布(Fisher的RCT)。但我们在说别的东西:我们中断,进行随机化R,但设定期望行动为x0。为什么?因为x0包含了关于潜在空间的、我们无法访问的信息。可以证明,这恰好等于反事实E[Y_{x1} | X=x0]的含义。

因此,我们主张这应该成为新的准则。如果你倾向于哲学或决策理论,这对应于某种决策理论(CDT与EDT)。RDC结合了两者。
如果我们这样做,我们得到蓝色学习曲线:我们能够收敛,最终学会最优策略。我们还可以利用第一天的观察数据(L1),获得一个提升,因为臂之间存在关系。一旦确立了程序的一致性,目标就是在此基础上加速收敛。我们可以结合观察性和实验性数据集,利用它们之间的约束,得到更好的曲线。
这项任务引入了一个新的策略π,它考虑了X'(对U的评估),并将U的评估与你在反事实归一化下承诺的行动分离开来。我们仍然需要随机化,但需要更聪明地理解其含义。

一个有趣的结果是关于人机协作的应用。一个简单观察来自RDC:如果Y_x | X' = Y | do(x),那么人类的直觉没有价值。在这种情况下,人类专家可以在不牺牲系统性能的情况下被取代,至少在原则上可以实现完全自主。反之,如果等式不成立,即使人类表现比机器差,其直觉中仍存在可以被反事实智能体利用的“火花”。这是一个优美的结果。还有许多细化工作,例如,如果不能完全自主,是否可以半自主,在预算内咨询人类。

总结
在本节课中,我们一起学习了因果强化学习的三个核心任务。

- 广义策略学习(GPL):我们探讨了如何结合有偏的观察数据(L1)和在线实验(L2)来更高效地学习策略。当传统离线学习的假设不成立时,通过因果边界估计利用观察数据作为先验,可以显著减少所需的探索。
- 何时及何处干预:我们挑战了“干预总是有益”的假设,并展示了如何根据因果图精炼策略空间。通过识别最小干预集(MIS)和可能最优MIS(POMIS),智能体可以进行更精准、更高效的干预,避免不必要的副作用。
- 反事实决策制定:我们引入了超越传统基于do的优化的新范式。通过让智能体进行反事实推理(“如果我做了不同的选择会怎样?”),并基于反事实决策准则(RDC)进行优化,智能体可以更好地理解自身意图,并在诸如“贪婪赌场”等复杂场景中实现更优的学习和决策。这为人机协作中的自主性判断提供了新的视角。


因果推断和强化学习是根本交织的,当这种联系被充分认识时,新颖的学习机会就会出现。编码在因果图中的关于底层SCM的结构信息,可以与我们的在线分配程序结合利用,从而实现鲁棒且高效的学习。反之,忽视环境独特的因果结构几乎总是导致糟糕的决策。CRL开启了一系列以前既未被承认也未被理解的新学习问题,包括在线与离线学习结合、何时何地干预、反事实决策制定、跨环境泛化、因果模仿学习等。最终目标是开发一个原则性框架,用于设计集成了观察性、实验性和反事实数据与推理模式的因果AI系统,这有望通向更类人的可解释性和理性决策。
018:因果关系_2_干预 🔬
在本节课中,我们将要学习因果推断中的一个核心概念:干预。我们将通过具体的例子,理解为什么仅靠观察数据不足以确定因果关系,以及如何通过主动干预来揭示变量间的因果方向。
上一节我们探讨了从数据中识别因果关系的挑战,本节中我们来看看如何通过“干预”这一关键操作来突破观察的局限。
从观察到干预
考虑一个关于“火灾”和“烟雾”的例子。我们有两个二元变量:Fire(火灾)和 Smoke(烟雾),分别表示某个地点是否存在火灾和烟雾。
从观察数据中,我们可以得到以下结论:
- 一旦观察到烟雾,发现火灾的概率会比没有烟雾时更高。
- 如果知道某处有火灾,那么观察到烟雾的可能性也比没有火灾时更高。
因此,Fire 和 Smoke 之间存在统计依赖或相关性,我们无法断定它们相互独立。但究竟是谁导致了谁?是火灾引起了烟雾,还是烟雾引起了火灾?
收集更多观察数据无助于回答这个问题。因为从条件概率的角度看,Fire 和 Smoke 在观察数据中是对称的,无法区分因果方向。
干预:确定因果的关键 🔑
那么,“火灾引起烟雾”这个信息从何而来?答案是实验,即干预。

- 如果我们制造火灾(干预
Fire),很可能会看到烟雾。 - 但如果我们通过其他方式(例如释放一氧化碳气体胶囊)制造烟雾(干预
Smoke),而不制造火灾,我们并不期望会引发火灾。
因此,我们需要通过干预实验来强制设定某个变量的值,然后观察其他变量的变化。这不仅仅是纯粹的观察,而是需要对变量做出改变。核心信息是:对变量的干预可能决定因果关系。

回到我们的路线图,目标是从数据走向因果关系。目前我们拥有的是观察数据。上述讨论可以转化为更具体的问题:如果干预了变量 M,C 会改变吗?如果干预了变量 D,C 会改变吗?回答这些问题,就是回答“谁因谁果”的一种方式。
数学形式化:do-算子 📝
为了让概念更精确,我们引入数学符号。
通过一个完美的理想干预,我们意味着强制将一个随机变量 Z 设定为某个固定值 z。其记号为 do(Z = z) 或简写为 do(z)。双竖线 || 用于强调该变量被强制设定为此值。
现在,区分两个关键概念:
P(Y | do(Z=z)):这是在我们将变量 Z 干预(设定)为值 z 的条件下,Y 的概率。P(Y | Z=z):这是我们观察到 Z 等于值 z 的条件下,Y 的概率。

请注意两者的区别。有时也会用符号 C 来强调这种区别,例如 P(Y | C, Z=z) 与 P(Y | do(Z=z)) 含义相同。
回到火灾与烟雾的例子
当干预一个变量时,需要确保没有其他变量被同时干预。
以下是干预 Smoke 的方法:
do(Smoke = true):通过释放一氧化碳气体胶囊来产生烟雾(不能通过点火,否则也干预了Fire)。do(Smoke = false):通过抽吸等方式防止烟雾。
以下是干预 Fire 的方法:
do(Fire = true):通过点火产生火灾(同时不能产生一氧化碳气体)。do(Fire = false):防止火灾发生。
现在,我们可以进行因果测试:
-
干预烟雾,观察火灾:
- 无论我制造烟雾还是防止烟雾,火灾的概率不会改变。
- 由此可以得出结论:烟雾不会导致火灾。
- 注意,这与观察性结论
P(Fire | Smoke=true) > P(Fire | Smoke=false)不同。
-
干预火灾,观察烟雾:
- 如果我制造火灾,相比防止火灾时,更有可能观察到烟雾。
- 由此可以得出结论:火灾会导致烟雾。
- 这与观察性结论
P(Smoke | Fire=true) > P(Smoke | Fire=false)一致。
因果效应的正式定义
对于一个二元变量 Z,如果其平均因果效应不为零,则称 Z 对变量 Y 有因果效应。
平均因果效应 定义为:
ACE(Z -> Y) = P(Y | do(Z=1)) - P(Y | do(Z=0))

如果 ACE 不为零,则存在从 Z 到 Y 的因果效应。
更一般地,如果存在对 Z 的两种不同干预(例如 do(Z=z0) 和 do(Z=z1)),能改变 Y 的分布,那么变量 Z 就是变量 Y 的一个原因。

应用于发烧与新冠的例子 🤒
回顾之前的例子,我们有变量 COVID(新冠感染)和 Fever(发烧)。
- 干预发烧:通过药物强制退烧或引发发烧,然后观察新冠感染情况。结果:新冠的分布不会改变。因此,发烧不会导致新冠。
- 干预新冠:通过感染或免疫来干预个体是否患新冠,然后观察发烧情况。结果:发烧的分布会改变(感染新冠后更可能发烧)。因此,新冠会导致发烧。
回答上一节的问题

在上一节,我们提出了一个问题:“如果强制戴口罩,这个人会发烧吗?”
根据本节所学,我们知道这个问题对应的不是观察性查询 P(Fever | Mask=1),而是干预性查询 P(Fever | do(Mask=1))。
我们了解到可以通过实际干预(实验)来回答这个问题。但如何从我们已有的因果图模型中推导出这个答案?这将是后续章节要讲述的内容。

总结与路线图展望
让我们再次回到从数据到因果关系的路线图。
我们了解到,解释因果关系的一种方式是通过干预。从现实世界(如社会、许可、新冠、口罩)中,我们可以收集两种数据:
- 观察性数据:被动记录所得。
- 干预性数据:通过主动实验所得。
通过干预性数据,我们可以直接回答像 P(C | do(...)) 这样的干预查询。然而,如何从观察性数据和因果图模型出发,来回答干预查询,中间还有许多需要深入探讨的内容,例如更深入的因果模型概念。这将是下一节的重点。

本节课中我们一起学习了:为什么观察不足以确定因果关系;如何通过“干预”实验来揭示因果方向;引入了 do-算子来形式化干预的概念;定义了平均因果效应作为因果关系的检验标准;并通过火灾-烟雾、新冠-发烧的例子巩固了这些概念。干预是连接数据与因果推断的核心桥梁。
019:离散表征在模型与策略学习中的作用 🧠
在本节课中,我们将要学习表征学习与基于模型的强化学习(Model-based RL)的核心概念,并深入探讨一个具体问题:离散表征(Discrete Representations)为何以及如何影响智能体的学习过程。我们将通过对比实验,分析离散表征在世界模型学习和策略学习两个核心环节中的表现。

概述
过去两年,我的研究聚焦于两个核心领域:表征学习和基于模型的强化学习。表征学习关注如何将现实经验(例如,参加微积分课)转化为对人工智能体有意义的数字形式。基于模型的强化学习则旨在创建能够学习世界内部模型,并通过“想象”来学习的智能体。

大约一年前,Dreamer V3算法的发布成为了一个关键节点。尽管它不是首个基于模型的RL算法,但它在约150种不同环境(从机器人到《我的世界》)中都表现出色,尤其是在过去模型方法表现不佳的领域。Dreamer V3的一个独特设计是使用了离散表征,这与主流的连续表征截然不同。这引发了一个核心研究问题:离散表征真的有效吗?如果有效,它是如何起作用的?

为了解答这个问题,我们需要将复杂的系统分解。在基于模型的强化学习中,主要包含两个核心组件:世界模型(模型学习) 和策略(将观察映射为行动)。因此,我们的探索将分为两部分:
- 离散表征如何影响世界模型的学习?
- 离散表征如何影响策略的学习?
世界模型学习实验 🧪
上一节我们介绍了研究背景和核心问题,本节中我们来看看离散表征对学习世界模型的影响。
我们使用一个基于像素的“迷你网格”(Minigrid)环境进行实验。智能体的目标是:拾取钥匙、打开门、然后到达绿色标记的目标点。为了增加难度,我们会偶尔强制智能体采取随机行动。
以下是建立世界模型并进行对比的实验流程:
首先,我们收集环境中的大量样本数据(状态转移序列)。
接着,我们使用这些观察数据训练一个自编码器。自编码器是一种试图重建输入观察的神经网络,其关键在于网络中部存在一个比输入和输出维度都小的“瓶颈层”。为了准确重建原始观察,网络必须学会在压缩数据的同时,保留编码该观察所需的重要信息。这个自编码器会输出潜在状态,记为 Z,它是观察的压缩版本。
然后,我们以潜在状态 Z 和行动 A 作为输入,训练一个世界模型来预测下一个潜在状态 Z‘。这得到了一个单步模型。通过将这个模型反复应用于新预测的状态,我们可以预测任意步长后的未来。
为了评估模型,我们对比了三种轨迹可视化:
- 基准(Ground Truth):智能体在真实环境中的行为轨迹。
- 连续表征世界模型:使用连续潜在状态的模型进行“想象”的轨迹。
- 离散表征世界模型:使用离散潜在状态的模型进行“想象”的轨迹。
实验发现,使用离散表征的世界模型所产生的想象轨迹,更接近真实基准轨迹。智能体能够更快地拾取钥匙、开门并到达目标。这表明,在模型架构相同的情况下,基于离散表征学习的世界模型预测更准确。
然而,这个结果引出了新的疑问:为什么连续模型不够准确?有两种可能:
A. 离散表征赋予了模型某种连续模型天生缺乏的能力。
B. 实验中使用的世界模型规模较小,连续模型可能只是容量不足,无法学习环境的全部信息。
为了验证,我们通过增加参数来扩大两个世界模型的容量,并绘制了模型大小与预测误差的关系图。结果显示,当模型较小时,离散模型误差更低;但随着模型容量增加,两者都收敛到了相近的、近乎完美的性能水平。
这证实了答案是 B:在模型容量不足以完美建模世界时(这在现实世界或任何有趣的问题中是常态),离散表征表现得更好。这意味着,离散表征允许模型用更少的容量学习到更多关于世界的知识。
策略学习实验 🎯
在了解了离散表征对模型学习的影响后,我们接下来探讨它对学习策略的作用。
我们沿用上一节的方法来获取连续和离散表征。然后,我们需要在这些表征之上学习一个策略。具体流程如下:在每个时间步,智能体从环境获得观察,通过编码器(连续或离散)将其转换为潜在状态 Z,然后使用PPO等算法学习一个策略,将 Z 映射到能使其更接近目标的行动 A。
通过对比两种智能体达到目标所需的平均步数(学习曲线),我们发现:两者最终都收敛到了相同的、约20步到达目标的最优解。但是,基于离散表征学习的策略,其收敛速度比连续表征快2到3倍。两种基于表征的方法都显著优于直接从原始观察(像素)学习策略的基线方法。
然而,这里存在一个关键问题:在实际的强化学习中,我们通常没有现成的、已学习好的表征,而是需要策略与表征同时学习。当我们进行这样的“同时学习”实验时,情况发生了变化:基于离散表征的策略学习初期显著落后。
原因是,学习离散表征的 VQ-VAE 其学习速度慢于学习连续表征的普通自编码器。那么,这是否意味着离散表征无用?并非 necessarily。
迈向持续学习:离散表征的潜力 🔄
之前的实验都在简单的“迷你网格”环境中进行,这个世界很小,智能体有可能学会所有可能发生的情况。我们这样做是为了剥离干扰因素,专注于核心问题。
但我从事RL研究,是因为对更复杂、更真实的问題感兴趣。在这些问题中,世界如此庞大和复杂,你永远无法经历所有情况或学习一个完美的世界模型。在这种无法学会一切的范式下,游戏的名字是适应,关键在于遇到新事物时的在线学习。这正需要持续学习的能力。
我提出,离散表征可能非常适合持续学习。在模型学习实验中,我们看到当模型无法学会一切时,离散表征表现更好。在策略学习实验中,虽然离散表征导致初期学习较慢,但未来更快的学习和适应能力,有可能抵消缓慢的初始学习阶段。
为了验证这一点,我们定期改变迷你网格环境的布局,迫使智能体进行适应。观察每次环境变化后的学习曲线(图中竖虚线表示变化点),我们发现:在初始表征学习阶段之后,基于离散表征的策略在每次环境变化后,其适应速度都 consistently 快于基于连续表征的策略。
是的,学习这些特定的离散表征确实需要更长时间。但一旦学会,它们能更快地适应和学习新知识。无论是在模型学习还是策略学习中,似乎都有一些非常有趣的事情发生,使得神经网络更容易从离散表征中学习。
总结
本节课中,我们一起学习了表征学习与基于模型强化学习的基础,并深入探究了离散表征的作用。
- 在世界模型学习方面:当模型容量有限时(这是普遍情况),离散表征能帮助学习到更准确的世界模型,即用更少的参数编码更多有效信息。
- 在策略学习方面:如果已有学习好的表征,基于离散表征的策略收敛更快。若需策略与表征同时学习,离散表征初期较慢,但在需要持续适应变化环境的场景中,它展现出更强的长期适应能力和学习效率。

核心结论是:离散表征并非在所有情况下都是“银弹”,但它在处理复杂、非稳态、需要持续学习的现实世界问题时,显示出独特的潜力和优势。在完整论文中,我还深入探讨了其背后原因,例如稀疏性和二元性所扮演的角色。如果你对此感兴趣,可以通过描述中的链接查阅论文。


感谢观看。

浙公网安备 33010602011771号