跳到主要内容

不确定性 — 概率、贝叶斯(拿新证据更新信念的法则)网络与因果

这一章讲三件事: 概率凭什么是不确定推理的正确地基; 贝叶斯网络怎么把「指数张表」变成「线性个参数」;以及看到 相关之后,怎么进一步谈论因果。 读完你会拿到第 10–15 章共用的数学底盘。这一章是全书的重心。

1. 这一章讲什么

逻辑 agent 的失败方式很典型:Toothache⇒Cavity 不对(还有牙龈炎、脓肿……), Cavity⇒Toothache 也不对(不是每颗蛀牙都疼)。修好它只能穷举例外—— 书里把失败原因钉成三条:惰性(例外列不完)、理论无知(医学没有 完备理论)、实践无知(检查做不全)1

概率论的回应:用信念度代替真假。「牙痛的病人有蛀牙的概率是 0.8」。 这句话的哲学载荷只有一句:概率是关于知识状态的断言,不是关于世界的—— 病人「其实有或没有」蛀牙,毫无不确定;学到新证据后改口 0.4,也不算 自相矛盾,因为是关于不同知识状态的两次断言2

2. 顶层全景

概率公理(柯尔莫哥洛夫) ──德菲内蒂赌局:违反公理者必输钱

完全联合分布(16 格的小世界 → n 个布尔变量要 2^n 格)
边缘化 · 归一化 α · 贝叶斯法则 P(Y|X)=αP(X|Y)P(Y)

独立性(拆表)→ 条件独立性(拆得更狠)
朴素贝叶斯 = 单原因 + 条件独立的结果们

贝叶斯网络:DAG + 每节点一张条件概率表 CPT
语义:P(x1..xn)=∏P(xi|parents)
k 个父节点 → 2^k·n 个参数 vs 联合分布 2^n 个
马尔可夫毯 · d 分离 · 噪声或

推断:枚举 O(2^n) → 变量消元(动态规划)→ 采样(拒绝/似然加权/Gibbs)

因果:结构方程 · do(X=x) 切断入链 · 后门准则

图说:从下往上是「历史顺序」(概率→贝叶斯网络→因果);从上往下是 「本章讲法」。

3. 核心原理

3.1 概率地基:一个赌局定公理

P(a)=0.4、P(b)=0.3、P(a∧b)=0、P(a∨b)=0.8——这组信念违反公理 (0.4+0.3−0=0.7≠0.8)。凭什么不许?德菲内蒂的回答是设计一组赌局: beliefs 不同的人互相下注,违反公理的一方存在一套必输的下注组合。 书里算了具体钱数:对上面那组信念,对手押 4/3/2 美元的三张票, 四种结果(a,b / a,¬b / ¬a,b / ¬a,¬b)下你的收益是 −11、−1、−1、−1—— 全输3。至于「我不赌」的抗议,书里回了句狠话: 每个动作(包括不动作)都是赌博,拒绝赌博就像拒绝时间流逝4。 决策论的口号随之成立:决策论 = 概率论 + 效用理论, 理性 = 选最大期望效用(MEU)的动作5

3.2 主走查(一):牙科的 8 格表

主走查第一段的输入是 Toothache、Cavity、Catch(探针勾住了牙)三个布尔变量 的完全联合分布,8 个数字排成 2×2×2:比如 P(cavity∧toothache∧catch)=0.108、 P(cavity∧toothache∧¬catch)=0.012、P(¬cavity∧¬toothache∧¬catch)=0.5766

这张表就是「知识库」:任何问题都靠找出命题成立的格子、把概率加起来回答。

P(cavity) = 0.108+0.012+0.072+0.008 = 0.2 (边缘化:把其他变量加掉)
P(Cavity|toothache) = α〈0.108+0.012, 0.016+0.064〉
= α〈0.12, 0.08〉 = 〈0.6, 0.4⟩ (归一化:除以 0.12+0.08)

7

α 是归一化(把一组数等比例缩放到总和为 1)常数——我们不知道 P(toothache) 也照样能算后验, 这是全书反复使用的一步省力棋。

但联合分布不可扩展:n 个布尔变量要 2^n 格,n=100 时约 10^30 个数, 而且每个数都要从数据里单独估计8。出路是拆表,拆表靠独立性。

3.3 贝叶斯法则与条件独立

