Save 37% off PRO during our Black Friday Sale! »

[勉強会資料メモ] Double/Debiased ML

B583d0943fe698dd7fc75d30d02f099f?s=47 Masa
November 19, 2021

[勉強会資料メモ] Double/Debiased ML

EconML勉強会用の資料メモ

Chernozhukov , Victor, et al.: Double/Debiased Machine Learning for Treatment and Structural Parameters. The Econometrics Journal, Volume 21, 2018
https://academic.oup.com/ectj/article/21/1/C1/5056401

Econ ML https://econml.azurewebsites.net/spec/estimation/dml.html

B583d0943fe698dd7fc75d30d02f099f?s=128

Masa

November 19, 2021
Tweet

Transcript

  1. Double/Debiased ML
 30分LT用:手を動かしてイメージをつかむ
 2021.11.20 twitter @asas_mimi 1

  2. 理論的詳細は割愛
 詳細は下記をチェック 
 
 Chernozhukov , Victor, et al.: Double/Debiased

    Machine Learning for Treatment and Structural Parameters. The Econometrics Journal, Volume 21, 2018
 https://academic.oup.com/ectj/article/21/1/C1/5056401 
 
 Econ ML https://econml.azurewebsites.net/spec/estimation/dml.html
 2 とりあえず、
 データを転がしてみよう的なLT

  3. LTの流れ
 1
 問題設定
 • 部分線形問題の説明 • Xが高次元だとML使い たくなるよね? • MLを素朴に適用すると

    √n-consistentを達成でき ない!!  2
 DMLの工夫
 [モチベーショ ン]regularization(正則化)と overfitting(過学習)から来る biasesに同時に対応したい • bias from regularization => 直交化 • bias from overfitting => cross fitting 3
 Pythonコード一部
 [追実験] Causal Inference in the Wild: Elasticity Pricing( blog ) https://towardsdatascience.com/causal-infe renceexample-elasticity-de4a3e2e621b - EconMLは一体どんなこ とやってるの? - CATEは計算できる? [Tが二値] - 401kの効果検証データ 3 notebookは別途共有
 要点のみ

  4. 定式的に書くと: Xがとっても高次元の場合: - MLモデルを使いたくなりますよね? - ナイーブにML使うと、ダメですよ (正則化/過学習bias) - 直交化とcross-fittingでroot-n consistent

    を達成しよう!という手法を紹介します 部分線形問題とML
 4 関心があるパラメータ 局外母数 nuisance parameters T Y X X X X X τ g() m() V U 観察可能
  5. Naive ML Approach
 単純なMLアプローチによるτの推定量: これは n1/2 consistent(√n一致性)を達成できない: - 簡単な話、収束レートが遅い(だいたい n1/4

    -consistent ※ 雑記で補足) MLモデルの推定値 5
  6. bias from regularization
 誤差項のここがダメ! ここはN(0,Σ*) になるので無視 regularization bias - ML特有の正則化項の影響

    - O(n-1/2)では収束しない (だいたいn1/4-consistent) 6
  7. Frisch–Waugh–Lovell theorem
 残差回帰問題(FWL定理)とほぼ同じ発想で今から工夫を入れていく 7 [例題] 価格弾力性の推定問題(データ元は後述) LnQ ~ LnP +

    sku_avg_p + stock_age_days + C(month) + C(DoM) + C(DoW) LnQをY、 LnPをTとして、その他はX(共変量) 1. 重回帰でT->Yのインパクト(価格弾力性) 2. 残差回帰でT->Yのインパクト 同じ結果になる (同じことをしている)
  8. 重回帰モデルの推定値
 8

  9. 残差回帰 (FWL定理)
 9 1. X -> Yの回帰 (Tは除く) 2. X

    -> Tの回帰 3. 残差を計算 4. 残差 on 残差で回帰 5. 結果は一致
  10. Orthogonalization
 Tの残差 on Yの残差 この時の誤差は? Tの残差(mモデルの推定誤差) 次のスライドより、ここの性質を吟味する なので、aは無視できる ~ N(0,

    Σ*) 操作変数法っぽい 10
  11. Overcoming regularization bias
 誤差 b term mモデルの残差 ✖  gモデルの残差 n1/2-consistentを達成している

    それぞれの収束レートは遅い(だいたいn1/4-consistent) ただし、直交化により、n1/2-consistent (雑イメージn1/4✖n1/4) 11
  12. 誤差 c term この termを含んでしまう: 考えてみる: • g^ o がoverfittingしている場合、その推定誤差内に

    U の情報が多く含まれることになる • UとVが独立である保証がない(極端な場合、未補足の共変量) • 仮に、UとVが関連していた場合、この誤差項 cが収束しない bias from overfitting
 これはただのerror term (estimated error ではない) gがoverfitting => Uが推定誤差の中に登場 12
  13. データをk個(以下の図では2つ)にランダムに分割し、学習と推定のサンプルを分ける Cross fitting
 13

  14. Overcoming overfitting bias
 14

  15. 細かい話は割愛
 15

  16. 再びNaive ML Approach
 単純なMLアプローチによるτの推定量: score function: - Wはデータセット 。モーメント条件 -

    ただし、 g(nuisance parameter)の方向微分(Gateaux derivative)は非ゼロになる MLモデルの推定値 省  略 
 推定値gの微小変化に対して、 モーメント条件が脆弱 16
  17. DML:Neyman orthogonality
 score function: Neyman orthogonality: - パラメータη(nuisance parameters)の方向微分(Gateaux derivative)はゼロになる

    - => gやmの微小変動(推定誤差)に対して、モーメント条件はロバスト 省  略 
 17
  18. 簡単なデータで試してみよう
 18

  19. 価格弾力性の推定問題
 練 習 
 データ元:Kaggle https://www.kaggle.com/vijayuv/onlineretail データ加工参考: Causal Inference in

    the Wild: Elasticity Pricing (toward data science blog ) https://towardsdatascience.com/causal-inferenceexample-elastici ty-de4a3e2e621b 上記ブログのgithub https://github.com/larsroemheld/causalinf_ex_elasticity 19
  20. 任意のMLモデルで cross fitting
 練 習 
  任意のMLモデル
 - m(X) :

    first_t_model - g (X) : first_y_model (ハイパラは決め打ち )  Cross fittingで残差計 算 sklearn.model_selectio n.cross_val_predictを利 用 残差は単純に引くだけ (binaryの場合は後述) 20
  21. 最後に残差on残差の回帰
 練 習 
  回帰
 MLモデルから算出さ れた残差を回帰してい るだけ  価格弾力性 回帰係数を確認すれ

    ばよい <注意> 価格弾力性というのは ちょっと例が悪かった これはあくまで全体の平均 効果(ちょっと非現実的) 21
  22. 練 習 
 x軸がtの残差 y軸がyの残差 これの回帰をしているだけ 22

  23. CATEも知りたい!!
 23

  24. Linear CATEモデル
 Linear CATEモデル: CATE算出法: CATE
 相互作用項を仕込めばよい 24

  25. Linear CATEモデル
 CATE
 25

  26. non-linear CATEモデル: CATE ~ 実は教師あり学習問題: non-linear CATEモデル
 CATE
 sample weight


    教師ラベル
 教師ありモデル
 26
  27. 教師あり学習の設定: V2 : 重み model_weight U/V : 教師ラベル cate_model_y モデルの推定値がそのままCATE

    cateそのものを推定するモデルになっ ているので、predictメソッドの値を cateとして使う non-linear CATEモデル
 CATE
 27
  28. (厳密な意味での原因でなくとも)なんでCATEモデルが以下のように判断したのかは気 になりますよね non-linear CATE モデルのWHYが知りたい
 CATE
 -40.97!!!
 -0.95!!!
 28

  29. SAHPを使うと便利
 CATE
 29

  30. 一言注意
 CATE
 どの特徴量がどの程度、 CATEに寄与しているか 可視化できますね 注意: ここで得られるCATEは、(本来非線形であったかもしれない)真のCATEに対して局所的な 線形近似を与えるようなもの。使い方には注意 30

  31. Tが2値変数だった場合
 介入する?しない?
 31

  32. Data set on financial wealth and 401(k) plan participation.
 2値

    
 論文: • Abadie, A. (2003), Semiparametric instrumental variable estimation of treatment response models. Journal of Econometrics, 113(2): 231-263. • Chernozhukov, V., Chetverikov, D., Demirer, M., Duflo, E., Hansen, C., Newey, W. and Robins, J. (2018), Double/debiased machine learning for treatment and structural parameters. The Econometrics Journal, 21: https://doi.org/10.1111/ectj.12097 データ: DoubleML(R)より https://rdrr.io/cran/DoubleML/src/R/datasets.R 説明: 1991年のSurvey of Income and Program Participation (SIPP)から抽出された9,915件の世帯レ ベルの観測値で構成 (すべての変数は1990年を基準) • e401 : 401kプランの参加資格有無 (介入変数) • net_tfa: 観察年数後の純資産 (アウトカム) 32
  33. Data set on financial wealth and 401(k) plan participation.
 2値

    
 e 401 資 産 X X X X X τ g() m() DAG 介入変数は二値変数 401kの権利が与えられているか (1)/否か(0) 33
  34. 残差は “T - model.predict_proba”それ以外は同じ
 2値 
 2値なのでClassifier ゼロ割防止のため、念のためclip predict_probaで出力 あとは今までと同じ

    34
  35. notebookを確認してみましょう
 35

  36. これを読んでください!!(参考文献)
 36 [メイン論文]
 • Chernozhukov , Victor, et al.: Double/Debiased

    Machine Learning for Treatment and Structural Parameters. The Econometrics Journal, Volume 21, 2018 https://academic.oup.com/ectj/article/21/1/C1/5056401
 [実 装]
 • EconML https://econml.azurewebsites.net/spec/estimation/dml.html
 • EconML issue https://github.com/microsoft/EconML/issues/534#event-5598568133
 [データ] • Causal Inference in the Wild: Elasticity Pricing(toward data science blog ) https://towardsdatascience.com/causal-inferenceexample-elasticity-de4a3e2e621b • 上記ブログのgithub https://github.com/larsroemheld/causalinf_ex_elasticity • DoubleML( Rパッケージ) https://rdrr.io/cran/DoubleML/src/R/datasets.R [解説スライド等] • Lester Mackey (2018) Orthogonal Machine Learning: Power and Limitations https://simons.berkeley.edu/sites/default/files/docs/10802/orthogonalml-slides.pdf • Chris Felton (2018) Chernozhukov et al. on Double / Debiased Machine Learning https://scholar.princeton.edu/sites/default/files/bstewart/files/felton.chern_.slides.20190318.pdf CATE系やSHAPの活用はほとんど EconMLのドキュメントから 
 とても良いが骨が折れる 
 入門解説
 元論文

  37. 直接関係ないけど、事前に読んだ方が良い本(ML出身向け)
 37 末石 直也 (2015)
 『計量経済学 ミクロデータ分析へのいざない』日本評論社
 
 • 機械学習界隈からこの世界(因果推論の世界)に入門すると、漸近理論と

    か知らない人が多い(僕もそうです)
 • 日本語で読めて、かつ計量経済学の文脈でしっかり説明してくれる教科書 だと末石先生のこの本が個人的にBESTでした
 • 特に以下の章は本当に面白い
 ◦ 第1章  線形回帰とOLS
 ◦ 第4章 行列表記と漸近理論
 ◦ 第5章  直交条件とGMM
 ◦ 第9章 ノンパラメトリック法
 • 〇〇法、XX法とかを調べ漁る前に、じっくり読んでみても損はないと思いま した(自戒を込めて書いてます!!)

  38. 以下、雑記
 38

  39. [補足] 本当にMLは n1/4-consistent ?
 39 • 上記のスライドで、適当に「MLをn1/4-consistent」としてました。 • 正確には、多くのMLモデルはn1/4-consistentと書いた方が正確(元論文もそう書いてあります) •

    実際には各モデル毎に、収束レートに関する考察等論文がでています。(が、もちろん全部終えていません!) 右図は冨岡(2015)第3章図3.4から借用 • Optimal: 真の非ゼロ変数を知った状態での 普通の回帰 • L1: L1正則化 • L2: L2正則化 予備知識あり/なしの違いが明確なので、「だから 何?」と思うかもしれませんが、収束レートのイ メージはこんな感じ。 スパース推定の収束レートの理論式は、冨岡 (2015) の第4章以降をご参考 => 冨岡亮太(2015)『スパース性に基づく機械学 習』講談社 [出典] https://github.com/ryotat/smlbook
  40. [補足] MLの収束レートに関する神資料 等
 40 • 鈴木大慈(2012)「統計的学習理論チュートリアル : 基礎から応用まで」 https://ibisml.org/archive/ibis2012/ibis2012-suzuki.pdf •

    鈴木大慈(2019)「深層学習の数理」p.111 https://www.slideshare.net/trinmu/ss-161240890 • [本論文でも紹介されてるやつ 1つピックアップ] Chen, X. and H. White (1999). Improved rates and asymptotic normality for nonparametric neural network estimators. IEEE Transactions on Information Theory 45, 682–91. https://www.researchgate.net/publication/3079737_Improved_Rates_and_Asymptotic_Normality_ for_Nonparametric_Neural_Network_Estimators • [用語解説] Donsker's theorem https://en.wikipedia.org/wiki/Donsker%27s_theorem