:從隨機化到雙重機器學習與異質(zhì)處理效應)
簡介這份資源是斯坦福大學Stefan Wager于2024年9月更新的《Causal Inference: A Statistical Learning Approach》教科書草稿面向數(shù)據(jù)科學、統(tǒng)計學、經(jīng)濟學與公共政策領域的學習者和研究者幫助讀者用統(tǒng)計學習方法系統(tǒng)理解因果推斷的理論框架與實踐工具。壓縮包內(nèi)共1個PDF文件大小約1.66MB內(nèi)容為完整英文教材目錄結(jié)構(gòu)清晰便于按章節(jié)檢索學習。全書從隨機對照試驗的差異均值估計與回歸調(diào)整講起依次覆蓋無混淆與傾向得分、雙重穩(wěn)健方法與雙重機器學習、異質(zhì)處理效應估計、政策學習、自適應實驗、平衡估計器以及回歸斷點設計等核心主題并延伸至內(nèi)生處理、局部平均處理效應、溢出與干擾等進階內(nèi)容。目前已有1998人學習下載適合希望從基礎概念逐步深入到前沿方法的讀者也可作為課程教學與科研參考的案頭資料。1. 因果推斷為什么隨機化能讓你看見“平行世界”因果推斷最反直覺的地方在于它要回答的問題本質(zhì)上是一個永遠無法直接觀測的“平行世界”問題。你吃了藥病好了——但如果沒吃藥呢那個“沒吃藥的你”現(xiàn)在是什么狀態(tài)沒人知道。這就是因果推斷領域公認的“根本問題”每個個體在某一時刻只能接受一種處理我們永遠只能觀測到潛在結(jié)果中的一個。斯坦福大學2024年的這本《Causal Inference: A Statistical Learning Approach》開篇就直面這個困境用Neyman-Rubin潛在結(jié)果框架把“因果效應”定義為一個可計算的差值?? Y?(1) ? Y?(0)。這個差值本身不可觀測但隨機化實驗讓我們可以估計它的某些整體性質(zhì)。換句話說因果推斷不是去“看見”平行世界而是通過隨機化讓兩個世界的可比群體在統(tǒng)計意義上等價從而讓差值可估計。這本書從隨機對照試驗出發(fā)一路講到雙重穩(wěn)健估計、異質(zhì)處理效應、政策學習、自適應實驗、回歸斷點設計覆蓋了因果推斷從基礎到前沿的完整鏈條。搞懂這套框架的底層邏輯比記住任何一個估計量的公式都重要。2. 隨機化為什么能“無中生有”從差分均值到回歸調(diào)整2.1 差分均值估計量的無偏性從何而來隨機對照試驗中最樸素的估計量是差分均值把處理組的平均結(jié)果減去對照組的平均結(jié)果。這個估計量之所以能無偏地估計樣本平均處理效應核心機制在于隨機化本身。當處理分配W?與潛在結(jié)果{Y?(0), Y?(1)}獨立時處理組和對照組在期望意義上就是“同一批人”的兩個副本。書中給出的定理1.1證明了這個結(jié)論在SUTVA穩(wěn)定單位處理值假設和隨機分配條件下差分均值估計量是有限樣本無偏的。這個結(jié)論的強度在于它不依賴任何分布假設——你不需要假設結(jié)果服從正態(tài)分布也不需要假設潛在結(jié)果來自某個特定總體。隨機化本身就是識別策略。但無偏性只解決了“估計量的期望等于真值”這個問題它沒有告訴你估計誤差有多大。要構(gòu)造置信區(qū)間就需要引入總體抽樣假設假設研究參與者是從某個總體中獨立抽取的。在這個假設下中心極限定理給出差分均值估計量的漸近正態(tài)性其方差為VDM Var[Y?(0)]/(1?π) Var[Y?(1)]/π其中π是處理分配概率。這個方差公式揭示了一個設計層面的權(quán)衡當π接近0或1時某一組的樣本量會非常小方差急劇膨脹。所以實踐中通常取π0.5讓兩組樣本量盡量均衡。書中還給出了方差的插件估計量用樣本方差替代總體方差并證明了其一致性。這些結(jié)果構(gòu)成了隨機對照試驗統(tǒng)計分析的標準工具箱。2.2 回歸調(diào)整用協(xié)變量換方差縮減差分均值估計量雖然無偏但它沒有利用任何預處理協(xié)變量信息。如果你在實驗前測量了受試者的年齡、性別、基線指標等變量這些信息可以用來做什么書中第1.2節(jié)給出了答案回歸調(diào)整。具體做法是在差分均值的基礎上加入?yún)f(xié)變量與處理指示變量的交互項通過最小二乘回歸來估計處理效應。這個估計量在隨機化條件下仍然是無偏的但方差通常比差分均值估計量更小。為什么回歸調(diào)整能縮減方差直覺是這樣的如果某個協(xié)變量X與結(jié)果Y高度相關(guān)那么X的變異會貢獻到Y(jié)的方差中。通過回歸把X的影響“扣除”掉殘差的方差就變小了處理效應估計的精度自然提高。書中給出了一個關(guān)鍵結(jié)論當協(xié)變量與結(jié)果的關(guān)聯(lián)越強方差縮減的效果越明顯。但這里有一個常見的坑回歸調(diào)整的方差縮減效果依賴于模型設定的正確性。如果你假設處理效應是常數(shù)即沒有交互項但真實情況是處理效應隨協(xié)變量變化那么回歸調(diào)整可能會引入偏差。所以書中建議在隨機試驗中即使做了回歸調(diào)整也應該報告差分均值的結(jié)果作為參照。2.3 從隨機試驗到觀察性研究的橋梁隨機對照試驗是因果推斷的“黃金標準”但很多現(xiàn)實問題無法做隨機實驗——你不可能隨機分配一個人去吸煙。那么觀察性研究怎么做因果推斷書中第2章給出了核心答案無混淆性假設。這個假設說的是在控制了協(xié)變量X之后處理分配W與潛在結(jié)果{Y(0), Y(1)}獨立。換句話說所有同時影響處理選擇和結(jié)果的混雜因素都被觀測到了。在這個假設下觀察性研究就可以模仿隨機試驗的分析框架。但無混淆性假設本身是不可檢驗的——你永遠不知道有沒有遺漏的混雜因素。這就是為什么書中花了大量篇幅討論傾向得分方法。傾向得分e(X) P(W1|X)把高維協(xié)變量壓縮成一個一維分數(shù)在無混淆性假設下只要控制住傾向得分就能平衡所有協(xié)變量。這個性質(zhì)叫做“平衡性”是傾向得分方法的核心機制。書中第2.1節(jié)的分層估計和2.2節(jié)的逆傾向加權(quán)都是基于這個性質(zhì)。逆傾向加權(quán)的思想尤其巧妙它通過給每個樣本賦予權(quán)重1/e(X)或1/(1?e(X))構(gòu)造出一個“偽總體”在這個偽總體中處理組和對照組的協(xié)變量分布是相同的。這相當于用加權(quán)的方式“模擬”了一個隨機試驗。3. 雙重穩(wěn)健與雙重機器學習當兩個模型都錯的時候還能剩下什么3.1 雙重穩(wěn)健估計的“雙保險”機制傾向得分方法有一個致命弱點如果傾向得分模型設定錯誤估計量就有偏。同樣如果結(jié)果回歸模型設定錯誤基于回歸的估計量也有偏。雙重穩(wěn)健估計的巧妙之處在于它同時使用傾向得分模型和結(jié)果回歸模型只要其中一個模型設定正確估計量就是一致的。這就像給估計量上了雙保險——你不需要知道哪個模型是對的只要不是兩個都錯就行。書中第3章給出了雙重穩(wěn)健估計的一般形式。以逆傾向加權(quán)和回歸調(diào)整的結(jié)合為例雙重穩(wěn)健估計量可以寫成τ_DR (1/n) Σ [ (W?Y?)/ê(X?) ? ((1?W?)Y?)/(1?ê(X?)) ] ? (1/n) Σ [ (W? ? ê(X?))/ê(X?) * m??(X?) ... ]這個公式看起來復雜但機制可以這樣理解第一項是逆傾向加權(quán)的估計量第二項是一個“校正項”用結(jié)果回歸模型來修正傾向得分模型的誤差。當傾向得分模型正確時校正項的期望為零估計量退化為逆傾向加權(quán)當結(jié)果回歸模型正確時校正項恰好抵消了逆傾向加權(quán)的偏差。這種“互相糾錯”的結(jié)構(gòu)就是雙重穩(wěn)健性的來源。3.2 雙重機器學習用交叉擬合打破過擬合的詛咒雙重穩(wěn)健估計有一個前提傾向得分和結(jié)果回歸模型必須滿足一定的收斂速度。如果模型過擬合估計量反而會有偏。這個問題在高維協(xié)變量場景下尤其嚴重——當協(xié)變量維度很高時機器學習模型很容易過擬合導致傾向得分估計不準。書中第3.1節(jié)介紹的雙重機器學習Double Machine Learning通過交叉擬合cross-fitting解決了這個問題。交叉擬合的做法是把數(shù)據(jù)分成K折對于每一折用其他K?1折的數(shù)據(jù)訓練傾向得分模型和結(jié)果回歸模型然后用訓練好的模型對當前折的樣本進行預測。這樣做的目的是打破模型訓練誤差和估計誤差之間的相關(guān)性。如果沒有交叉擬合模型在訓練集上的過擬合會導致傾向得分估計在訓練樣本上過于極端接近0或1從而放大逆傾向加權(quán)的方差。交叉擬合確保了用于估計處理效應的傾向得分是在“未見過的數(shù)據(jù)”上預測的從而避免了過擬合帶來的偏差。書中給出了雙重機器學習估計量的漸近正態(tài)性結(jié)果并證明了在一定的正則條件下即使使用復雜的機器學習模型如隨機森林、神經(jīng)網(wǎng)絡雙重機器學習估計量仍然可以達到參數(shù)收斂速度。這個結(jié)果的深刻之處在于它表明你不需要為了統(tǒng)計推斷而犧牲模型的靈活性。你可以用機器學習模型來捕捉復雜的非線性關(guān)系同時仍然獲得有效的置信區(qū)間。3.3 有效估計與半?yún)?shù)效率界雙重機器學習不僅是一致的它還是漸近有效的——也就是說在所有正則估計量中它的漸近方差達到了最小值。這個最小值由半?yún)?shù)效率界給出。書中第3.2節(jié)推導了無混淆性假設下的效率界并證明了雙重機器學習估計量達到了這個界。這個結(jié)果的實踐意義是如果你相信無混淆性假設成立那么雙重機器學習估計量就是你所能構(gòu)造的最優(yōu)估計量——沒有其他估計量能在漸近意義上比它更精確。但這里有一個重要的提醒效率界的達到依賴于傾向得分和結(jié)果回歸模型的收斂速度滿足一定條件。具體來說兩個模型的預測誤差乘積必須比n^{-1/2}衰減得更快。這個條件在低維協(xié)變量場景下通常滿足但在高維場景下需要模型具有稀疏性或其他結(jié)構(gòu)。如果這個條件不滿足雙重機器學習估計量可能達不到效率界甚至可能不一致。所以書中反復強調(diào)雙重穩(wěn)健性不是免費的午餐它需要模型選擇的正則化條件來支撐。4. 異質(zhì)處理效應為什么“平均”會掩蓋真相4.1 從平均效應到條件平均效應傳統(tǒng)的因果推斷關(guān)注平均處理效應ATE但平均效應可能掩蓋了處理效應在不同人群中的巨大差異。比如一種藥對某些人有效、對另一些人無效甚至有害平均效應可能接近零但這并不意味著藥物沒有效果。書中第4章轉(zhuǎn)向異質(zhì)處理效應關(guān)注條件平均處理效應CATEτ(x) E[Y(1) ? Y(0) | X x]。這個量刻畫了處理效應如何隨協(xié)變量x變化。估計CATE的難點在于你需要在每個x處估計兩個潛在結(jié)果的期望但每個樣本只能觀測到一個潛在結(jié)果。直接的做法是對處理組和對照組分別建模然后做差。但這種做法在高維協(xié)變量場景下容易過擬合。書中第4.1節(jié)介紹了半?yún)?shù)建模方法通過假設CATE具有某種低維結(jié)構(gòu)如線性或稀疏線性來降低估計難度。第4.2節(jié)則介紹了一種更靈活的方法直接為處理異質(zhì)性設計一個損失函數(shù)通過最小化這個損失函數(shù)來估計CATE而不需要分別建模兩個潛在結(jié)果。4.2 異質(zhì)性估計的損失函數(shù)設計直接估計CATE的一個關(guān)鍵挑戰(zhàn)是你無法觀測到個體處理效應??所以無法直接定義預測誤差。書中給出的解決方案是構(gòu)造一個“偽結(jié)果”使得這個偽結(jié)果的期望等于CATE。具體來說對于任何函數(shù)f(x)定義L(f) E[ (Y ? f(X))2 | W1 ] ? E[ (Y ? f(X))2 | W0 ]這個損失函數(shù)的巧妙之處在于它的最小值點就是CATE函數(shù)τ(x)。換句話說你不需要知道??只需要最小化這個可觀測的損失函數(shù)就能得到CATE的估計。這個損失函數(shù)被稱為“R-loss”或“異質(zhì)性損失”。它的推導利用了傾向得分在無混淆性假設下E[Y|X, W1] ? E[Y|X, W0] τ(X)。所以最小化處理組和對照組的預測誤差之差等價于最小化CATE的估計誤差。這個損失函數(shù)的實踐意義是它把CATE估計問題轉(zhuǎn)化為了一個標準的監(jiān)督學習問題。你可以用任何回歸方法線性回歸、隨機森林、梯度提升樹來最小化這個損失函數(shù)從而得到CATE的估計。書中還討論了如何用交叉驗證來選擇超參數(shù)以及如何構(gòu)造CATE的置信區(qū)間。這些方法使得異質(zhì)處理效應的估計變得像訓練一個預測模型一樣簡單。4.3 異質(zhì)性估計的常見陷阱異質(zhì)性估計最容易踩的坑是“過擬合異質(zhì)性”。當你用高維協(xié)變量和靈活模型來估計CATE時模型可能會捕捉到噪聲而不是真實的異質(zhì)性。這會導致你發(fā)現(xiàn)一些看似顯著的處理效應差異但實際上這些差異只是隨機波動。書中建議的做法是先用一個獨立的驗證集來評估CATE估計的穩(wěn)定性或者使用交叉擬合來避免過擬合。另一個坑是“忽略傾向得分”。如果處理分配概率e(X)隨X變化那么直接比較處理組和對照組的條件均值會引入偏差。正確的做法是在損失函數(shù)中加入傾向得分的逆權(quán)重或者使用雙重穩(wěn)健的CATE估計量。5. 政策學習與自適應實驗當因果推斷遇上決策優(yōu)化5.1 政策學習從估計效應到做決策估計處理效應只是第一步真正的挑戰(zhàn)是基于估計的效應你應該做什么決策比如你估計出不同人群對某種干預的反應不同那么你應該把有限的資源分配給哪些人群這就是政策學習要解決的問題。書中第5章把政策學習形式化為一個經(jīng)驗福利最大化問題你需要找到一個決策規(guī)則π(x)使得在所有樣本上應用這個規(guī)則的平均福利最大化。政策學習的核心困難在于“反事實評估”你只能觀測到實際執(zhí)行的政策的結(jié)果無法觀測到如果執(zhí)行另一個政策會怎樣。書中第5.1節(jié)介紹了政策評估的方法通過逆傾向加權(quán)或雙重穩(wěn)健估計來評估一個候選政策的福利。第5.2節(jié)則介紹了經(jīng)驗福利最大化的算法把政策學習轉(zhuǎn)化為一個分類問題通過最小化一個“政策遺憾”的代理損失函數(shù)來找到最優(yōu)政策。這個代理損失函數(shù)的構(gòu)造與CATE估計中的R-loss類似都是利用傾向得分來構(gòu)造一個可觀測的替代目標。5.2 自適應實驗在收集數(shù)據(jù)的同時做決策傳統(tǒng)的隨機對照試驗是“固定設計”的你先確定樣本量然后收集數(shù)據(jù)最后分析。但很多場景下你需要在實驗過程中動態(tài)調(diào)整處理分配——比如多臂老虎機問題。書中第6章介紹了自適應實驗的設計和分析方法。自適應實驗的核心挑戰(zhàn)是數(shù)據(jù)收集過程本身依賴于之前收集的數(shù)據(jù)這破壞了傳統(tǒng)統(tǒng)計推斷的獨立性假設。如果你用標準的t檢驗來分析自適應實驗的數(shù)據(jù)第一類錯誤率會失控。書中第6.1節(jié)介紹了低遺憾數(shù)據(jù)收集策略如Thompson采樣和UCB算法。這些策略在探索嘗試不同的處理以獲取信息和利用選擇當前看起來最好的處理之間做權(quán)衡。第6.2節(jié)則介紹了自適應數(shù)據(jù)收集后的推斷方法。關(guān)鍵思想是你需要構(gòu)造一個“始終有效”的置信序列而不是傳統(tǒng)的固定樣本量置信區(qū)間。置信序列在任意停止時間都保持有效性從而允許你在實驗過程中隨時查看結(jié)果并決定是否停止。這個性質(zhì)對于自適應實驗至關(guān)重要因為它允許你在不破壞統(tǒng)計有效性的前提下進行序貫決策。5.3 自適應實驗的推斷陷阱自適應實驗最容易踩的坑是“偷看數(shù)據(jù)”。如果你在實驗過程中反復查看p值并在p值小于0.05時停止實驗那么第一類錯誤率會遠高于5%。這是因為你給了自己多次“碰運氣”的機會。書中建議的做法是要么使用置信序列來構(gòu)造始終有效的推斷要么使用alpha-spending函數(shù)來分配第一類錯誤預算。另一個坑是“忽略自適應分配對推斷的影響”。在自適應實驗中處理分配概率依賴于歷史數(shù)據(jù)這導致不同樣本之間不再獨立。標準的方差估計量在這種情況下是有偏的需要使用專門為自適應實驗設計的方差估計量。6. 避坑指南因果推斷實踐中的五個血淚教訓6.1 混淆變量沒控制住一切白搭現(xiàn)象你做了一個觀察性研究發(fā)現(xiàn)處理組和對照組的結(jié)果差異顯著但審稿人指出你遺漏了一個關(guān)鍵混淆變量。原因無混淆性假設是觀察性因果推斷的基石。如果存在未觀測的混淆變量那么無論你用多復雜的估計量結(jié)果都是有偏的。這個假設本身不可檢驗所以你必須用領域知識來論證它的合理性。解決在研究設計階段就盡可能多地收集協(xié)變量并在論文中明確討論未觀測混淆變量的可能影響。如果可能使用工具變量或斷點回歸等不需要無混淆性假設的方法。6.2 傾向得分模型設定錯誤逆傾向加權(quán)反而放大偏差現(xiàn)象你用邏輯回歸估計傾向得分然后做逆傾向加權(quán)結(jié)果估計量比差分均值還要離譜。原因逆傾向加權(quán)對傾向得分模型的設定非常敏感。如果傾向得分模型遺漏了重要的非線性項或交互項那么估計出的傾向得分就會有系統(tǒng)偏差。更糟糕的是逆傾向加權(quán)會給傾向得分接近0或1的樣本賦予極大的權(quán)重這些樣本的微小誤差會被放大。解決使用雙重穩(wěn)健估計量它在你傾向得分模型錯誤時仍然一致只要結(jié)果回歸模型正確。同時檢查傾向得分的分布如果有很多樣本的傾向得分接近0或1考慮使用修剪trimming或重疊權(quán)重overlap weights。6.3 交叉擬合沒做雙重機器學習變成了雙重過擬合現(xiàn)象你用隨機森林估計傾向得分和結(jié)果回歸然后直接代入雙重機器學習的公式結(jié)果估計量的偏差比預期大很多。原因如果沒有交叉擬合模型在訓練集上的過擬合會導致傾向得分估計在訓練樣本上過于極端結(jié)果回歸的殘差也會偏小。這破壞了雙重機器學習估計量的漸近性質(zhì)。解決始終使用交叉擬合。把數(shù)據(jù)分成至少5折用其他折的數(shù)據(jù)訓練模型用當前折的數(shù)據(jù)做預測。這樣得到的傾向得分和結(jié)果回歸預測是“樣本外”的避免了過擬合帶來的偏差。6.4 異質(zhì)性估計過擬合發(fā)現(xiàn)了不存在的“亞組效應”現(xiàn)象你用因果森林估計CATE發(fā)現(xiàn)某個亞組的處理效應特別大但用獨立數(shù)據(jù)驗證時這個效應消失了。原因CATE估計本質(zhì)上是一個高維回歸問題。如果你用靈活的模型和大量的協(xié)變量模型很容易捕捉到噪聲而不是真實的異質(zhì)性。特別是當樣本量不夠大時過擬合幾乎不可避免。解決使用交叉驗證來選擇模型的復雜度或者使用因果森林的“誠實估計”honest estimation方法把數(shù)據(jù)分成兩半一半用于確定樹的結(jié)構(gòu)另一半用于估計葉節(jié)點的CATE。另外對發(fā)現(xiàn)的亞組效應進行多重檢驗校正。6.5 自適應實驗用固定樣本推斷第一類錯誤率失控現(xiàn)象你在自適應實驗中每隔一段時間查看一次結(jié)果當p值小于0.05時停止實驗并報告顯著。結(jié)果發(fā)現(xiàn)假陽性率遠高于5%。原因固定樣本的推斷方法假設你只查看一次數(shù)據(jù)。如果你反復查看每次查看都是一次獨立的檢驗多次檢驗會累積第一類錯誤率。解決使用置信序列或alpha-spending方法。置信序列在任意停止時間都保持有效性允許你隨時查看數(shù)據(jù)。alpha-spending方法則預先分配第一類錯誤預算確保在整個實驗過程中的總體第一類錯誤率不超過預設水平。7. 設計取舍因果推斷的“不可能三角”與你的選擇因果推斷的方法選擇本質(zhì)上是在三個維度之間做取舍偏差、方差和計算復雜度。差分均值估計量偏差最小在隨機化條件下無偏但方差可能很大回歸調(diào)整可以縮減方差但引入了模型設定偏差的風險雙重穩(wěn)健估計量在模型正確時偏差和方差都較小但計算復雜度更高且需要交叉擬合來避免過擬合。這個“不可能三角”沒有 universally optimal 的解法選擇取決于你的具體場景和假設強度。我一般會這么理解如果你能做隨機實驗優(yōu)先做隨機實驗然后用回歸調(diào)整來縮減方差。如果你只能做觀察性研究先問自己無混淆性假設是否合理——如果不合理考慮工具變量或斷點回歸。如果無混淆性假設合理用雙重機器學習作為默認方法因為它同時具備一致性和漸近有效性。如果你關(guān)心異質(zhì)性處理效應用因果森林或R-loss方法但一定要做交叉驗證和誠實估計。如果你在做自適應實驗從一開始就設計好推斷策略不要等到實驗結(jié)束才想怎么分析。驗證方法上我習慣做三件事第一用模擬數(shù)據(jù)驗證估計量的無偏性——生成已知處理效應的合成數(shù)據(jù)看估計量是否圍繞真值波動第二用安慰劑檢驗驗證無混淆性——用一個理論上不應該有處理效應的結(jié)果變量做分析如果發(fā)現(xiàn)“顯著效應”說明存在未控制的混淆第三用敏感性分析評估未觀測混淆變量的影響——計算如果存在一個未觀測混淆變量它需要多強才能推翻你的結(jié)論。這本書最值得深挖的地方在于它把統(tǒng)計學習方法和因果推斷框架做了系統(tǒng)性的融合。傳統(tǒng)的因果推斷教材往往停留在線性模型和參數(shù)方法而這本書從雙重機器學習到因果森林從政策學習到自適應實驗覆蓋了現(xiàn)代機器學習工具在因果推斷中的最新應用。每一章都配有習題和文獻注記適合作為研究生教材或自學參考。如果你已經(jīng)會用Python或R做數(shù)據(jù)分析但想搞懂“為什么隨機化能識別因果效應”“雙重穩(wěn)健為什么穩(wěn)健”“異質(zhì)性估計為什么容易過擬合”這些底層問題這本書的推導和例子能給你扎實的答案。從那以后我每次做因果推斷分析都強制走一遍“假設檢查→模型選擇→交叉擬合→敏感性分析”的流程不再跳過任何一個環(huán)節(jié)。希望幫到你。本文還有配套的精品資源點擊獲取