搜尋意圖: 如果你在找「因果模型 是什麼」或「因果模型 和相近概念差在哪」,先看這頁的短定義、完整說明與延伸比較。
TL;DR: 用數學或圖形方式表示變數間因果關係與機制的模型,包括結構方程模型與因果圖。
實用情境: 適合用在閱讀 AI 文章、產品文件或和同事討論時,先用一頁快速對齊概念。
下一步: 先讀完定義,再往下看延伸比較與對應工具,把概念轉成實際應用。
用數學或圖形方式表示變數間因果關係與機制的模型,包括結構方程模型與因果圖。
因果模型(Causal Models)是理解與量化因果關係的數學框架,透過將現實世界中複雜的變數交互作用編碼為形式化的模型結構,使研究者與實踐者能夠精確地推導因果效應、預測干預結果、並進行反事實推理。
有向無環圖(DAG)的基礎概念
有向無環圖(Directed Acyclic Graph,DAG)是現代因果推斷的基礎表示法。在 DAG 中,節點代表變數(可觀測或潛在的),有向邊(→)代表假設的因果關係,箭頭指向被影響的變數。「無環」是關鍵特性,意味著因果鏈最終有終點,不存在循環因果(雖然在現實中有循環反饋,但通常假設在足夠短的時間尺度上可近似為無環結構)。
例如,模型「吸菸 → 肺癌 ← 遺傳傾向」用 DAG 表示為:兩個節點「吸菸」與「遺傳傾向」均有箭頭指向「肺癌」。這個圖直觀地表達了因果結構:肺癌有兩個潛在原因,吸菸與遺傳傾向不存在因果關係(節點間無邊連接)。
路徑與因果識別
DAG 分析的核心是理解不同類型的路徑與它們對因果推斷的影響:
後門路徑(Backdoor Path):從原因變數出發,沿著箭頭反向走回去,再轉向結果變數的路徑。後門路徑代表非因果的共同原因路徑,會導致混淆。例如,若「吸菸 ← 社會經濟地位 → 肺癌」,則「吸菸 ← 社會經濟地位 → 肺癌」是後門路徑,會使吸菸對肺癌的因果效應估計受到偏誤。
前門路徑(Frontdoor Path):從原因變數出發,沿著箭頭正向走向中介變數(Mediator),再到結果變數。前門路徑代表因果機制如何作用。例如,「吸菸 → 焦油沉積 → 肺癌」中,焦油沉積是中介,代表吸菸導致肺癌的機制。
碰撞變數(Collider):一個變數有多個指向它的箭頭(多個原因)。特殊之處在於,除非明確調整碰撞變數,否則其原因變數間在統計上獨立;但一旦調整(在迴歸中納入)碰撞變數,則會誘發原因變數間的虛假相關。
後門準則與路徑阻斷
Pearl 提出的後門準則(Backdoor Criterion)是 DAG 在因果識別中的經典應用。若要估計處理變數對結果的因果效應,需要調整一個變數集合 Z,使得:所有後門路徑都被阻斷(blocked),同時沒有前門路徑被阻斷。路徑阻斷的規則涉及碰撞、調整變數的位置等複雜邏輯,但自動化工具(如 DAGitty)可輔助識別應調整的變數集。
結構因果模型(SCM)與干預
結構因果模型(Structural Causal Model,有時簡稱結構方程模型 SEM)將 DAG 推廣為帶有數學方程的框架。每個變數由一個方程表示,等號右側是其直接原因變數加上獨立誤差項。例如:
- Y = f_Y(X, U_Y) + ε_Y
- X = f_X(U_X) + ε_X
其中 U_X、U_Y 代表不可觀測的背景變數(包含所有外部影響),ε 是獨立噪聲。
SCM 的精妙之處在於它能形式化「干預」(intervention)的概念。干預被表示為對模型結構的改動:進行干預 do(X = x) 時,原 X 的方程被替換為常數 X = x,其他方程保持不變。這使得模型能夠預測干預效果,而非僅基於觀測相關性。例如,若我們想知道強制吸菸對肺癌的因果效應,在 SCM 中進行 do(吸菸 = 1) 的干預,重新計算肺癌的分布,得出的期望值即為因果效應。
識別問題與不可識別性
有時,即使有完整的 DAG,由於資料的限制或模型結構,因果效應仍可能無法唯一識別(不可識別,unidentifiable)。例如,若無法觀測到某個關鍵混淆變數,則無法通過調整來排除其影響。因果模型理論提供了診斷不可識別性的方法,以及在不可識別情況下估計因果效應的邊界(bounds)的技巧。
因果模型的實務應用
在 AI 應用中,因果模型被用於:
推薦系統設計:理解用戶特徵、推薦內容、與用戶留存之間的因果關係,設計能最大化長期價值的推薦策略,而非只追求短期點擊率。
政策評估:評估政府補助、稅收優惠等政策干預的因果效應,支持循證決策。
醫療決策:醫生基於患者特徵選擇最有效的治療方案,因果模型幫助量化治療效應。
公平性與反偏見:識別歧視性決策的因果路徑(如直接歧視 vs. 結構性歧視),設計介入點以減少偏見。
在 iPAS AI 應用規劃師考試中,因果模型是進階考點,要求考生不僅理解 DAG 的構繪與讀取,還能識別混淆、中介與碰撞變數,選擇適切的調整變數集,並推導因果識別的結論。
常見問題
什麼是碰撞變數(Collider),為什麼調整它會產生問題?
碰撞變數是有多個原因指向它的變數。在 DAG 中,例如「吸菸 → 肺癌 ← 遺傳傾向」,肺癌就是碰撞變數。統計上的性質是:在未調整肺癌的情況下,吸菸與遺傳傾向是獨立的(它們各自獨立影響肺癌,但不直接相關)。然而,一旦在分析中「調整」或「條件於」肺癌(例如在迴歸中納入肺癌作為控制變數),就會在吸菸與遺傳傾向之間誘發虛假相關。直觀解釋是:在已知肺癌的人群中,若某人吸菸少,則他很可能有強遺傳傾向才會患癌,因此吸菸少與遺傳傾向強產生相關。這稱為「碰撞偏誤」(collider bias)或「選擇偏誤」(selection bias)。所以,不應調整碰撞變數,除非有特殊的因果識別理由。
我怎麼知道是否畫對了因果圖(DAG)?
畫 DAG 的過程涉及主觀判斷與領域知識,難以完全客觀驗證。建議方法包含:第一,與領域專家協作確認因果方向與存在性;第二,檢查 DAG 是否與已知的科學證據(發表論文、教科書)一致;第三,進行敏感性分析(sensitivity analysis),測試 DAG 的小幅修改(如加入或移除某些邊)對因果識別結果的影響,若結論穩健則更有信心。第四,使用自動化工具(如 DAGitty、causalml)輔助檢查邏輯一致性。需要強調的是,DAG 是研究假設的形式化,而不是絕對真理;同一個現象可能有多個合理的 DAG 解釋,因此應在報告中明確陳述所用的 DAG 及其假設基礎。
結構因果模型(SCM)和一般的統計迴歸模型有什麼區別?
統計迴歸模型(如 Y = β₀ + β₁X + ε)描述 Y 與 X 的條件期望 E[Y|X],用於預測;係數 β₁ 反映的是相關性調整後的關聯強度。SCM 則顯式地為每個變數指定因果方程與獨立噪聲項,並定義「干預」的形式化操作。最關鍵的區別是解釋:迴歸模型的「效應」(β₁)只在統計意義上有定義,不直接對應因果改變;SCM 中的「效應」對應真實的干預效果。例如,迴歸模型可能告訴你「每增加一年教育,收入期望增加 $5000」,但這是基於觀測相關性,可能受混淆(如動機高的人既多受教育又賺更多);SCM 則會明確識別混淆變數,計算「強制多受一年教育」的真實因果效應,可能與迴歸係數大不相同。