跳转至

第04章:Graphical Models

作者

本章由 Aleksander Molak 撰写。涉及的核心概念参考 Pearl & Mackenzie (2019) The Book of Why、Peters, Janzing & Schölkopf (2017) Elements of Causal Inference、Magliacane et al. (2018) NeurIPS、Forré & Mooij (2017/2018)、Mooij & Claassen (2020) 等。代码部分使用 NetworkX(NetworkX 2.x 系列的 parse_gmlDiGraph(adj_matrix) 构造器),可视化用 graphviz。

内容概述

本章是 Ch 2 SCM 概念在"图论"上的具象化,也是 Ch 5–7 d-separation / d-connection 与 Ch 13 因果发现的前置基础。内容分四块:(1)图论速成(节点 / 边、有向 / 无向、环 / 无环、连通性、加权 / 无加权、邻接矩阵 / GML 表示);(2)Graphical Causal Models(GCM)的形式化——节点 = 变量,有向边 = 因果关系(区别于 Bayesian network);(3)DAG 的形式定义 + Pearl 因果定义 "\(A\) causes \(B\) if \(B\) listens to \(A\)" + graph mutilation 的概念;(4)DAG 的局限与超越:动态系统(对话 partner 模型)、循环 SCM(Forré & Mooij 的 \(\sigma\)-separation)、Mooij & Claassen (2020) 关于 FCI 在循环下的鲁棒性。本章不教因果识别准则(Ch 6 详述),但奠定了"因果图 = 数据生成过程的可视化"的统一心智模型。

核心方程与概念

  • 图的基本类型(按因果相关度排序):
维度 类型 1 类型 2
方向 无向图(undirected) 有向图(directed)
无环(acyclic, DAG) 有环(cyclic)
连通 全连通(fully-connected) 部分连通 / 不连通
加权 无权(unweighted) 加权(weighted)

