
(本文閱讀時間:16分鐘)
因果發現(causal discovery)是資料科學和機器學習中的關鍵領域,其任務是透過演算法從資料中提取因果聯絡,並用因果圖進行表示。因果發現對於理解複雜系統、支援政策制定、醫學和社會科學研究等領域具有重要意義。
傳統上,基於觀測資料的因果發現主要有三類方法:基於約束、評分和連續最佳化。
-
基於約束的方法:透過統計測試來判斷變數之間的獨立性和依賴性,從而構建與獨立性相容的因果圖。這類方法依賴條件獨立性測試,旨在設計更魯棒、更快速的測試演算法或結合搜尋策略提高效率。常用演算法包括 PC 和 FCI。
-
基於評分的方法:透過為每個可能的因果圖分配評分,並尋找得分最高的結構。評分依據的是資料擬合程度和模型複雜性,其常用準則為貝葉斯資訊準則(BIC)和貝葉斯狄利克雷等價均勻準則(BDeu),演算法主要圍繞組合最佳化求解和啟發式搜尋,比如 GES。
-
基於連續最佳化的方法:將離散的組合最佳化問題轉換為連續最佳化問題,在近年成為研究熱點。例如,NOTEARS 演算法將因果發現問題轉化為了連續最佳化問題,並使用梯度下降等技術進行求解。
這些傳統方法體現了因果發現領域過去的主流方法論,即將人類的智慧編碼成巧妙的演算法,來提高因果發現任務的效能。然而,來自微軟(亞洲)網際網路工程院 DKI 組、香港科技大學和卡內基梅隆大學(CMU)的研究員們嘗試著改變思路,從基於學習的方法論(learning-based)入手,著眼於實證效能(empirical performance-driven)來探討一種基於監督學習的因果發現新正規化(supervision-based causal discovery)。該正規化聚焦訓練資料獲取、學習任務定義、學習目標設計、實現端到端的因果關係識別,同時嚴肅對待因果發現的核心概念:分析可學習性 (learnability) 與因果結構可辨識性(identifiability)的關係。
注:基於學習的方法論成為可能的前提是,因果發現任務具備“自監督學習”的特質:可以自動合成大量 <Gi, Di> 配對,其中 Gi 是因果圖,Di 是與之相容的觀測資料。然後令 Di 作為模型輸入,Gi 作為標註。
下面,我們一起來了解一下如何在因果定向(causal orientation)、因果骨架學習(casual skeleton learning)以及處理潛在混雜因素時的因果發現(causal discovery in the presence of latent confounders)領域的一系列探索中完成對該正規化的構建。這也將為未來該領域的探索提供嶄新的思路。