贝叶斯法则 P(y|x)=αP(x|y)P(y) 本身只是一行代数,价值在方向: 因果方向的知识通常比诊断方向更稳。医生知道 P(颈部僵硬|脑膜炎)=0.7、 P(脑膜炎)=1/50000、P(颈部僵硬)=0.01,推出 P(脑膜炎|颈部僵硬)=0.7×0.00002/0.01=0.0014——症状高度指示疾病, 但绝对概率仍然很小,因为「颈部僵硬」太常见9。 更重要的是健壮性:脑膜炎流行时,P(m) 上涨,用贝叶斯法则的医生 自动更新,而死记 P(m|s) 的医生手里是个过期的数10

多证据时(牙痛+探针都阳性),联合爆表;救场的是条件独立: P(toothache∧catch|Cavity)=P(toothache|Cavity)·P(catch|Cavity)—— 牙痛与探针勾住都由蛀牙导致,但彼此没有直接影响11。 代入后:

P(Cavity|toothache∧catch) = α P(toothache|Cavity)P(catch|Cavity)P(Cavity)

参数从 7 个(8 格表减去归一)降到 5 个;症状越多,收益越大—— n 个症状是 O(n) 而不是 O(2^n)12。书里给这个断言的评价是全书少见的 最高级:「通过条件独立性把大概率域分解成弱连通的子集,是人工智能 近期历史上最重要的进展之一」13

单原因+条件独立结果 = 朴素贝叶斯,直接能干活:文本分类里 「原因」是版面(business/weather/…),「结果」是每个词出没出现, P(stocks|business)≈700/100000=0.007 一类频率估计喂进去就是垃圾邮件过滤器14。 唯一要防的坑:没见过的词不许赋 0,否则一个词抹掉全部证据15

3.4 贝叶斯网络:把条件独立画成图

贝叶斯网络 = 有向无环图 + 每个节点一张条件概率表(CPT)。 语义一行:P(x1,…,xn)=∏P(xi|parents(Xi))16

主走查第二段用珀尔的报警器网络:入室盗窃(B)和地震(E)都能触发警报(A), 约翰(J)和玛丽(M)听到警报会打电话,但约翰常把电话铃误当警报、 玛丽常被音乐吵得听不见。CPT 里的数:P(j|a)=0.90、P(m|a)=0.70、 P(a|b∧e)=0.95、P(b)=0.001、P(e)=0.002。算一个联合条目:

P(j,m,a,¬b,¬e) = 0.90 × 0.70 × 0.001 × 0.999 × 0.998 = 0.000628

17

三件设计要事:

紧凑性。每个节点受常数 k 个父节点影响,全网络只要 O(2^k·n) 个数: n=30、k=5 时是 960 个数,而联合分布要超过 10 亿个18

节点顺序。同一分布可以有无数张网络:按 M、J、A、B、E 顺序建要 13 个参数, 按 M、J、E、B、A 要 31 个(与联合分布一样多!),因果顺序只要 10 个。 顺序不仅省参数,还省知识:医生更愿意给因果方向 (P(症状|病))打分,而不是诊断方向19

读图。给定父节点,节点与其非子孙条件独立; 给定它的「毯」——即马尔可夫(「知道现在,过去就不重要」)性质的毯:父节点、子节点、子节点的其他父——节点与其余所有节点条件独立20。 判定任意的「X ⊥ Y | Z」用 d 分离:取祖先子图→把共用孩子的夫妻连起来 (道德图)→无向化→看 Z 是否堵死所有路径。报警器网络上能立刻读出: B 与 E 先验独立;但给定 A(警报响了)它们变得相关——「解释掉」效应: 一个人打电话来,你既怀疑盗窃也怀疑地震,确认了地震,盗窃的嫌疑就掉了21

CPT 本身也有省参数的模式:噪声或(noisy-OR):发烧有感冒、流感、疟疾 三个原因,各自「压住不发烧」的概率是 0.6/0.2/0.1;三个都中时不发烧的 概率是 0.6×0.2×0.1=0.012。k 个父节点只要 k 个参数,不用 2^k 个; 医疗网 CPCS 用它把 448 节点网络压到 8254 个参数(否则 1.34 亿)22

3.5 推断:精确的与近似的

枚举推断:把查询写成 CPT 乘积的和,深度优先递归。 P(B|j,m)=α〈0.00059224, 0.0014919〉≈〈0.284, 0.716〉—— 两位邻居都来电话,入室盗窃的概率约 28%23。但同一子式被反复计算, 复杂度 O(2^n):在保险网络上一次查询要 2.27 亿次运算24