因果推断主要用 DAG(最常用)或 CPDAG(complete partially directed acyclic graph,部分边方向未知的 Markov 等价类)。有向边在因果图里严格是因果关系——这是 GCM 区别于 Bayesian Network 的关键(Pearl & Mackenzie 2019, pp. 111-113)。

  • 邻接矩阵(adjacency matrix)\(M \times M\) 方阵,\(A_{ij} = 1\) 表示节点 \(i\) → 节点 \(j\) 的有向边。DAG 必须有零对角线(否则自环 → 循环)。这一性质被 NOTEARS(Zheng et al. 2018, Ch 14)等因果发现算法利用——把"无环性"编码为 \(\text{tr}(e^{A \circ A}) - d = 0\) 或矩阵 \(A\) 的特征值约束。

  • Python 工具

  • nx.parse_gml(gml_text)nx.DiGraph(GML 语言被 NetworkX + DoWhy 支持)
  • nx.DiGraph(adj_matrix) 直接从邻接矩阵构造
  • nx.Graph 构造无向图
  • pydot 是 graphviz DOT 格式的 Python 接口 示例:6 节点 6 边的 DAG,节点对 \((0,1), (0,3), (0,5), (3,2), (2,4), (4,5)\)

  • Graphical Causal Model(GCM)形式化(Peters et al. 2017): $\(\mathcal{G} = (G, \mathcal{F}), \quad G = (V, E), \quad \mathcal{F} = \{f_i: i \in V\}\)$ 其中 \(G\) 是图,\(\mathcal{F}\) 是一族定义在节点上的函数,联合诱导出 \(V\) 上一个分布 \(P\)。GCM 强大之处:图结构本身(不带函数细节)就编码了统计独立性——这使得 d-separation 和 causal discovery 成为可能。

  • Pearl 因果定义:"\(A\) causes \(B\) if \(B\) listens to \(A\)"(Pearl & Mackenzie 2019)。形式上:对任意 \(A\) 的值变化 \(a, a'\),存在 \(B\) 的分布变化 \(P(B | \mathrm{do}(A=a)) \neq P(B | \mathrm{do}(A=a'))\)。这一定义操作化了"因果"——绕过了亚里士多德四因 / Hume 恒常联结的哲学复杂性。

  • Graph mutilation(图切割):在 \(\mathrm{do}(B)\) 后,移除所有进入 \(B\) 的边。这一操作反映了干预修改系统结构这一事实(区别于仅仅修改分布的条件作用)。例:\(A \rightarrow B \rightarrow C\) 链中 \(\mathrm{do}(B)\) 后图变成 \(B \rightarrow C\)\(A\) 不再影响 \(B\))。这是 Ch 6 d-separation 准则的几何基础。

  • Faithfulness assumption(Uhler et al. 2013):若 \(X \perp\!\!\!\perp Y | Z\) 在分布 \(P\) 中成立,则在因果图 \(G\)\(X\)\(Y\) 也被 \(Z\) d-分离。等价表述\(P\) 中的所有条件独立性都来自 \(G\) 的 d-分离结构(不是来自参数巧合)。Uhler et al. (2013) 给出 faithfulness 失效的几何条件——例如非传递性条件依赖会破坏 faithfulness。Ch 5 详述,Ch 13–14 多数因果发现算法需要此假设。

  • GCM 的局限(Peters et al. 2017):SCM/DAG 是"对底层物理过程的抽象——其作为因果模型的有效性范围有限"。

  • DAG 失效的典型场景

  • 对话 partner 模型: $\(P^{(1)}_{X}(t_j) \coloneqq f(P^{(2)}_{X}(t_{j-1}), I^{(1)}_{X}(t_{j-1}))\)$ $\(P^{(2)}_{X}(t_{j+1}) \coloneqq f(P^{(1)}_{X}(t_j), I^{(2)}_{X}(t_j))\)$ 两方交互 → 间接循环(partner 1 在 \(t_j\) 说的话依赖于 \(t_{j-2}\) 自己说的话)。Strogatz (1988) Love Affairs and Differential Equations 是经典玩具。
  • 经济学供需反馈:需求上升 → 供给增加 → 价格下降 → 需求再上升。需要为每个时间步产生一个新变量,效率极低。

  • 超越 DAG 的方法

  • Dynamical systems(Strogatz 2018; Nowak & Vallacher 1998; Gottman et al. 1999):用 ODE/微分方程描述,常用非解析求解;强相关领域是非线性动力学、混沌、复杂系统。涌现(emergence):系统级性质无法在部分级观测到——"系统多于部分之和"。
  • Cyclic SCMs
    • Forré & Mooij (2017):\(\sigma\)-separation——d-separation 在循环系统的推广。
    • Forré & Mooij (2018):第一个支持循环 + 潜变量 confounders 的约束型因果发现算法。
    • Mooij & Claassen (2020):在部分祖先图(partial ancestral graphs)下,FCI 算法在循环数据生成下也能给出正确结果。
  • Domain adaptation with causal inference(Magliacane et al. 2018, NeurIPS):用因果推断预测不变条件分布,扩展了因果发现工具箱到迁移学习场景——允许未观测 confounders存在。

  • 实际因果图的来源(三种):

  • Causal discovery(Ch 13–14)
  • Expert knowledge:包括 RCT、物理定律、领域经验
  • 二者结合:部分算法允许"先冻结某些边"或"建议边的方向"

关键结论

  • 因果图(causal graph)的有向边严格代表因果关系——与 Bayesian network 区分。这一约定使图结构本身可作为识别准则(d-separation、do-calculus)的几何基础。
  • DAG 假设(无环)在很多系统中被违反(对话、供需反馈、生理反馈环);强行 unroll 成时间序列会指数级膨胀变量数。需要 cyclic SCM / 动态系统 / \(\sigma\)-separation 等扩展。
  • Pearl 因果定义("\(B\) listens to \(A\)")把因果问题操作化为"改变 \(A\)\(B\) 的分布是否改变",绕过了哲学争议,适配 do-calculus 工程化。
  • Graph mutilation 把"干预"翻译为"删除进入节点的边",是 Ch 6 do-calculus 的几何基础。
  • Faithfulness 是因果发现的"基石假设",但 Uhler et al. (2013) 揭示其在某些参数巧合下失效——这是 Ch 13–14 算法失败案例的主要来源。
  • 实际工程中因果图几乎总来自专家知识 + 因果发现的混合,单纯任一种都不可靠:纯专家难以覆盖所有变量;纯数据驱动受限于 faithfulness 与样本量。

