清華崔鵬團隊KDD論文一作解讀:在大數據背景下進行因果效應評估
AI科技評論按:ACM SIGKDD 國際會議(簡稱KDD)是由ACM的知識發現及數據挖掘專委會(SIGKDD)主辦的數據挖掘研究領域的頂級學術會議。AI科技評論今年也來到了KDD 2017現場做了覆蓋和報道。參與本次KDD的清華大學博士生況琨受AI科技評論獨家邀請,介紹他與導師楊士強博士、崔鵬博士、黎波(清華大學)和蔣朦(UIUC)的工作《Estimating Treatment Effect in the Wild via Differentiated Confounder Balancing》。
論文地址:http://www.kdd.org/kdd2017/papers/view/estimating-treatment-effect-in-the-wild-via-differentiated-confounder-balan
在當今大數據時代,在廣告、醫療等各個領域都積累了海量歷史數據。同時,大量高效的機器學習和數據挖掘演算法提出,使得我們能更有效的利用大數據對未來數據點進行預測。在預測導向的問題上,大部分演算法都取得了不錯的效果。但是,由於絕大多數預測演算法缺乏可解釋性,導致其很難應用於許多實際問題上,尤其是那些需要進行決策制定的問題。因此,如何提高這些演算法的可解釋性,不管對於學術界還是工業界都十分重要。
拿醫療領域舉個例子。假設在整個醫療系統中,我們擁有 100 萬流感病人數據。對於每一位病人,我們知道其過往病史、診斷歷史、常用藥物、基因測試以及年齡性別等特徵。現在,醫院來了為新病人 Anna,我們知道 Anna 是亞洲人,54 歲,得了流感,伴頭疼鬧熱發燒等癥狀。Anna 問醫生,哪種治療能最有效地治療其流感。因此,醫生就需要做出決策,到底是給 Anna 服用藥物 A (Tylenol),還是藥物 B (Sudafed),或者是其他藥物。作為數據科學家,基於這些數據,我們能不能利用我們的機器學習和數據挖掘演算法幫助醫生進行正確的藥物決策呢?
當然,最簡單的,我們可以構造一個回歸模型,通過病人的特徵(X)加上藥物決策(A/B)來回歸預測藥效(Y)。通過回歸模型學習,我們能很容易地預測 Anna 在服用藥物 A 或 B 之後的藥效,並通過藥效差異來進行藥物決策。
回歸模型進行決策制定
但是,我們認為類似於上述基於關聯分析的演算法是不足以解決決策制定問題的。主要原因如下:
第一,數據中變數之間的依賴性。我們知道,在真實數據中,病人的一些特徵,如收入,往往會影響病人對藥物的選擇。也就是說病人特徵和藥物的選擇並不是獨立關係。而在很多關聯分析模型中,他們假設數據中變數關係是獨立的。忽略數據變數依賴性,會導致我們很難評估每個藥物的實際療效,很容易使得我們做出錯誤決定。
關聯分析模型不足以解決決策制定問題
例如,在醫療歷史數據中,我們發現對於大多數身體健壯的病人,即使不服用任何藥物,最後病情恢復的也很快;而對於身體虛弱的病人,即使服用了相關的藥物,其最後療效也不是非常好。基於這個簡單的數據,關聯分析模型會挖掘出錯誤的覺果:「不服用任何藥物對病人反而更好」。
第二個原因是:關聯並不代表因果。也就是說兩個變數之間存在關聯關係,但其並不一定存在因果關係。如果不存在因果關係,那麼就不能進行決策制定。例如,基於觀測,我們發現某地冰激凌銷量跟當地汽車熄火頻率十分相關。基於觀測數據,我們能通過冰激銷量準確預測汽車熄火頻率。但是我們並不能通過控制冰激凌銷量來達到減少汽車熄火頻率的目的,原因就是冰激凌銷量跟汽車熄火之間並不存在任何因果關係。冰激凌銷量之所以和汽車熄火頻率十分相關,是因為受炎熱天氣影響。
冰激凌銷量和汽車熄火頻率十分相關
因此,我們認為關聯分析模型不足以解決決策制定問題。
因果推理(Causal Inference)是一個用於決策制定等問題的強大統計建模工具。因果推理中一個根本的問題是因果效應評估,常用的方法是隨機對照試驗,例如 A/B Testing,通過控制兩組樣本特徵一樣,然後給予不同的治療並比較其最終輸出的差異來評估藥物對患者的因果效應。但是完全的隨機對照試驗代價往往非常昂貴,而且在很多涉及倫理道德的問題上甚至不可行。因此,處於大數據時代的我們就在思考這樣一個問題:我們能不能基於歷史觀測數據進行因果效應評估?
因果推斷框架
這個問題的相關工作主要有如下兩塊:
Propensity Score Based Methods,包括 Inverse Propensity Weight 和 Doubly Robust 方法。這些方法首先需要對 Propensity Score 進行評估,然後通過 Propensity Score 加權樣本使得不同 Treatment 組之間的特徵 Confounder X 分布是一樣的(可以理解為逼近隨機對照試驗或者 AA Testing),並進行因果效應評估。但是,此類方法的最大缺陷是需要先驗知識進行對 Confounder X 和 Treatment T 之間的模型進行假設。然而,我們知道在大數據背景下,我們常常擁有大量的觀測變數,我們很難知道變數之間的模型結構,因此我們在計算因果效應時不能進行模型假設。
Directly Variable Balancing Methods,例如 Entropy Balancing 和 Approximate Residual Balancing 方法。這些方法的 Motivation 在於變數的分布由其矩(Moments)唯一決定,因此通過矩可以控制不同 Treatment 組間變數平衡。但是這類方法將所有的觀測變數都進行了同等平衡,包括那些不會影響 Treatment T 的一些無關變數。然而,在大數據背景下,並不是所有的變數都需要平衡,而且不同變數需要平衡的權重也不一樣。
因此,本文認為在大數據背景下進行因果效應評估,存在如下兩個挑戰:
一是變數之間關係和模型的未知性,導致我們在進行因果效應評估時不能進行模型假設。
二是高維變數和雜訊數據的影響,並不是所有的變數都需要平衡,而且不同變數需要的平衡權重不一樣。
為了解決以上挑戰,本文提出了Differentiated Confounder Balancing 演算法,通過同時學習 Confounder Weights β 和 Sample Weights W 進行因果效應評估。其中 Confounder Weights 決定哪些觀測變數是 Confounder 以及其產生的 Confounding Bias 權重,而 Sample Weights 則用來控制 Treated 組(T=1)和 Control 組(T=0)之間的 Confounder X 分布相似。
Ideas on Differentiated Confounder Balancing Algorithm
但是我們如何去學習這些 Confounder Weights 和 Sample Weights 呢?
首先,學習 Confounder Weights. 在因果推理框架中,X,T 和 Y 之間的一般關係可以如下表示:
從中我們可以得到真實的因果效應 ATT 的表達式。考慮函數 f(X) 的一般形式:
我們從理論上發現,我們實際評估的因果效應與實際的因果效應 ATT 之間存在一個誤差項。而該誤差項正好可以分解為每一維觀測變數 Mk產生的 Confounding Bias 和相關的 Confounder Bias Weight αk.
從上述推導中,我們發現如果不同的 Confounder 具有不同的 Confounder Weight αk;而且當αk=0 時,變數 Mk就不是 Confounder,不需要進行 Balancing。我們還發現在推導過程中的 Confounder Weights αk正好就是函數 f(X) 中變數 Mk的相關係數。因此,我們給出如下定理:
其次,學習 Sample Weights. 通過 Wikipedia,我們知道任何變數的矩(Moments)能唯一決定其分布。受這點啟發,我們提出了通過變數的矩來直接進行變數平衡,具體如下圖。在 Moments 的幫助下,我們可以通過直接變數平衡來學習 Sample Weights,且並不需要任何模型假設。
Sample Weights Learning by Moments
綜上,我們 DCB 演算法的最終目標函數如下:
其中,紅框部分是用來學習 Sample Weights 的,綠框部分是用來學習 Confounder Weights 的。
實際上,Entropy Balancing 和 Approximate Residual Balancing 方法都是我們 DCB 演算法的 Special Cases 通過將我們演算法中 Confounder Weights β 設置為單位向量。因此,我們演算法對於因果效應評估更加一般化。
我們 DCB 演算法的時間複雜度為 O(np),其中 n 表示樣本數量,p 表示變數維度。
在實驗部分,我們通過三個方面對我們提出的 DCB 演算法進行了測試:Robustness Test, Accuracy Test 和 Predictive Power Test.
首先是 Robustness Test. 為了檢測我們演算法的魯棒性,我們在模擬數據上生成了各種情景下的高維和雜訊數據。
上述圖表只彙報了小部分結果,更多結果詳見我們論文。從上述結果中,我們發現,基於 Directly Estimator 在所有 setting 下都失敗了,這是因為該方法忽略了數據中存在的 confounding bias;基於 propensity score 的方法,IPW 和 Doubly Robust 方法當面臨錯誤的模型假設和高維變數時就會產生巨大錯誤。ENT 和 ARB 演算法由於將所有的觀測變數都當作 Confounder 進行同等平衡,導致其最後效果也不理想。而我們的 DCB 演算法,通過同時優化 Confounder Weights 和 Sample Weights,在所有 setting 下因果效應評估性能相比基準方法都有顯著性提升。說明我們的 DCB 演算法的魯棒性非常好。
其次是 Accuracy Test. 這裡我們將 DCB 演算法應用在真實數據 Lalonde 數據集上。該數據集包含兩塊,一塊是隨機對照試驗數據,給我們提供了因果效應的 ground truth;另一塊是觀測數據,用來檢測各個演算法對因果效應評估的性能。
實驗結果如下表:
從實驗結果可以看出,我們的 DCB 演算法能在各中 setting 下更準確地評估因果效應。
最後,Predictive Power Test. 為了檢測我們演算法的預測能力,我們將 DCB 演算法應用於真實的在線廣告數據集中。對數據中每一維特徵計算其對最後結果產生的因果效應,並選取因果效應最高的 top-k 個特徵對最後結果進行預測。預測結果如下圖:
從結果中我們發現,我們的 DCB 演算法在該預測問題上達到了最有的預測準確度。同時,我們將我們的演算法與經典的 correlation-based features selection 方法 (MRel, mRMR) 進行了對比,實驗發現 correlation-based 方法比我們 DCB 方法的效果差了很多,甚至比其他 Causality-based 方法都要差。這就說明,因果效應評估或者因果推理能有效地提升模型的預測能力。(對於 Causality 在預測問題上的應用可以參考我們最新的文章「On Image Classification: Correlation v.s. Causality」)
總結
在本文中,我們專註於解決在無約束的大數據高維背景下如何進行因果效應評估。我們發現之前絕大多數方法抑或沒有考慮 Confounders 之間的不同,抑或需要正確的模型假設,導致了在大數據高維背景下表現不佳。因此我們提出了 Differentiated Confounder Balancing 的演算法並給出了理論的分析。我們的演算法通過聯合優化 Confounder Weights 和 Sample Weights 來評估因果效應。基於模擬數據集和真實數據集的大量實驗表明我們的方法能夠顯著地超越當前最好的方法。同時我們的方法所選出的最重要的特徵在廣告數據集的預測任務上也取得了最好的效果。
————— 給愛學習的你的福利 —————
————————————————————
TAG:AI科技評論 |