Causal Inference and Uplift Modeling A review of the literature論文筆記
論文地址:Causal Inference and Uplift Modeling A review of the literature
摘要
??Uplift模型是對(duì)客戶施加一個(gè)行動(dòng)或者策略引起的增量效果而進(jìn)行建模的一套技術(shù)。Uplift模型既是一個(gè)因果問題玩荠,也是一個(gè)機(jī)器學(xué)習(xí)問題。關(guān)于uplift的文獻(xiàn)主要分為3大類:Two-Model、類別轉(zhuǎn)換的方式拍皮、直接對(duì)uplfit建模瘩欺。不幸的是吧凉,在缺乏因果推斷和符號(hào)表示的通用框架的情況下,這三種方法很難評(píng)估近上。在這片文章,我們使用Rubin關(guān)于因果推斷的模型和它對(duì)計(jì)量經(jīng)濟(jì)學(xué)的表示法對(duì)這三種方法進(jìn)行了清晰的比較拂铡,并對(duì)其中一種進(jìn)行概況壹无。據(jù)我們所知,本文是第一篇關(guān)于uplift模型的綜述文獻(xiàn)感帅。此外斗锭,本文表明,在極限的情況下失球,最小化因果效果估計(jì)量的MSE等同于最小化修改后的目標(biāo)變量來替換未被觀察到的Treatment效果的MSE岖是。最后,我們希望本文在商業(yè)領(lǐng)域(或者醫(yī)學(xué)她倘、社會(huì)學(xué)璧微、經(jīng)濟(jì)學(xué))中將機(jī)器學(xué)習(xí)應(yīng)用在因果推斷的有興趣的研究人員有用。
1 介紹
??Uplift模型是指公司可以評(píng)估客戶的增益效果的一系列模型硬梁,即前硫,評(píng)估一個(gè)行為對(duì)某些客戶的影響。例如荧止,一個(gè)電信公司的經(jīng)理可能有興趣評(píng)估向不同的客服發(fā)送促銷郵件的效果屹电,來了解他們?cè)谙乱粋€(gè)時(shí)期對(duì)更換電話套餐的傾向。有了這些信息跃巡,這個(gè)經(jīng)理就可以有效的鎖定客戶危号。
??評(píng)估客戶的增益效果既是一個(gè)因果推斷問題也是一個(gè)機(jī)器學(xué)習(xí)問題。這是一個(gè)因果問題i因?yàn)檫@需要估計(jì)一個(gè)人收到互斥行為的兩個(gè)action的結(jié)果差異(一個(gè)人要么收到促銷郵件要么沒有收到素邪,不能同時(shí)收到或者不收到)外莲。為了克服這種反事實(shí)的性質(zhì),uplift模型強(qiáng)烈依賴于隨機(jī)試驗(yàn),即將客戶隨機(jī)分為被施加策略(treatment組偷线,實(shí)驗(yàn)組)或者沒有被施加策略(對(duì)照組)磨确。uplift模型同樣是一個(gè)機(jī)器學(xué)習(xí)問題,因?yàn)樗枰?xùn)練不同的模型并且根據(jù)一些性能指標(biāo)選擇最可靠的模型声邦。這也需要交叉驗(yàn)證策略以及潛在的特征工程乏奥。
??Uplift 模型文獻(xiàn)提到了3種主要的方法將因果推斷方面與機(jī)器學(xué)習(xí)進(jìn)行結(jié)合。這導(dǎo)致了不同的uplif指標(biāo)和評(píng)估方式亥曹,這不容易互相比較邓了。我們將這個(gè)問題歸為一下原因:研究人員未使用通用的框架和符號(hào)表示。
??在這文章中我們采用Rubin提出的模型為共同參考框架對(duì)這三種方法(Two-model媳瞪、類別轉(zhuǎn)換方法骗炉、直接建模方法)進(jìn)行描述。我們嘗試采用系統(tǒng)化的“機(jī)器學(xué)習(xí)”來建立預(yù)測(cè)模型蛇受。本文的目標(biāo)是提供了一個(gè)通用的框架痕鳍,來統(tǒng)一不同的uplfit方法,從而使得他們的比較和評(píng)估變得更加容易龙巨。最后笼呆,我們的文獻(xiàn)表明,在極限的情況下旨别,最小化uplift效果的MSE等同于最小化用一個(gè)修正的目標(biāo)變量替代未被觀測(cè)到的uplift效果的MSE诗赌。
2 因果推斷:基礎(chǔ)
??我們依賴Rubin提出的關(guān)于因果推斷的模型并使用計(jì)量經(jīng)濟(jì)學(xué)文獻(xiàn)的標(biāo)準(zhǔn)符號(hào)。這個(gè)模型的核心是對(duì)潛在的結(jié)果和因果效應(yīng)進(jìn)行符號(hào)化秸弛。我們用i表示N個(gè)個(gè)體的索引铭若。表示的第個(gè)人受到treatment的結(jié)果,表示的第個(gè)人沒有收到任何treatment的結(jié)果(就是對(duì)照組的結(jié)果)递览。因果效果用 表示,表示是treatment和control組的差異叼屠,即
研究人員通常估計(jì)的是CATE( Conditional Average Treatment Effect),也就是說,對(duì)人群中的一個(gè)子人群來評(píng)估因果關(guān)系(用一個(gè)自人群的因果效果來表示一個(gè)單個(gè)人的因果效果)绞铃。
這個(gè)是的特征向量镜雨。當(dāng)然我們不可能同時(shí)觀察到和。表示是否收到treatment儿捧,表示一個(gè)人收到treatment荚坞,表示一個(gè)沒有收到treatment,那么一個(gè)人的結(jié)果可以用以下公式表示:
一個(gè)流行然而不幸錯(cuò)誤的觀點(diǎn)是菲盾,人們可以通過簡(jiǎn)單的計(jì)算公式4來表估測(cè)CATE
這個(gè)公式不能表示CATE颓影,除非一個(gè)用戶在的條件下要獨(dú)立于和。這個(gè)假設(shè)就是社會(huì)學(xué)和醫(yī)學(xué)中的,Conditional Independence Assumption假設(shè)懒鉴。
這個(gè)假設(shè)就是說在一個(gè)確定的特征下用戶是隨機(jī)分到treatment組和對(duì)照組诡挂。
定義傾向得分符號(hào),這個(gè)表示的是在條件下是進(jìn)入treatment組的概率。
3 Uplift模型
??一般公司關(guān)注Uplift模型是為了對(duì)一些顧客施加一個(gè)action后的影響。例如璃俗,一個(gè)健身房老板有興趣評(píng)估對(duì)特征為的顧客發(fā)送電子郵件南捂,來增加他們?cè)谙乱粋€(gè)時(shí)期續(xù)約的可能性。換句話說旧找,uplift模型等于評(píng)估CATE。盡管公司可以輕松的設(shè)置隨機(jī)試驗(yàn)來確保CIA假設(shè)麦牺,事實(shí)上我們不可能觀察到真正的,使得可以用標(biāo)準(zhǔn)的監(jiān)督學(xué)習(xí)來預(yù)估。換句話說就是無法得到真正的label,造成監(jiān)督學(xué)習(xí)無法進(jìn)行俺猿。如果我們假設(shè)是可以觀察到的格侯,那么我們可以簡(jiǎn)單的將數(shù)據(jù)集劃分為訓(xùn)練集和測(cè)試集,并使用許多可用的算法來預(yù)估的值吱晒,最小化訓(xùn)練集上損失函數(shù)甸饱,之后也就可以在測(cè)試集上用AUC 、F1 score仑濒、準(zhǔn)確率來評(píng)估效果叹话。
??在缺少真正的情況下,uplfit文獻(xiàn)有三種方案來評(píng)估墩瞳。第一種是Two-model形式驼壶,它包含了兩個(gè)預(yù)測(cè)模型,一個(gè)是在treatment組上訓(xùn)練模型喉酌,一個(gè)是在control組上訓(xùn)練模型热凹。第二種是類別轉(zhuǎn)換的方式。第三種就是修改已有的學(xué)習(xí)器(決策樹泪电、隨機(jī)森林般妙、svm等)來進(jìn)行直接對(duì)uplift建模。
3.1 Two-model方法
??Two-model方法已經(jīng)在很多論文中應(yīng)用了相速,經(jīng)常做完基準(zhǔn)模型碟渺。這種方式是分別在treatment組和control組數(shù)據(jù)上對(duì) 和建模。Two-model的優(yōu)點(diǎn)就是方法簡(jiǎn)單突诬,因?yàn)橥茢嗍窃趖reatment組和control組中分別進(jìn)行的止状,這樣無論是回歸還是多分類任務(wù)都可以直接使用隨機(jī)森林、XGBoost來進(jìn)行訓(xùn)練攒霹。在兩個(gè)組(實(shí)驗(yàn)組和對(duì)照組)單獨(dú)的可以達(dá)到好的預(yù)測(cè)結(jié)果怯疤。然而,出于uplift的目的催束,盡管人們這種方法看似不錯(cuò)集峦,但是一些作者表明這種方法通常不如其他的方法好。一個(gè)原因是這個(gè)2個(gè)模型以各自的結(jié)果進(jìn)行預(yù)測(cè),因此弱化了“uplift”的信號(hào)塔淤。換句話說摘昌,就是Two-model方法是以各自數(shù)據(jù)集上的輸出進(jìn)行建模,而我們要學(xué)習(xí)的是兩個(gè)數(shù)據(jù)集上的增益效果高蜂。
3.2 類別轉(zhuǎn)換的方法
??類別轉(zhuǎn)換的方式是針對(duì)二分類的情境下提出的聪黎。這種方法的目標(biāo)函數(shù)如下:
新的目標(biāo)為1時(shí)包含了2種情況 。1)在treatment組中并且备恤, 2)在control組中并且 稿饰。除了這2種情況應(yīng)該為0。
在個(gè)體被分到實(shí)驗(yàn)組和對(duì)照組的概率應(yīng)該一樣的假設(shè)下露泊,Jaskowski and Jaroszewicz證明了以下結(jié)論:
Uplift模型就等于訓(xùn)練喉镰。類別轉(zhuǎn)換的方法之所以流行是因?yàn)樗瑯右彩呛?jiǎn)單,但是效果要比Two-model更好一些惭笑,至今為止的分類模型都可以用到類別轉(zhuǎn)換的方法侣姆。然而這有2個(gè)假設(shè)(二分類情景;個(gè)體對(duì)實(shí)驗(yàn)組和對(duì)照組的傾向性必須一樣)看似太嚴(yán)格了沉噩。幸運(yùn)的是捺宗,可以通過一些轉(zhuǎn)換操作來解決實(shí)驗(yàn)組和對(duì)照組的個(gè)人傾向不同的問題是對(duì)CATE的預(yù)估值,
這里表示的是傾向得分川蒙。這種轉(zhuǎn)換必須是在CIA假設(shè)下偿凭,在的條件假設(shè)下等同于CATE。
注意到派歌,是在完全隨機(jī)試驗(yàn)和二分類結(jié)果條件下弯囊,我們可以根據(jù)公式3和公式8,進(jìn)行對(duì)公式6改寫:
怎么由公式3 胶果、8改寫的公式6匾嘱?
最后,也可以把樣本的權(quán)證考慮進(jìn)去:
3.3 直接Uplift建模
??這種方式是修改現(xiàn)在已有的學(xué)習(xí)器結(jié)構(gòu)進(jìn)行直接對(duì)uplift建模早抠。有修改LR霎烙、k-nearest neighbors、SVM蕊连,比較流行的還是修改樹學(xué)習(xí)器悬垃。在這個(gè)章節(jié)中主要介紹的是基于樹的方法,并討論樹的分裂標(biāo)準(zhǔn)甘苍。
??這里我們定義是隨機(jī)時(shí)間尝蠕,即對(duì)任意特征傾向得分,評(píng)估ATE的效果為:
簡(jiǎn)單的講载庭,公式12就是用treatment的平均結(jié)果減去control的平均結(jié)果看彼,p和q分別表示也是如此
??第一種分裂標(biāo)準(zhǔn)是求兩個(gè)葉子節(jié)點(diǎn)的區(qū)別:
分別在左右葉子節(jié)點(diǎn)上用公式12求出和
??Rzepakowski and Jaroszewicz基于信息論提出另外一種分裂標(biāo)準(zhǔn):
這里是差異度量廊佩,、分別是treatment組合control組的概率分布靖榕。因此标锄,這個(gè)分裂的表示是分裂后的發(fā)散增益程度。對(duì)于有以下三種方式Kullback, Euclidean茁计、Chi-Squared:
??在因果樹模型中料皇,Athey and Imbens提出以下分裂標(biāo)準(zhǔn):
可以發(fā)現(xiàn),當(dāng)二分類結(jié)果時(shí)星压,公式15等價(jià)于上述的歐式分裂標(biāo)準(zhǔn)方式 践剂。
?? 值得注意的事,Athey and Imbens提出一種“誠(chéng)實(shí)”的方法租幕,沒有使用相同的數(shù)據(jù)進(jìn)行生成樹并估計(jì)葉子之間的uplift。而是把數(shù)據(jù)分為兩部分拧簸,一部分用于生成樹結(jié)果劲绪,另外一部分用于估算葉子節(jié)點(diǎn)的uplift值。
4 評(píng)估
?? 在這個(gè)章節(jié)中介紹如何評(píng)估Uplift模型的效果 和使用“計(jì)量經(jīng)濟(jì)學(xué)”符號(hào)進(jìn)行推導(dǎo)盆赤。uplift模型的評(píng)估與傳統(tǒng)的機(jī)器學(xué)習(xí)評(píng)估方式不同贾富。在機(jī)器學(xué)習(xí)中,標(biāo)準(zhǔn)的評(píng)估方式是采用交叉驗(yàn)證的方式:把數(shù)據(jù)集劃分為訓(xùn)練集和測(cè)試集牺六,訓(xùn)練集上進(jìn)行train模型颤枪,在測(cè)試集上進(jìn)預(yù)測(cè)并與真實(shí)情況進(jìn)行比較。在uplift模型中淑际,交叉驗(yàn)證仍然是一個(gè)有效的方法畏纲,但是我們獲得真實(shí)的uplift增益,因?yàn)槲覀儫o法在一個(gè)人身上同時(shí)觀察到treat和不被treat的效果春缕。
?? 為了說明這個(gè)指標(biāo)盗胀,我們使用4.4章節(jié)中的模擬數(shù)據(jù)。這個(gè)數(shù)據(jù)包括1w個(gè)樣本锄贼,其中4997是treatment數(shù)據(jù)票灰,5003是control數(shù)據(jù)。目標(biāo)值是二值結(jié)果宅荤。這里有個(gè)強(qiáng)烈的負(fù)面影響屑迂,因?yàn)?5%的數(shù)據(jù)被描述為“Sleeping Dog”行為。這里使用19個(gè)分類特征 和80/20交叉驗(yàn)證冯键。
“Sleeping Dog”行為是指在treatment中這個(gè)個(gè)體起到負(fù)面影響惹盼,但是在control中不為如此。這里treatment中25%的人起到負(fù)面影響惫确。這里個(gè)人覺得 :就是指因?yàn)槟愕膖reatment行動(dòng)逻锐,惹怒了一些人夫晌,造成原本想買的人又拒絕去買了
?? 這里實(shí)現(xiàn)了上面的三種方法。對(duì)于Two-model方法使用的事兩個(gè)boosted樹,而類別轉(zhuǎn)換方法使用的是隨機(jī)森林的方法昧诱。為了測(cè)試第三種方法晓淀,我們使用uplift軟件包里的隨機(jī)森林和因果條件推理以及R語言包中的因果樹。本文沒對(duì)各種模型進(jìn)行調(diào)超參盏档,因?yàn)楸疚牡哪康氖菫榱瞬煌姆椒ㄐ钻皇且f明其中一種方法比其他的方法好。
4.1 傳統(tǒng)的uplift指標(biāo)
?? 在uplift場(chǎng)景中有個(gè)問題就是無法同時(shí)觀察到一個(gè)個(gè)體的施加action和不施加action的結(jié)果蜈亩,這樣無法獲取到真正的uplfit增益懦窘。所以很多uplfit文獻(xiàn)中都是uplift bins 或者uplift curves來衡量效果。評(píng)估uplift效果的一種常見的做法就是首先對(duì)treatment組合control的數(shù)據(jù)分別進(jìn)行預(yù)測(cè)稚配,然后分別計(jì)算各種組內(nèi)的每個(gè)分位數(shù)的平均值畅涂。再然后對(duì)相同的分位值取他們(實(shí)驗(yàn)組和對(duì)照組)之間差異。因此就可以得到每一個(gè)十分位之間的差異了道川。例如午衰,如fig4表示,Two-Model中第一個(gè)十分位uplfit值為0.3冒萄,類別轉(zhuǎn)換的防臟中第一個(gè)十分位的uplfit值也為0.3臊岸。這種方式盡管有用,但是無法進(jìn)行不同模型之間的對(duì)比尊流。(因?yàn)槭菬o法衡量a帅戒、b兩個(gè)圖之間那個(gè)更好。)
?? 為了有個(gè)更清晰的概念崖技,我們?cè)捔薴ig2(a)這樣圖逻住,最左邊的條形圖是對(duì)應(yīng)的前10%的uplfit平均值,第二個(gè)條形圖是前20%的uplift平均值迎献。表現(xiàn)好的模型會(huì)在第一個(gè)分位值中的值更大一些鄙信,而在較大分位值中有個(gè)整體較小的值。(能表現(xiàn)出依次遞減的趨勢(shì)是好的模型) 忿晕。
最后我們看一下累計(jì)增益圖:計(jì)算gain時(shí)要把uplfit乘以每個(gè)組的人數(shù)。
這里 践盼、分別表示的treatment中結(jié)果為Y的人數(shù) 鸦采、treatment中結(jié)果為N的人數(shù)。
Fig2(b)展示的就是Two-model的一個(gè)結(jié)果例子咕幻。這種評(píng)估方式很有效渔伯,因?yàn)榭梢暂p松的觀察到treatment的整體的效果,可以通過選擇不同的比例的人群進(jìn)行施加action來獲得最大利潤(rùn)肄程。
?? 到現(xiàn)在為止锣吼,圖片是無法提供一個(gè)衡量標(biāo)準(zhǔn)的选浑,因此無法精確的比較兩個(gè)模型效果。盡管如此玄叠,我們可以利用一下公式計(jì)算測(cè)試集上每一個(gè)分位的效果:
這里t表示的按預(yù)測(cè)值進(jìn)行排序的分位區(qū)間古徒。
Fig3(a)利用這種計(jì)算曲線的方式表示treatment的效果。圖中隨機(jī)(青色)的那條線表示對(duì)整個(gè)人群有個(gè)正向的結(jié)果(所以隨著x軸的增加y值也增加)读恃。曲線中的每一個(gè)點(diǎn)對(duì)應(yīng)的是相應(yīng)的uplif效果隧膘,這個(gè)值越高表示模型效果越好。uplfit曲線的連續(xù)性可以計(jì)算曲線下面的面積(就是之前提到的AUUC)寺惫,從而用來比較不同模型的效果疹吃。這種度量方式有點(diǎn)類似于AUC。在我們的案例中西雀,Two-model始終要比其他的模型更好萨驶。在圖中,如果曲線更像一個(gè)“鐘”形狀艇肴,表示模型效果更好腔呜;反之,更接近隨機(jī)的曲線表示模型效果差豆挽。
圖中橫坐標(biāo)是人數(shù)育谬,因?yàn)檫@里劃分?jǐn)?shù)據(jù)集是8:2劃分的所以測(cè)試集人數(shù)為2k左右券盅。
?? 在文獻(xiàn)中帮哈,uplfit曲線是通過分別計(jì)算treatment組和control組的預(yù)測(cè)值按值排序計(jì)算分位值差異來定義的。這可能不是理想的方式锰镀,因?yàn)槲覀儾荒鼙WC相同高分位值(都是前10% 或者都是前10-20%的分位區(qū)間)人群是相似的娘侍,但是這種計(jì)算方式在實(shí)踐中的效果最好,并且是在隨機(jī)實(shí)驗(yàn)情況下泳炉,這種方法是可行的憾筏。但是我們更傾向于我們的公式,因?yàn)樗咏黁ini的原始定義:
這里Qini系數(shù)表示的Qini曲線下的面積,如Fig3(b)所示花鹅,Qini曲線和Uplift曲線有些類似氧腰,因?yàn)椋?br>
4.3 基于的度量
?? 在3.2章節(jié)中我們介紹了目標(biāo)變量的轉(zhuǎn)換形式,因此很自然的想到在交叉驗(yàn)證中是否使用了預(yù)測(cè)值 和真實(shí)值的差異來表示的損失函數(shù)刨肃。這里定義:
做完近似:
Athey and Imbens指出盡管可以我們可以從模擬數(shù)據(jù)中計(jì)算公式21中的數(shù)據(jù)古拴,但是我們是無法從真實(shí)的觀測(cè)數(shù)據(jù)中計(jì)算的。因?yàn)镸SE無法計(jì)算真友,作者引入了一種只能在決策樹種使用的估計(jì)量黄痪。這種指標(biāo)強(qiáng)制了uplift使用特定的模型。我們的方法是不受限與機(jī)器學(xué)習(xí)的方法的盔然。注意在前面的章節(jié)中桅打,這個(gè)曲線也是基于局部的度量 是嗜。目的是我們可以用來替代無法觀測(cè)到的。
改寫公式21:
為了最小化MSE鹅搪,我們可以可以忽視公式22中的第一項(xiàng),因?yàn)樗灰蕾?div id="7vgylzu" class="image-package">