Upgrade to Pro — share decks privately, control downloads, hide ads and more …

[CFML勉強会#7] EconMLに実装されている異質処置効果の推定手法の紹介・再考

fullflu
January 15, 2023

[CFML勉強会#7] EconMLに実装されている異質処置効果の推定手法の紹介・再考

CFML勉強会 #7(https://cfml.connpass.com/event/264017/) で発表した資料を公開します。

異質性を持った処置効果を推定する手法について、EconMLで実装されている手法を中心にまとめました。
EconMLに実装されていない手法にもいくつか触れています。Double Machine Learningについては、理論的背景まで含めて詳しめに説明しています。

過去に公開したこちらの資料をアップデートしたものになります。
https://speakerdeck.com/fullflu/heterogeneous-treatment-effect-estimation-using-econml-double-machine-learning-doubly-robust-learning-and-meta-learners

fullflu

January 15, 2023
Tweet

More Decks by fullflu

Other Decks in Research

Transcript

  1. 自己紹介: 高山晃一 @fullflu 所属: 株式会社リクルート 職種: データサイエンティスト / 機械学習エンジニア https://fullflu.hatenablog.com/

    https://github.com/st-tech/zr-obp 因果推論ネタを中心にしたブログ執筆 (最近放置中) Open Bandit Project での開発 (〜2022年3月) 自社プロダクト改善 リクルートで推薦や検索のモデリン グ(On going & We’re hiring!!) https://twitter.com/fullflu 他には速習強化学習の翻訳をしたり、趣味でECMLのワークショップに論文を書いたり、OSSを作ったり・・・ 私自身のこと、あるいは仕事のことに興味をお持ちいただいたい方は Twitter のDMなどでご連絡ください! 2
  2. Overview • Heterogeneous Treatment Effect (HTE); 異質処置効果 ◦ 個体やサブグループごとに異なる処置効果のこと ◦

    経済学、医療、情報推薦などの様々な領域で注目を集めている • EconML: https://econml.azurewebsites.net/ ◦ 機械学習を使って、観察データから HTEを推定するための Python パッケージ ◦ マイクロソフトによって開発されていて、様々な推定手法が実装されている • 本発表のゴール: HTEの推定手法を整理し、分析者に地図を提供する ◦ EconMLのドキュメントや関連論文の情報を繋ぎ合わせる ◦ EconMLではカバーされていない手法の位置付けを整理する 3
  3. 想定読者 • 届いて欲しい人 ◦ EconMLやHTE推定のドキュメントや論文について理解したいが、自分でそれらを読むのはちょっと しんどいと思っている人 • お役に立てるか怪しい人 ◦ 発表タイトルに興味がない人(

    CFML勉強会なので0人?) ◦ 発表タイトルに興味がありすぎて研究上の正確な情報を求めている人(定理の証明や研究文脈で の位置付けなどの正確な情報までは提供できる自信がないです) 4
  4. 過去に公開した資料との差分 https://speakerdeck.com/fullflu/heterogeneous-treatment-effect-estimation-using-econml -double-machine-learning-doubly-robust-learning-and-meta-learners • 資料を三部構成に分解した • 第一部として、因果推論の基本的な説明を追加 • HTE推定手法のまとめを第二部として、手法に図 を追加して説明を丁寧に

    • ✅ Double Machine Learningの説明を第三部 に切り出す。この部分が盛大に勘違いしていたの で、大幅に修正(マニアックですが、結構いい感じ で整理できたと思います) ※ 今回の発表スライドも、あとで speakerdeck にupします 5
  5. 当日回答しきれなかった質問について [1] 勉強会当日の質疑で回答しきれなかった質問について、こちらで回答いたします • > DMLの g(x, w) は Y

    を予測しているのでしょうか? Y(0) なのでしょうか? Y=Tθ+g なのであれば、Y(0)なのかなと思いました ◦ Y(0) だと思います。Yを予測しているのは g ではなく q です(文字がわかりにくくてすみません) ◦ g の具体的な推定手法として、こちらの OSS では、Robinson-type PLR による推定結果を初期値として教師ありモデルで 推定しにいっています(なので、これは実質 3 段階推定みたいになっていると思います) https://github.com/DoubleML/doubleml-for-py/blob/main/doubleml/double_ml_plr.py#L234-L242 ◦ 他の推定手法も考えられそうですが、なぜこういう実装になっているのかは自分もわかっていないです • causalML と EconML のメリットデメリットはありますでしょうか ◦ 明確な EconML のメリットとしては、因果推論のためのフレームワークである Dowhy との結合が容易だということが挙げ られると思います。CausalML を調査しきれていないのでそれ以外の観点では曖昧な回答になってしまいますが、実装さ れている手法が一部異なっているので、片方でできることが片方ではできない、というのはあると思います。 6
  6. 当日回答しきれなかった質問について [2] 勉強会当日の質疑で回答しきれなかった質問について、こちらで回答いたします • > econml って実際に実務で用いられたことありますか? ◦ ないです!( EconML

    と似たような処理を sklearn を使って自分で書いていました) ◦ 今回の発表準備を経て、あの問題には使えたかもしれないな、と思う実務案件はいくつかありました • > 複数手法で異なった異質性の推定結果が得られた場合、各手法と適用した状況を深く理解していないと解釈が難しいと思った のですが、簡便に考える方法はございますか? ◦ 簡便な方法はなかなか思いつかないですが、例えば自分は以下のような観点で考えています : ▪ 交絡の問題 / モデル誤特定の問題 / 学習の問題(主にサンプルサイズ) を区別する ▪ interpreter や policy learner を使って、違和感のない結果になってるかを調べる ▪ 手法によっては、rscore やサブモデルの定量評価をする(モデル選択観点) 7
  7. 目次 • はじめに(5分) • 第1部: Heterogeneous Treatment Effect を推定するとは、どういうことか?( 7分)

    ◦ Treatment Effect とは何か ◦ Heterogeneous Treatment Effect の推定によって得られるアウトプットイメージ ◦ Treatment Effect を適切に推定するために必要な仮定 ◦ Notation(数学的な定義) • 第2部: Heterogeneous Treatment Effect の推定手法の概要( 12分) ◦ 従来の回帰分析 ◦ EconML にある手法: Meta Learners / Doubly Robust Learner / Double Machine Learning ◦ EconML にない手法: Marginal Structural Model / G-estimation / Targeted Learning / Counterfactual Regression • 第3部: Double Machine Learning の詳細解説(15分) ◦ 線形モデルと部分線形モデル ◦ モーメント法によるパラメータ推定 ◦ Double Machine Learning を用いた Heterogeneous Treatment Effect 推定 • まとめ 8
  8. 目次 • はじめに(5分) • 第1部: Heterogeneous Treatment Effect を推定するとは、どういうことか?( 7分)

    ◦ Treatment Effect とは何か ◦ Heterogeneous Treatment Effect の推定によって得られるアウトプットイメージ ◦ Treatment Effect を適切に推定するために必要な仮定 ◦ Notation(数学的な定義) • 第2部: Heterogeneous Treatment Effect の推定手法の概要( 12分) ◦ 従来の回帰分析 ◦ EconML にある手法: Meta Learners / Doubly Robust Learner / Double Machine Learning ◦ EconML にない手法: Marginal Structural Model / G-estimation / Targeted Learning / Counterfactual Regression • 第3部: Double Machine Learning の詳細解説(15分) ◦ 線形モデルと部分線形モデル ◦ モーメント法によるパラメータ推定 ◦ Double Machine Learning を用いた Heterogeneous Treatment Effect 推定 • まとめ 9
  9. Treatment Effect(処置効果)とは 処置変数の値を変化させたときの、 Outcome の変化の度合いのこと 処置変数 処置変数の値の変化 Outcomeの変化 広告配信有無 広告を打った場合

    vs 打たなかった場合 商品購入量の差分 商品の価格 1%の値上げ 商品購入量の変化率 (価格弾力性) 実社会の問題との対応例 処置効果が個体やサブグループごとに異なる場合、 Heterogeneous Treatment Effect (HTE) と呼ばれる 11
  10. Potential outcome framework X 年収 T 広告配信有無 Y 売上 1

    1 4 2 1 5 2 1 6 10 0 8 10 0 10 15 0 12 処置の値ごとの仮想的な outcome から処置効果を定義する Treatment Outcome Covariate 13
  11. Potential outcome framework X 年収 T 広告配信有無 Y 売上 Y(0)

    広告非配信時の売上 Y(1) 広告配信時の売上 1 1 4 2 4 2 1 5 3 5 2 1 6 4 6 10 0 8 8 10 10 0 10 10 12 15 0 12 12 14 処置の値ごとの仮想的な outcome から処置効果を定義する Treatment Outcome Potential outcomes Covariate 14
  12. Potential outcome framework X 年収 T 広告配信有無 Y 売上 Y(0)

    広告非配信時の売上 Y(1) 広告配信時の売上 1 1 4 2 4 2 1 5 3 5 2 1 6 4 6 10 0 8 8 10 10 0 10 10 12 15 0 12 12 14 処置の値ごとの仮想的な outcome から処置効果を定義する Treatment Outcome Potential outcomes Covariate < 処置変数 が2値の場合 > 処置効果 := Y(1) の期待値 - Y(0) の期待値 オレンジ平均 - 青平均 によって “処置効果は2だ” と推定できそう 15
  13. Potential outcome framework X 年収 T 広告配信有無 Y 売上 Y(0)

    広告非配信時の売上 Y(1) 広告配信時の売上 1 1 4 2 4 2 1 5 3 5 2 1 6 4 6 10 0 8 8 10 10 0 10 10 12 15 0 12 12 14 灰色部分の値は観測できないので、処置効果をデータから直接計算できない 😱 Treatment Outcome Potential outcomes Covariate < 処置変数 が2値の場合 > 処置効果 := Y(1) の期待値 - Y(0) の期待値 オレンジ平均 も 青平均 も データから直接計算できない! 観測 不可 観測 不可 16
  14. Potential outcome framework X 年収 T 広告配信有無 Y 売上 Y(0)

    広告非配信時の売上 Y(1) 広告配信時の売上 1 1 4 2 4 2 1 5 3 5 2 1 6 4 6 10 0 8 8 10 10 0 10 10 12 15 0 12 12 14 配信群と非配信群の outcome の差分を処置効果とする? → 今回のデータではダメそう 😇 Treatment Outcome Potential outcomes Covariate “処置効果は -5” !? 平均 - 平均 = -5 観測 不可 観測 不可 17
  15. Potential outcome framework X 年収 T 広告配信有無 Y 売上 Y(0)

    広告非配信時の売上 Y(1) 広告配信時の売上 1 1 4 2 4 2 1 5 3 5 2 1 6 4 6 10 0 8 8 10 10 0 10 10 12 15 0 12 12 14 配信群と非配信群の outcome の差分を処置効果とする? → 今回のデータではダメそう 😇 Treatment Outcome Potential outcomes Covariate “処置効果は -5” !? 平均 - 平均 = -5 処置とoutcomeの両方に影響する変数Xによるバイアス 疫学では 交絡、経済学では セレクションバイアス と呼ばれる 18
  16. Treatment Effect を適切に推定するにあたっての壁 処置と outcome の両方に影響を及ぼす変数が存在するとき、 “処置と outcome の関連”と “処

    置効果” の間にはバイアスが発生することがある この現象は疫学では交絡と呼ばれ、経済学ではセレクションバイアスと呼ばれる 処置T 広告配信有無 Covariate X 年収 Outcome Y 売上 年収が高い人ほど 売上が大きい 年収が低い人ほど 広告が配信されやすい 処置効果: 広告配信により売上は増える 関連: 広告配信群の方が売上が小さい 19
  17. Treatment Effect を適切に推定するにあたっての壁 処置効果をデータからバイアスなく推定することを阻む壁は数多く存在する 😱 • No confounding: 調整されていない交絡がないこと •

    No selection bias: 合流点で変数を調整していないこと • No measurement bias: 測定誤差がないこと • Positivity: common supportの存在 • No interference between units: 処置群と対象群の間で相互作用がないこと • Consistency: 処置にバリエーションがないこと • No model misspecification: モデルを使う場合、誤特定が発生していないこと ※ 操作変数法やフロントドア基準を使う場合は仮定が異なるが今回は割愛。詳細はこちら: https://www.hsph.harvard.edu/miguel-hernan/causal-inference-book/ 20
  18. 実験をするか、観察データを使うか 実験でバイアスの多くを除去できるが、コストがかかる & 実験が不可能なこともある メリット✅ デメリット❌ ランダム化比較実験を 伴う処置効果推定 必要な仮定を満たしたデータを取得できる可 能性が高く、

    推定の妥当性が高い 実験実施に コストがかかる 場合や、倫理的・ 物理的に実験が不可能な場合がある 観察データからの 処置効果推定 実験を行う場合と比べて、 データを低コスト で取得できる 必要な仮定の妥当性を保証することが難しく 、 基本的にはドメイン知識とモデルチェックなど から総合的に妥当性を判断するしかない *1 *1 部分識別の概念を使うと、仮定と推定結果の区間を対応させることが可能になるが、意思決定支援の場で幅広く活用されるにはまだハードルが高いと感じている 22
  19. 実験をするか、観察データを使うか EconML、ならびに本発表は観察データからの処置効果推定にフォーカスし、 “モデルの誤特定” 以外の仮定はすべて満たされているという前提で話を進める メリット✅ デメリット❌ ランダム化比較実験を 伴う処置効果推定 必要な仮定を満たしたデータを取得できる可 能性が高く、

    推定の妥当性が高い 実験実施に コストがかかる 場合や、倫理的・ 物理的に実験が不可能な場合がある 観察データからの 処置効果推定 実験を行う場合と比べて、 データを低コスト で取得できる 必要な仮定の妥当性を保証することが難しく 、 基本的にはドメイン知識とモデルチェックなど から総合的に妥当性を判断するしかない *1 *1 部分識別の概念を使うと、仮定と推定結果の区間を対応させることが可能になるが、意思決定支援の場で幅広く活用されるにはまだハードルが高いと感じている 23
  20. 目次 • はじめに(5分) • 第1部: Heterogeneous Treatment Effect を推定するとは、どういうことか?( 7分)

    ◦ Treatment Effect とは何か ◦ Heterogeneous Treatment Effect の推定によって得られるアウトプットイメージ ◦ Treatment Effect を適切に推定するために必要な仮定 ◦ Notation(数学的な定義) • 第2部: Heterogeneous Treatment Effect の推定手法の概要( 12分) ◦ 従来の回帰分析 ◦ EconML にある手法: Meta Learners / Doubly Robust Learner / Double Machine Learning ◦ EconML にない手法: Marginal Structural Model / G-estimation / Targeted Learning / Counterfactual Regression • 第3部: Double Machine Learning の詳細解説(15分) ◦ 線形モデルと部分線形モデル ◦ モーメント法によるパラメータ推定 ◦ Double Machine Learning を用いた Heterogeneous Treatment Effect 推定 • まとめ 26
  21. 第2部のゴール: HTE推定手法の理解 ・EconML に実装されている HTE の推定手法の概要がわかる(Double Machine Learning の詳細は第3部) ・EconML

    を使って HTE の推定を行いたいときに、手法間のメリデメや使い分け方がク リアにわかる ・EconML に実装されている手法と、実装されていない手法との関係性がなんとなくわ かる 27
  22. 従来の回帰分析 線形回帰モデルに交互作用項を加えることで、 marginal CATE を推定する • 線形モデルが正しいと仮定し、 θ のOLS推定量を ∂τ(t,

    x) の推定量とする (ATE推定) • 以下の交互作用項つきモデルが正しいと仮定し、 OLSで得られた を ∂τ(t, x) の推定量とする (constant marginal CATE推定) 29
  23. 従来の回帰分析 線形回帰モデルに交互作用項を加えることで、 marginal CATE を推定する • 線形モデルが正しいと仮定し、 θ のOLS推定量を ∂τ(t,

    x) の推定量とする (ATE推定) • 以下の交互作用項つきモデルが正しいと仮定し、 OLSで得られた を ∂τ(t, x) の推定量とする (constant marginal CATE推定) ✅ HTE推定の初手として、従来の線形回帰モデルの推定結果を使うのは good ❌ モデルの表現力は poor であり、結果にバイアスが乗っているかも。表現力の高いモデルを検討しよう 30
  24. MetaLearners 答えられる問いを限定しつつも、 CATEの点推定に特化して表現力を高めた手法である • 利用シーン(答えられる問い)が限定されている ◦ “処置変数が離散のとき” & “興味のないcovariate Wが存在しないとき”

    しか使えない ◦ 一般にvalidな信頼区間を得ることはできない(Bootstrap を使って信頼区間を出すことは可能) • 手法はいくつか存在 ◦ S-Learner: XとTからYを予測する任意のモデルを作って差分をとるだけ ◦ T-Learner: Tの値ごとにXからYを予測する任意のモデルを作って差分をとるだけ ◦ X-Learner, Domain-Adaptation Learner: モデルやCATEの計算式を少し工夫したもの 32
  25. MetaLearners [参考] S-Learner の概要図 table of {X, T, Y} 学習

    推論 (x, t0, t1) 予測 任意のMLモデル τ(x, t0, t1) = g(x, t1) - g(x, t0) g: X, T → Y 33
  26. MetaLearners 答えられる問いを限定しつつも、 CATEの点推定に特化して表現力を高めた手法である • 利用シーン(答えられる問い)が限定されている ◦ “処置変数が離散のとき” & “興味のないcovariate Wが存在しないとき”

    しか使えない ◦ 一般にvalidな信頼区間を得ることはできない(Bootstrap を使って信頼区間を出すことは可能) • 手法はいくつか存在 ◦ S-Learner: XとTからYを予測する任意のモデルを作って差分をとるだけ ◦ T-Learner: Tの値ごとにXからYを予測する任意のモデルを作って差分をとるだけ ◦ X-Learner, Domain-Adaptation Learner: モデルやCATEの計算式を少し工夫したもの ✅ 手法も理論もシンプルであり、限定された利用シーンの中で予測精度が欲しい場合は good ❌ 利用シーンを拡大したい場合は、表現力を少し犠牲にした他の手法を検討 34
  27. Doubly Robust Learner; DRL 2段階推定を行うことで MetaLearners の利用シーンを拡大(離散処置の制約は残る) • 1段階目の推定をcross-fitting(後述)によって実施し、交絡の問題に対処(MetaLearnersとほぼ同じ) ◦

    X, W, TからYを予測する任意のモデルを作成し、処置 tにおける予測値を g_t(Xi, Wi) とする(S-Learnerと類似) ◦ X, WからTを予測するモデルを作成し、処置 tをとる確率を f_t(Xi, Wi) とする ◦ i番目のデータが処置 tのもとでとるであろう Potential outcome を以下のように予測 (Doubly Robust) 35
  28. Doubly Robust Learner; DRL 2段階推定を行うことで MetaLearners の利用シーンを拡大(離散処置の制約は残る) • 1段階目の推定をcross-fitting(後述)によって実施し、交絡の問題に対処(MetaLearnersとほぼ同じ) ◦

    X, W, TからYを予測する任意のモデルを作成し、処置 tにおける予測値を g_t(Xi, Wi) とする(S-Learnerと類似) ◦ X, WからTを予測するモデルを作成し、処置 tをとる確率を f_t(Xi, Wi) とする ◦ i番目のデータが処置 tのもとでとるであろう Potential outcome を以下のように予測 (Doubly Robust) • 2段階目でfinal modelを作成し、Xごとの処置効果を推定 ◦ 処置tごとに を Xi に回帰するモデルを作成することで、 CATEである τ(x, 0, t) を直接推定 ◦ 2段階目の回帰モデル作成時に利用する推定手法を制限する (線形回帰、あるいは Honest Forest を使ったノンパラ回帰)こ とで、推定量の漸近正規性や信頼区間の有効性を保証できる W(興味のない変数)の影響を周辺化 36
  29. 37 [参考] 2-fold DRL の概要図 τ(x, 0, t) table of

    {X, t, Y_DR} table of {X, t, Y_DR} table of {X, W, t, Y} table of {X, W, t, Y} DRLの概要図 学習 1段階目 学習 2段階目 任意のMLモデル g: X, W, T -> Y f: X, W -> T table of {X, W, T, Y} table of {X, W, T, Y} g: X, W, T -> Y f: X, W -> T tごとに予測 tごとに予測 table of {X, Y_(t)^{DR}} table of {X, Y_(t)^{DR}} cross-fiting τ(x, 0, t) table of {X, W, t, Y} 処置の水準 t ごと にデータを複製 table of {X, W, t, Y} 処置の水準 t ごと にデータを複製 処置の水準数だけ 以下のテーブルを作成 … … … … 処置の水準 t ごとに CATEモデルを学習 を をx に回帰するモデルができるので、推論時には x と t を入力するだけでよい Wの影響を周辺化
  30. 38 [参考] 2-fold DRL の概要図 τ(x, 0, t) table of

    {X, t, Y_DR} table of {X, t, Y_DR} table of {X, W, t, Y} table of {X, W, t, Y} DRLの概要図 学習 1段階目 学習 2段階目 任意のMLモデル g: X, W, T -> Y f: X, W -> T table of {X, W, T, Y} table of {X, W, T, Y} g: X, W, T -> Y f: X, W -> T tごとに予測 tごとに予測 table of {X, Y_(t)^{DR}} table of {X, Y_(t)^{DR}} cross-fiting τ(x, 0, t) table of {X, W, t, Y} 処置の水準 t ごと にデータを複製 table of {X, W, t, Y} 処置の水準 t ごと にデータを複製 処置の水準数だけ 以下のテーブルを作成 … … … … 処置の水準 t ごとに CATEモデルを学習 を をx に回帰するモデルができるので、推論時には x と t を入力するだけでよい Wの影響を周辺化
  31. 39 [参考] 2-fold DRL の概要図 τ(x, 0, t) table of

    {X, t, Y_DR} table of {X, t, Y_DR} table of {X, W, t, Y} table of {X, W, t, Y} DRLの概要図 学習 1段階目 学習 2段階目 任意のMLモデル g: X, W, T -> Y f: X, W -> T table of {X, W, T, Y} table of {X, W, T, Y} g: X, W, T -> Y f: X, W -> T tごとに予測 tごとに予測 table of {X, Y_(t)^{DR}} table of {X, Y_(t)^{DR}} cross-fiting τ(x, 0, t) table of {X, W, t, Y} 処置の水準 t ごと にデータを複製 table of {X, W, t, Y} 処置の水準 t ごと にデータを複製 処置の水準数だけ 以下のテーブルを作成 … … … … 処置の水準 t ごとに CATEモデルを学習 を をx に回帰するモデルができるので、推論時には x と t を入力するだけでよい Wの影響を周辺化
  32. 40 [参考] 2-fold DRL の概要図 τ(x, 0, t) table of

    {X, t, Y_DR} table of {X, t, Y_DR} table of {X, W, t, Y} table of {X, W, t, Y} DRLの概要図 学習 1段階目 学習 2段階目 任意のMLモデル g: X, W, T -> Y f: X, W -> T table of {X, W, T, Y} table of {X, W, T, Y} g: X, W, T -> Y f: X, W -> T tごとに予測 tごとに予測 table of {X, Y_(t)^{DR}} table of {X, Y_(t)^{DR}} cross-fiting τ(x, 0, t) table of {X, W, t, Y} 処置の水準 t ごと にデータを複製 table of {X, W, t, Y} 処置の水準 t ごと にデータを複製 処置の水準数だけ 以下のテーブルを作成 … … … … 処置の水準 t ごとに CATEモデルを学習 を をx に回帰するモデルができるので、推論時には x と t を入力するだけでよい Wの影響を周辺化
  33. Doubly Robust Learner; DRL 2段階推定を行うことで MetaLearners の利用シーンを拡大(離散処置の制約は残る) • 1段階目の推定をcross-fitting(後述)によって実施し、交絡の問題に対処(MetaLearnersとほぼ同じ) ◦

    X, W, TからYを予測する任意のモデルを作成し、処置 tにおける予測値を g_t(Xi, Wi) とする(S-Learnerと類似) ◦ X, WからTを予測するモデルを作成し、処置 tをとる確率を f_t(Xi, Wi) とする ◦ i番目のデータが処置 tのもとでとるであろう Potential outcome を以下のように予測 (Doubly Robust) • 2段階目でfinal modelを作成し、Xごとの処置効果を推定 ◦ 処置tごとに を Xi に回帰するモデルを作成することで、 CATEである τ(x, 0, t) を直接推定 ◦ 2段階目の回帰モデル作成時に利用する推定手法を制限する (線形回帰、あるいは Honest Forest を使ったノンパラ回帰)こ とで、推定量の漸近正規性や信頼区間の有効性を保証できる ✅ MetaLearnersで諦めていた、Wがある場合や信頼区間を構築したい場合も扱えるように ❌ 連続の処置変数は扱えない。特定の処置確率が小さい (X,W) の領域がある場合は分散が大きくなる W(興味のない変数)の影響を周辺化 41
  34. Double Machine Learning; DML 2段階推定の枠組みを抽象化することで、多くの問題を柔軟に扱うことが可能に • 元論文で定義されたDMLとは、以下の一連の条件を満たした推定手法だと解釈できる(詳細は後述) ◦ モデルのクラスを適切に設定した上で、 ◦

    1段階目のモデルを cross-fittingしながら任意の手法で構築し、 ◦ 2段階目でネイマン直交条件を満たすスコア関数の零点を求めることで処置効果やその信頼区間を推定すること • 特徴 ◦ モデルが誤特定されていなければ基本的には推定結果が √n-consistent である ◦ 推定手法のバリエーションは豊富で、スコア関数、モデルのクラス、 2段階目のアルゴリズムなどを選択する必要がある(モデ ルについてはDRLと同様に、線形回帰あるいは Honest Forest を使ったノンパラ回帰が有名) ✅ 処置変数が連続の場合でも、比較的表現力の高いモデルを使い HTE の信頼区間を効率良く推定できる ❌ 使えるモデルが少し制限されている。手法の種類が多く選択に迷う。理論の抽象度が高く難しい 42
  35. Double Machine Learning; DML 2段階推定の枠組みを抽象化することで、多くの問題を柔軟に扱うことが可能に • 元論文で定義されたDMLとは、以下の一連の条件を満たした推定手法だと解釈できる(詳細は後述) ◦ モデルのクラスを適切に設定した上で、 ◦

    1段階目のモデルを cross-fittingしながら任意の手法で構築し、 ◦ 2段階目でネイマン直交条件を満たすスコア関数の零点を求めることで処置効果やその信頼区間を推定すること • 特徴 ◦ モデルが誤特定されていなければ基本的には推定結果が √n-consistent である ◦ 推定手法のバリエーションは豊富で、スコア関数、モデルのクラス、 2段階目のアルゴリズムなどを選択する必要がある(モデ ルについてはDRLと同様に、線形回帰あるいは Honest Forest を使ったノンパラ回帰が有名) ✅ 処置変数が連続の場合でも、比較的表現力の高いモデルを使い HTE の信頼区間を効率良く推定できる ❌ 使えるモデルが少し制限されている。手法の種類が多く選択に迷う。理論の抽象度が高く難しい 第3部で詳しく説明するのでここでは割愛 (EconMLでは右のような部分線形モデルが仮定されている) 43
  36. EconML周りのHTE推定手法のまとめ ✅ HTE推定の初手として、従来の線形回帰モデルの推定結果を使うのは good ❌ モデルの表現力は poor であり、結果にバイアスが乗っているかも。表現力の高いモデルを検討しよう ✅ 手法も理論もシンプルであり、限定された利用シーンの中で予測精度が欲しい場合は

    good ❌ 利用シーンを拡大したい場合は、表現力を少し犠牲にした他の手法を検討 ✅ MetaLearnersで諦めていた、Wがある場合や信頼区間を構築したい場合も扱えるように ❌ 連続の処置変数は扱えない。特定の処置確率が小さい (X,W) の領域がある場合は分散が大きくなる 従来の回帰分析。 EconMLには実装されていないが、 statsmodelsで簡単に実装可能 MetaLearners。EconMLで実装済み Doubly Robust Learner。EconMLで実装済み Double Machine Learning。EconMLで実装済み ✅ 処置変数が連続の場合でも、比較的表現力の高いモデルを使い HTE の信頼区間を効率良く推定できる ❌ 使えるモデルが少し制限されている。手法の種類が多く選択に迷う。理論の抽象度が高く難しい 44
  37. 補足: EconMLで触れられていないその他の手法(疫学) 2段階目のモデルを線形にしたDLR/DMLと似ている • Marginal Structural Model ◦ Potential outcome

    を X から直接予測する 形で周辺化されたモデリングを行う ◦ Covariate と outcome の関係性についてのモデリングは不要というメリットがあり、その意味では2段階目のモデルを 線形にした場合の DRL/DML と似ているようにも思える ◦ 詳細は Causal inference book (*1) や 自分が以前書いたブログ (*2) を参照 • G-estimation with Structural Nested Mean Model ◦ Potential outcome の差分を X から直接予測する 形のモデリングを行う ◦ メリットや DLR/DML との類似性についてはMarginal Structural Modelと同様のものがある ◦ 詳細は Causal inference book (*1) や 自分が以前書いたブログ (*3) を参照 *1 https://www.hsph.harvard.edu/miguel-hernan/causal-inference-book/ *2 https://fullflu.hatenablog.com/entry/2020/08/15/ip-wls , *3 https://fullflu.hatenablog.com/entry/2020/08/30/g-estimation-equation 45
  38. 補足: EconMLで触れられていないその他の手法(機械学習) 本来は比較が必要そうだが、発表者自身が細かいところまで読めていないので詳細は割愛 • Targeted Learning / Targeted MLE a.k.a.

    TMLE (*1) ◦ 1段階目のMLモデルで “clever covariate” を作り、2段階目のモデルでパラメータを推定する ◦ Doubly Robust Learner と似ているように感じたが、TMLEが提案されたのは2006年なので、むしろEconML側が なぜTMLEをスルーしているのかが不明(CausalML というライブラリでは実装されている) • Counterfactual Regression (*2) ◦ 複雑なMLモデルで個体ごとの potential outcome を予測するモデル を構築する ◦ 予測誤差についてのバウンドは出しているが、パラメータの信頼区間推定についての理論保証はついていなそうの で、あくまで予測が目的であり advanced な Meta Learners という位置付けに思える *1 https://link.springer.com/book/10.1007/978-1-4419-9782-1 , *2 https://arxiv.org/abs/1606.03976 46
  39. [再掲] 第2部のゴール: HTE推定手法の理解 ・EconML に実装されている HTE の推定手法の概要がわかる(Double Machine Learning の詳細は第3部)

    ・EconML を使って HTE の推定を行いたいときに、手法間のメリデメや使い分け方がク リアにわかる ・EconML に実装されている手法と、実装されていない手法との関係性がなんとなくわ かる 47
  40. 目次 • はじめに(5分) • 第1部: Heterogeneous Treatment Effect を推定するとは、どういうことか?( 7分)

    ◦ Treatment Effect とは何か ◦ Heterogeneous Treatment Effect の推定によって得られるアウトプットイメージ ◦ Treatment Effect を適切に推定するために必要な仮定 ◦ Notation(数学的な定義) • 第2部: Heterogeneous Treatment Effect の推定手法の概要( 12分) ◦ 従来の回帰分析 ◦ EconML にある手法: Meta Learners / Doubly Robust Learner / Double Machine Learning ◦ EconML にない手法: Marginal Structural Model / G-estimation / Targeted Learning / Counterfactual Regression • 第3部: Double Machine Learning の詳細解説(15分) ◦ 線形モデルと部分線形モデル ◦ モーメント法によるパラメータ推定 ◦ Double Machine Learning を用いた Heterogeneous Treatment Effect 推定 • まとめ 48
  41. 線形モデルと部分線形モデル 部分線形モデル(Partially Linear Model; PLR)は、線形モデルより表現力が高い • 線形モデル *1 • 部分線形モデル:

    興味のないXやWについてはノンパラなgでモデリング *1 ここからしばらく、 CATEではなくATEの推定に問題を単純化する。 つまり、XもWも、その効果の異質性について興味がない変数とする 50
  42. 部分線形モデルにおける naive なパラメータ推定 誤差と処置変数についてのnaiveな(線形回帰モデルで使った)モーメント条件を考えてみる • 部分線形モデル: 興味のないXやWについてはノンパラなgでモデリング • Naiveなモーメント条件: •

    gの推定量が適当なML手法によって与えられたとき、θの推定量は、モーメント条件を経験近似して 以下のように計算できる(naive PLR と呼ぶ) ※ 論文では「これがnaiveなMLアプローチに基づく推定量だ」と言っている(確かにnaiveだが、文脈を追ってないとよくわからなくなる) 56
  43. 部分線形モデルにおける Robinson の手法の位置付け Robinsonの手法は、操作変数法的なモーメント条件の経験近似の亜種と解釈できる • 部分線形モデル: 興味のないXやWについてはノンパラなgでモデリング • TとYをXとWから予測するモデル(それぞれ f,

    q とする)が与えられたとき、θの推定量は以下のよう に計算できる。Robinson-type PLR と呼ぶ(✅ g より q を推定する方が簡単) モーメント条件 Robinsonの変換 ※ 「EconMLはRobinsonの変換を使ったDMLのみを実装していて、DMLには他の形も存在する」という点に注意! ※ εの代入にこの式を使う 64
  44. 関連手法を表にまとめる(スコア関数以外) 共通点 naive PLR IV-type PLR Robinson-type PLR DML of

    EconML DML モデル 自由( η と θ は区別されて いる ) 1段階目 g を推定 f と g を推定 f と E[Y|X, W] を 推定 f と E[Y|X, W] を cross-fittingで推定 η をcross-fittingで推定 スコア関数 ψ 次のスライドで説明 備考 正則化バイアス 過学習バイアス 過学習バイアス 過学習バイアス θ(X) は低次元線形回帰、 スパース線形回帰、 Honest-forest ベースのノン パラ回帰などの制限あり モデルに一定の制約を置 かないと、θ の 推定量の信 頼区間がinvalidになる 66
  45. PLRの3手法はほぼ同じで、naive だけ正則化バイアスが存在 共通点 naive PLR IV-type PLR Robinson-type PLR DML

    of EconML DML モデル 自由( η と θ は区別されて いる ) 1段階目 g を推定 f と g を推定 f と E[Y|X, W] を 推定 f と E[Y|X, W] を cross-fittingで推定 η をcross-fittingで推定 スコア関数 ψ 次のスライドで説明 備考 正則化バイアス 過学習バイアス 過学習バイアス 過学習バイアス θ(X) は低次元線形回帰、 スパース線形回帰、 Honest-forest ベースのノン パラ回帰などの制限あり モデルに一定の制約を置 かないと、θ の 推定量の信 頼区間がinvalidになる PLRの3手法 67
  46. Robinson-type PLRと DML of EconMLは、HTEの考慮以外ほぼ同じ 共通点 naive PLR IV-type PLR

    Robinson-type PLR DML of EconML DML モデル 自由( η と θ は区別されて いる ) 1段階目 g を推定 f と g を推定 f と E[Y|X, W] を 推定 f と E[Y|X, W] を cross-fittingで推定 η をcross-fittingで推定 スコア関数 ψ 次のスライドで説明 備考 正則化バイアス 過学習バイアス 過学習バイアス 過学習バイアス θ(X) は低次元線形回帰、 スパース線形回帰、 Honest-forest ベースのノン パラ回帰などの制限あり モデルに一定の制約を置 かないと、θ の 推定量の信 頼区間がinvalidになる HTEの考慮、すなわちθ(X) の構造を考えているところが一番の違い! 68
  47. DMLはPLRのバイアスに対処している & 自由度が高い 共通点 naive PLR IV-type PLR Robinson-type PLR

    DML of EconML DML モデル 自由( η と θ は区別されて いる ) 1段階目 g を推定 f と g を推定 f と E[Y|X, W] を 推定 f と E[Y|X, W] を cross-fittingで推定 η をcross-fittingで推定 スコア関数 ψ 次のスライドで説明 備考 正則化バイアス 過学習バイアス 過学習バイアス 過学習バイアス θ(X) は低次元線形回帰、 スパース線形回帰、 Honest-forest ベースのノン パラ回帰などの制限あり モデルに一定の制約を置 かないと、θ の 推定量の信 頼区間がinvalidになる PLRのバイアス 自由度の高さ 69
  48. 関連手法を表にまとめる(スコア関数) 共通点 naive PLR IV-type PLR Robinson-type PLR DML of

    EconML DML モデル 自由( η と θ は区別されて いる ) 1段階目 g を推定 f と g を推定 f と E[Y|X, W] を 推定 f と E[Y|X, W] を cross-fittingで推定 η をcross-fittingで推定 スコア関数 ψ 70
  49. 共通点 naive PLR IV-type PLR Robinson-type PLR DML of EconML

    DML モデル 自由( η と θ は区別されて いる ) 1段階目 g を推定 f と g を推定 f と E[Y|X, W] を 推定 f と E[Y|X, W] を cross-fittingで推定 η をcross-fittingで推定 スコア関数 ψ 処置モデルの有無 関連手法を表にまとめる(スコア関数) 71
  50. 共通点 naive PLR IV-type PLR Robinson-type PLR DML of EconML

    DML モデル 自由( η と θ は区別されて いる ) 1段階目 g を推定 f と g を推定 f と E[Y|X, W] を 推定 f と E[Y|X, W] を cross-fittingで推定 η をcross-fittingで推定 スコア関数 ψ 残差の活用有無 関連手法を表にまとめる(スコア関数) 72
  51. 関連手法を表にまとめる(スコア関数) 共通点 naive PLR IV-type PLR Robinson-type PLR DML of

    EconML DML モデル 自由( η と θ は区別されて いる ) 1段階目 g を推定 f と g を推定 f と E[Y|X, W] を 推定 f と E[Y|X, W] を cross-fittingで推定 η をcross-fittingで推定 スコア関数 ψ HTEの有無 73
  52. スコア関数の選択についてもDMLの自由度は高い 共通点 naive PLR IV-type PLR Robinson-type PLR DML of

    EconML DML モデル 自由( η と θ は区別されて いる ) 1段階目 g を推定 f と g を推定 f と E[Y|X, W] を 推定 f と E[Y|X, W] を cross-fittingで推定 η をcross-fittingで推定 スコア関数 ψ naive PLR以外は DMLの条件を満たす 74
  53. DML は自由度が高い手法であり、EconML の DML はその実装を提供する 共通点 naive PLR IV-type PLR

    Robinson-type PLR DML of EconML DML モデル 自由( η と θ は区別されて いる ) 1段階目 g を推定 f と g を推定 f と E[Y|X, W] を 推定 f と E[Y|X, W] を cross-fittingで推定 η をcross-fittingで推定 スコア関数 ψ DMLの(ネイマン直交)条件を満たす特定の式 備考 正則化バイアス 過学習バイアス 過学習バイアス 過学習バイアス θ(X) は低次元線形回帰、 スパース線形回帰、 Honest-forest ベースのノン パラ回帰などの制限あり モデルに一定の制約を置 かないと、θ の 推定量の信 頼区間がinvalidになる いくつかの実装 75
  54. EconMLのドキュメントには、DMLの定義が正しく紹介されていない・・? 共通点 naive PLR IV-type PLR Robinson-type PLR DML of

    EconML DML モデル 自由( η と θ は区別されて いる ) 1段階目 g を推定 f と g を推定 f と E[Y|X, W] を 推定 f と E[Y|X, W] を cross-fittingで推定 η をcross-fittingで推定 スコア関数 ψ DMLの(ネイマン直交)条件を満たす特定の式 備考 正則化バイアス 過学習バイアス 過学習バイアス 過学習バイアス θ(X) は低次元線形回帰、 スパース線形回帰、 Honest-forest ベースのノン パラ回帰などの制限あり モデルに一定の制約を置 かないと、θ の 推定量の信 頼区間がinvalidになる これがDMLとして紹介されている 76
  55. 目次 • はじめに(5分) • 第1部: Heterogeneous Treatment Effect を推定するとは、どういうことか?( 7分)

    ◦ Treatment Effect とは何か ◦ Heterogeneous Treatment Effect の推定によって得られるアウトプットイメージ ◦ Treatment Effect を適切に推定するために必要な仮定 ◦ Notation(数学的な定義) • 第2部: Heterogeneous Treatment Effect の推定手法の概要( 12分) ◦ 従来の回帰分析 ◦ EconML にある手法: Meta Learners / Doubly Robust Learner / Double Machine Learning ◦ EconML にない手法: Marginal Structural Model / G-estimation / Targeted Learning / Counterfactual Regression • 第3部: Double Machine Learning の詳細解説(15分) ◦ 線形モデルと部分線形モデル ◦ モーメント法によるパラメータ推定 ◦ Double Machine Learning を用いた Heterogeneous Treatment Effect 推定 • まとめ 78
  56. [再掲] EconMLを使う場合のHTE推定手法のまとめ ✅ HTE推定の初手として、従来の線形回帰モデルの推定結果を使うのは good ❌ モデルの表現力は poor であり、結果にバイアスが乗っているかも。表現力の高いモデルを検討しよう ✅

    手法も理論もシンプルであり、限定された利用シーンの中で予測精度が欲しい場合は good ❌ 利用シーンを拡大したい場合は、表現力を少し犠牲にした他の手法を検討 ✅ MetaLearnersで諦めていた、Wがある場合や信頼区間を構築したい場合も扱えるように ❌ 連続の処置変数は扱えない。特定の処置確率が小さい (X,W) の領域がある場合は分散が大きくなる 従来の回帰分析。 EconMLには実装されていないが、 statsmodelsで簡単に実装可能 MetaLearners。EconMLで実装済み Doubly Robust Learner。EconMLで実装済み Double Machine Learning。EconMLで実装済み ✅ 処置変数が連続の場合でも、比較的表現力の高いモデルを使い HTE の信頼区間を効率良く推定できる ❌ 使えるモデルが少し制限されている。手法の種類が多く選択に迷う。理論の抽象度が高く難しい 79
  57. [再掲] DML は自由度が高い手法であり、EconML の DML はその実装を提供 共通点 naive PLR IV-type

    PLR Robinson-type PLR DML of EconML DML モデル 自由( η と θ は区別されて いる ) 1段階目 g を推定 f と g を推定 f と E[Y|X, W] を 推定 f と E[Y|X, W] を cross-fittingで推定 η をcross-fittingで推定 スコア関数 ψ DMLの(ネイマン直交)条件を満たす特定の式 備考 正則化バイアス 過学習バイアス 過学習バイアス 過学習バイアス θ(X) は低次元線形回帰、 スパース線形回帰、 Honest-forest ベースのノン パラ回帰などの制限あり モデルに一定の制約を置 かないと、θ の 推定量の信 頼区間がinvalidになる いくつかの実装 80
  58. Reference • Double/Debiased Machine Learning for Treatment and Causal Parameters:

    https://arxiv.org/abs/1608.00060 • EconML: https://econml.azurewebsites.net/index.html • DoubleML: https://docs.doubleml.org/stable/index.html • Causal inference book: https://www.hsph.harvard.edu/miguel-hernan/causal-inference-book/ • Targeted Learning: https://link.springer.com/book/10.1007/978-1-4419-9782-1 • Counterfactual Regression: https://arxiv.org/abs/1606.03976 • 自分のブログ: https://fullflu.hatenablog.com/entry/2020/08/15/ip-wls , https://fullflu.hatenablog.com/entry/2020/08/30/g-estimation-equation 82
  59. Potential outcome framework X 年収 T 広告配信有無 Y 売上 Y(0)

    広告非配信時の売上 Y(1) 広告配信時の売上 1 1 4 2 4 2 1 5 3 5 2 1 6 4 6 10 0 8 8 10 10 0 10 10 12 15 0 12 12 14 配信群と非配信群の outcome の差分を処置効果とする? → 今回のデータではダメそう 😇 Treatment Outcome Potential outcomes Covariate “処置効果は -5” !? 平均 - 平均 = -5 観測 不可 観測 不可 84
  60. Treatment Effect を適切に推定するために必要な仮定 処置と outcome の両方に影響を及ぼす変数が存在するとき、 “処置と outcome の関連”と “処

    置効果” の間にはバイアスが発生することがある この現象は疫学では交絡と呼ばれ、経済学ではセレクションバイアスと呼ばれる 処置T 広告配信有無 Covariate X 年収 Outcome Y 売上 年収が高い人ほど 売上が大きい 年収が低い人ほど 広告が配信されやすい 処置効果: 広告配信により売上は増える 関連: 広告配信群の方が売上が小さい 85
  61. Potential outcome framework X 年収 T 広告配信有無 Y 売上 Y(0)

    広告非配信時の売上 Y(1) 広告配信時の売上 1 1 4 2 4 2 1 5 3 5 2 1 6 4 6 10 0 8 8 10 10 0 10 10 12 15 0 12 12 14 配信群と非配信群の outcome の差分を処置効果とする? → 今回のデータではダメそう 😇 Treatment Outcome Potential outcomes Covariate “処置効果は -5” !? 平均 - 平均 = -5 処置とoutcomeの両方に影響する変数Xによるバイアス 疫学では 交絡、経済学では セレクションバイアス と呼ばれる 86
  62. DMLの詳細解説 部分線形モデルにも細かいカスタマイズは可能である • X: featulizerを指定することで、Xを多項式変換した上でCATEの推定を行える • T: 処置変数そのままではなく、T^2のような項も導入して関数形を緩和できる。また、複数の処置変 数を使うこともできる •

    Y: 複数のoutcomeを考慮することができる(交差弾力性の推定には複数の処置と複数のoutcome の設定が必要) • 各種変数を前処理で変換してから部分線形モデルに投入することもできる(例: 対数変換) • θ(X) が複雑になったときは、後処理で解釈性のあるモデルを作って別途 θ(X) についての解釈を行 うこともある(例: SingleTreeCateInterpreter) 87
  63. DMLの詳細解説 部分線形モデルで CATE を推定することは容易であり、EconML (*1) にいくつか実装がある • 部分線形モデルのATE推定で考えていたモデル式の θ を

    θ(X) に変更すれば定式化は完了 • validな信頼区間を得るために、 θ(X) の構造に対して仮定が必要になる ◦ LinearDML: θ(X) に線形モデルを仮定したもの。従来の回帰分析と比べると、交互作用項を明示的に導入し ていることに対応するが、 g(X, W) を自由に設定できる分だけ表現力が高い ◦ CausalForestDML: θ(X) 自体はノンパラだが、Honest Forest を用いて構築した類似度関数 Kx(Xi) を用い て以下のように推定を行う(非線形な CATE も表現可能になる): ※ EconMLには、NonParamDML という特別な問題にだけ適用できる手法も実装されているが、説明は割愛する *1 https://econml.azurewebsites.net/spec/estimation/dml.html 88
  64. DMLの詳細解説 ネイマン直交条件の説明 • 定義: • 2つ目の条件は、パラメータ η の方向微分がゼロになることを示しており、1段階目のモデルで推定 したMLモデルの微小変化に対してロバストであるというありがたい性質である •

    今回紹介した3つのモーメント条件のうち、naiveな推定量については方向微分がゼロにならないの でネイマン直交条件を満たさず、他の2つの推定量はネイマン直交条件を満たす 89
  65. DMLの詳細解説 Cross-fitting • 定義 ◦ データセットを K個に分割し、1段階目の学習と 2段階目の推定・予測を行うデータを別にすること ◦ 機械学習の

    Cross validation を1段階目で行うようなイメージ ◦ 2段階目の計算では、各 hold で最終的な推定結果を計算してから結果を平均するか、各 hold のスコア関数 をまとめてから推定結果を一発で計算するかを選べる(一般に後者が推奨されている) • 1段階目のモデルのoverfitによるbiasを低減できる ◦ DMLに特化した OSS (*1) のdocument の図を参照 *1 https://docs.doubleml.org/stable/guide/basics.html 90