变量消元:从右往左算,把中间结果存成因子(以变量为索引(下标)的表), 逐点相乘、对变量求和消去。

这是动态规划。

复杂度由网络的树宽决定——树状网络线性,稠密(边连得满)网络依旧指数25

近似推断(精确推断顶不住时):

  • 拒绝采样:按拓扑序采样完整世界,扔掉与证据不符的,剩下计数。 直观、一致,但接受率=证据的先验概率——保险网络上是千分之一到万分之一26

  • 似然(「在某个可能世界里恰好看到这些证据」的概率)加权:固定证据变量只采样非证据部分,用权重补偿分布偏移;证据多时权重的波动会爆炸27

  • Gibbs 采样(MCMC):从任意状态出发,每步只重采一个非证据变量, 条件是它的马尔可夫毯。走查:洒水器网络里 P(Cloudy|+sprinkler,¬rain) =α〈0.5×0.1×0.2, 0.5×0.5×0.8〉=α〈0.001,0.020〉≈〈0.048,0.952〉28。 收敛的机关是细致平衡:以真实后验为平稳分布,每步的进出流相等; 每个样本的代价与网络规模无关29

3.6 因果网络:从「看到」到「动手」

Fire→Smoke 反着画(Fire←Smoke)配上贝叶斯法则算出的数, 联合分布一模一样——但我们的直觉抗议:灭火能消烟,排烟灭不了火30。 因果网络补上这层含义:每个变量由结构方程 xi=fi(父变量,扰动)决定; 干预 do(Sprinkler=true) 在图上的操作是把指向 Sprinkler 的箭头删掉 (「残缺图」),效果是概率分布(各取值各分多少概率)的变化只沿下游传播31

关键区分:观察洒水器开着(下雨的可能性下降——毕竟下雨不太会开洒水器) 与伸手打开它(对天气一无所知)是两回事;do 算子把直觉变成了算术32。 观察数据做不出实验时,后门准则找一组条件变量 Z 堵住所有「后门路径」, 调整公式就能从数据估计干预效果——书里明确说它反驳了 「只有随机对照试验才能提供因果信息」的统计学教条33

4. 作者的判断与证据

  • (书内定理) 德菲内蒂赌局论证、贝叶斯网络的联合分布语义、 Gibbs 的细致平衡证明——三大支柱各有完整证明31629
  • (书内数据) 0.000628、〈0.284,0.716〉、960 vs 10 亿、 CPCS 8254 vs 1.34 亿参数——本节的数字都可直接复算。
  • (作者的立场) 把条件独立称为「AI 近期历史最重要的进展之一」13; 把因果推断的兴起写成方法论事件而非潮流。
  • (书内坦白) 「先验从哪来」没有普遍答案:频率主义、客观主义、 主观主义的争论书里如实摆开,不下最终裁决34

5. 边界与局限

  • 贝叶斯网络的参数仍要人来给或从数据学(第 13 章);图结构本身是假设。
  • 精确推断被树宽封顶;真实医疗网络常有百级树宽,变量消元也会塌。
  • MCMC 的收敛时间(混合时间)没有实用的先验判据——「跑够久」永远是相对的。
  • do 算子要求结构方程假设为真;后门准则给不出 Z 时,因果问题依然开放。

6. 可带走的

  1. 概率是关于知识状态的,不是关于世界的——学到新证据改口不算打脸。
  2. α 归一化是标准省力棋:算不出证据的先验,照样算后验。
  3. 因果知识比诊断知识抗过期;建模时让箭头顺着原因走。
  4. 条件独立是拆表的一切:「都由它引起,彼此无关」就是可拆的信号。
  5. 看到一张贝叶斯网络,先找每个节点的马尔可夫毯——采样和诊断都围着它转。
  6. 变量消元=「别把乘过的再乘一遍」;采样族的选择由证据数量决定: 少→拒绝采样,中→似然加权,多→Gibbs。
  7. 区分「看到 X」与「do X」:一切 A/B(随机分组对照)测试与观察性研究的分界线。

7. 原文地图

