個體因果效應估計|EDVAE:用于個體治療效果估計的反事實推理中的解開潛在因素模型

【摘要】根據觀察數據估計個體治療效果(ITE)是一項至關重要但具有挑戰性的任務。解纏結表示已用于將代理變量分為混雜變量、工具變量和調整變量。然而,根據觀測數據準確地進行反事實推理來識別 ITE 仍然是一個懸而未決的問題。在本文中,我們從數據和模型的角度重新審視 ITE 估計問題,揭示了以前未充分探索的方面。具體來說,我們研究了不平衡數據對 ITE 估計的影響,強調了假設兼容和方法簡單性在處理不平衡數據中的重要性。從模型的角度來看,我們從信息論的角度重新審視了解纏結的表示學習,并提供了支持變分自動編碼器(VAE)框架實現解纏結的有效性的理論證據。利用這些見解,我們提出了 EDVAE,這是一種用于解開潛在因素的數據驅動模型。 EDVAE 包含三個可擴展組件:用于不平衡數據的過采樣層、用于分離潛在因子的表示層以及結果預測層。合成數據集和真實數據集的實驗結果強調了我們提出的方法的有效性,展示了其解決根據觀測數據估計 ITE 的復雜問題的潛力。

原文:EDVAE: Disentangled latent factors models in counterfactual reasoning for individual treatment effects estimation
地址:https://www.sciencedirect.com/science/article/abs/pii/S0020025523011635
出版:Information Sciences
機構: Wuhan University; Hubei Luojia Laboratory
解析人:公眾號“碼農的科研筆記”

1 研究問題

本文研究的核心問題是: 如何設計一個數據驅動的解耦隱變量模型,用于從觀察數據中估計個體治療效應(ITE)。

在醫療領域,醫生常常需要根據病人的個人特征,來決定是否給予某種治療(如化療)。這里的關鍵是要估計出每個病人在接受和不接受治療情況下的預后差異,即個體治療效應(ITE)。但現實中我們只能觀察到病人實際接受的治療結果,而無法知道反事實情況下的結果。

本文研究問題的特點和現有方法面臨的挑戰主要體現在以下幾個方面:

  • 觀察數據中存在混淆偏差,即治療分配與治療結果之間存在共同的影響因素。傳統的回歸方法無法很好地消除這種偏差。

  • 治療組和對照組的樣本分布不平衡,治療組的樣本量通常遠小于對照組。現有的ITE估計方法大多忽略了這一問題。

  • 從高維觀察數據中準確識別出僅影響治療、僅影響結果、同時影響治療和結果的潛在因素,對于減少ITE估計偏差至關重要,但現有方法還不夠理想。

針對這些挑戰,本文提出了一種基于變分自編碼器(VAE)框架的"EDVAE"方法:

EDVAE巧妙地將ITE估計問題分解為三個模塊:過采樣層、表示層和預測層。過采樣層通過復制少數類(治療組)樣本來平衡數據分布。表示層利用VAE的解耦能力,從高維觀察數據中提取出獨立的工具變量、混淆變量和調整變量。預測層則基于治療和潛在因素來預測反事實結果。 這種模塊化設計就像一個齒輪傳動裝置,通過將復雜任務分解為幾個簡單步驟,最終實現了從觀察數據到因果推理的無縫銜接。其中VAE框架起到了至關重要的作用,猶如變速箱中的"離合器",將原始數據壓縮到低維隱空間,并實現了關鍵因素的解耦。實驗表明,與現有方法相比,EDVAE在合成和真實數據集上都取得了優異的ITE估計性能,體現了其在因果推理領域的前景和潛力。

2 研究方法

為了從觀察數據中準確估計個體治療效應(ITE),本文提出了一種新的基于解開表示的方法EDVAE。EDVAE考慮了ITE估計中不平衡數據的影響,并從信息論的角度分析了變分自編碼器(VAE)學習解開表示的有效性。如圖3所示,EDVAE主要由三個模塊組成:過采樣層、表示層和預測層。

2.1 不平衡數據處理

在因果推斷中,由于實際治療的約束,治療組的樣本量通常遠小于對照組,導致樣本分布不平衡。不平衡數據會使一組相對另一組過度代表,造成治療效果估計偏差。因此,EDVAE在表示學習前先引入過采樣層來處理不平衡數據。

