owned this note
owned this note
Published
Linked with GitHub
### [AI / ML領域相關學習筆記入口頁面](https://hackmd.io/@YungHuiHsu/BySsb5dfp)
---
#### [2023.06。郭若城,、程璐、劉昊、劉歡 編著。可解釋的機器學習 - 用因果推斷來學習箇中奧祕](https://www.tenlong.com.tw/products/9786267273500?list_name=srh)筆記,持續撰寫中
---
# Ch1 因果推斷入門 Causual Inference
## 1.1 因果關係(Casuality)的兩種基本框架
### 1.1.1 結構因果模型(Structural Casual Model, SCM)
#### 因果圖Causal Graph/Diagram
在因果推理中,有向無環圖(Directed Acyclic Graph, DAG)是常用來表示變量間因果關係的圖形化工具。以下是三種典型因果圖的表示:
a) 鏈狀圖(Chain):
- DAG表示:X → Z → Y
```mermaid
graph LR
X --> Z
Z --> Y
```
- 在鏈狀結構中,Z是X和Y之間的**中介變量(Mediator)**。X通過Z影響Y,即Z傳遞了X對Y的效應
- 給定Z的條件下,X和Y是條件獨立的,即 $P(X, Y | Z) = P(X | Z)P(Y | Z)$。
b) 叉狀圖(Fork):
- DAG表示:X ← Z → Y
```mermaid
graph LR
Z --> X
Z --> Y
```
- 在叉狀結構中,Z是X和Y的**混淆變量(Confounder)**。Z同時影響X和Y,可能導致X和Y之間的相關性
- 給定Z的條件下(控制混淆變量Z後),X和Y是條件獨立的,即 $P(X, Y | Z) = P(X | Z)P(Y | Z)$。
c) 反向叉狀圖(Inverse Fork or Collider):
- DAG表示:X → Z ← Y
```mermaid
graph LR
X --> Z
Y --> Z
```
- 在反向叉狀結構中,Z是一個**碰撞節點(Collider)**,它由X和Y的因果路徑交會而成。如果不控制Z,X和Y之間沒有直接關聯;但如果控制Z,可能會造成X和Y之間的假相關
- 如果不控制碰撞節點Z,X與Y通常獨立,但控制Z後,X與Y可能變得相關,即$P(X, Y | Z) \neq P(X | Z)P(Y | Z)$。這是因為Z是一個碰撞節點,並且條件機率可能需要通過結構方程模型或因果推理模型來確定。
- 節點阻塞(Node Blocked)
:::info
- 定義:在因果路徑上,當一個節點(變量)被控制(固定)時,該節點阻止因果效應沿該路徑傳遞。
- 數學表示:假設有路徑 $X \rightarrow Z \rightarrow Y$,如果控制了Z,則稱 $X$ 和 $Y$ 透過 $Z$ 被阻塞,記為 $X \perp\!\!\!\perp Y | Z$。
- 通俗解釋:如果你控制了路徑上的某個點,就像在管道中放了一個閥門,這個點後面的影響就不會繼續流動到下一個點了。
:::
以下為以集合S為條件會阻塞節點Z的兩種案例
- 當Z不是共同效應節點時
- 當Z作為非共同效應節點時:這意味著Z不是由多個因果路徑交匯而成的點。在圖a中,Z是一個中介變量,位於X和U之間,並且沒有其他變量直接影響Z。當我們控制了Z(即考慮Z的值或條件),X對U的影響就僅限於通過Z這條路徑。如果我們控制了Z和U(在集合S中),則X到U的路徑被阻塞,因為Z的影響已被控制。

```mermaid
graph LR
X --> Z
subgraph S
Z --> U
end
U --> Y
```
- 當Z是共同節點時
- 在圖b中,我們看到Z成為了一個共同效應節點,因為它受到X的影響,也與Y共享U這個共同原因。在這裡,如果我們控制了U(在集合S中),那麼X通過Z到Y的路徑將被阻塞,因為U已經捕捉了X通過Z'的所有可能影響。因此,當我們考慮了集合S中的變量時,任何從X到Y的影響都無法通過Z傳遞,因為它已經被集合S中的其他因素阻塞。

```mermaid
graph TD
X --> Z
U --> Z
Z --> Z'
subgraph S
U
end
U --> Y
```
:::success
**透過控制變量(例如U)和限定分析的條件範圍(例如集合S),可以更精確地估計變量間的因果效應,並從數據中提取有意義的因果結論**。這通常包括了以下幾個層面:
- **控制變量U**:這是為了測試U對其他變量的直接或間接影響。在因果模型中,U可能會對多個變量產生影響,而我們通過固定U來觀察它對這些變量的影響。
- **資料分佈範圍S**:這代表了在分析時考慮的樣本空間或條件。例如,我們可能只關注某些特定條件或情境下的因果關係,而集合S就是這些條件或情境的表示。
:::
- D-分離(D-separation):
:::info
- 定義:如果在一個有向無環圖(DAG)中,給定一些節點後,兩組節點間的所有路徑都被阻塞,則這兩組節點被稱為D-分離。
- 數學表示:假設有集合 $X$, $Y$, 和 $Z$,如果給定 $Z$ 之後,$X$ 和 $Y$ 間的所有路徑都被阻塞,則 $X$ 和 $Y$ 被 $Z$ D-分離,記為 $X \perp\!\!\!\perp Y | Z$。
- 通俗解釋:D-分離就像是在圖中畫了一個界線,給定一些節點後,一組節點對另一組的影響就完全被隔離了,彼此之間沒有任何直接或間接的關係。
:::
- 因果馬可夫條件(Causual Markovian condition)
在給定其父節點的條件下,一個變量與其非後裔變量獨立。這意味著一個變量的行為可以通過其直接原因(父節點)和一個獨立的誤差項來完全描述
- 公式1.1:
$$ X^j \perp\!\!\!\perp\, X^i| \text{Pa}(X^j) , \varepsilon^j $$
- $X^j$ 給定其父節點 $\text{Pa}(X^j)$ 和誤差項 $\varepsilon^j$ 時,與其任何非後裔 $X^i$ 獨立。
- 這表示變量 $X^j$ 在給定它的父變量(parent variant) $\text{Pa}(X^j)$ 和誤差項 $\varepsilon^j$ 的條件下是條件獨立的。父變量是指直接影響 $X^j$ 的變量集合。
> 即每一個變數的值僅由的父變量的值$\text{Pa}(X^j)$與雜訊$\varepsilon^j$所決定
- 結構方程模型(SEM)
一組方程式,這些方程描述了變量之間的因果關係,其中每個方程對應一個變量,並以其父節點和一個獨立的誤差項作為變量的直接原因。
- 公式1.2:
$$P(X^1, \ldots, X^J) = \prod_{j=1}^{J} P(X^j | \text{Pa}(X^j), \varepsilon^j) $$
- 這是機率圖模型的核心,系統中所有變量$P(X^1, \ldots, X^J)$的聯合機率分佈,可以通過對所有變量的條件機率分佈的乘積來表示。
- 這裡的條件機率分佈 $P(X^j | \text{Pa}(X^j), \varepsilon^j)$ 指的是在給定父變量和誤差項的情況下,變量 $X^j$ 的機率分佈。
這兩個公式是結構方程模型(Structural Equation models, SEM)的基礎,可以幫助了解在給定某些變量的情況下其他變量的行為,並允許構建變量間的因果關係。在SEM中,通常假設錯誤項 $\varepsilon^j$ 是獨立的,就可以**把每個變量的行為看作是由它的父變量和一些隨機影響**所決定的。
#### 結構方程組(Structural Equation, SE)

