參考了 Pearl(2009)和 Hitchcock(2018)的整理。
基本說明
基本概念
- 集合論語言:我們會直接使用某套集合論標準語言,包括 ∅,∈,−,⊂,=,∀,∃ 等。
- 變數:X,X1,X2,...,我們以變數來為世界狀態建立模型。也可以用 Y,Z 等。
- 值:x,x1,x2,...,之於變數的值。也可以用 y,z 等,沒有特別說明的話,值用變數的小寫表示。
- 模型:所有變數的集合。
- 範圍:變數的所有可能值的集合。
- 命題:若 x 屬於 X 的範圍,X=x 是一個原子命題,用 p,q,r 表示。原子命題可透過邏輯連接詞 ¬,∧,∨,→,≡ 遞迴地連接成複雜命題。這是全部的布林命題。可以使用 ⊥,⊤,分別表示矛盾句與恆真句。
- 事件:在機率論中,把命題稱作事件,以 A,B,C 等表示。
- 世界:對模型中所有變數的值進行一次完整分配的結果。
- 向量的表示:用粗體表示向量。變數的向量或說有序集合,表示成 X,Y,...。值的向量表示成 x,y,...。
- 集合的表示:用希臘字母表示值的集合。
- 命題聯集的縮寫:若 ϕ 是包含於變數 X 的範圍的值的集合,X∈ϕ 的意思是,∃x∈ϕ(X=x)。
- (準)世界的縮寫:X=x 代表,若 X={X1,...,Xn} 且 x={x1,...,xn},則 ∀i∈{1,...,n}(Xi=xi)。
貝式機率論
機率論語言:
- P:機率函數,定義域是事件,值域是 [0,1],表示事件發生的機率。
- P(A,B):聯合機率,即 P(A∧B)。形式定義為 P(A)=P(A,B)+P(A,¬B)。更多事件的聯合機率可以寫成多元參數的形式,如 P(A1,A2,...,An)。
機率公設:
- 0≤P(A)≤1。
- P(⊤)=1。
- 若 A∧B=∅,則 P(A∨B)=P(A)+P(B)。
條件機率:
- P(A∣B)=P(B)P(A,B)。
有向無環圖(DAG, directed acyclic graph)
有向無環圖:
- 有向圖:由頂點 V 和邊 E (頂點到頂點的關係)構成的結構,表示成 G=(V,E)。
- 路徑:如果存在一個邊序列 p=⟨e1,e2,...,en⟩ 使得 e1=(a=v0,v1),e2=(v1,v2), ... ,en=(vn−1,vn=b),則 p 是從 a 到 b 的(有向)路徑。
- 有向無環圖:如果一個有向圖不存在無限長的路徑,我們稱之為有向無環圖。
- 我們也可以用箭頭連接頂點來表示單向關係。如果有必要,我們可以引入雙箭頭,這時候的圖形稱之為有向無環混合圖(ADMG, acyclic directed mixed graph)。
- 圖的父頂點:PAj={X∣∃e∈E e(X,Xj)} 代表 Xj 的父頂點。
有向無環圖可以由貝式網絡(Bayesian networks)(Pearl, 1985)來構成:
- 貝式條件(或馬可夫分解條件):若 V={X1,...,Xn},則 P(x1,...,xn)=∏P(xj∣x1,...,xj−1):=∏P(xj∣paj)。
- 分解條件等價於馬可夫屏蔽條件(Pearl 1988):對於所有 Xi∈V 以及 Y⊂{Z∣Z∈V且 Z 不在 X的後代節點},則 P(xi∣pai,y)=P(xi∣pai)。
- 馬可夫父節點:若 MPAj 是滿足 P(xj∣mpaj)=P(xj∣x1,...,xj−1) (即「Xj 對 MPAj 以外的所有的其他前節點獨立」)的最小集合,則 MPAj 是 Xj 的馬可夫父節點。
- 馬可夫相容性:對一個變數集合,將變數表示為頂點。如果機率函數 P 和 G 使每個頂點的在 G 上的父頂點與馬可夫父節點相同,那麼我們說 G 和 P 是相容的,或 G 表示了 P,或 P 對 G 是馬可夫相關的。
因果貝式網絡:P 是在 V 上的機率分配,干預分配 Px(v) 表示 do(X=x) 干預而來的機率分配。令 P∗:={Px(v)∣X⊂V , x 是 X 範圍內的常數} 。DAG G 是相容 P∗ 的因果貝式網絡的條件是,對於所有 Px∈P∗:
- Px(v) 對 G 馬可夫相關;
- 對於所有 Vi∈X,若 vi 與 X=x 一致,則 Px(vi)=1;
- 對於所有 Vi∈/X,若 pai 與 X=x 一致,Px(vi∣pai)=P(vi∣pai)。
表示成有向無環圖,讓獨立的機率關係可以看得更清楚:
- d-分隔判準:給定 DAG,如果路徑 p 被頂點集合 Z 所阻擋(d-分隔),若且唯若:
(1) 存在 m 屬於 Z 使得,p 包含鏈 i→m→j,或分叉 i←m→j。
(2) p 的所有對撞(collider) i→m←j 中的 m 和 m 的後代節點都不在 Z 裡面。
- 如果節點 X 到節點 Y 的所有路徑都被 Z 集合阻擋,那麼 Z d-分隔了 X 到 Y。
- d-分隔的機率蘊含:若 X 到 Y 被 Z 在 DAG G 所 #d# 隔離,則對於所有與 G 相容的機率分配 P,X 在 Z 條件下都獨立於 Y,即 P(x,y∣Z)=P(x∣Z)P(y∣Z)。
一些重要定理:
- 有序馬可夫條件:P 對 DAG G 是馬可夫相容的,若且唯若,對於所有節點,存在符合 G 的箭頭順序的方式進行某個變數排序,使得以它在 G 的父節點作為條件時,它和所有它前面的變數都是獨立的。
- 父節點馬可夫條件:P 對 DAG G 是馬可夫相容的,若且唯若,所有的變數,當它以在 G 的父節點為條件時,它和它在 G 的非後代節點都是獨立的。
- 觀察等同性:如果兩個 DAG 的骨架相同,和 v-結構的集合(Verma 與 Pearl 1990)。
結構方程
結構方程:
- 將因果網絡表示成一系列的等式,形式為:xi=fi(pai,ui),i=1,...,n。V={Xi∣i=1,...,n} 稱之為內生變數(endogenous variables)的集合。
- 其中 Ui 代表隱性變數,或誤差,或外生變數(exogenous variables)的集合。
- 外生變數不在 DAG 圖形上,與相容於 P 的 DAG 中的節點以 ↔ 連接,形成 ADMG。
- 透過結構方程,我們可以更容易計算干預造成的結果,而不需要計算出所有的干預分配。
- 不難看出,變數的機率由誤差提供,並且會因為干預改變而改變分配。
- 馬可夫條件定理(Pearl and Verma 1991):假設如果誤差變數 Ui 在 P 中是獨立的,則在 V 上的機率分配滿足馬可夫分解條件。
結構反事實句:
- 我們可以為命題擴充反事實條件句的構式規則:若 p,q 是命題,則 p□q 是一個命題,來表達在干預意義下的因果關係。(這符號有點怪,但 □→ 沒辦法對齊。)
- 結構反事實句有兩個特徵:
(1) 反事實句的前件要以干預來理解,無論它是否在某世界已經為真。
(2) 反事實的真值完全由這些世界的因果結構及由前件而定的干預來決定。
- 這使得結構反事實的語言(Briggs)沒有類似 modus ponens(逆否命題等同性)的規則,並且對反事實句前件做邏輯等同命題的交換不會總是保證真值。
實然原因問題:
A 和 B 考慮往窗戶丟石頭,實然上,B 丟石頭(B=1)打破了窗戶(W=1)。B 丟石頭為何是窗戶破掉的原因?
- A=1
- W=1
- A=0□W=0
不包含干預觀點的分析(Lewis,1973):
- 存在 a′=a,w′=w,使得 A=a′□W=W′ 實然地真。
預先搶占(preemption)與過度決定(overdetermination):
- 預先搶占:如果 B 不丟石頭,A 就會丟石頭,如果 B 丟石頭,A 就不丟石頭。
- 過度決定:A 和 B 同時丟石頭,窗戶同時被兩顆石頭打破。
- Lewis 的分析在這兩個案例都不對。
干預觀點的分析(Halpern,2016):
- 存在不相交變數的最小集合 (A∈)X,和另一個集合 Z,實然地 X=x,Z=z,使得:存在 x′=x,使得 (X=x′∧Z=z)□W=w 實然地真。
因果馬可夫條件(CMC,Causal Markov Condition)
- Pearl 的 CMC(2009):若 V 的所有變數都從它在 V 中的父節點決定性地生產出來(避免量子力學等的狀況),若所有的誤差變數都在機率上彼此獨立(如果我們模型的變數夠多,誤差變數就可以接近獨立),那麼考慮表示了 V 中變數的函數獨立關係的 DAG G,V 的機率分配會滿足馬可夫條件。
- SGS 的 CMC(2000):若 V 是妥善挑選的巨觀變數的集合,DAG G 表示了 V 的因果結構,且 P 是該因果結構的經驗的機率分配結果,那麼 P 和 G 是馬可夫相容的,
最小與忠實條件(Faithfulness Conditions)
馬可夫條件是條件機率獨立的充分條件,但不是必要條件。根據 Spirtes(SGS 2000)的術語,可以考慮這兩個條件(忠實條件比最小條件更嚴格):
- 最小條件:假設在 V 上的 DAG G 對 P 來說滿足了馬可夫條件。最小化條件表示,對 P 來說,沒有 G 的在 V 上的子圖形能滿足馬可夫條件。
- 忠實條件:所有在 V 的變數間的條件與非條件的機率依賴性都必須是馬可夫條件所要求的。
因果結構的識別性(identifiability)
給定一組變數 V 和它的機率分配 P,如何推論出上面的因果結構?
給定時間序的識別性(Pearl 1988):若
- 在 V 中的變數按照時間排列;
- P 為每個在 V 中的變數分配正的機率值;
- 沒有誤差變數,因此正卻的因果圖形 G 是 DAG;
- 以 G 來看,P 滿足馬可夫條件與最小條件;
則以 P 為基礎能夠識別出唯一的 G。
如果沒有給定時間序,這裡的唯一性就無法確定。簡單來說,考慮 {X,Y,Z} 的模型,若條件獨立關係是:
- X 和 Y 無條件依賴,對 Z 也是;
- Y 和 Z 無條件依賴,對 X 也是;
- X 和 Z 無條件依賴,對 Y 條件獨立。
則下面三個圖形是馬可夫等價的:
- X→Y→Z
- X←Y←Z
- X←Y→Z
但如果條件改為:
- X 和 Y 無條件依賴,對 Z 也是;
- Y 和 Z 無條件依賴,對 X 也是;
- X 和 Z 無條件獨立,對 Y 條件依賴。
(滿足忠實條件的)馬可夫等價類只有:
- X→Y←Z
如果 V 是非離散的,透過對結構方程的函數進行形式上的假設,我們可能得出比馬可夫等價類更好的結論。
潛在的共因
如果不能確保潛在變數是獨立的,馬可夫屏蔽條件和分解條件都可能會失敗。我們可以用雙箭頭連結兩個有潛在共同因果的變數,這樣的圖形稱作「半馬可夫因果模型(semi-Markov causal model, SMCM)」。
在這樣的情況下,我們的馬可夫等價類可能變得過度膨脹,如果是這樣,我們會需要不同種類的機率限制來排除掉一些馬可夫等價類。
干預
從知識論的角度來看,干預和觀察有所區別:
- 觀察只是在看一個變數如何取值。變數的值會帶來許多訊息,包括原因的訊息和結果的訊息。
- 干預則會推翻上述的因果結構,迫使一個變數取得特定的值。在圖形上,等於我們「破壞」了所有指向該變數的箭頭。
Pearl 發展了一個叫作行動計算(do-calculus)的公理系統,能夠讓我們透過圖形去計算干預後的機率分配:
行動計算:若 G 是一個在變數集合 V 的 DMG ,P 是機率分配,滿足馬可夫條件。對於 V 的互斥子集合 X,Y,Z,W,有以下規則:
- 規則 1(觀察的插入與刪除):若 (Y⊥Z∣X,W)GX,則 P(y∣x^,z,w)=P(y∣x^,w)。
- 規則 2(行動與觀察的交換):若 (Y⊥Z∣X,W)GXZ,則 P(y∣x^,z^,w)=P(y∣x^,z,w)。
- 規則 3(行動的插入與刪除):若 (Y⊥Z∣X,W)GX,Z(W),則 P(y∣x^,z^,w)=P(y∣x^,w)。
其中,P(X⊥Y∣Z) 是 Z d-分隔了 X 和 Y 的縮寫,GX 代表把 G 中箭頭朝向 X 的邊移除的圖形,GX 代表把 G 中箭頭從 X 出去的邊移除的圖形,Z(W) 代表所有的不是 W 的前節點的 z 的集合。x^ 是 do(X=x) 的 x。
根據行動計算,可以得到:
後門判準:若 X 和 Y 是在 V 中的變數,且 Z⊂V−{X,Y},使得
- Z 的成員都不是 X 的前節點;並且
- 所有從 Y 進入 X 的路徑都被 Z 所 d-分隔;
則 P(y∣x^,z)=P(y∣x,z)。
干預主義決策理論
這個紐康悖論的例子來自 Hitchcock:Cheryl 有週期性的缺鉀症,這會造成兩個高機率的效果:會讓他吃香蕉(他喜歡),也會讓他引起微弱偏頭痛(他不喜歡)。而他沒辦法發現自己有沒有缺鉀,也沒意識到自己有吃香蕉的渴望(他都隨便亂吃)。
令 K=1 代表缺鉀症,B=1 代表吃香蕉,M=1 代表偏頭痛。假設機率分配是:
- P(K=1)=0.2
- P(B=1∣K=1)=0.9
- P(M=1∣K=1)=0.9
若世界 w={K=k,B=b,M=m},則效益 U(w)=b−20m。那他應該吃香蕉嗎?
根據證據決策理論(EDT, Evidential Decision Theory),他要採取能帶來最大預期效益的行動,根據計算,不吃香蕉的效益更高,因為吃香蕉和偏頭痛有很高的統計相關性。但這樣的結論很怪,因為吃香蕉和偏頭痛並沒有關係。
根據因果決策理論(CDT),應該要把行為者的行動看作干涉,而非上述作為觀察事件,再來計算期望值。透過干涉,切斷從 K 到 B 的箭頭,並且讓吃香蕉和偏頭痛的相關性消失。
有個值得注意的地方是,如果 Cheryl 知道自己的行為是干預,那原先的因果結構就消失了,這麼一來 K 到 B 的箭頭本來就不會在圖形上,這樣的話就會有 P(w∣B=b)=P(w∣do(B=b)),這麼一來 EDT 和 CDT 就沒有區別了。
反事實
反事實條件句可能不會總是為真,我們可以機率來考慮這個句子為真的情況有多少。
令內生變數 V={X1,X2,...,Xn} 與外生變數 V={U1,U2,...,Un},結構方程的形式是 xi=fi(pai,ui)。P′ 是在 U 上的機率分配,可以推出 U∪V 上的機率分配 P。
我們觀察到 Xj=xj,對於所有 j∈S⊂{1,...,n} 。考慮反事實條件句「假若 Xk=xk 則 Xl=xl」,要如何估計它的機率?
- 在 U 上以觀察到的條件 S 更新 P′′=P(⋅∣XS)。
- 將等式中的 Xk 替換成 Xk=xk 。
- 用 P′′ 去更新在 V 上的機率 P∗,這就是反事實條件句的機率。
但如果我們沒有完整的結構方程模型,我們就得不到反事實條件句的機率,只能以上下限來進行估計,有兩種相對的估計方式(可以使用 Pearl 的 twin network):
- 假如前件為假,後件因此不發生的機率有多少?Pearl 將這稱作「必然機率(probability of necessity)」。
- 假如前件為真,後件因此發生的機率有多少?Pearl 稱作「充分機率」。