相關性 ≠ 因果性,用圖的方式打開因果關係

2020-11-28 澎湃新聞

選自GitHub

作者:David Salazar

編輯:陳萍、魔王

機器學習方法是預測的有力工具,但是很多領域的工作或研究重視對因果關係的討論。相關性並不意味著因果關係,那麼如何識別因果關係呢?

David Salazar 發布了一系列博客介紹因果關係。在之前的文章中,他將因果關係定義為幹預分布(interventional distribution),並介紹了兩種識別因果關係的策略:後門準則和前門準則。然而,這些準則並不適用於所有因果關係。

那麼一般而言,給定因果模型和不完整的度量集,如何確定因果關係可識別呢?

本文提供了一種答案:利用 c-component (confounded component) 概念開發的圖標準(graphical criterion),並通過多個實例進行演示。

馬爾可夫模型

當我們可以得到因果模型中所有變量的度量值時,則該因果模型為馬爾可夫模型。在這種情況下,調整公式(adjustment formula)就是識別策略:如果 X, Pa(X) 的父代存在度量值,則任意因果關係 X→Y 都是可識別的。

那麼,如果你沒有觀察到 x 的父代呢?

半馬爾可夫模型

如果一個未觀察到的變量在圖中有兩個子代,則不符合馬爾可夫屬性。在這種情況下我們未必能夠使用調整公式。例如,如果 X 的某個父代未被觀察到,則我們無法將它作為識別策略。不過,我們或許仍可以使用後門或前門準則。

我們來看一個相關示例。在如下例子中,雙向虛線表示變量之間的隱藏共同原因(hidden common cause)。U 表示所有未度量變量,V 表示所有觀察到的變量。

為了確定 X 對所有其他觀測變量 v 的因果關係,我們必須根據觀察到的幹預前概率來估計幹預後的概率 P(v|do(X))。

請記住這裡的因果模型同時也是概率模型。特別是,它們導致了聯合概率分布的分解。然而,當模型包含未觀察到的混雜因素(confounder)時,我們必須將它們邊緣化,以獲得觀測變量的聯合概率分布:

在這種情況下,觀測值的分解如下:

假設 P(v|do(X=x)) 表示幹預,則它可以通過截斷上述表達式進行表示,這樣我們就不用計算 X 的概率了:

我們能使用觀測變量表示 P(v|do(X)) 嗎?首先,我們必須了解 confounded component。

confounded component

請注意,在這兩個表達式中,未觀察到的混雜因素將觀察到的變量分成不相交的組:若且唯若兩個變量通過雙向路徑連接時,它們才會被分配到同一組。在每一組中,S_k 被稱為 confounded component (c-component)。在這種情況下存在兩個 c-component,它們會引起兩次因式分解 (c-factor):

注意,在對所有其他變量進行幹預的情況下,每個 (c-factor) Q_k 都可以解釋為 S_k 中變量的幹預後分布。我們可以將聯合觀測分布表示為 c-factor 的乘積:

反過來,如果將 Q_1 中的 P(x|u_1) 邊緣化,則我們可以用 Q_1、Q_2 來定義 P(v|do(X)):

因此,P(v|do(X)) 是可識別的,前提是:a)我們可以根據幹預前的概率計算幹預後的概率 Q_1、Q_2;b)我們可以將 x 從估計的 Q_1 中邊緣化,從而計算 Q_1^x。

事實上,Tian 和 Pearl 的研究《A General Identification Condition for Causal Effects》表明每個 c-factor 都是可識別的。因此,計算 P(v|do(X)) 的唯一條件是「若且唯若 Q_1^x 可識別」。在這種情況下:

因此,我們可以通過對 X 的值求和將 x 從 Q_1 中邊緣化。

最後,對 P(v|do(X)) 的估計如下:

識別因果關係的通用標準

首先,請注意,對於任何具有雙向路徑的圖,我們都可以通過劃分 c-component 及其各自 c-factor 的方法,來分解聯合概率分布:

還需要注意的是,通過幹預 x 生成的截斷分布可以用 c-factor 來表示:

上式中,一旦從因式分解中刪除了 x,則 Q_x^x 是 x 位置的 c-factor。因此,如果 Q_x^x 是可識別的,則 P(v|do(X=x) 也是可識別的。

實際上,Tian 和 Pearl 的研究表明,若且唯若不存在將 X 連接至其子代的雙向路徑(僅具有雙向邊的路徑)時,Q_x^x 可識別。因此,我們可以得到以下測試,用於確定 P(v|do(X=x) 是否可識別:

若且唯若沒有雙向路徑將 X 連接至它的任何子代時,P(v|do(X=x) 是可識別的。

注意,如果 P(v|do(X=x) 可識別,則 P(Y|do(X=x)) 也是可識別的。因此,這一標準足以確定 P(v|do(X=x) 是否不可識別。假設我們只對單個變量 Y 的因果關係感興趣,那麼我們可以只考慮 Y 的祖代變量的子圖,來簡化問題。

直觀理解

如何直觀地理解可識別性測試呢?可識別性的關鍵不在於阻止 X 和 Y 之間的後門路徑,而是阻止 X 與其任何子代(即 Y 的祖代)之間的後門路徑。因此,通過阻斷這些路徑,我們可以確定觀察到的關聯的哪一部分是虛假的,哪些是真正的因果關係。

接下來,我們來看應用示例。

示例 1

先看上文中的示例。為什麼它是可識別的?該示例中所有其他變量都是 Y 的祖代,在這種情況下我們無法簡化問題。因此,我們必須查看 X 和它的子代之間是否存在雙向路徑:

tidy_dagitty(example, layout = "nicely", seed = 2) %>% node_descendants("x") %>% mutate(linetype = if_else(direction == "->", "solid", "dashed")) %>% ggplot(aes(x = x, y = y, xend = xend, yend = yend, color = descendant)) + geom_dag_edges(aes(end_cap = ggraph::circle(10, "mm"), edge_linetype = linetype)) + geom_dag_point() + geom_dag_text(col = "white") + labs(title = "The causal effect of X is identifiable", subtitle = "There's no bi-directed path between X and its descendats")

假設 X 和它的子代之間沒有雙向路徑,則 X 的因果關係是可識別的。

示例 2

non_identifiable_example <- dagify(x ~ z, x ~~~ z, x ~~ y, w ~ x, w ~~ z, y ~ w, y ~~ z)

在本例中,為了確定因果關係是否可識別,我們需要尋找 X 及其子代之間的雙向路徑。如果沒有,則因果關係可識別。

tidy_dagitty(non_identifiable_example, layout = "nicely", seed = 2) %>% node_descendants("x") %>% mutate(linetype = if_else(direction == "->", "solid", "dashed")) %>% ggplot(aes(x = x, y = y, xend = xend, yend = yend, color = descendant)) + geom_dag_edges(aes(end_cap = ggraph::circle(10, "mm"), edge_linetype = linetype)) + geom_dag_point() + geom_dag_text(col = "white")

注意,在 X 和 W(X 的子代之一)之間存在一條經過 Z 的雙向路徑,根據上文介紹的圖標準,其因果關係不可識別。

示例 3

third_example <- dagify(z1 ~ x + z2, x ~ z2, x ~~ z2, x ~~ y, z2 ~~ y, z3 ~ z2, x ~~ z3, y ~ z1 + z3)

與前面的示例一樣,本例中我們仍需在 X 及其子代之間尋找雙向路徑。

tidy_dagitty(third_example, layout = "nicely", seed = 2) %>% node_descendants("x") %>% mutate(linetype = if_else(direction == "->", "solid", "dashed")) %>% ggplot(aes(x = x, y = y, xend = xend, yend = yend, color = descendant)) + geom_dag_edges(aes(end_cap = ggraph::circle(10, "mm"), edge_linetype = linetype)) + geom_dag_point() + geom_dag_text(col = "white")

注意,X 與其 Y 以外的唯一子代(z1)沒有雙向路徑。因此,其因果關係可識別。

可識別性的必要條件是什麼?

對於可識別性,本文提到的測試是充分條件但並非必要條件。那麼,是否存在充要條件呢?答案是肯定的,Pearl 和 Shipster(2006)提到了一種算法。它擴展了本文中的想法,根據幹預前的概率返回因果關係的估計值。它是完備的且等效於 Pearl 的 do-calculus。

在 R 語言中,使用 causaleffect 軟體包能夠實現該算法。將其用於第一個示例,得到:

first_example_igraph <- graph.formula(x -+ z_2, z_2 -+ x, x -+ z_1, z_2 -+ z_1, z_1 -+ y, y -+ z_1, x -+ y, z_1 -+ y, z_2 -+ y, simplify = FALSE) %>% set.edge.attribute("description", index = c(1, 2, 5, 6), "U")ce <- causal.effect(y = "y", x = "x", z = NULL, G = first_example_igraph, expr = TRUE) plot(TeX(ce), cex = 3)

總結

在半馬爾可夫模型中,變量之間存在隱藏共同原因,這些原因可能會破壞識別策略。本文介紹了一種對可識別性的充分測試方法,它基於隱藏共同原因的本質(用雙向邊來表示)。如果 X 和它的子代(也是 Y 的祖代)之間存在雙向路徑,則因果關係不可識別。

本文還提供了一個充分必要條件,並展示了如何在 R 語言中使用它。該條件是完備的,當因果關係可識別時,它返回一個估計量,可用於基於觀測數據估計因果關係。

Amazon SageMaker 是一項完全託管的服務,可以幫助開發人員和數據科學家快速構建、訓練和部署機器學習 模型。SageMaker完全消除了機器學習過程中每個步驟的繁重工作,讓開發高質量模型變得更加輕鬆。

現在,企業開發者可以免費領取1000元服務抵扣券,輕鬆上手Amazon SageMaker,快速體驗5個人工智慧應用實例。

© THE END

轉載請聯繫本公眾號獲得授權

投稿或尋求報導:content@jiqizhixin.com

原標題:《相關性 ≠ 因果性,用圖的方式打開因果關係》

閱讀原文

相關焦點

  • 人類排放的二氧化碳跟全球變暖是否存在因果性關係?
    先說答案:以當前的科學技術手段,沒有一個東西能夠清楚地建立:人類排放的二氧化碳跟全球變暖存在因果性關係。(相關性肯定是有的,但是,相關性不是因果性。是地球氣溫高引起了二氧化碳高?還是二氧化碳高引起了地球氣溫高,這點正方反方都有自己的一套說辭。
  • 人類排放的二氧化碳跟全球變暖是否存在因果性關係?
    先說答案:以當前的科學技術手段,沒有一個東西能夠清楚的建立:人類排放的二氧化碳跟全球變暖存在因果性關係。(相關性肯定是有的,但是,相關性不是因果性。是地球氣溫高引起了二氧化碳高?還是二氧化碳高引起了地球氣溫高,這點正方反方都有自己的一套說詞。
  • 從「相關關係與因果關係」到「用事實解釋事實」的錯誤
    無獨有偶,批改學生的作業,看到有一個學生說相關關係不等於因果關係,這是對的,但正確的說法是:因果關係一定有相關關係,相關關係不一定有因果關係,不能以相關關係來直接否定具有因果關係,還要進一步分析。  因果關係在邏輯鏈上是在一條直線上居於前後,如A推出B,B推出C,則A與B、B與C、A與C之間都存在著因果關係。而非因果關係的相關關係在邏輯鏈上不在一條直線上,而是處於平行狀態。
  • 因果推理「三問」:是什麼?為什麼需要?如何使用?|內生性|因果關係|...
    譯者:AI研習社(聽風1996)  作為一名經濟學博士,我致力於尋找某些變量之間的因果關係,用來完成我的論文。因果關係強大到可以讓人們有足夠的信心去做決策、防止損失、求解最優解等。在本文中,我將討論什麼是因果關係,為什麼需要發現因果關係,以及進行因果推理的常用技巧。  1. 什麼是因果關係?
  • 政治科學視角下的大數據方法與因果推論
    針對政治科學對因果性知識的嚴格要求,大數據方法被認為重視相關性分析而非因果性研究。近年來,伴隨著大數據方法在方法論層面日趨成熟、方法技術日益豐富、研究議題逐步拓展,且與傳統社會科學方法逐步融合,大數據方法推進因果推論的能力逐步完善,革新著數據採集、概念測量、相關性分析、因果性與預測性分析等因果推論的各環節,形成了大數據與統計方法、大數據與小數據分析、大數據與實驗研究、大數據模擬方法等多種生產和檢驗因果性知識的方法路徑。
  • 相關關係並不意味著因果關係 大數據應避免大混亂
    199IT數據中心微信帳戶:i199IT翻譯:騰躍 校對:王晨當今時代,大數據泛濫、數據挖掘工具種類繁多,玩弄圖表遊戲已經變得不能再容易,管理者需要火眼金睛,秒殺數據間的虛假關係
  • 回歸分析的基礎概念之2:相關性與相關關係,相關係數與判定係數
    大家好,歡迎來到許栩原創專欄《從入門到高手:線性回歸分析詳解》(本專欄總目錄見上圖),這是專欄的第二篇文章,確定關係與相關關係,相關係數與判定係數。本專欄第一篇文章,我講解了回歸分析第一個基礎概念,變量。這一章,將講解回歸分析另一個最重要的基礎概念,相關性。本章的主要內容如下。
  • 連因果關係都能顛覆,量子物理的奇異性超出想像
    如果用日常的思維來理解,那這簡直就是胡扯。但在量子理論的數學體系中,因果關係上的模糊性是完全符合邏輯且自洽的。研究人員還認為,利用人為製造的因果關係模糊的物理系統,我們便可以探索更加廣闊的物理領域。有人提出,非因果系統可以用於推動頗具潛力的量子計算的發展。
  • 珀爾:數據非常愚蠢,領會因果關係才是理解世界的關鍵
    在珀爾眼裡,人類的認知能力之所以能超越「觀察」,達到「幹預」和「想像」的級別,是因為我們天生擁有一顆善於發現並理解「因果關係」的大腦,這也是我們目前仍領先AI的地方。不過嚴格來說,如同對「時間」或「意識」的理解一樣,在哲學、科學界對於什麼是「因果關係」至今仍未有一致的定論。
  • 狡猾量子顛覆因果—新聞—科學網
    然而,對糾纏態粒子的測量證明粒子自旋之間的關聯性,無法用粒子已有屬性來解釋,但同時這些關聯又不違背狹義相對論,因為粒子的運動速度不可能超過光速。那這種關聯是怎樣產生的?這確實很難用直觀的因果關係解釋。
  • Python實現固定效應回歸模型實現因果關係推斷
    眾所周知,「相關並不意味著因果關係」。 我要告訴你,相關可以表示因果關係,但需要一定條件。 這些條件已在計量經濟學文獻中被廣泛討論。 在本文中,我將以一種易於理解的方式對其進行總結。 我將解釋如果不滿足這些條件為什麼標準的普通最小二乘(OLS)無法確定因果關係。 然後,我將介紹可以提供有效解決方案的固定效應(FE)模型。
  • 毒大米和死麻雀的大數據邏輯:關注相關性卻忽視因果論證
    毒大米和死麻雀的大數據邏輯:關注相關性卻忽視因果論證 【IT時代周刊編者按】大數據越來越火的同時,不靠譜指數也在上升。馬繼華就這個問題舉了毒大米與死麻雀的例子,就是提醒這些潛心分析大數據的人們,不要忽視了沒有能力拿到或者沒準備卻拿到的部分,更不要在過分關注相關性同時,跳過因果論證的步驟。往往,先入為主的自以為是會導致整個數據分析的無用性。據說,20隻麻雀吃了散落的大米,死了。
  • 因果關係的複雜,不是簡單的一因一果
    科學家最常見的是追求用簡單的因果關係來解釋現象發生的原因。為什麼會有火?因為氧化反應釋放化學能。為什麼人們要交易?因為對雙方都有利。為什麼會下雨?因為空氣中有太多水氣。但是這些看似簡單的答案再追問下去,會發現它們都是由更多、更複雜的因素造成的。
  • 因果關係都是幻覺,休謨才是「不確定性」的鼻祖
    休謨以此推斷:像因果性這樣的被人們稱之為規律的聯繫沒有必然性,只有或然性(偶然性)那今天,我們就來具體聊聊「或然性」,其實或然性也分為兩種:一種就是機會或然性,一種是原因或然性。我們也可以理解為,結果的不確定性,和原因的不確定性。
  • 貝葉斯網絡之父Judea Pearl力薦、LeCun點讚,這篇長論文全面解讀機器學習中的因果關係
    Reichenbach (1956) 明確指出了因果關係和統計相關性之間的聯繫。他提出共同原因原理(Common Cause Principle):如果兩個觀測對象 X、Y 具備統計相關性,則存在變量 Z 對二者造成因果作用,且通過使它們基於 Z 互相獨立來解釋二者之間的相關性。在特殊情況下,變量 Z 可與 X 或 Y 重疊。
  • 因果階梯與Do-演算:怎樣完美地證明吸菸致癌?
    一部分研究者認為,吸菸與肺癌的關係如左圖所示,吸菸會直接導致肺部的焦油沉積,而焦油沉積會直接導致肺癌的產生。這裡需要額外說明的是,每一條邊上其實是有一個權值的,比如焦油沉積會有0.7的概率直接導致肺癌產生。所以這張圖並不是說吸菸就一定會肺癌。
  • 因果發現:如何讓算法成為複雜系統中的「福爾摩斯」?
    例如某人聲稱窮人吸菸多,而窮人患肺癌的比例更高,而這意味著「吸菸多的人患肺癌多」不能支持「吸菸引起肺癌」,這就是一個已知的因果鏈條。然而真實世界中,類似的因果鏈條,往往並不是先驗知識。尋找因果關係,傳統的方法是通過隨機對照實驗。但是這種實驗方式在實際問題中可能涉及到一些倫理問題,並且通常需要花費大量的人力和物力。
  • 作物優良率與單產相關性分析
    生長狀態對於單產產出的參考作用十分有限,應全面考慮各方面的影響因素  作物最終單產與優良率之間有沒有直接的關係呢?當我們採用生長指數與大豆最終單產和趨勢單產的差值來考量時,可以發現2012年極端情況下,二者之間的相關性比較明顯。
  • 量子世界的詭異性超乎想像,連因果關係都能完全顛覆
    如果用日常的思維來理解,那這簡直就是胡扯。但在量子理論的數學體系中,因果關係上的模糊性是完全符合邏輯且自洽的。研究人員還認為,利用人為製造的因果關係模糊的物理系統,我們便可以探索更加廣闊的物理領域。有人提出,非因果系統可以用於推動頗具潛力的量子計算的發展。