挑战和开放性问题

  • Cyclic causal systems 的可识别性\(\sigma\)-separation 在循环系统上有效,但相应 do-calculus 推广仍在研究(Forré & Mooij 系列工作)。
  • Faithfulness 的可验证性:Faithfulness 在大多数真实数据生成过程中是不可验证的(需要穷举所有参数组合)。这意味着基于 faithfulness 的因果发现算法可能"看起来成功"但事实上假设被违反。
  • 高维 DAG 的可计算性:当节点数 \(N \sim 100\) 时,DAG 空间 \(\supset 2^{N(N-1)/2}\),NOTEARS 等连续优化方法(Ch 14)才有实用可能;纯离散搜索(PC algorithm, GES)只能处理 \(N \leq 20\)
  • 未观测 confounders:多数真实场景存在隐变量;PC 算法无法处理,FCI(Ch 13)部分处理但分辨率有限。
  • Domain adaptation 与因果的桥梁:Magliacane et al. (2018) 给出了"用因果做迁移学习"的范例,但工业级实现稀少(DoWhy / EconML 仅部分支持)。
  • 图与函数的耦合表示:GCM 定义了 \((G, \mathcal{F})\),但实际工程中"图已知"与"函数已知"很少同时成立;多数代码库(DoWhy)默认图已知 + 函数未知,限制了其发现能力。

个人反思与批判性分析

本章是 Ch 2 SCM 抽象概念的可视化翻译,也是 Ch 5–7 算法的几何基础。值得讨论的几个层面:

  • DAG 作为"工业标准"的代价:本书默认绝大多数方法假设 DAG,但循环在生物系统(血管自调节反馈、代谢通路、神经回路)中是常态。把血管血流动力学强行套进 DAG 等于"先 unroll,再假设每对相邻时间步独立"——丢失了系统的内禀反馈。本章末尾的 cyclic SCM 推广方向对生物力学是真正有价值的,可惜 Ch 13–14 的算法实现仍然以 DAG 为主流。
  • "edges = causation"约定的实践后果:在 Bayesian network 中边只是"条件依赖",不一定是因果。DoWhy 与 gCastle 默认边是有向因果边——这意味着使用者必须确认自己的"图"是因果图,否则 do-calculus 输出无意义。生产代码里最常见的 bug 是把"特征相关性"直接画成因果图。
  • Pearl "listens" 定义的简化论:这一定义绕过了反事实(rung 3)层级的精细问题,只保留了 rung 2 干预下的分布变化。但同一观察分布可以由多个因果模型生成(Peters et al. 2017 的 observational equivalence)——Pearl 的定义没说"哪个模型是正确的"。Ch 13 的因果发现部分尝试解决此点,但只能在 faithfulness + 一些限制下给出部分答案。
  • Graph mutilation 的几何直觉 vs 实际工程:作者说"do(B) = 删除进入 B 的所有边"——这是有向图删边操作。但真实的 \(\mathrm{do}(B)\) 操作也常涉及对 B 的分布的修改(如固定 \(B\) 到常数 vs \(B \sim \mathcal{N}(\mu, \sigma^2)\) 的不同干预)。Mutilation 只对应"原子干预"(atomic intervention),对"软干预"(\(f_B\) 改为新函数)需要修改图结构 + 节点函数。Ch 6 的 do-calculus 推广到 soft intervention 是当前研究热点。
  • Faithfulness 的"几乎处处成立"vs"实际工程":Uhler et al. (2013) 给出 faithfulness 失效的明确几何条件(参数矩阵的特征值巧合),但实践中无法预先检测。Ch 13 的 PC 算法在 faithfulness 失效时可能输出空图全连通图——这两种极端对决策同样糟糕。一个稳健做法是先做敏感性分析(Cinelli & Hazlett 2020 风格的"unobserved confounder bounds"),但在 Ch 13 之前本书不展开。
  • 对个人研究的启发:我在做血管生物力学时,常用 ODE 系统描述血管张力-压力反馈(典型的循环因果系统)。把这一系统强行转成 DAG 等于引入大量冗余节点(每个时间步一个"前态"节点),丢失了反馈的本质。本章提示我:在 SMC G&R 框架下,"瞬时因果图""时序因果图"是两种不同对象——后者更符合物理直觉,但需要 cyclic SCM 工具。Forré & Mooij (2017, 2018) 是值得深入的进阶方向。
  • DoWhy 的工程化实现:DoWhy 库的图表示基于 networkx,其 gml_string 接口支持 GML 文本输入,但不强制边的方向性检查——用户输入无向边时,DoWhy 会警告但不报错。这是工程实现的常见简化,对教学友好但对生产不友好。

