Causality

在 DAG 中使用“時間”作為因果變量是否合適?

  • December 29, 2019

這個問題可能更適合Philosophy.SE,但我將首先將其發佈在此處,因為它涉及本網站用戶最了解的技術方面。標題問題問,在 DAG 中使用“時間”作為因果變量是否合適?更具體地說,如果我們有不同時間段的數據,將時間索引用作 DAG 中的變量是否合適,因果箭頭從該變量指向其他變量?

在我看來,這提出了一個哲學問題,即“時間”是否可以被認為對其他變量有因果影響,或者相反,時間是否是因果關係概念的內在組成部分(因此不能引入作為因果變量)。除了這個哲學問題之外,它還提出了有關在 DAG 中適當處理時間索引的實際統計問題。在涉及在不同時間測量的數據的大多數統計應用程序中,有一些混雜因素也會隨著時間而變化。在這種情況下,可以使用“時間”作為其他混雜因素規範的替代品嗎?

作為對這個問題的部分回答,我將提出一個論點,即時間本身不能成為適當的因果變量,但使用代表特定自然狀態發生的“時間”變量合法的或存在於指定的時間段內(實際上是一個狀態變量)。這些問題是問題本身的推動力,因為我的直覺告訴我,因果模型中的“時間”必須是某種狀態變量的一種代理。


時間本身不能是一個因果變量

**時間已經是因果概念的一個組成部分:**第一個障礙是因果概念涉及動作,並且動作隨著時間而發生。因此,“時間”已經融入了因果關係的概念。因此,人們可能會將其視為一個概念,其中時間作為該概念中的一個參數變量是*先驗的,是不可接受的。*斷言時間是結果的原因需要承認時間既是斷言的因果變量,也是因果關係本身的必要概念。(我們將在下面看到更多的效果。)

**如果時間造成任何事情,它就會導致一切:**第二個障礙是因果關係通常被認為需要一個反事實條件在時間被斷言為因果變量的情況下,這會變得微不足道。如果我們說“前置條件 X 導致動作 Y”,則相關的反事實條件是:(1)前置條件 X 的存在/出現意味著動作 Y 將發生;(2) 在沒有其他原因的情況下,沒有前提條件 X 意味著動作 Y 不會發生。但是由於“將發生”的意思是“將隨著時間的推移而發生”,因此使用“時間”作為因果變量不會對第一個要求增加任何內容,而使第二個要求成為重言式。如果前置條件 X 是“時間的運動”,則(1)歸約為“時間的運動意味著動作 Y 將發生”,邏輯上歸結為“動作 Y 將發生”;(2) 簡化為“隨時間發生)。在因果關係的這種反事實解釋下,一個動作的時間因果性的斷言在邏輯上等同於一個斷言該動作將會發生。因此,我們必須要么得出結論,這個條件太弱而不能構成因果關係(即時間不是任何事物的原因),要么是時間是一切事物的原因。

**純時間因果性在形而上學上等同於隨機性:**當我們遇到“時間”是唯一斷言的因果變量的情況(即,在純時間因果性的情況下)時,就會出現另一個障礙。問題是,如果變量隨時間發生任何變化,在非時間變量沒有因果關係的情況下,這傳統上被認為是偶然隨機性的定義——即非因果關係。因此,斷言時間是結果的唯一原因就是將非因果性(隨機性)的概念完全從形而上學中排除,並用一個基本的“原因”代替它,如果沒有其他原因,該“原因”總是存在的。或者,人們可以合理地斷言時間因果關係的主張是等價的對於隨機性的斷言——即,它斷言除了時間的流逝之外沒有任何原因導致變化。如果是這種情況,那麼在 DAG 中作為因果變量的“時間”的存在等同於它的缺失(因此簡約建議將其排除在外)。此外,該領域的歷史建議保留現有的“隨機性”術語。

將時間作為因果變量的因果演算問題:我要提到的另一個最後障礙(可能還有更多)是在因果演算中很難將“時間”作為因果變量來處理。在標準因果演算中,我們有一個 $ \text{do}(\cdot) $ 對因果變量進行操作以反映對系統的干預以將該變量更改為可能與被動觀察下的值不同的選定值的運算符。不完全清楚是否可以對時間變量進行“干預”,而不會違反其他哲學或統計原則。人們當然可以爭辯說,等待是一種改變時間的干預(僅向前),但即使這樣解釋,它也無法與被動區分開來,因此可以說它與被動觀察沒有區別。有人可能會爭辯說,我們可以在不同時間記錄大量數據,然後“干預”將選擇哪些時間值包含在數據中進行分析。這確實會涉及時間段的選擇(在可用數據上),因此它似乎構成了一種干預,但這是一種認知干預,而不是一種形而上學的干預。(這也引起了未能使用所有可用數據的次要問題。)


隨時間累積的狀態變量可以是因果變量

**DAG 可以包括表示在規定時間內發生的自然狀態的變量:**有許多合法的因果變量表示在規定時間段內某種狀態或某些事件的發生。一個簡單的例子(向卡洛斯致敬在下面的答案中)是隨著時間的推移進行的金錢投資,這會產生利息。在這種情況下,利息的產生是由於資金是在一段時間內投資的,投資期限越長,產生的利息就越高。在這種情況下,有一個“時間”變量是合法的,它代表投資的選定時間段,並且該變量將對應計利息產生直接的因果影響。同樣,一個人的“年齡”變量是一種“時間”變量(AdamO在下面的答案中),表示該人已經在指定的時間段內活著。這些變量中的每一個都是可以包含在 DAG 中的合法因果變量。這些變量並不代表時間本身的進展——它們代表了在特定時間段內存在某種自然狀態的事實。在許多情況下,將這樣的變量標記為“時間”是一種有用的簡寫,但重要的是要記住它代表一段時間內的特定狀態,而不是時間本身的進展。

**從某種意義上說,每個變量都屬於這種類型:**由於每個可能的事件或自然狀態都發生在特定時間點或一段時間內,因此每個變量都涉及一些(通常是隱含的)時間規範。然而,有一些變量,例如“年齡”或“投入的時間”,它們與時間有更直接的聯繫,因為該變量表示獲得特定狀態的時間累積量。

**在 DAG 中使用“時間”是隨時間累積的狀態變量的簡寫:**如果上述論點是正確的,那麼在 DAG 中使用“時間”變量似乎必須是表示發生的變量的簡寫特定事件或特定自然狀態在特定時間段內的存在。時間進程本身不受控製或干預,並且由於上述原因不能成為因果變量。但是,特定自然狀態在一段時間內的普遍性當然可以是可以包含在 DAG 中的合法因果變量。


這些點給出了為什麼使用“時間”作為因果變量是有問題的一些基本概念,以及將“時間”添加到 DAG 意味著什麼。正如你所看到的,我的觀點是時間本身不能是一個因果變量,但你可以有一個“時間”變量,它實際上代表一個事件或自然狀態在一段時間內發生或存在。我願意被說服相反,但在我看來,這似乎是解決這個問題的明智之舉。

引用自:https://stats.stackexchange.com/questions/442648

comments powered by Disqus