使用 ML 進行提升模組化和因果推理。
Python 包提供了一套使用基于最近研究的機器學習算法的提升模組化和因果推理方法。允許使用者根據實驗或觀察資料估計條件平均處理效果 (CATE) 或個體處理效果 (ITE)。本質上,它估計了幹預 對 具有觀察特征的使用者的
T
結果 的因果影響,而對模型形式沒有強烈的假設。典型用例包括
- 廣告活動定位優化:在廣告活動中提高投資回報率的一個重要手段是将廣告定位到在給定 KPI(如參與度或銷售量)中會有良好反應的客戶群。通過根據 A/B 實驗或曆史觀察資料在個人層面估計廣告曝光的 KPI 影響來識别這些客戶。
- 個性化參與:公司有多種選擇與客戶互動,例如在追加銷售或消息管道中的不同産品選擇。可以估計每個客戶和處理選項組合的異質處理效果,以獲得最佳的個性化推薦系統。
目前支援以下方法
基于樹的算法
- 歐幾裡得距離和卡方上的随機森林
- 提升樹/随機森林
元學習算法
- S學習
- T學習
- X學習
- R學習
工具變量算法
- 2 階段最小二乘法 (2SLS)
開始
S、T、X 和 R 學習的平均處理效果估計
1.
2. xg = XGBTRrssor()
3.
4. nn = MLPTReesor(hidenlayer_izes=(10, 10))
5.
6.
7. xl = BaeXegrsor(lernr=XGBeresor())
8.
9.
10. rl = BaeRReresor(lerner=XRegrssor())
可解釋的因果機器學習
提供了解釋如下訓練的處理效果模型的方法:
元學習特征的重要性
1.
2. # 加載合成資料
3. np.array(['treaet_A' if x==1 else 'cotol' for x in trtent]) # 處理/控制名稱
4.
5.
6.
7. RnFostRgesor() # 為model_tau_feature指定模
8.
9. # 在基礎學習器中使用feature_importances_方法
10. plot_ipornce()
11.
12.
13. # 繪制shap值
14. pot_shp_ues()
15.
16.
17. # interaction_idx設定為'auto'
18. ploshp_dpedece()
提升樹可視化
1.
2. uplit_del.fit(df[fars].values,
3. trtnt=df['trtme_rop_ey'].values,
4. y=df['cvesin'].values)