可識別性是指根據觀察資料確定唯一模型的能力,是因果發現的重中之重。在傳統的因果發現演算法中,人們通常基於對資料生成過程的某些假設,來設計合適的特徵以識別因果結構,例如基於不對稱性。然而,研究員們選擇改變思路,從機器學習的視角出發,在資料中直接學得這些特徵來幫助識別因果結構,從而提升效能。
這其中的關鍵在於,學習目標應該如何定義?換言之,哪些資料特徵應作為識別物件幫助判斷因果結構?
為了回答這個問題,研究員們聚焦於無需引數化假設的方法,僅利用觀測資料的條件獨立關係來推測因果結構。在這個過程中,研究員們發現兩個因果圖如 X→Y→Z 和 X←Y←Z 完全無法區分,因為它們蘊含的條件獨立關係完全相同(唯一的獨立關係是 X⊥Z∣Y),因此,研究員們指出,不可以直接拿因果的有向邊作為學習目標,這將使監督模型無法收斂。
在一般情況下,研究員們認為其可識別的目標分為兩類:兩個變數是否鄰接,以及確定鄰接關係後對變數進行定向。前者與骨架學習相關,後者與因果定向相關。對於後者,研究員們發現,對於一個未遮擋三元組 X-Y-Z 來說,X 和 Y、Y 和 Z 鄰接,而 X 和 Z 不相連,因此一定存在一個剩餘變數的子集 S,使得 X⊥Z∣S。在此基礎上,研究員們提出了 V-結構(V-structure,即 X→Y←Z)的定向規則:當且僅當 Y 不屬於 X 和 Z 的條件獨立集 S,並將其設定為主要的學習目標。
綜上,V-結構的識別看似簡單,只需檢視一個未遮擋三元組 X-Y-Z 的中間變數 Y 是否屬於 X 和 Z 的任意一個條件獨立集 S。然而,在實際應用中,這種判斷容易導致識別錯誤,進而產生級聯效應。因此,已有研究嘗試了不同的方法,如比較 X 和 Z 在給定 S 和給定 S∪{Y} 時條件獨立度量的區別(更精細且定量化的準則)。另外,考慮到不止有一個這樣的條件獨立集 S,可以計算所有條件獨立集 S 中 Y 出現的比例。例如,保守 PC(conservative PC, CPC)判定 V-結構當且僅當 Y 不在任何 S 中出現,而穩定 PC(PC-stable)判定 V-結構當且僅當 Y 在少於50%的 S 中出現。這個閾值是可以調整的。研究員們觀察到,不管是原有的 PC,還是改進後的 CPC、PC-stable,理論上都是同樣正確的。但是,後兩者比原有 PC 顯得更“精細”,因為它有更復雜的分類機制、用到了更多(一定意義上更全面)的資訊來做判斷,也因此有更好的實際表現。這些非監督的、依賴手工確定的方法也完全可以看作是特徵,但這些特徵從機器學習的角度來看,又過於簡單。所以,研究員們利用監督學習,不再採用這些簡單的手工分類機制,而是直接從資料中自動學得更精細、複雜、全面的分類機制——儘管這些機制可能不容易解釋,但由於假設學習目標是可辨識的,所以可以放心使用監督帶來的效能提升。
為了識別 V-結構,研究員們設計了 ML4C 演算法,其不再採用簡單的手工分類機制,而是利用監督學習直接從資料中自動學得更精細、複雜、全面的分類機制。具體而言,ML4C 假設已獲得正確的無向圖,然後利用監督學習進行二分類任務,以判斷每個未遮擋三元組是否為 V-結構。一旦識別出 V-結構,ML4C 將應用 Meek 規則生成最終的 CPDAG。更具創新的是,ML4C 能擴充套件特徵集,不僅關注未遮擋三元組的變數,還包括鄰域中的條件依賴關係和結構糾纏,從而增強 V-結構識別的準確性。
透過生成模擬訓練資料並使用機器學習演算法訓練分類器,ML4C 達到了漸進正確性,並表現出高魯棒性,在效能評估中也優於傳統演算法,在多個標準資料集上表現優異,尤其是在噪聲較大的資料環境中。深入分析表明,ML4C 不僅確保了理論上的可學習性,還展示了在不同樣本量和不完美骨架輸入下的容錯性和穩定性,顯示出其在實際應用中的潛力。作為研究員們在探索監督因果學習上邁出的第一步,ML4C 初試鋒芒便取得了鼓舞人心的成績。
ML4C: Seeing Causality Through Latent Vicinity. Haoyue Dai, Rui Ding, Yuanyuan Jiang, Shi Han, Dongmei Zhang. SDM 2023
https://epubs.siam.org/doi/10.1137/1.9781611977653.ch26

儘管在識別 V-結構中獲得了卓有成效的進展,但當研究員們嘗試將類似的思路應用到因果骨架學習任務時,卻遇到了相當大的阻礙。因果骨架學習旨在從觀測資料中識別因果圖的無向圖(即因果骨架,causal skeleton),這是因果發現和許多其他下游應用的關鍵步驟。然而,ML4C 依賴於隨機生成的資料,往往與 test-time 資料存在較大的偏離。例如在圖1中,研究員們發現不論是基於 ER 或者是 SF 等隨機模型生成的訓練資料上,都難以精準恢復正確的因果骨架結構。

圖1:ML4S 模型在不同測試資料(行)和不同的訓練資料分佈(列)下的表現(F1-Score)
為了解決這個問題,在 test-time training 等學習正規化的啟發下,研究員們提出了基於 Vicinal 圖的學習演算法,顯著提高了 ML4S 模型的預測精度。Vicinal 圖的生成致力於建立與測試資料(即 test-time 資料)分佈相似的圖結構,用於訓練監督學習模型。這些圖結構不僅保留了原始測試資料的統計特性,還能有效應對“領域轉移”(domain shift)問題,從而提高因果骨架學習的準確性和魯棒性。

圖2:生成 Vicinal 圖
在技術設計上,研究員們採用了現有因果發現演算法(如 PC 演算法)從 test-time 觀測資料中學習代理因果圖,並用極大似然估計(MLE)方法估算其每個節點的條件機率表(Conditional Probability Table,CPT)以引數化,隨後,透過對該引數化因果圖所代表的聯合機率分佈進行取樣,生成與觀測資料分佈相似的大量樣本。同時,為了減少代理因果圖的偏差,研究員們還透過插入和刪除邊等變異(mutation)策略生成了多樣性的鄰近圖,並重新分配 CPT 以保持分佈相似性。這種測試時訓練樣本的獲取和學習(test-time training)的技術,旨在克服由於測試樣本不服從訓練資料分佈而導致的機器學習泛化問題。
此外,研究員們還優化了任務目標、模型架構和特徵提取,例如提出使用順序級聯分類器(cascade classifier)架構來預測因果骨架中兩個節點的鄰接關係,設計定量且結構感知的特徵提取方法來獲得更細粒度的資料資訊(具體技術細節可見論文原文)。
圖3呈現了 ML4S 在不同資料集下與 SOTA 演算法的優劣比較,其中藍色格子表示 ML4S 在該資料集下所生成的因果骨架的 F1 Score 高於該演算法,而紅色/橙色格子表示 ML4S 的 F1 Score 低於所比較的演算法。該圖表明,ML4S 在絕大多數情況下均優於現有的方法,尤其是在處理節點數量較多的資料集時,表現尤為突出。