重要参考文献

  • [X1] Pearl, J., & Mackenzie, D. (2019). The Book of Why: The New Science of Cause and Effect. Penguin Books — 本章 Pearl "listens" 因果定义与 GCM 与 BN 区分的来源。
  • [X2] Peters, J., Janzing, D., & Schölkopf, B. (2017). Elements of Causal Inference: Foundations and Learning Algorithms. MIT Press — GCM 形式化与 SCM "abstraction of physical processes" 限制论述的来源。
  • [X3] Uhler, C., Raskutti, G., Bühlmann, P., & Yu, B. (2013). Geometry of the faithfulness assumption in causal inference. The Annals of Statistics, 41(2), 436–463 — faithfulness 失效的几何条件;本章 "deeper examination reveals underlying challenges" 出处。
  • [X4] Magliacane, S., Van Ommen, T., Claassen, T., Bongers, S., Versteeg, P., & Mooij, J. M. (2018). Domain adaptation by using causal inference to predict invariant conditional distributions. NeurIPS 2018, 31 — 因果 + 迁移学习的代表工作。
  • [X5] Forré, P., & Mooij, J. M. (2017). Markov properties for graphical models with cycles and latent variables. arXiv:1710.08775 — \(\sigma\)-separation 推广的原始论文。
  • [X6] Forré, P., & Mooij, J. M. (2018). Constraint-based causal discovery for non-linear structural causal models with cycles and latent confounders. arXiv:1807.03024 — 第一个支持循环 + 潜变量的约束型因果发现。
  • [X7] Mooij, J. M., & Claassen, T. (2020). Constraint-based causal discovery using partial ancestral graphs in the presence of cycles. UAI 2020, 1159–1168 — FCI 在循环数据生成下的鲁棒性。
  • [X8] Strogatz, S. H. (1988). Love affairs and differential equations. Mathematics Magazine, 61(1), 35 — 对话 partner 模型的玩具。
  • [X9] Strogatz, S. H. (2018). Nonlinear Dynamics and Chaos: With Applications to Physics, Biology, Chemistry, and Engineering (2nd ed.). CRC Press — 非线性动力学与混沌的标准教材。
  • [X10] Gottman, J. M., Swanson, C., & Murray, J. (1999). The mathematics of marital conflict: Dynamic mathematical nonlinear modeling of newlywed marital interaction. Journal of Family Psychology, 13(1), 3 — Gottman 婚姻动力学研究;对话循环 SCM 的灵感来源。
  • [X11] Gottman, J. M., & Notarius, C. I. (2000). Decade review: Observing marital interaction. Journal of Marriage and Family, 62(4), 927–947 — Gottman 婚姻研究综述。
  • [X12] Nowak, A., & Vallacher, R. R. (1998). Dynamical Social Psychology. Guilford Press — 动态社会心理学教材。
  • [X13] Cosentino, C., & Bates, D. (2011). Feedback Control in Systems Biology. CRC Press — 系统生物学反馈控制标准教材;循环 SCM 在生物学的应用。
  • [X14] Koller, D., & Friedman, N. (2009). Probabilistic Graphical Models: Principles and Techniques. MIT Press — 概率图模型的标准教材(隐式引用,与本章 GCM 概念对照)。
  • [X15] Spirtes, P., Glymour, C., & Scheines, R. (2000). Causation, Prediction, and Search (2nd ed.). MIT Press — 因果发现经典教材(隐式引用,Ch 13 详用)。