常見的過采樣方法可分為生成式和非生成式兩類。生成式方法(如SMOTE)通過對少數類樣本插值來合成新樣本。但它們可能破壞治療、結果與協變量間原有的關系,違背因果推斷所需的先驗假設。非生成式方法(如隨機重采樣)通過對少數類樣本復制來平衡數據,保持了原有關系,更適合ITE估計任務。因此,EDVAE采用隨機重采樣對少數的治療組樣本進行過采樣,使治療組和對照組的樣本量接近。

2.2 基于VAE的解開表示學習

從因果圖3(a)可知,研究者通常假設存在三類隱含因子:只影響治療的工具變量 、同時影響治療和結果的混淆變量 、只影響結果的調整變量 。學習相互獨立的隱含因子,有助于從觀察數據中準確估計治療效應。

從信息論角度看,最小化互信息 可以降低隱含因子間的依賴性。本文推導出該互信息的一個上界(公式4),其形式與VAE的ELBO損失非常相似。因此,論文基于VAE框架來學習解開的隱含表示。表示層由一個編碼器 和一個解碼器 組成。其中編碼器通過神經網絡參數化隱變量 的后驗分布,解碼器對 施加先驗。為了平衡治療組和對照組在隱空間的分布差異,論文還引入Wasserstein距離作為正則項(公式13)。最終,表示層的損失由VAE重構誤差、后驗正則和分布差異度量三部分組成(公式6)。

2.3 協變量分解為隱含因子

個體治療效應定義為 ,即在給定協變量 的條件下,個體 接受治療()和未接受治療()的潛在結果之差。為了從可觀測的協變量中識別隱含的因果結構,論文將 分解為工具變量 、混淆變量 和調整變量 。這三類隱變量相互獨立,分別只影響治療、同時影響治療和結果、只影響結果。

EDVAE的表示層負責從協變量中學習這三類相互獨立的隱含因子。編碼器 、、 分別對 、、 的后驗分布進行建模,使其服從各自獨立的高斯分布(公式10-12)。而解碼器 對隱變量的聯合先驗分布進行建模,用于重構原始協變量。通過最小化VAE損失和分布差異度量,表示層可以學習到既能很好重構 、又能保持治療組和對照組分布一致的隱含因子表示。

2.4 基于治療和隱含因子的結果預測

獲得隱含因子后,預測層通過因果圖3(a)所示的因果關系,來預測個體在不同治療條件下的潛在結果。其中工具變量 只影響治療分配 而與結果 無關,因此 可以用混淆變量 和調整變量 在給定治療 的條件下來預測。

預測層采用前饋神經網絡來擬合 關于 的條件分布。它包含兩個分支,分別預測個體 在治療()和對照()條件下的潛在結果(公式9)。損失函數為預測值與觀測值的對數似然(公式15)。為了估計ITE,需要對治療前的協變量 分別假設施加治療()和不施加治療()兩種干預,計算相應的潛在結果,再取其差值。這一過程要求隱含因子 滿足可忽略性假設,即給定 的情況下,治療分配與潛在結果相互獨立。

2.5 EDVAE算法流程總結

EDVAE通過過采樣層、表示層和預測層三個模塊,實現端到端的個體治療效應估計:

  1. 過采樣層利用隨機重采樣平衡治療組和對照組的樣本分布;

  2. 表示層基于VAE框架,從平衡后的協變量中解開三個相互獨立的隱含因子;

  3. 預測層在給定治療和隱含因子的條件下,估計個體的潛在結果。

在訓練階段,三個模塊的損失函數聯合優化,使表示層學習到既滿足因果假設、又與預測任務相關的隱含因子。在推理階段,對于新的個體,表示層將其協變量映射到隱空間,預測層再估計其在不同治療條件下的潛在結果,由此得到個體治療效應。

總的來說,EDVAE在ITE估計中考慮了不平衡數據的影響,并利用VAE從信息論角度學習解開表示,以提高估計的準確性。同時該方法的三個模塊可靈活拓展,增強了框架的通用性。 第四步、實驗部分詳細撰寫:

5 實驗

5.1 實驗場景介紹

該論文提出了一個用于個體治療效應(ITE)估計的可分離潛在因子模型EDVAE。論文實驗主要在合成數據和真實數據上驗證EDVAE模型的有效性,以及與其他模型的對比效果。

5.2 實驗設置

  • Datasets:

    • 合成數據集:通過不同的實驗組比例設置生成,每個數據集包含2000個樣本,25個特征

    • ACIC 2016:由4802個樣本和58個變量組成

    • IHDP:一項隨機臨床試驗數據,通過消除treated subjects的非隨機子集來模擬選擇偏差

  • Baseline:

    • TARNet

    • TEDVAE

    • CEVAE

    • DML4CATE

    • X-learner

    • DragonNet

  • metric:

    • PEHE:衡量估計的ITE與真實ITE之間的均方根距離

  • 消融實驗變體:

    • EDVAE-WR:不包含過采樣層的EDVAE模型

5.3 實驗結果

5.3.1 實驗一、合成數據集上算法性能對比

目的:驗證不平衡數據對ITE估計的影響,并比較不同算法在不同程度不平衡數據下的性能

涉及圖表:圖4

實驗細節概述:在具有不同實驗組比例(5%到40%)的合成數據集上,比較TARNet、TEDVAE、CEVAE、DML4CATE、X-learner、DragonNet和EDVAE的PEHE性能

結果:

  • 大多數方法在比例小于20%時性能較差

  • EDVAE在比例超過10%時表現相對穩定,在估計ITE方面具有優勢

5.3.2 實驗二、可分離模型性能的回歸可視化

目的:直觀展示EDVAE等可分離表示學習模型處理不平衡數據的優勢

涉及圖表:圖5

實驗細節概述:對CEVAE、TEDVAE和EDVAE模型的ITE估計結果進行回歸擬合,并給出回歸線方程

結果:

  • 與CEVAE和TEDVAE相比,EDVAE的回歸線斜率和截距更好

  • 證實了不平衡數據對可分離潛在因子模型結果的重要影響

5.3.3 實驗三、EDVAE消融實驗

目的:研究EDVAE模型中關鍵組件(過采樣層、不同潛在因子維度等)對模型性能的影響

涉及圖表:圖4,表1

實驗細節概述:

  • 比較包含和不包含過采樣層的EDVAE模型性能

  • 探究不同維度的混淆、工具和調整變量對EDVAE性能的影響

結果:

  • EDVAE整體優于EDVAE-WR,證實了過采樣層在ITE估計中的有效性

  • 當潛在維度參數非零時,EDVAE性能顯著提升,驗證了其成功識別潛在因子的能力

5.3.4 實驗四、ACIC 2016數據集性能對比

目的:在ACIC 2016數據集上評估EDVAE相比其他方法的優勢

涉及圖表:表2

實驗細節概述:使用訓練集和測試集的PEHE指標比較DML4CATE、X-learner、DragonNet、CEVAE、TEDVAE、EDVAE-WR和EDVAE

結果:

  • 學習可分離表示的方法(如EDVAE和TEDVAE)取得了更好的結果

  • EDVAE在平均值和方差方面實現了最佳性能

5.3.5 實驗五、IHDP數據集性能對比

目的:在IHDP半合成數據集上評估EDVAE相比其他方法的優勢

涉及圖表:表3

實驗細節概述:使用訓練集和測試集的PEHE指標比較DML4CATE、X-learner、DragonNet、CEVAE、TEDVAE、EDVAE-WR和EDVAE

結果:

  • EDVAE的PEHE錯誤率在訓練集和測試集上分別比TEDVAE低6.10%和5.12%

  • EDVAE的標準差較小,表明其在真實數據集上表現更穩定

4 總結后記

本論文針對從觀察數據估計個體治療效應(ITE)的問題,提出了一種新的數據驅動的解耦隱變量模型EDVAE。該模型包含三個可擴展的組件:用于不平衡數據的過采樣層、用于解耦隱變量表示的表示層以及結果預測層。在合成數據和真實數據上的實驗結果表明,所提出的方法在ITE估計任務上優于現有方法,展現了從觀察數據估計ITE的潛力。

疑惑和想法:

  1. EDVAE目前只考慮了二元治療,如何擴展到多元治療的場景?

  2. 除了VAE框架,是否可以探索其他形式的生成模型來學習解耦表示,如GAN、Flow等?

  3. 如何將EDVAE與其他減少選擇偏差的技術(如匹配、重加權等)相結合,進一步提升ITE估計的性能?(聚焦數據挑戰)

  4. EDVAE能否擴展到估計其他形式的因果效應,如平均治療效應(ATE)、條件平均治療效應(CATE)等?

可借鑒的方法點:

  1. 在表示學習中引入VAE框架和互信息最小化準則來實現解耦表示,這一思想可以推廣到其他領域,如視覺、語音等。

  2. 采用過采樣層來處理不平衡數據問題的方法簡單有效,可以應用于其他對不平衡數據敏感的機器學習任務。

  3. 將因果推斷問題轉化為表示學習和預測問題的思路值得借鑒,為因果效應估計提供了新的視角。

  4. 利用輔助損失函數來平衡治療組和對照組在隱空間的分布差異,這一技巧可用于改進其他領域的域適應問題。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/13684.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/13684.shtml
英文地址,請注明出處:http://en.pswp.cn/web/13684.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

AppInventor2要在界面上做一個電量圖標,有什么好的思路嗎?

問:要在界面上做一個電量圖標,有什么好的思路嗎? 答:首先,很容易想到使用進度條相關的組件,原生”滑動條“組件可以嗎? 答案顯而易見,首先它的樣式自定義不夠,UI不外乎上…

STM32_ADC

1、ADC簡介 ADC,即Analog-Digital Converter,模擬-數字轉換器。 ADC可以將引腳上連續變化的模擬電壓轉換為內存中存儲的數字變量,建立模擬電路到數字電路的橋梁。 12位逐次逼近型ADC,1us轉換時間。 輸入電壓范圍:0~3.3…

P6【力扣144,94,145】【數據結構】【二叉樹遍歷】C++版

【144】二叉樹的前序遍歷 1、遞歸法&#xff1a; class Solution { public:void preorder(TreeNode* root, vector<int> &res){if(root nullptr){return;}res.push_back(root->val);preorder(root->left, res);preorder(root->right, res);}vector<in…

沒有密碼如何卸載卡巴斯基?

如果忘記卡巴斯基6.0的保護密碼&#xff0c; &#xff08;1&#xff09;進入安全模式下 &#xff08;2&#xff09;打開6.0的安裝目錄 Kaspersky Anti-Virus 6.0: C://Program Files//Kaspersky Lab//Kaspersky Anti-Virus 6.0 &#xff08;3&#xff09;將目錄中的avp.exe改…

CVE-2020-7982 OpenWrt 遠程命令執行漏洞學習(更新中)

OpenWrt是一款應用于嵌入式設備如路由器等的Linux操作系統。類似于kali等linux系統中的apt-get等&#xff0c;該系統中下載應用使用的是opgk工具&#xff0c;其通過非加密的HTTP連接來下載應用。但是其下載的應用使用了SHA256sum哈希值來進行檢驗&#xff0c;所以將下載到的數據…

開發過程中使用MySQL和Oracle的差異

前言 小型項目中使用MySQL的占比還是相對較高的&#xff0c;但是也不排除隨著項目的擴大&#xff0c;產品的豐富&#xff0c;或者甲方的財大氣粗&#xff0c;有可能會有MySQL換成Oracle。那么這兩者對于開發者而言&#xff0c;有什么差異化的地方呢。 官方文檔 MySQL5.7 htt…

weblogic簡介

WebLogic是美國Oracle公司出品的一個Application Server&#xff0c;它是一個基于JAVA EE架構的中間件。WebLogic主要用于開發、集成、部署和管理大型分布式Web應用、網絡應用和數據庫應用的Java應用服務器。它將Java的動態功能和Java Enterprise標準的安全性引入大型網絡應用的…

什么是安全左移如何實現安全左移

文章目錄 一、傳統軟件開發面臨的安全挑戰二、什么是安全左移四、安全左移與安全開發生命周期&#xff08;SDL&#xff09;三、安全左移對開發的挑戰五、從DevOps到DevSecOps六、SDL與DevSecOps 一、傳統軟件開發面臨的安全挑戰 傳統軟件開發面臨的安全挑戰主要包括以下幾個方…

yarn常用命令

Yarn 是一個快速、可靠且安全的依賴管理工具&#xff0c;用于替代 npm。以下是一些常用的 Yarn 命令&#xff0c;用于不同的包管理和項目依賴安裝場景&#xff1a; 初始化一個新的項目 yarn init這個命令會引導你創建一個 package.json 文件。 安裝依賴 yarn add [package]…

抄表:現代生活中的數據采集關鍵