主题原书章原文位置
三个失败原因12.1.1text/10-fm.txt:12654(搜「惰性」)
概率关于知识状态12.1.1text/10-fm.txt:7154(搜「知识状态」)
决策论=概率+效用12.1.2text/10-fm.txt:781(搜「决策论」) · text/10-fm.txt:12708(搜「最大期望效用」)
样本空间与事件12.2.1text/10-fm.txt:12744(搜「36 个可能世界」)
先验/后验与牙医12.2.1text/10-fm.txt:12771(搜「条件概率」) · text/10-fm.txt:12779(搜「0.6」)
乘积法则12.2.1text/10-fm.txt:12795(搜「乘积法则」)
朴素记号 P(Weather)12.2.2text/10-fm.txt:12834(搜「0.6, 0.1, 0.29」)
容斥原理12.2.3text/10-fm.txt:12911(搜「P(a ∨ b)」)
德菲内蒂赌局12.2.3text/10-fm.txt:12924(搜「德菲内蒂」) · text/10-fm.txt:2131(搜「每次」)
拒绝赌博=拒绝时间12.2.3text/10-fm.txt:12958(搜「拒绝时间流逝」)
8 格表12.3text/10-fm.txt:12978(搜「0.108」)
P(cavity∨toothache)=0.2812.3text/10-fm.txt:12987(搜「0.28」)
归一化 α〈0.12,0.08〉12.3text/10-fm.txt:13022(搜「α」)
2^n 不可扩展12.3text/10-fm.txt:13042(搜「1030」)
天气独立性12.4text/10-fm.txt:13056(搜「天气」)
脑膜炎 0.001412.5.1text/10-fm.txt:8573(搜「0.7」) · text/10-fm.txt:13124(搜「0.14%」)
因果方向更健壮12.5.1text/10-fm.txt:1335(搜「健壮性」)
条件独立代入12.5.2text/10-fm.txt:13168(搜「条件独立性」)
最重要的进展12.5.2text/10-fm.txt:13201(搜「重要的进展之一」)
朴素贝叶斯文本分类12.6text/10-fm.txt:13243(搜「0.09」) · text/10-fm.txt:13249(搜「不要将之前从未在某一类文章中出现过的单词的概率赋为 0」)
wumpus 概率版 86%12.7text/10-fm.txt:13329(搜「31%」) · text/10-fm.txt:4127(搜「86%」)
贝叶斯网络定义13.1text/10-fm.txt:13487(搜「有向图」)
报警器网络13.1text/10-fm.txt:13513(搜「防盗警报器」) · text/10-fm.txt:13524(搜「CPT」)
语义乘积公式13.2text/10-fm.txt:13548(搜「联合分布中的每个条目」)
0.00062813.2text/10-fm.txt:13557(搜「0.000628」)
紧凑性 96013.2text/10-fm.txt:1173(搜「960」)
节点顺序 13/31/1013.2text/10-fm.txt:13651(搜「13 个参数」) · text/10-fm.txt:13659(搜「专家医生更喜欢对因果规则」)
马尔可夫毯13.2.1text/10-fm.txt:13681(搜「马尔可夫毯」)
d 分离四步13.2.1text/10-fm.txt:13694(搜「祖先子图」)
噪声或13.2.2text/10-fm.txt:13741(搜「0.6」) · text/10-fm.txt:13759(搜「O(k)」)
CPCS 参数13.2.2text/10-fm.txt:13762(搜「8254」)
枚举 P(Bj,m)13.3.1
2.27 亿次13.3.1text/10-fm.txt:13966(搜「2.27」)
变量消元因子13.3.2text/10-fm.txt:14004(搜「因子」)
采样 [true,false,true,true]13.4.1text/10-fm.txt:14193(搜「从 P(Cloudy) =〈0.5, 0.5〉中采样」)
拒绝采样 0.29613.4.1text/10-fm.txt:14258(搜「0.296」)
千分之一到万分之一13.4.1text/10-fm.txt:3766(搜「千分之一」)
小行星比喻13.4.1text/10-fm.txt:14273(搜「小行星」)
似然加权13.4.1text/10-fm.txt:14295(搜「似然加权」)
Gibbs 马尔可夫毯采样13.4.2text/10-fm.txt:14383(搜「吉布斯采样」) · text/10-fm.txt:14424(搜「0.048」)
细致平衡13.4.2text/10-fm.txt:14457(搜「细致平衡」)
每步代价与规模无关13.4.2text/10-fm.txt:13682(搜「独立于网络」)
Fire→Smoke 等价13.5text/10-fm.txt:14613(搜「Smoke」)
结构方程13.5text/10-fm.txt:14629(搜「结构方程」)
do 切断入链13.5.1text/10-fm.txt:14665(搜「do(Sprinkler」) · text/10-fm.txt:14680(搜「伸手打开洒水器」)
后门准则13.5.2text/10-fm.txt:14716(搜「后门准则」)
反驳 RCT 教条13.5.2text/10-fm.txt:14721(搜「随机对照试验」)

Footnotes

  1. 出处:「不确定性的量化」第 12654 段(text/10-fm.txt:12654,搜「惰性」)。

  2. 出处:「不确定性的量化」第 7154 段(text/10-fm.txt:7154,搜「知识状态」)。

  3. 出处:「不确定性的量化」第 2131 段(text/10-fm.txt:2131,搜「每次」)。 四种结果下的收益表在图 12-2。 2

  4. 出处:「不确定性的量化」第 12958 段(text/10-fm.txt:12958,搜「拒绝时间流逝」)。

  5. 出处:「不确定性的量化」第 781 段(text/10-fm.txt:781,搜「决策论」)。

  6. 出处:「不确定性的量化」图 12-3,第 12978 段(text/10-fm.txt:12978,搜「0.108」)。

  7. 出处:「不确定性的量化」第 12990 段(text/10-fm.txt:12990,搜「0.2」)与 第 13024 段(text/10-fm.txt:13024,搜「0.12」)。

  8. 出处:「不确定性的量化」第 13042 段(text/10-fm.txt:13042,搜「1030」)。

  9. 出处:「不确定性的量化」第 13124 段(text/10-fm.txt:13124,搜「0.14%」)。

  10. 出处:「不确定性的量化」第 1335 段(text/10-fm.txt:1335,搜「健壮性」)。

  11. 出处:「不确定性的量化」第 13168 段(text/10-fm.txt:13168,搜「条件独立性」)。

  12. 出处:「不确定性的量化」第 13197 段(text/10-fm.txt:13197,搜「O(n)」)。

  13. 出处:「不确定性的量化」第 13201 段(text/10-fm.txt:13201,搜「重要的进展之一」)。 2

  14. 出处:「不确定性的量化」第 13245 段(text/10-fm.txt:13245,搜「0.37」)。

  15. 出处:「不确定性的量化」第 13249 段(text/10-fm.txt:13249,搜「抹去」)。

  16. 出处:「概率推理」第 13548 段(text/10-fm.txt:13548,搜「联合分布中的每个条目」)。 2

  17. 出处:「概率推理」第 13557 段(text/10-fm.txt:13557,搜「0.000628」)。

  18. 出处:「概率推理」第 1173 段(text/10-fm.txt:1173,搜「960」)。

  19. 出处:「概率推理」第 13651 段(text/10-fm.txt:13651,搜「13 个参数」)与 第 13658 段(text/10-fm.txt:13658,搜「因果」)。

  20. 出处:「概率推理」第 13671 段(text/10-fm.txt:13671,搜「非子孙」)与 第 13681 段(text/10-fm.txt:13681,搜「马尔可夫毯」)。

  21. 出处:「概率推理」第 13701 段(text/10-fm.txt:13701,搜「Burglary 和 Earthquake」)。

  22. 出处:「概率推理」第 13741 段(text/10-fm.txt:13741,搜「0.6」)与 第 13762 段(text/10-fm.txt:13762,搜「8254」)。

  23. 出处:「概率推理」第 13958 段(text/10-fm.txt:13958,搜「0.284」)。

  24. 出处:「概率推理」第 13966 段(text/10-fm.txt:13966,搜「2.27」)。

  25. 出处:「概率推理」第 13998 段(text/10-fm.txt:13998,搜「动态规划」)。

  26. 出处:「概率推理」第 14258 段(text/10-fm.txt:14258,搜「0.296」)与 第 3766 段(text/10-fm.txt:3766,搜「千分之一」)。

  27. 出处:「概率推理」第 14295 段(text/10-fm.txt:14295,搜「似然加权」)。

  28. 出处:「概率推理」第 14424 段(text/10-fm.txt:14424,搜「0.048」)。

  29. 出处:「概率推理」第 14457 段(text/10-fm.txt:14457,搜「细致平衡」)。 2

  30. 出处:「概率推理」第 14613 段(text/10-fm.txt:14613,搜「Smoke」)。

  31. 出处:「概率推理」第 14665 段(text/10-fm.txt:14665,搜「do(Sprinkler」)。

  32. 出处:「概率推理」第 14680 段(text/10-fm.txt:14680,搜「伸手打开洒水器」)。

  33. 出处:「概率推理」第 14721 段(text/10-fm.txt:14721,搜「随机对照试验」)。

  34. 出处:「不确定性的量化」第 13382 段(text/10-fm.txt:13382,搜「频率主义」)。