圖3:ML4S 在不同資料集下與 SOTA 演算法的比較
ML4S: Learning Causal Skeleton from Vicinal Graphs. Pingchuan Ma, Rui Ding, Haoyue Dai, Yuanyuan Jiang, Shuai Wang, Shi Han, and Dongmei Zhang. KDD 2022
https://dl.acm.org/doi/10.1145/3534678.3539447

在潛在混雜因素存在的情況下,因果發現更具挑戰性。潛在混雜因素廣泛存在於真實資料中,其表示了一個數據集內的兩個變數同時受到同一外部變數的影響。研究員們指出,雖然現有的可微分因果發現方法在學習有向無環圖(DAGs)方面取得了顯著進展,但在處理包含潛在混雜因素的實際資料集時仍然受到限制。這是因為現有的方法難以擴充套件到較大的資料集(如包含50個以上變數的資料集)上。在 ML4S 的基礎上,研究員們發現,因果骨架在提高準確性和減少最佳化過程的搜尋空間方面具有較大潛力,如果能夠事先知道資料對應的因果骨架,就可以將可微因果發現的最佳化過程加入額外的等式約束,從而提升可微分因果發現的效能。
在這個思路下,研究員們設計了 SPOT 方法,其關鍵思想是利用骨架後驗(skeleton posterior)來引導潛在混雜因素下的可微分因果發現。與傳統的“點估計”(point estimation)不同,SPOT 旨在估計給定資料集的因果骨架的後驗分佈 P(S∣D),並根據 P(S∣D) 的數值,對因果圖鄰接矩陣中響應數值的梯度進行後處理,從而引導最佳化過程。

圖4:潛在混雜因素下的因果圖結構表示,(a) 中 Z 是一個可觀測的混雜變數, (b) 中 Z 是一個不可預測的潛在混雜變數,因此需要使用雙向箭頭 ↔ 表示 X 和 Y 之間由潛在混雜因素引起的關聯
在 SPOT 中,研究員們還引入了動態和靜態資料生成模式,以應對原有 ML4S 方法中可能出現的模型偏差、混雜因素情況不適用的問題。同時,研究員們還設計了一種隨機最佳化策略,其會根據 P(S_ij∣D)的值,以特定的機率將 Δ_ij 賦值為零,來對最佳化變數進行每一步更新。
圖5展示了不同模式對潛在混雜因素下可微因果發現的效能提升。基線方法 ABIC 在三個指標上的表現相對較低,這表明不利用任何骨架後驗資訊的方法在處理潛在混雜因素時效果有限。使用真實骨架進行最佳化的方法(w/ True Skeleton)在所有指標上都達到了最高值(理想化的上限效能),顯著優於其他方法,表明準確的骨架資訊對因果發現效能的提升是非常重要的。利用 FCI 演算法估計的骨架進行最佳化的方法(w/ FCI),相比 ABIC 略有提升,但提升幅度有限,可能是因為 FCI 演算法在處理複雜資料時的骨架估計並不完全準確。利用骨架後驗指導最佳化過程的 SPOT 方法在所有指標上均優於 ABIC 和 w/ FCI,接近理想化的 w/ True Skeleton,這表明骨架後驗的引導能夠有效提升因果發現的準確性,尤其是在處理複雜和潛在混雜因素的情況下。

圖5:不同模式對潛在混雜因素下可微因果發現的效能提升
綜上所述,圖5的結果表明,使用骨架後驗資訊(如 SPOT 方法)顯著提高了因果發現的效能,特別是在有向邊箭頭和尾部的準確性上。雖然理想化的真實骨架提供了最好的效能,但 SPOT 方法在實際應用中展示了其有效性和優越性,表明在因果發現任務中引入骨架後驗是一種非常有前景的策略。
Scalable Differentiable Causal Discovery in the Presence of Latent Confounders with Skeleton Posterior. Pingchuan Ma, Rui Ding, Qiang Fu, Jiaru Zhang, Shuai Wang, Shi Han, and Dongmei Zhang. KDD 2024
https://arxiv.org/abs/2406.10537
隨著資料科學和機器學習技術的迅猛發展,資料驅動的因果發現在科學研究和實際應用中展現出巨大的潛力。然而,當前的因果發現方法仍然面臨許多挑戰,包括高維資料的處理、複雜因果結構的識別以及潛在混雜因素的影響。透過引入先進的機器學習技術和創新的方法,研究員們正在逐步突破這些瓶頸,開啟資料驅動因果發現的新正規化。這不僅能為因果分析提供新的思路,也將會為科學研究和實際應用中的因果發現帶來新的可能性,對未來的因果研究產生深遠影響。
你也許還想看:
