寫在前面
這一部分主要介紹的是因果推斷方向的基礎(chǔ)方法,后面會(huì)對(duì)這個(gè)方向前沿的論文和方向做一些基礎(chǔ)介紹,這些論文和方法有些我進(jìn)行了精讀或者實(shí)現(xiàn)。
有些只是粗略地了解了大概的主旨,但是會(huì)力求講解得盡量清楚明白,這里的介紹不分先后,只是對(duì)不同方法進(jìn)行介紹,不同領(lǐng)域在早期和近期都有相關(guān)新論文出現(xiàn),有任何問題和建議歡迎評(píng)論和私聊。
meta learning
這個(gè)方向使用基礎(chǔ)的機(jī)器學(xué)習(xí)方法去首先Estimate the conditional mean outcome E[Y|X = x](CATE),然后 Derive the CATE estimator based on the difference of results obtained from step 1,我們常見的uplift model里面one model和two model方法其實(shí)也是屬于meta learning,在這個(gè)領(lǐng)域one model方法是所謂的S-learner,two model方法是所謂的T-learner
T-learner & S-learner
這里不多贅述這兩種方法,簡單來講,T-learner就是用分別的兩個(gè)base learner去模擬干預(yù)組的outcome和非干預(yù)組的outcome,優(yōu)點(diǎn)在于能夠很好地區(qū)分干預(yù)組和非干預(yù)組,缺點(diǎn)則在于容易出現(xiàn)兩個(gè)模型的Bias方向不一致,形成誤差累積。
使用時(shí)需要針對(duì)兩個(gè)模型打分分布做一定校準(zhǔn),S-learner是將treatment作為特征,干預(yù)組和非干預(yù)組一起訓(xùn)練,解決了bias不一致的問題,但是如果本身X的high dimension可能會(huì)導(dǎo)致treatment丟失效果。而且這兩種方法更偏向于naive的方法,很多其他的問題比如干預(yù)組和非干預(yù)組樣本不均衡的問題、selection bias的問題都未解決。
2. X-learner
在這兩種方法的基礎(chǔ)之上還有《Metalearners for estimating heterogeneous treatment effects using machine learning pnas.org/content/116/10》這篇論文中介紹的X-learner
首先跟T-learner一樣,用base learner去預(yù)估干預(yù)組和非干預(yù)組的response
然后定義
這里D的定義為response的預(yù)估值和實(shí)際值的差值,然后我們用一個(gè)estimator去預(yù)估這里的D,最終我們的CATE就是這兩個(gè)預(yù)估出來的τ的加權(quán)和。
論文中用圖來解釋了這么做的原因,如下:
如上圖所示,如果我們的干預(yù)組和非干預(yù)組樣本數(shù)量不均衡,如圖A的藍(lán)色,那么在預(yù)估藍(lán)色的base learner時(shí)會(huì)出現(xiàn)無法擬合到中間上凸部分的情況,最終得到的treatment effect就是在中間部分下凸的結(jié)果。
但是如果我們使用了imputed treatment effect,會(huì)得到C中虛線的均衡結(jié)果。
論文中還提到了自己的實(shí)驗(yàn),實(shí)驗(yàn)效果總結(jié)來看,如果treat和不treat的數(shù)據(jù)量差別比較大的時(shí)候,X learner效果特別好,但是如果CATE接近0的時(shí)候,X learner效果不如S learner,比T learner好,make sense的。
3. 總結(jié)性論文
meta learning的方法有非常多,這里只是提到較為經(jīng)典的三種,其他meta learning的方法比如R-learner有點(diǎn)老了,這里不再介紹,在《Transfer Learning for Estimating Causal Effects using Neural Networks arxiv.org/abs/1808.0780》中比較有意思的是提到了很多方法的方案。
包括傳統(tǒng)藝能S-learner,T-learner,X-learner和比如warm start T-learner、joint training等等,有興趣可以看看。
representation learning
表示學(xué)習(xí)對(duì)于因果推斷其實(shí)算是非常自然的想法,本身由于selection bias的存在,導(dǎo)致treament group和control group的人群自帶偏差,而類似S-learner的方法又會(huì)使得treat的作用丟失,那么將人群embedding中并盡可能消除bias和保存treat的作用就非常重要了。
BNN & BLR
比較經(jīng)典的論文有BNN、BLR《Learning Representations for Counterfactual Inference arxiv.org/abs/1605.0366》,整體的算法如圖:
其中B指的是loss:
loss包含了三部分:事實(shí)數(shù)據(jù)的誤差+和與i最近的j的反事實(shí)數(shù)據(jù)的誤差和事實(shí)數(shù)據(jù)+反事實(shí)數(shù)據(jù)的分布差異,那我們是怎么學(xué)習(xí)φ的呢?
一個(gè)方法是對(duì)于特征進(jìn)行選擇BLR,在embedding層只有一層,更加白盒,相當(dāng)于特征篩選,只保留在treatment group和control group差距較小的特征。
另一個(gè)方法是深度的方法BNN,embedding后整體的loss加入分布的差異。
2. TARNet
與這篇論文很相似的論文包括TARNet《Estimating individual treatment effect:generalization bounds and algorithms arxiv.org/abs/1606.0397》,這篇文章整體的思路跟BNN那篇有點(diǎn)像,說到了BNN那篇的問題。
這里面講了BLR的兩個(gè)缺點(diǎn),首先它需要一個(gè)兩步的優(yōu)化(優(yōu)化φ和優(yōu)化y),其次如果如果φ的維度很高的話,t的重要性會(huì)被忽略掉,挺有道理的,但感覺跟那篇唯一的區(qū)別就是解決了一下treat和control組的sample數(shù)量不均衡的問題,所以火速看了一下就過了
loss的計(jì)算為:
可以看出是在上篇論文的基礎(chǔ)上增加了ω的加權(quán),去除了樣本不均衡的問題。整體的算法步驟如下:
把兩步走的優(yōu)化變?yōu)榱送瑫r(shí)優(yōu)化,雖然優(yōu)化看起來比較微小,但如果大家實(shí)際跑一下IHDP數(shù)據(jù)集的話會(huì)發(fā)現(xiàn)提升還是挺明顯的。
3. CFR
還有一篇論文是在TARNet之上進(jìn)行優(yōu)化的,《Counter Factual Regression with Importance Sampling Weights https://www.ijcai.org/Proceedings/2019/0815.pdf》而本文的改進(jìn)點(diǎn)也在ω上,不除以p(t),而是用一個(gè)網(wǎng)絡(luò)學(xué)習(xí)了p(t|x),除以p(t|x)
作者將其簡化為
可以用任何的網(wǎng)絡(luò)去擬合第二項(xiàng),整體的過程為:
4. ACE
還有一篇論文講到了另一個(gè)角度《Adaptively Similarity-preserved Representation Learning for Individual Treatment Effect Estimation cs.virginia.edu/~mh6ck/》
這篇主要的思想希望在representation之后能夠盡可能地保留local similarity,用一個(gè)toy example來說如下:
整體的框架如圖:fprop(x)是提前訓(xùn)練好的傾向性得分function
整體希望representation之前用x計(jì)算出傾向性得分相近的兩個(gè)個(gè)體,representation之后,representation之間的距離還是相近,把最重要的部分貼下來如下:
其中Q是Ri和Rj的聯(lián)合概率(R是representation),P是xi和xj的聯(lián)合概率,similarity preserving loss就是Q和P的KL散度,其中S的函數(shù)如下:
整體的loss包括正常的imbalance loss:
Factual y的分類或者回歸loss:
還有similarity preserving loss,總的loss function就是:
5. SITE
還有一篇比較類似思想的論文是SITE《Representation Learning for Treatment Effect Estimation from Observational Data papers.nips.cc/paper/75》但這篇論文我沒有非常認(rèn)真地讀,來自NIPS,也是非常經(jīng)典的一篇,說的主要是普通的representation learning的方法考慮了全局的分布信息。
但是沒有考慮用戶間的局部相似性,然后KNN的方法考慮了局部相似性,但是忽略了全局信息,這里面用了三元triplet pairs的方法選擇三個(gè)對(duì),用的是傾向性得分,傾向性得分在中間的一對(duì),傾向性得分接近1的treat unit,傾向性得分接近0的control group,有興趣的同學(xué)可以自己看一下。
編輯:jq
-
機(jī)器學(xué)習(xí)
+關(guān)注
關(guān)注
66文章
8501瀏覽量
134548 -
BNN
+關(guān)注
關(guān)注
0文章
3瀏覽量
2724
發(fā)布評(píng)論請先 登錄
是否可以在16位或32位圖像上推斷單映像-超級(jí)分辨率1032的模型?
為什么在GNA_SW_FP32和GNA_HW執(zhí)行模式中推斷時(shí),Precision值會(huì)不一樣?
與OpenVINO?推斷時(shí)遇到“Runtimeeror: Can Can Constant Fold Eltwise節(jié)點(diǎn)”錯(cuò)誤怎么解決?
為什么Caffe模型可以直接與OpenVINO?工具套件推斷引擎API一起使用,而無法轉(zhuǎn)換為中間表示 (IR)?
維智科技已正式接入DeepSeek
伺服電機(jī)實(shí)現(xiàn)方向改變的方法
一種基于因果路徑的層次圖卷積注意力網(wǎng)絡(luò)

鑒源實(shí)驗(yàn)室·測試設(shè)計(jì)方法-因果圖

RS-485:自動(dòng)方向介紹及其在系統(tǒng)中的作用

當(dāng)系統(tǒng)鬧脾氣:用「因果推斷」哄穩(wěn)技術(shù)的心

評(píng)論