1.界定與發源 抄表&#xff0c;簡單的說&#xff0c;指從各種各樣計量機器設備(如智能水表、電度表、天然氣表等)載入做好記錄使用量的全過程。這一概念自工業化時代至今就出現了&#xff0c;最初由人工進行&#xff0c;伴隨著科技創新&#xff0c;如今已經演化出自動化和遠程…

Java中的時間戳【詳解】

一.何為Java時間戳 在Java中&#xff0c;時間戳通常指的是自1970年1月1日午夜&#xff08;UTC&#xff09;以來的毫秒數。 這個概念在Java中主要通過java.util.Date類和java.sql.Timestamp類來表示 而在Java 8及以后的版本中&#xff0c;引入了新的日期時間API&#xff0c;即…

給大家分享一套非常棒的python機器學習課程

給大家分享一套非常棒的python機器學習課程——《AI小天才&#xff1a;讓小學生輕松掌握機器學習》&#xff0c;2024年5月完結新課&#xff0c;提供配套的代碼筆記軟件包下載&#xff01;學完本課程&#xff0c;可以輕松掌握機器學習的全面應用&#xff0c;復雜特征工程&#x…

【C++刷題】優選算法——遞歸第三輯

floodfill篇 圖像渲染 unordered_multimap<int, int> direction {{0, 1},{0, -1},{1, 0},{-1, 0} }; void dfs(vector<vector<int>>& image, int sr, int sc, int color, int val) {image[sr][sc] color;for(auto& e : direction){int x sr e.…

關于微服務的一點感悟和過往經驗的思考

一、為什么有微服務 解決單體應用的局限性 隨著業務發展&#xff0c;業務邏輯復雜、關聯方多&#xff0c;導致業務系統的代碼臃腫、難于做迭代或者維護&#xff0c;導致很多的問題&#xff0c;如&#xff1a;bug多、難于維護修復、每次需要評估改動服務接口影響的范圍&#xf…

碰撞器觸發事件(OnTriggerEnter/OnTriggerStay/OnTriggerExit)

碰撞器觸發事件&#xff08;OnTriggerEnter/OnTriggerStay/OnTriggerExit&#xff09;簡介 在Unity中&#xff0c;觸發器事件是當一個游戲對象進入、停留或離開另一個游戲對象的觸發器碰撞器時發生的事件。這些事件分別是: OnTriggerEnter: 當其他Collider首次進入觸發器時調用…

服務端Web資源緩存

1.前言 雖然客戶端緩存效果很好&#xff0c;但它有一個核心問題&#xff1a;要在本地提供資源&#xff0c;必須先將其存儲在緩存中。因此&#xff0c;每個客戶端都需要其緩存的資源。如果請求的資源需要大量計算&#xff0c;則無法擴展。服務器端緩存背后的理念是計算一次資源…

【CAN】libsocketcan庫詳解

1、簡介 libsocketcan是用戶空間通過SocketCAN操作CAN的接口。 源碼:https://github.com/linux-can/libsocketcan 2、API詳解 2.1 can_do_restart 1)說明:重啟CAN接口 2)原型: int can_do_restart(const char *name);3)參數: name:CAN接口名,比如:can0、can1,…

繼續分析開發人員容易被騙的原因和防范措施

繼續分析開發人員容易被騙的原因和防范措施&#xff0c;可以深入探討一些具體的技術細節和實際操作建議&#xff0c;以更全面地理解和應對這一問題。 技術細節&#xff1a; 未加密的敏感數據傳輸&#xff1a; 原因&#xff1a;開發人員可能忽視了數據傳輸過程中的安全性&#…

第10章 軟件架構的演化和維護

軟件架構周期&#xff1a;初始設計、實際使用、修改完善(這就是演化)、退化棄用。 演化和維護的目的&#xff1a;為了使軟件能夠適應環境的變化而進行的糾錯性修改和完善性修改等&#xff0c;而且這個過程是一個不斷迭代的過程。 架構演化的重要性、演化過程、演化分類、演化…

Vary HTTP 標頭

1.前言 服務器端 Web 資源緩存的想法是在客戶端和上游之間設置一個組件來緩存先前計算的結果&#xff0c;以避免后者過載。根據您的基礎架構和要求&#xff0c;此組件可以是反向代理或 API 網關。HTTP 提供Cache-Control標頭來自定義緩存的不同方面&#xff0c;例如&#xff0…