> 圖1.4(a) 描繪潛在效應的因果圖。例如,X是遺傳因素(混淆變數),T是環境因素(處裡變數),而Y是血壓(結果變數)。當環境因素T不受X的影響時,可以透過do運算子do(T=t)來定義干預環境因素T的操作。圖1.4(b)則描繪了一個移除了變量T的影響後的因果圖。
公式1.3與圖1.4a之間的關聯是通過因果關係和結構方程來表達的。公式1.3描述了如何從給定的變量和它們的誤差項(隨機干擾項)來計算每個變量的值。
在圖1.4a中,X、T、Y的關係被描述為一個因果模型,其中X影響T,並且T影響Y。這種影響是通過某些函數來實現的,這些函數包括了變量本身和一個誤差項,誤差項代表了除了模型中包含的變量之外的隨機因素。
結構方程模型(SEM)通過下面的方程來表達這種關係:
- 公式1.3
- X的值由它的誤差項 $\varepsilon^X$ 完全決定。
- T的值由X和它的誤差項 $\varepsilon^T$ 決定。
- Y的值由T和它的誤差項 $\varepsilon^Y$ 決定。
$$
\begin{align*}
X &= f_X(\varepsilon^X) \\
T &= f_T(X, \varepsilon^T) \\
Y &= f_Y(T, X, \varepsilon^Y)
\end{align*}
$$
這組方程表明,每個變量都是由其直接原因(在這個案例中是另一個變量或它們自己的誤差項)決定的。在實際應用中,這些函數 $f_X$, $f_T$, 和 $f_Y$ 通常會是未知的,需要通過數據和統計方法來估計。
圖1.4a則展示了當我們做出介入,即使用do運算子(如 $\text{do}(T = t)$)時,這種因果關係如何被用來計算介入後的結果。這是通過將T設定為一個特定值來實現的,並計算在這個介入下Y的期望值。公式1.3所表示的模型正是這種計算的基礎。
- **外生變數(Exogenous Variables)與內生變數(Endogenous Variables)**
- 模型中的兩種基本變量類型
:::success
- 外生變數
- 模型之外的因素或變量,不受模型中其他變量的影響,常被視為隨機誤差項或“天降”的變量,代表不在模型中被解釋的變量。
- 在統計模型中,它們通常是影響內生變數的因素,但不會被模型中的任何變量影響。
- 例如範例中的雜訊項:$\varepsilon^X$、$\varepsilon^Y$、$\varepsilon^Z$
- 無法觀測到的變數,如混淆變數(這裡的$X$)也屬於外生變數
- 內生變數
- 是模型內部的變量,它們的值由模型中的其他變量所決定,可以看作是模型的輸出或結果。
- 例如$Y$、$T$
:::
- **無法觀測到的變數和外生變數**:
:::info
* 在統計和因果推理中,「外生變數」通常指的是那些不受模型內其他變數影響的變數。這些變數被認為是來自模型外部的,因此它們的變化不是由模型內的因素驅動的。
* 雖然無法觀測到的變數(如某些混淆變數)可以是外生的,但並非所有外生變數都是無法觀測到的。有時,外生變數可能是完全可觀測的,但由於它們不是由模型內的其他變數決定的,因此被視為外生。
* 混淆變數是那些影響治療變數和結果變數的變數,如果無法觀測到這些變數,則可能無法確定治療和結果之間的真實因果關係。
:::
- 在公式1.4中:
$$ \epsilon^X = f_X^{-1}(X) $$
從因果關係的角度來看,公式1.4試圖表示想要從 $X$ 的觀察值逆推回它的潛在原因 $\epsilon^X$。但是,實際上,這種逆向操作在因果模型中很少見,因為它假設我們可以完全通過 $X$ 來恢復 $\epsilon^X$ 的值,這在現實中通常是不可能的,特別是當 $f$ 是非可逆的或者當誤差項包含隨機性時 。
因此,從因果推理的角度來看,公式1.4並不是一個標準的有效結構方程,因為它試圖將結果變量 $X$ 表示為其原因 $\epsilon^X$ 的函數的逆,這通常不是可行的。正確的因果模型需要明確地表示出原因如何導致結果,即外生變量如何通過某個過程產生內生變量。
#### 因果效應
- **干預**(Intervention)
- 指的是在因果模型中故意改變某個變量的值,通常以`do`運算子的形式表示,比如 $\text{do}(T=t)$ ,它表示將變量T設置為特定值t而不考慮它原本的因果關係。這種干預類似於在隨機對照試驗中分配治療的做法。
- **干預分布**(Interventional Distribution)
$$P(Y|do(T=t))$$
- 描述的是在干預之後,其他變量的新機率分布。對於圖1.4(b),干預 $\text{do}(T=t)$ 移除了T對Y的直接影響,這樣Y的分布只通過X來確定,即Y的干預分布是在固定T之後X到Y的因果效應。
圖1.4(b)提供了一種視覺化的方式來理解干預的概念:通過將T的影響從圖中移除(這裡用do運算子表示),我們可以專注於X對Y的直接影響,不受T的影響。這對於估計X對Y的直接因果效應非常有用,特別是在試圖理解某個特定變量干預如何影響結果時。
- 公式1.5描述了一組結構方程模型(Structural Equation Model, SEM),它定義了變量之間的因果關係。在這個模型中:
- 變量 $X$ 的值是由外生變量 $\varepsilon^X$ 的函數 $f_X$ 決定的。
- 變量 $T$ 被設定為干預後的值 $t$,表示 $T$ 不再受到 $X$ 或其他因素的影響,而是被強制設為 $t$。
- 變量 $Y$ 的值是由 $X$、$T$ 和外生變量 $\varepsilon^Y$ 的函數 $f_Y$ 決定的。
$$
\begin{align*}
X &= f_X(\varepsilon^X) \\
T &= t \\
Y &= f_Y(X, T, \varepsilon^Y)
\end{align*}
$$
- 公式1.6
定義了**平均因果效果(Average Treatment Effect, ATE)**,它是介入或治療 $T$ 對結果變量 $Y$ 的平均影響。ATE計算了在干預 $T$ 從未發生($T=0$)到發生($T=1$)的情況變化下 $Y$ 期望值的變化量。
PS: 這邊Treatment Effect用平均因果效應而非處理效應,因為前者可以代表更廣泛的場景
$$
ATE = \mathbb{E}[Y|do(T = 1)] - \mathbb{E}[Y|do(T = 0)]
$$
這表示ATE是當 $T$ 被設為1(即受到治療或干預)時 $Y$ 的期望值與 $T$ 被設為0(即未受到治療或干預)時 $Y$ 的期望值之間的差異。這是衡量干預效果的一個重要指標,常用於隨機對照試驗和觀察性研究中估計因果效應。
- 假設$T$只能從$\{0,1\}$取值時 -公式1.7。
在因果結構模型中,因果效應只被定義為實驗組(experiment group, $T=1$)與對照組(control group, $T=0$)時
- **平均對待效應(Average Treatment Effect on the Treated, ATT)**:
- 這是干預對那些實際接受干預的個體平均影響的量度。用數學語言表示就是接受治療者在治療下的預期結果和他們如果沒有接受治療將會有的預期結果之間的差異。
- **平均控制效應(Average Treatment Effect on the Controlled, ATC)**:
- 這是對於那些在控制條件(即沒有接受治療)下的個體,如果他們接受了治療,將會有的平均影響。
- **條件平均對待效應(Conditional Average Treatment Effect, CATE)**:
- 這是在特定子群體中,干預的平均影響,這些子群體是根據其他變量如X的值來定義的。
$$
\begin{align*}
ATT &= \mathbb{E}[Y|do(T = 1)] - \mathbb{E}[Y|do(T = 0), T = 1] \\
ATC &= \mathbb{E}[Y|do(T = 1), T = 0] - \mathbb{E}[Y|do(T = 0), T = 0] \\
CATE(x) &= \mathbb{E}[Y|do(T = 1), X = x] - \mathbb{E}[Y|do(T = 0), X = x]
\end{align*}
$$
- 當處理變數$T$的取值為任意實數時,$T \in \mathbb{R}$ - 公式1.8
例如:餐廳評分為1-5星時,令3星為對照組,1、2、4、5則為不同的處理
- **在干預值 $t$ 下的ATE($ATE(t)$)**: 這是在干預值 $t$ 下干預的平均影響。
- **在干預值 $t$ 下的ATT($ATT(t)$)**: 這是在干預值 $t$ 下對已接受治療的個體的平均影響。
- **在干預值 $t$ 下的ATC($ATC(t)$)**: 這是在干預值 $t$ 下對未接受治療的個體的平均影響。
- **在干預值 $t$ 下且給定 $X = x$ 的CATE($CATE(x,t)$)**: 這是在干預值 $t$ 下且給定 $X = x$ 時的平均影響。
:::info
令$T=0$為對照組,
$T = t \not= 0$,表示實驗組
:::
$$
\begin{align*}
ATE(t) &= \mathbb{E}[Y|do(T = t)] - \mathbb{E}[Y|do(T = 0)] \\
ATT(t) &= \mathbb{E}[Y|do(T = t), T = 1] - \mathbb{E}[Y|do(T = 0), T = 1] \\
ATC(t) &= \mathbb{E}[Y|do(T = t), T = 0] - \mathbb{E}[Y|do(T = 0), T = 0] \\
CATE(x,t) &= \mathbb{E}[Y|do(T = t), X = x] - \mathbb{E}[Y|do(T = 0), X = x]
\end{align*}
$$
這些量度通過比較在不同條件下的預期結果來衡量干預的影響。這樣的分析可以幫助我們理解治療或政策干預可能對不同的人群或在不同條件下的影響。
#### 混淆偏差(Confounding Bias)
混淆偏差(Confounding Bias)發生在評估一個變量(例如治療 T)對另一個變量(例如結果 Y)影響時,存在一個或多個第三變量同時影響治療和結果,從而扭曲了治療與結果之間的真實關係。這些第三變量被稱為**混淆變數(Confounders)**。
在因果圖中,混淆變數是指連接治療和結果的共同原因。例如,如果因果圖中有一個路徑 X -> T -> Y,並且同時存在路徑 X -> Y,那麼 X 就是一個混淆變數,因為它既影響治療 T 又影響結果 Y。
- **干預分布的期望值 $\mathbb{E}[Y|do(T=t)]$**:這是在干預 T 被強制設為特定值 t 的情況下,結果 Y 的期望值。這裡的 do-運算符表示干預或治療是外生施加的,它斷開了所有指向 T 的箭頭,即忽略了任何可能的混淆因素的影響。
- **受干預的因果圖**:干預後的因果圖會將 T 設為一個固定的值(通過 do-運算),並且移除所有指向 T 的箭頭。這表示我們只關注從 T 到 Y 的直接影響,而不考慮其他變數如何影響 T。
- **干預分布 $P(Y|do(T=t))$**:在干預 T 的情況下,結果 Y 的條件機率分布。這個分布反映了在控制了混淆變數後,T 對 Y 的因果影響。
- **條件分布 $P(Y|T=t)$**:這是在觀察到 T 的值為 t 時,結果 Y 的條件機率分布。不同於干預分布,條件分布不控制混淆變數,因此可能包含了混淆偏差。
當不進行干預,僅僅觀察到 $T=t$ 時,如果存在混淆變數 X,那麼 $P(Y|T=t) \not= P(Y|do(T=t))$ ,因為前者包含了 X 對 T 和 Y 的影響,這可能導致我們高估或低估了 T 對 Y 的真實影響。這種情況下,如果我們不進行適當的統計調整或設計隨機對照試驗來隔離 T 的影響,我們得出的結果可能會受到混淆偏差的影響。
#### 因果辨識(Causal Identification)與後門準則(Back-door Criterion)
:::success
- **因果辨識**(Causal Identification) 是指在給定的統計模型中,確定從觀測數據推斷特定因果效應是否可行的過程。
- 在因果推理中,因果量(如干預後的結果)往往是我們關心的核心,但直接從數據中觀察到的通常是統計量(如相關性或條件概率分布)。因果辨識的目標是使用統計量來推斷因果量。
- **後門準則**(Back-door Criterion)提供了一種方法來確定在給定的因果模型中,**哪些變量需要被控制來估計一個因果效應**,從而消除混淆偏差。
- 混淆偏差來自於影響既是原因又是結果的共同因素,即混淆變數。
- **後門通路**(Back-door Path)是指從原因到結果的非因果路徑,這些路徑通過一個或多個混淆變數影響結果變數,從而引入混淆。
- 例如,在因果路徑 "X -> T -> Y" 中,如果存在另一個變量Z,該變量同時影響X和Y(即存在路徑 "Z -> X" 和 "Z -> Y"),則 "Z -> X -> Y" 是一條後門通路,因為它通過X連接到Y,但不是直接的因果關係。
:::
- 干預分布 $P(Y|do(T=t))$ 表示在我們通過某種機制強制設定T的值之後Y的分布,這與我們通過隨機對照試驗來切斷所有指向T的因果路徑類似。這種分布可以排除所有後門通路的影響,因為它只考慮從T到Y的直接影響。
相對地,條件分布 $P(Y|T=t)$ 則只是在觀察到T的值為t時Y的分布。如果存在混淆變數,這個分布可能不代表真實的因果關係,因為它包括了通過後門通路的影響。
總結來說,因果辨識通過控制後門準則識別出的變量,允許我們使用觀察數據來估計真正的因果效應,而不是僅僅描述變量之間的相關性。這是通過比較干預分布和條件分布來實現的,目的是要區分出真正的因果效應和由於混淆變數導致的偽相關。
- 後門準則與後門通路(Back-door Path)範例
:::spoiler
後門通路(Back-door Path)指的是在因果圖中,從一個變量(比如治療 T)到另一個變量(比如結果 Y)的非直接路徑,這些路徑通過至少一個共同原因(即混淆變數)影響結果變量。這樣的路徑可能會導致我們誤將這些非因果關係解釋為因果效應。
舉個例子,假設我們想要研究運動(T)是否會減少壓力(Y)。然而,可能有一個共同原因——工作環境(X),它同時影響一個人的運動習慣(因為工作壓力大的人可能沒時間運動)和壓力水平(工作壓力大的人自然壓力也大)。在這裡,工作環境(X)就形成了一個後門通路,因為它通過影響運動習慣和壓力水平來影響我們對運動和壓力關係的評估。
**要排除後門通路的影響並得到明確的因果關係,我們需要控制那些形成後門通路的混淆變數**。使用後門準則(Back-door Criterion),我們要尋找一組變量,當我們在分析中控制了這些變量時,所有從治療到結果的後門通路都被阻塞了。在我們的例子中,這意味著我們需要收集有關工作環境的數據,並在統計模型中對其進行調整。例如,我們可以使用回歸分析控制工作環境變量,這樣我們就可以更準確地估計運動對減少壓力的直接效應。
實踐中,這通常涉及到收集關於所有已知混淆變數的數據,並在計算治療效果時使用統計方法(如回歸分析、匹配、傾向分數分析等)進行控制。這樣,我們就可以將觀察到的關聯性更可靠地歸因於因果效應,而不是混淆偏差。
:::
以評分對客流的影響$T \rightarrow Y$為例,假設變數的集合(admissible set)中只有一個變數- 餐廳的種類,即$X =\{X^{J}\}$(或說餐廳種類$X^{J}$是唯一混淆變數),那麼以餐廳的種類為條件來估測客流量的分布,就可以滿足後門準則。
- 當X是離散變數時,而$T \in \{0, 1\}$- 以公式1.9根據後門準則辨識 平均因果效應(ATE):
$$
\begin{align*}
ATE &= P(Y|do(T = 1)) - P(Y|do(T = 0)) \\
&= \sum_{x} \left( P(Y|do(T = 1), X = x) - P(Y|do(T = 0), X = x) \right) P(X = x) \\
&= \sum_{x} \left( P(Y|T = 1, X = x) - P(Y|T = 0, X = x) \right) P(X = x)
\end{align*}
$$
當後門通路全部被阻塞時,干預分布與對應的條件機率相等$P(Y|do(T=t)) = P(Y|T=t)$
:::success
這個公式的目的是計算整體上,治療(或干預)對結果的平均影響。它做的是對所有可能的其他相關因素(比如人口統計學特徵)進行平均,然後看在治療與不治療的情況下,結果(如健康狀態)平均會有多大差異。這基本上是在說:“如果我們考慮所有相關因素,那麼一般來說,治療會對結果造成多大的變化?”
:::
- 當T為離散變數($T \in \mathbb{R}$)、X為連續變數時 - 以公式1.10根據後門準則辨識連續變量的ATE:
$$
\begin{align*}
ATE(t) = \int_{x} \left( P(Y|T = t, X = x) - P(Y|T = 0, X = x) \right) P(X = x) dx
\end{align*}
$$
:::success
當相關因素是連續的(比如年齡或收入)而不是分類的(比如性別或種族),我們就使用這個公式。它用的是積分而不是求和,這意味著我們在計算治療效果時,會考慮這些連續因素的所有可能值。這個公式回答的問題是:“在連續變化的各種因素下,治療的平均效果是多少?”
:::
- 當T為離散變數($T \in \mathbb{R}$)、X為連續變數時 - 以公式1.11 辨識 條件平均因果效應(CATE):
$$
\begin{align*}
CATE(x,t) &= P(Y|do(T = t), X = x) - P(Y|do(T = 0), X = x) \\
&= P(Y|T = t, X = x) - P(Y|T = 0, X = x)
\end{align*}
$$
:::success
估計**在特定情況/條件下**,治療的平均效果。這裡的“特定情況”可能是指一個人的特定年齡、性別或其他特徵。公式實際上是在問:“對於一個特定類型的人,治療會造成什麼影響?”這有助於我們理解不同人群可能體驗到的治療效果的差異。
:::
#### 結構因果模型與do運算元的侷限性
結構因果模型(Structural Causal Model, SCM) 在實際應用中有一些限制。
1. **依賴於獨立同分佈 (i.i.d.) 假設**:結構因果模型往往假定數據是從獨立同分佈的過程中產生的。這意味著每個觀察到的數據點都是獨立的,並且每次測量都是從相同的概率分佈中抽取的。然而,在現實世界中,許多數據集可能會有時間序列的依賴性,或者由於選擇偏差、測量誤差等原因,數據可能不滿足獨立同分佈的假設。
2. **do運算元和反事實的挑戰**:do運算元(do-calculus)是在結構因果模型框架中用來表示干預的。它通過切斷從其他變量到干預變量的箭頭來模擬干預的效果。當我們使用do運算元來定義反事實概率 $P(Y_{x=x} = y | X = x')$ 時,我們假設能夠控制X的值而不考慮它的自然發生機制。但在實際中,我們可能無法完全隔離這些因素,導致定義反事實時遇到挑戰。
- 範例說明:
假有一個研究想要測試一種新藥物對血壓的影響。在結構因果模型中,我們可能有一個方程 $BP = f(Drug , Age, Weight)$,其中BP是血壓,Drug是藥物治療,Age和Weight是年齡和體重。如果我們使用do運算元來干預Drug,並試圖計算 $P(BP_{Drug=new} = low | Age = 50, Weight = 70)$,這意味著我們想要知道在50歲、體重70公斤的情況下使用新藥物後血壓降低的概率。但如果年齡和體重的分布在不同人群之間有所不同,那麼我們的估計可能會受到這些因素的影響,因為它們不再獨立於治療。
:::info
**潛在結果框架的優勢:**
潛在結果框架(Potential Outcomes Framework)避免了結構因果模型中的一些侷限性,因為它不需要對整個系統的結構方程有全面的了解。它專注於個體層面的潛在結果,並通過比較處理組和對照組來估計因果效應,而無需假定所有相關因素都是獨立同分佈的。這使得潛在結果框架特別適合於隨機對照試驗,因為在這種設置中,治療的分配是隨機的,從而自然地滿足了無混淆性的要求。
:::
### 1.1.2 潛結果框架(Potential Outcome Framework, SCM)(aka the Neyman-Rubin Causal Model)
潛在結果框架(Potential Outcome Framework,也稱為Neyman-Rubin Causal Model)是因果推理領域中的一種核心概念,它用於估計和理解治療或介入的因果效應。以下是對潛在結果框架及其相關概念的解釋:
### 潛在結果框架(Potential Outcome Framework, SCM)
:::success
專注於計算處理效應的**期望值**。並不需要假定所有的數據點都來自於同一個獨立同分佈的過程
:::
- **基本概念**:這個框架假定對於每個個體,存在一組潛在的結果(potential outcomes),這些結果對應於不同的治療或介入狀態。例如,在藥物試驗中,對於每個參與者,都有一個在服用藥物(治療)和不服用藥物(對照)情況下的潛在健康結果。
- **基礎假設**:為了進行因果推斷,潛在結果框架通常依賴於某些關鍵假設,如無混淆假設(no confounding assumption)、隨機化分配(random assignment)和SUTVA(Stable Unit Treatment Value Assumption,即每個個體的治療效果僅依賴於該個體接受的治療,而不受其他個體治療狀態的影響)。
#### 潛在結果框架下的因果效應衡量
- **個體因果效應(Individual Treatment Effect, ITE)** (1.12):
$$ITE(i) = Y_i^1 - Y_i^0$$
- 定義:ITE是指對於單個個體,治療對其結果造成的影響。換言之,它是同一個體在接受治療($T=1$)和不接受治療($T=0$)情況下的預期結果$Y$之間的差異。
- 舉例:某患者在服用藥物後的恢復情況與未服用藥物的潛在恢復情況之間的差異。
- **條件因果效應(Conditional Average Treatment Effect, CATE)**(1.13):
$$CATE(x) = \mathbb{E}[Y_i^1 - Y_i^0 | X = x]$$
- 定義:CATE是在給定某些條件或特徵$X=x$ 的情況下,治療對一組個體的平均效應。它通常用於了解特定子群體在接受治療時的平均反應$Y$。
- 舉例:對於不同年齡層的患者,藥物治療相較於未治療的平均效果差異。
- **平均因果效應(Average Treatment Effect, ATE)**(1.14):
$$ATE = \mathbb{E}[Y_i^1 - Y_i^0]$$
- 定義:ATE是指所有個體在接受治療相較於未接受治療時結果的平均差異。它描述了治療對整個人群的平均影響。
- 舉例:在整個樣本中,接受藥物治療的患者與未接受治療的患者之間的健康改善的平均差異。
- 結果的潛在值 (Potential Outcome)- 事實結果 (1.15):
表示個體i的結果 $Y$ 是基於他們是否接受治療 $T$ 的潛在值。
$$
Y_i = T \cdot Y_i^1 + (1 - T) \cdot Y_i^0
$$
- ATE和CATE的有限樣本估計 (1.16) :
在實際數據集中計算ATE和CATE的方法,分別是用樣本的平均值來估計。
$$
\begin{align*}
ATE &= \frac{1}{N} \sum_{i=1}^{N} (Y_i^1 - Y_i^0) \\
CATE(x) &= \frac{1}{N(x)} \sum_{i:X_i=x} (Y_i^1 - Y_i^0)
\end{align*}
$$
這裡 $N$ 是總樣本數量,$N(x)$ 是在 $X=x$ 條件下的樣本數量。
#### 潛在結果模型(Potential Outcomes Framework)的幾個**核心假設**包括:
1. **個體處理穩定性假設(Stable Unit Treatment Value Assumption, SUTVA)**: 每個個體的潛在結果僅僅依賴於該個體是否接受治療,而不受其他個體是否接受治療的影響。這個假設排除了干預之間的相互作用或干擾。
2. **一致性 (Consistency)**: 如果一個個體接受了特定的治療,他們觀察到的結果應該與該治療相關聯的潛在結果一致。
3. **強可忽略性(Strong Ignorability)**:通常涉及兩個條件
3.1. **潛在結果的獨立性**/**無混淆 (Unconfoundedness)**: 給定一些共變項的情況下,個體的潛在結果(即如果他們接受治療會發生什麼,如果他們不接受治療會發生什麼)與是否接受治療(處理變量)是獨立的。這個條件保證了所有的混淆因子都已經被共變項捕獲,從而允許我們估計無偏的因果效應。
- **公式1.17** 描述了潛在結果 $Y_i^1$ 和 $Y_i^0$ 之間的關係。這些是對每個個體而言,在治療和不治療情況下可能發生的結果。
$$Y_i = T_i Y_i^1 + (1 - T_i) Y_i^0$$
3.2. **重疊(Overlapping)**:這個條件確保了對於所有的共變項(Covariates),每個個體都有一定的機率接受治療或不接受治療。換句話說,對於共變項空間中的每一點,都有來自治療組和對照組的觀察。這樣可以避免極端情況,比如某些特定的共變項組合只出現在治療組或只出現在對照組中。(確保可以對所有的個體估計因果效應)
- **公式1.18** 表示了給定共變項 $X$ 時,接受治療的機率。這是估計傾向分數和進行匹配時的常見步驟。
$$P(T = 1 | X = x) \in (0,1), \forall x$$
- **公式1.19** 是條件平均因果效應 (CATE) 的計算方法,它考慮了給定共變項 $X$ 下,個體接受治療與否的情況下結果的平均差異。
這些假設和公式是潛在結果模型的基礎,它們讓研究者能夠從觀察數據中估計出幾乎與隨機對照試驗一樣的因果效應,儘管這些數據可能來自非實驗研究。
$$
\begin{align*}
CATE(x) &= \mathbb{E}[Y^1 - Y^0 | X = x] \\
&= \mathbb{E}[Y^1 | X = x ] - \mathbb{E}[Y^0 | X = x ] \\
&= \mathbb{E}[Y^1 | X = x, T = 1] - \mathbb{E}[Y^0 | X = x, T = 0] \\
&= \mathbb{E}[Y | X = x, T = 1] - \mathbb{E}[Y | X = x, T = 0]
\end{align*}
$$
- 公式1.19中的四行等式展示了從條件平均因果效應(CATE)的定義到實際可以從數據中估計的量之間的轉換過程。每一行的轉換都基於因果推理的特定原則和假設:
1. **第一行到第二行**的轉換是基於期望值的線性性質。當我們有兩個隨機變量的差的期望值時,這可以被分解為每個隨機變量期望值的差。這是期望運算符的一個基本性質。
2. **第二行到第三行**的轉換是基於無混淆性(unconfoundedness)假設,也就是條件獨立性。在這個假設下,給定共變項 $X$,治療 $T$ 的分配(即是否接受治療)與潛在結果 $Y^1, Y^0$ 是獨立的。這允許我們將條件平均值 $\mathbb{E}[Y^1 | X = x ]$ 簡化為 $\mathbb{E}[Y | X = x, T = 1]$,同理對 $Y^0$ 也是如此。
3. **第三行到第四行**的轉換則是基於一致性(consistency)假設。一致性假設指出,如果一個個體接受了治療 $T = 1$,他們的觀察結果 $Y$ 就等同於他們的潛在結果 $Y^1$,反之亦然。因此,我們可以將潛在結果的期望值 $\mathbb{E}[Y^1 | X = x, T = 1]$ 替換為觀察結果的期望值 $\mathbb{E}[Y | X = x, T = 1]$,對於 $T = 0$ 的情況也是如此。
這些轉換使我們能夠從實際觀察到的數據中估計因果效應,而不是僅僅依賴理論上的潛在結果。
### 單一世界干預圖(Single World Intervention Graphs,簡稱SWIG)

[arXiv:2206.01249。Alex Ocampo, Jemar R. Bather。Single-World Intervention Graphs for Defining, Identifying, and Communicating Estimands in Clinical Trials
](https://arxiv.org/abs/2206.01249)
單一世界干預圖(Single World Intervention Graphs,簡稱SWIG)是由因果推理理論的先驅Judea Pearl提出的,它將結構因果模型(SCM)和潛在結果模型(POM)的概念結合在一起,從而提供一個統一的框架來進行因果推理。SWIG的目的是利用圖形表示來明確地捕捉干預的因果效應,同時保持對個體層面潛在結果的表達。以下是SWIG如何實現這一目標的:
1. **結構因果模型**:SCM通過變量間的直接因果關係來表示因果系統。這些關係通常用有向無環圖(DAG)來表示,其中每個箭頭代表一個因果關係。
2. **潛在結果模型**:POM則關注於個體的治療效果(或者更一般的干預效果),它通過定義每個個體在干預和不干預情況下可能的結果來描述因果效應。
SWIG將這兩種模型結合在一起,具體方式如下:
- **干預的表示**:在SWIG中,干預被表示為對DAG進行修改,將特定的變量設定為某個值(例如將治療變量設定為1)。這通常通過“do”操作來表示,它從圖中切斷了該變量的所有進入箭頭。
- **潛在結果的融入**:在進行了“do”操作的DAG中,原始的變量被替換為它們在特定干預下的潛在結果。這樣,每個潛在結果都直接對應於圖中的一個節點,使得我們可以使用圖形分析來識別哪些潛在結果是可識別的。
- **統一化的推理**:SWIG允許我們在統一的圖形框架內進行因果推理,既可以進行結構因果模型中的因果推理,也可以計算潛在結果模型中的個體層面和群體層面因果效應。
SWIG為結構因果模型和潛在結果模型提供了一個統一的視角,允許研究者更直觀和系統地理解和推斷因果關係,並且能夠在這兩種模型之間轉換和比較結果。這種統一化的方法增加了透明度,減少了模型間轉換所可能導致的混淆,使得因果推理更加清晰和可靠。
## 1.2 因果辨識與因果效應估測
- 因果效應的估測
因果推論領域中,將因果效應的估測視為一種監督學習問題,是基於對數據集中變量之間關係的建模。在監督學習中,根據已知的輸入(特徵)和輸出(標籤)來訓練模型,從而使模型能夠預測新的輸入數據的輸出。同樣,在因果效應的估測中,通常知道個體是否接受了某種干預(例如治療或政策改變),以及該個體的結果(如健康狀況、學業成績等)。目標是從這些數據中學習干預與結果之間的關係。
"**因果效應估測 = 因果辨識 + 估測**" 這個說法揭示了因果推論的兩個主要步驟:
- **因果辨識(Causal Identification)**:
- 這一步驟涉及確定從觀察數據中是否能夠唯一確定特定因果效應的過程。這通常涉及到確認是否存在一組變量(例如,可以是混淆變數),只要控制了這些變量,我們就可以將觀察到的關聯性解釋為因果效應。這可能涉及到應用如後門準則或前門準則等因果推理原則。
- **估測(Estimation)**:
- 一旦確定了因果效應是可識別的,下一步就是實際估測這個效應的大小。這可以通過傳統的統計方法,如回歸分析、傾向分數匹配等來進行。在這個階段,監督學習的方法特別有用,因為我們可以將治療分配作為輸入特徵,將觀察到的結果作為輸出,然後訓練模型來預測在不同的治療條件下的預期結果。
:::info
- 監督學習方法通常是基於數據中存在的相關性來進行預測,而不一定能夠捕捉因果關係。要從這些預測中推導出因果關係,必須滿足一些額外的條件,如無混淆性、隨機分配或其他強化因果推斷的假設。
- 監督學習重點在於預測精度和模型的泛化能力,通常不直接專注於解釋變量之間的因果關係
例如,如果治療分配本身受到未觀察因素的影響(即存在混淆變數),單純使用監督學習方法可能會導致偏差的因果效應估計。在這種情況下,傾向分數匹配、儀器變數分析或其他因果推論方法可能更為適用,以控制這些混淆因素的影響。
:::
- 當觀測資料集有隱藏混淆變數時
:pencil2: 無論後門準則或潛結果框架都依賴資料集中觀測到的變數是否包含所有容許集(admissible set)內的變數:
當我們使用觀測性資料進行因果推論時,可以根據資料集中觀測到的變數是否包含所有容許集(admissible set)內的變數,將資料分為兩類:
- **完全觀測到的容許集**:
- 在這類資料集中,所有可能影響治療分配和結果的重要變數都被觀測到了。這意味著容許集中包含了足夠的共變項,可以使用後門準則來識別和估計因果效應。
- 如果一個資料集滿足後門準則,即所有影響治療和結果的混淆變數都被控制,我們可以通過適當的統計方法(如回歸調整、匹配、傾向分數分析等)來估計因果效應。
- **存在隱藏混淆變數的資料集**:
- 在這種資料集中,有一些重要的混淆變數沒有被觀測到或無法測量。這些隱藏的混淆變數可能會影響治療分配和結果,導致無法直接使用後門準則進行因果辨識。
- 在這種情況下,即使我們控制了所有觀測到的變數,仍然無法確保得到無偏的因果效應估計,因為存在無法觀測到的混淆因素。這就需要使用其他方法來解決或緩解隱藏混淆的問題,如儀器變數分析、結構方程模型、或者使用敏感性分析來評估隱藏混淆可能對估計結果的影響。
觀測性資料中是否包含所有容許集內的變數對於能否使用後門準則進行有效的因果辨識至關重要。如果資料集中缺少關鍵的共變項,則可能需要採用更複雜的統計方法或質性分析來處理隱藏的混淆變數問題。即本節後面所述的三種方法。
### 1.2.1 工具變數(Instrumental Variables, IV)
### 1.2.2 中斷點回歸設計(Regression DisCONTINUITY Design, RDD)
### 1.2.3 前門準則
---
## 參考與補充資料
#### [Pearl, J., Glymour, M., Jewell, N.P., 2016. Causal inference in statistics: a primer. Wiley, Chichester, West Sussex.](https://www.amazon.com/Causal-Inference-Statistics-Judea-Pearl/dp/1119186846)
#### [arXiv:2002.02770。A Survey on Causal Inference](https://arxiv.org/abs/2002.02770)
- [2020.08。caoyusang。因果推理综述——《A Survey on Causal Inference》一文的总结和梳理](https://www.cnblogs.com/caoyusang/p/13518354.html)
- [2019.10。张海抱。【统计】Causal Inference](https://zhuanlan.zhihu.com/p/88173582)
- [2021.10。LittleHealth。一文入门因果推断causal inference](https://zhuanlan.zhihu.com/p/416367253)
- [2020.08。集智科学家。因果科学:连接统计学、机器学习与自动推理的新兴交叉领域](https://zhuanlan.zhihu.com/p/166234159)
### 補充
#### 監督式機器學習與因果推論
- **監督學習**:
- 監督學習是機器學習的一種方法,通常涉及從標記的訓練數據中學習模型,以預測未見數據的輸出。在監督學習中,目標是從輸入特徵(或解釋變量)到輸出標籤(或響應變量)之間的相關性建立模型。
- 監督學習重點在於預測精度和模型的泛化能力,通常不直接專注於解釋變量之間的因果關係。
- **因果推論**:
- 因果推論專注於從數據中識別和估計因果效應,即一個變數(如治療或政策干預)對另一個變數(如健康結果或經濟指標)的影響。
- 因果推論的關鍵在於確定和解釋變量之間的因果關係,而不僅僅是描述它們之間的相關性。這通常涉及對混淆變數的控制、實驗設計的考量,以及使用特定的統計方法來估計因果效應。
**監督學習與因果推論的交集**:
- 雖然監督學習和因果推論有著不同的焦點,但它們可以互相補充。例如,監督學習方法可以用於因果推論中的某些階段,如利用機器學習算法來估計傾向分數或建立預測模型作為因果分析的一部分。
- 在因果推論的框架下,監督學習可以幫助處理高維度數據、非線性關係,並可以用於發現潛在的因果關係或建模複雜的因果結構。
- 重要的是,在使用監督學習方法進行因果推論時,需要嚴格考慮因果關係的假設和限制,並且應當謹慎解釋結果。
總之,監督學習在預測分析中起著關鍵作用,而因果推論則專注於理解變量間的因果關係。在實踐中,這兩者可以結合起來,以提供更全面的數據分析和洞察。
#### 如何從傳統統計學的觀點來理解因果推論,例如結構因果模型(SCM)或潛在結果模型(POM)
從傳統統計學的觀點來理解因果推論,尤其是結構因果模型(SCM)或潛在結果模型(POM),可以通過以下幾個方面來進行:
1. **關聯與因果的區別**:
- 傳統統計學主要關注描述和推斷數據中的關聯性(例如,變量A的變化是否與變量B的變化相關)。
- 因果推論則進一步探討這些關聯是否反映了因果關係(即變量A的變化是否引起了變量B的變化)。
2. **實驗設計的重要性**:
- 在傳統統計中,實驗設計(例如隨機對照試驗)被用來控制潛在的混淆因素,以更好地估計因果效應。
- SCM和POM提供了工具和框架,來分析即使在非實驗數據中也可能存在的因果關係。
3. **統計模型與因果模型**:
- 傳統統計模型通常基於數據中觀察到的關聯性建立,但不一定能夠揭示因果機制。
- SCM通過引入潛在變量和結構方程來明確定義變量間的因果關係,而POM則通過定義在不同干預下的潛在結果來描述個體的因果效應。
4. **傾向分數與匹配**:
- 傾向分數分析是一種結合傳統統計學和因果推論的方法,用於非實驗數據。它旨在通過匹配或權重等方法控制混淆變數,以估計治療效應。
5. **條件獨立性與無混淆性**:
- 為了從觀察數據中估計因果關係,我們需要假設在控制了某些共變項後,治療分配與潛在結果是獨立的(無混淆性)。這是因果推論中的一個核心假設。
傳統統計學提供了衡量和分析數據中變數相關性的工具,而因果推論則進一步探討這些關聯性背後的因果機制。SCM和POM為從統計關聯性到因果關係的推論提供了理論和方法學支持,允許研究者在存在混淆、選擇偏差或其他複雜數據結構的情況下進行更精確的因果分析。
##### 補充:使用潛在結果框架(Potential Outcomes Framework)來理解Generalized Linear Mixed Models (GLMMs)
- **Generalized Linear Mixed Models (GLMMs)**
:::info
$$ y = X\beta + Zu + \epsilon $$
- $y$ 為反應變數向量,代表病患的移動能力評分。
- $X$ 為預測變數矩陣,包含年齡、婚姻狀態、性別、白紅血球計數等固定效應。
- $\beta$ 為固定效應的迴歸係數。
- $Z$ 為隨機效應設計矩陣,每個醫生有一個隨機截距。
- $u$ 為隨機效應向量。
- $\epsilon$ 為殘差向量。
:::
模型考量了病患在不同醫生之間的移動能力分數可能有相關性。例如,不同專長的醫生可能看診的病患症狀有所不同,導致在同一位醫生底下病患的數據更為相似。這種分析方法允許我們考慮到這樣的分層結構,並且進行更細緻的統計推斷。
在GLMMs中,模型旨在處理具有混合效應的數據,這些效應可能包括固定效應(fixed effects)和隨機效應(random effects)。固定效應通常指的是我們對整個人群或實驗中的所有個體都感興趣的系統性影響,而隨機效應則用於捕捉個體間或群體間的變異性。
- **處理效應**:在潛在結果框架中,處理效應(例如治療或干預的影響)可以通過比較處理組與對照組之間的結果來估計,並且這種比較通常假設在其他條件不變的情況下進行。
- **隨機效應**:而在GLMMs中,隨機效應可以用來描述和捕捉數據中的隨機變異性,如不同個體對治療的響應不同。這可以被看作是個體層面的隨機變化或個體對治療效應的隨機變化。
當我們用潛在結果框架來理解GLMMs時,我們可以假設每個個體有一個潛在的結果分佈,這個分佈是由固定效應和隨機效應共同決定的。固定效應部分對應於平均處理效應,而隨機效應部分則對應於潛在結果在個體之間的變異性。這種方式允許我們將每個個體的觀察結果視為其潛在結果的一個實現,並且這些潛在結果的變異性部分可以通過模型中的隨機效應來捕捉。
因此,潛在結果框架提供了一種強有力的觀點,用於解釋和整合處理效應(通過固定效應)和隨機效應(通過模型中的隨機組件)在GLMMs中的作用。這種觀點特別有助於理解和解釋因果關係在面對異質性和數據結構複雜性時的動態。