Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
因果推論のための3ステップ入門
Search
KRSK
December 09, 2019
Education
34
49k
因果推論のための3ステップ入門
2019年12月に一時帰国した際の講演資料を公開します。
KRSK
December 09, 2019
Tweet
Share
More Decks by KRSK
See All by KRSK
論文を批判的に読むときのチェックリスト
koro485
1
23k
教科書が教えてくれない「交絡」の話
koro485
4
12k
target trial emulation入門
koro485
1
6.9k
調整変数の選び方
koro485
2
7.6k
因果推論のための回帰分析@日本疫学会プレセミナー
koro485
3
12k
Other Decks in Education
See All in Education
The Blockchain Game
jscottmo
0
3.7k
不登校予防・再登校支援プログラムを提供するToCo (トーコ) の会社紹介資料 toco.mom
toco3week
0
400
SQL初級中級_トレーニング【株式会社ニジボックス】
nbkouhou
0
19k
ルクソールとツタンカーメン
masakamayama
1
840
Beispiel einer Fortbildung für "Soziales Lernen"
gsgoethe
0
120
Web Application Frameworks - Lecture 4 - Web Technologies (1019888BNR)
signer
PRO
0
2.6k
Canva
matleenalaakso
0
430
勉強する必要ある?
mineo_matsuya
2
1.6k
HP用_松尾研紹介資料.pdf
matsuolab
0
170
お仕事図鑑pitchトーク
tetsuyaooooo
0
2.3k
Design Guidelines and Models - Lecture 5 - Human-Computer Interaction (1023841ANR)
signer
PRO
0
680
アニメに学ぶチームの多様性とコンピテンシー
terahide
0
240
Featured
See All Featured
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
131
33k
Making the Leap to Tech Lead
cromwellryan
133
8.9k
The Cult of Friendly URLs
andyhume
78
6k
How GitHub (no longer) Works
holman
310
140k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
42
9.2k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.9k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.5k
Building Adaptive Systems
keathley
38
2.3k
5 minutes of I Can Smell Your CMS
philhawksworth
202
19k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
6.9k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
44
2.2k
Transcript
「••の効果」はどうすればデータからわかる︖ 〜因果推論のための3ステップ〜 KRSK (@koro485)
OR 95%信頼区間 p値 X 1.5 1.1-1.9 0.04 アレ 1.1 0.9-1.3
0.12 コレ 2.0 1.8-2.2 0.01 ソレ 0.7 0.3-1.1 0.07 統計解析︓ 「多重回帰分析をおこない、アレとコレとソレを“調整”した」 仮説︓ 「リスク因⼦Xが健康アウトカムYに与える影響を知りたい」 2 疫学・医学研究あるある
OR 95%信頼区間 p値 X 1.5 1.1-1.9 0.04 アレ 1.1 0.9-1.3
0.12 コレ 2.0 1.8-2.2 0.01 ソレ 0.7 0.3-1.1 0.07 統計解析︓ 「多重回帰分析をおこない、アレとコレとソレを“調整”した」 9ͷޮՌΞϦʂ ίϨͷޮՌΞϦʢʁʁʣ 仮説︓ 「リスク因⼦Xが健康アウトカムYに与える影響を知りたい」 3 疫学・医学研究あるある
Ø 本当に⾒たい効果︖ Ø そもそも「調整する」とは︖ Ø なぜ「調整」すると効果が わかる︖ Ø どんな仮定がある︖ 4
こんな分析よくあるけど・・・
5 空前のEBPM・因果推論ブームの裏で • ⾊々な⼿法 • どう違う︖ • どれを使えばいい︖
Ø 統計的に因果効果を考えるための基礎の考え⽅ Ø 「回帰分析で“調整”」の意味することが理解できる Ø 分析の裏に置かれている仮定を考える重要性を知る Ø 数多ある因果推論のための⼿法、何が違ってなにが 同じかを知る Ø
流⾏りの機械学習がどう関わってきうるのか 雰囲気をつかむ 6 セミナー後の到達⽬標
• わかりやすさ優先で、数理的に厳密な表現を 避けています • 疫学的な考え⽅・⽤語を使⽤しています • ハーバード公衆衛⽣⼤学院(およびそこの教 員)の考え⽅を代表するわけではありません 7 Disclaimer
「因果効果への道」(Causal Roadmap) 8 本⽇の流れ
「因果効果への道」(Causal Roadmap) Methods in Social Epidemiology 2nd Edition (Chapter 17:
Ahern and Hubbard) 9 本⽇の流れ ・・・・・の簡略バージョン
「因果効果への道」(Causal Roadmap) ステップ1︓ どんな効果を知りたいのかを定義する (Causal Estimandの設定) ステップ2︓ データから効果を知るための条件を考える (効果の識別, Identification)
ステップ3︓ 実際にデータから求めたい値を計算する (推定, Estimation) 10 本⽇の流れ
「因果効果への道」(Causal Roadmap) ステップ1︓ どんな効果を知りたいのかを定義する (Causal Estimandの設定) ステップ2︓ データから効果を知るための条件を考える (効果の識別, Identification)
ステップ3︓ 実際にデータから求めたい値を計算する (推定, Estimation) 11 本⽇の流れ
1. 記述 例︓所得によって喫煙率が違うか︖ 2. 予測 例︓所得+αがわかると、その⼈が喫煙者かど うかを予想できるか︖ 3. 因果推論 例︓所得を増やすと喫煙率が減るか︖
12 データ分析の⽬的
統計的因果推論のゴール 因果“効果”の定量化 13 Cause & Causal Effect
モチベーション ⺟集団における関⼼のある値(⺟数; parameter)を知りたい (例︓平均値) そもそも統計学を使うってどういうこと︖ ⺟集団 (Population) 14
モチベーション ⺟集団における関⼼のある値(⺟数; parameter)を知りたい (例︓平均値) そもそも統計学を使うってどういうこと︖ ⺟集団 (Population) サンプル・標本 Ø 標本での計算(推定;
estimation) Ø 不確実性の考慮(推論, inference) 15
Estimand︓統計学とデータを使って知りたい未知の⺟数 Estimator︓Estimandを知るために使う統計⼿法 (例︓標本平均) Estimate︓Estimatorから実際に得られた値 Estimand, Estimator, Estimate 16
「〜〜における••が▲▲に与える効果」 知りたいものを明確にする! Causal “Estimand” 17
アウトカム︓連続値Y(例︓⾎圧) (Outcome = Endpoint = Dependent Variable) 曝露因⼦︓⼆値変数A(例︓薬の投与) (Exposure =
Treatment = Explanatory/Independent Variable) 共変量: 全部まとめてL またはL1, L2, L3, ….. (Covariates = Adjustment variables, etc) セットアップ 18
• 期待値:E[Y](意味︓⺟集団全体におけるYの期待値) 例)E[⾎圧] ︓⺟集団全体における⾎圧の期待値(Estimand) →サンプル全体の⾎圧の平均(Estimator)で推定 • 条件付き期待値: E[Y|L] (意味: Lが同じ値の⼈におけるYの期待値)
例)E[⾎圧|服薬A=1, 性別=⼥性]: ⺟集団のうち服薬中⼥性におけ る⾎圧の期待値 →サンプルのうち服薬中⼥性の⾎圧の平均で推定 ⾼校数学の復習 19
個⼈レベルで考える 反事実(Counterfactual)モデルに基づく定義 「因果効果」とは︖ 20 服薬中︓A=1 ⾎圧Y =120 mmHg 反事実の世界 2種類の介⼊
現実世界 薬を飲んでいる 投薬あり︓A=1 ⾎圧︓Ya=1 投薬なしA=0 ⾎圧︓Ya=0
ID A Y Ya=1 Ya=0 1 120 120 140 服薬Aへの介⼊が⾎圧に与える(この個⼈における)
因果効果=Ya=1-Ya=0=120 – 140 = -20 mmHg 反事実の世界では服薬の有無以外は同じはず・・・ 「因果効果」とは︖ 21 個⼈レベルで考える 反事実(Counterfactual)モデルに基づく定義
ID A Y Ya=1 Ya=0 1 120 120 140 薬を実際に飲んでいる⼈が「仮に」薬を飲ま
ない介⼊を受けた時の⾎圧?? 個⼈レベルではわからない 「因果効果」とは︖ 22 個⼈レベルで考える 反事実(Counterfactual)モデルに基づく定義
ID A Y Ya=1 Ya=0 1 120 120 140 薬を実際に飲んでいる⼈が「仮に」薬を飲む
介⼊を受けた時の⾎圧 = 実際の⾎圧?? つまり、Ya=1 = Y when A=1は成⽴する?? -> ある仮定が必要(後ほど詳しく) 「因果効果」とは︖ 23 個⼈レベルで考える 反事実(Counterfactual)モデルに基づく定義
現実世界 薬を飲んだ⼈(A=1)と 飲まなかった⼈(A=0) 反事実の世界 全員がA=1 全員がA=0 「因果効果」とは︖ 24 集団レベルで考える 反事実(Counterfactual)モデルに基づく定義
ID A Y Ya=1 Ya=0 1 1 120 120 140
2 0 115 110 115 3 0 140 135 140 4 0 135 135 135 5 1 115 115 120 6 0 120 115 120 7 1 110 110 115 8 1 120 120 130 9 1 130 130 140 10 0 130 110 130 服薬Aへの介⼊が⾎圧に与える(集団レベルでの) • 平均因果効果 • Average Treatment Effect (ATE) • Average Causal Effect (ACE) " − ["] Ya=1, Ya=0の平均値の差 =120 – 128.5 = -8.5 ఆٛ 「因果効果」とは︖ 25 ਪఆ
Marginal Effect !"# − [!"$] 解釈︓⺟集団の“全員”が薬を飲んだ(A=1)場合と“全員”が 飲まなかった(A=0)場合の⽐較 Conditional Effect !"#|
− [!"$|] 解釈︓⺟集団のうち”Lの層の中で” (例︓⼥性のみ)全員 が薬を飲んだ(A=1)場合と飲まなかった(A=0)場合の⽐較 vs vs ⺟集団全体 VS ⼀部における効果 26
!"# − !"$ = !"#| = 0 − !"$| =
0 ∗ = 0 + !"#| = 1 − !"$| = 1 ∗ = 1 " $͕ೋมͷ࣌ ! − !∗ = / % !| = − !∗ | = ∗ = ҰൠԽόʔδϣϯ Marginal/Conditional Effectの関係 27 Marginal Effect = Conditional Effectの重み付け平均
Marginal Effect ≠ Conditional Effect 例︓教育歴が年収に与える効果 ⼈種による効果修飾(Effect Modification) Ø 教育から得られる恩恵
⽩⼈ > ⿊⼈ Ø 集団全体(⽩⼈+⿊⼈)の効果 ≠⿊⼈における効果 効果は⼀定ではない 28
Ø 格差への影響 Ø 介⼊効果がより⾼い(or 低い)集団を特定 Ø メカニズムの検討 Conditional Effectを⾒るモチベーション 29
⺟集団A (例︓東京都の⾼齢者) ⺟集団B (例︓沖縄県の⾼齢者) ! "#$ − ! ["#%] 他の⺟集団への⼀般化が可能か︖
ー>効果修飾がありうるか︖修飾因⼦の分布が異なるか︖を考える (補⾜︓versions of treatment, interferenceの影響も。詳しくはHernan & VanderWeele (2011)) ︖︖︖ サンプル 余談︓外的妥当性の話 30
Ø 因果“効果”を推定する Ø もしも曝露あり VS もしも曝露なし Ø 個⼈レベルではわからない Ø 集団レベルでの定義
Ø ある仮定のもと、データから推定可能(次のステップ) Ø Marginal Effect: "#$ − ["#%] Ø Conditional Effect: "#$| − ["#%|] Ø 注⽬している集団によって介⼊効果が違う可能性 Ø まずCausal Estimandを設定する Ø 「〜〜における••が▲▲に与える効果」 「ステップ1︓Causal Estimandの設定」まとめ 31
「因果効果への道」(Causal Roadmap) ステップ1︓ どんな効果を知りたいのかを定義する (Causal Estimandの設定) ステップ2︓ データから効果を知るための条件を考える (効果の識別, Identification)
ステップ3︓ 実際にデータから求めたい値を計算する (推定, Estimation) 本⽇の流れ 32
Ø 知りたいもの︓ !"# − !"$ Ø これで代⽤︖︓ | = 1
− | = 0 Ø データ︓ Causation Association データからどうやって反事実を考える︖ 33
• 実際に薬を飲んでいる⼈(A=1)と飲んでいない⼈(A=0)ではキャラ が違う • 薬を飲んでいる⼈は(飲んでいない⼈と⽐べて)・・・ • だから2つのグループのアウトカム(⾎圧)の差は服薬の差による ものではない︕ • 交絡(後ほど詳しく)
Association ≠ Causation(直感的な理解) 34
Ø ! = ! = 1 ∗ = 1 +
! = 0 ∗ ( = 0) これが知りたい (Marginal) Counterfactual Mean Conditional Counterfactual Mean の重み付け平均 薬を飲んでいる⼈での平均 薬を飲んでいない⼈での平均 薬を飲んでいる⼈の割合 薬を飲んでいない⼈の割合 AssociationとCausation(数理的理解) 35
Ø もし、 ! = 1 = ! = 0 なら
Ø ! = ! = 1 ∗ = 1 + ! = 0 ∗ ( = 0) Ø !"# = !"# = 1 ∗ Pr = 1 + !"# = 1 ∗ Pr( = 0) = !"# = 1 Ø 同様に、 !"$ = !"$ = 0 AssociationとCausation(数理的理解) 36
Ø もし、 ! = = = なら Ø !"# =
!"# = 1 (= !"# = 0 ) Ø !"$ = !"$ = 0 (= !"$ = 1 ) Ø !"# = = 1 Ø !"$ = = 0 Ø もし、 ! = 1 = ! = 0 なら AssociationとCausation(数理的理解) 37
Ø !"# = = 1 Ø !"$ = = 0
Ø もし、 ! = = = なら Ø もし、 ! = 1 = ! = 0 なら " − " = | = − | = Causation Association AssociationとCausation(数理的理解) 38
Ø 仮定1︓ ! = 1 = ! = 0 (Exchangeability)
Ø 仮定2︓ ! = = = (Consistency) Ø 仮定3︓Positivity(後で少しだけ解説) %"& − %"' = | = 1 − | = 0 反事実の世界 (データからはわからない) 現実の世界 (データからわかる) *EFOUJGJBCJMJUZ"TTVNQUJPOT 因果効果の識別(Identification) 39
Ø Exchangeability: ! = 1 = ! = 0 Ø
a.k.a. Ignorability, No confounding assumption Ø 観測データでは通常成⽴しない(例︓交絡) 1. 無作為化⽐較試験RCT 2. ⾃然実験 3. Exchangeability不成⽴の原因を特定して“調整” Conditional Exchangeabilityを⽬指す この仮定を成⽴させるには・・・ 因果効果識別のための仮定1︓Exchangeability 40
Ø 曝露因⼦Aをランダムに割付 Ø A=0の⼈たちとA=1の⼈たちは、A以外について同質の集団 Ø 反事実世界でのアウトカムの期待値は同じはず Ø Exchangeabilityが確率的に期待される Ø "
= 1 = " = 0 Exchangeabilityを得るためのアプローチ1︓無作為化⽐較試験 41
Ø 追跡の失敗(Loss-to-follow-up) Ø 倫理的・コスト的に実施不可能なことが多い Ø 「誰における」効果を推定しているのかわかりにくい (⺟集団の曖昧さ) Exchangeabilityを得るためのアプローチ1︓無作為化⽐較試験 42
Ø 曝露因⼦がランダムに割付られていると 考えられるような状況を⾒つけてくる Ø Regression Discontinuity Design, 操作変数, etc…. Ø
誰における効果か︖(例︓LATE) Ø 仮定が正しいことをデータから実証することはできない Ø 答えることができるクエスチョンが限られてくる Exchangeabilityを得るためのアプローチ2︓⾃然実験 43
Ø ⾮ランダムな曝露因⼦の割付を許容する Ø Exchangeabilityが成⽴しない原因を特定 Ø 分析デザイン・統計解析で可能な限り取り除く Ø 医学研究・社会科学でよく使われる DAGを使って要因間の関係性を考える 1.
交絡(Confounding) 2. 選択バイアス &YDIBOHFBCJMJUZཱ͕͠ͳ͍ओͳݪҼ Exchangeabilityを得るためのアプローチ3︓調整 44
A Y Ø 点(Node)と⽮印(Edges)で構成 Ø 点は変数(アウトカムや曝露因⼦) Ø ⽮印は1⽅向のみ Ø 直接⽮印で結ばれていると因果効果あり
Ø 因果効果があるときは統計的な関連もあり 45 Directed Acyclic Graph(DAG)の原則
Ø LはAとYの共通の原因(Common Cause) Ø AとYの間に統計的な関連が⽣じる Ø A<- L ->Yという裏⼝経路(Backdoor Path)
Ø Lを条件づけることで裏⼝経路を閉じる Ø 「条件付け」とはLの値を揃えること Ø 回帰分析による”調整“とは条件付けのこと (詳しくは後半で) A Y L A Y L 46 DAGルール1︓ “共通の原因”による裏⼝経路
Ø 交絡(Confounding) 共通原因によって⽣じる因果効果に由来しない関連 Ø 交絡因⼦(Confounder) 条件付けによって裏⼝経路を閉じることができる要因 (例︓L) 47 DAGルール1︓ “共通の原因”による裏⼝経路
A Y L A Y L
Ø CはAとの共通の効果(Common Effect; Collider) Ø Cを条件づけるとA-Uの間に関連が⽣じる Ø 「Cの条件付け」=Cの値が同じ⼈を対象に分析 Ø Collider
Stratification Bias (a.k.a. 選択バイアス) Ø 選択バイアスは内的妥当性の問題 A Y C U 48 DAGルール2︓“共通の効果”の条件付けによる裏⼝経路
A︓ランダム割付された治療 C︓Loss-to-follow-up U︓抑うつレベル Y︓⾝体的健康状態 A Y C U Ø 離脱しなかったひとのみを分析(Cで条件付け)
Ø 離脱しなかった&コントロール群の⼈は抑うつレベルが特別 低かった︖ Ø 介⼊群の⼈は少々抑うつレベルが⾼くても離脱しなかった︖ 49 選択バイアスの例︓追跡の失敗
A Y C U (Hernan et al 2004) (edX Free
Online Course by Hernan) 50 DAGルール2︓“共通の効果”の条件付けによる裏⼝経路 1. 追跡の失敗(Loss-to-follow-up) 2. 競合リスク(Competing Risk) 3. サンプリング⽅法 4. ⽋測データ(Missing Data) 5. ⾃⼰選択(Self-selection) બόΠΞε͕ੜ͡ΔγφϦΦ
51 DAGルール3︓全ての裏⼝経路を閉じると・・・ A Y L 裏⼝経路の閉じ⽅(“調整”の⽅法) A Y L 条件付け(層化)
A Y L Ø Lの値が同じ⼈たち を分析 Ø 回帰分析など Ø Lの分布をA=1とA=0で等しくする Ø L->Aの⽮印を取り除く マッチング・重み付け
52 DAGルール3︓全ての裏⼝経路を閉じると・・・ A Y C L2 L1 Ø 2つの裏⼝経路 Ø
L1による交絡 Ø Cによる選択バイアス A Y C L2 L1 Ø L1とL2を条件付け Ø 裏⼝経路はない Ø Exchangeability Conditional on L1 and L2
53 Conditional Exchangeability Ø L(L1, L2, L3,…)を条件付けると裏⼝経路なし Ø Conditional Exchangeability:
" = 1, = " = 0, | = ! = 1, ∗ = 1| + ! = 0, ∗ = 0 = ! = , ∗ Pr = 1 + Pr = 0 (∵ = , = = , ) = ! = , = | = , (∵ ) 同じ仮定 (ただしLの層内) (Lの層内で)反事実世界のアウトカム=観測されたアウトカム Ø !#$| − !#%| = | = 1, − | = 0, ূ໌ Lで条件付けされている︕
54 Marginal vs Conditional Exchangeability • Exchangeability: " = 1
= " = 0 • 推定できる因果効果︓ "#$ − "#% = | = 1 − | = 0 • 例︓RCT .BSHJOBM • Exchangeability: " = 1, = " = 0, • (条件付けで)推定できる因果効果︓ "#$| − "#%| = | = 1, − | = 0, • 例︓層化, L層内でのRCT $POEJUJPOBM
A Y U1 L U2 1. Lは曝露因⼦Aと関連 2. LはアウトカムYと関連 3.
LはAとYの中間因⼦ではない -ަབྷҼࢠʁௐ͖͢ʁ A Y U1 L U2 Ø LはCollider Ø 調整すべきではない Ø M-bias Ø 統計テクニックでは判断で きない 55 DAGの利点︓理論的根拠に基づいた分析⽅法の選択
1. Mを調整しないでAとYの関連を⾒る 2. Mを回帰モデルに加える 3. AとYの関連の推定値が変わるか確認 .ʹΑΔഔհޮՌΛΓ͍ͨ M Y A
U M Y A U Ø MはCollider Ø 単純に調整してしまうとA->M<-U->Y の関連を導⼊ Ø 推定値の変化はCollider Stratificationに よるものかも︖ 56 DAGの利点︓理論的根拠に基づいた分析⽅法の選択
1. L1を条件づけると閉じる 2. L2を条件づけても閉じる 3. 両⽅条件づけても閉じる Ø モデルの複雑さ Ø ⽚⽅だけ調整する⽅がベター
ཪޱܦ࿏Λด͡ΔͨΊʹ͚͖݅͢มʁ A Y L1 L2 57 DAGの利点︓理論的根拠に基づいた分析⽅法の選択
Ø 必要な変数全ての特定はできない Ø 変数間の関係性を完璧に表現することもできない Ø 真のDAGは誰にもわからない Ø 仮定を可視化することで分析前のディスカッション・ 分析後の批判的吟味の円滑化 Ø
調整しきれなかった交絡・選択バイアスに対する感度 分析(VanderWeele, 2017; Smith, 2019) 58 DAGの利点︓仮定の可視化
1. DAGを書く (理論・ドメイン知識・先⾏研究に基づいて) 2. 可視化された仮定を議論する 3. DAG書き直す 4. 2-3を繰り返す 5.
Conditional Exchangeabilityを得るのに“調整”が必要な変数 を特定 6. Identification完了(と仮定) 7. 次のステップ(推定)へ DAGを⽤いた因果推論へのアプローチ 59
因果効果識別のための仮定2︓Consistency 60 Ø = = = Ø 現実にA=aだった⼈たちがA=aとする介⼊を受けた時、その アウトカムの平均は現実のアウトカムに等しくなる あたりまえ︖
Ø Well-defined intervention & Linkage with the data Ø 「因果効果」を⾒たい曝露因⼦に対応する介⼊が曖昧でない Ø 正確に定義された効果を⾒るのに適したデータが存在
因果効果識別のための仮定2︓Consistency 61 Ø 例︓肥満の「因果効果」 Ø 肥満をなくす介⼊とは︖ Ø ⾷事・運動・脂肪吸引,etc… Ø Multiple
versions of treatment Ø それぞれの介⼊効果は同じ︖ Ø 因果効果の解釈が難しい Ø = = = Ø 現実にA=aだった⼈たちがA=aとする介⼊を受けた時、その アウトカムの平均は現実のアウトカムに等しくなる
Ø 曝露を受ける確率と曝露を受けない確率が0でない Ø 全員が曝露を受けているサンプルからは曝露効果を推定できない 62 因果効果識別のための仮定3︓Positivity Ø 曝露を受けている⼈、受けていない⼈の両⽅が必要 Ø Conditional
Exchangeabilityを⽬指して共変量Lで条件づけた場合 L=1 L=0 ü L=0で全員が曝露あり ü 曝露A=0となる確率が0 ü L=0の層でのConditional Causal Effectは︖
63 「ステップ2︓効果の識別」まとめ Ø 知りたい因果効果は反事実世界のもの Ø 仮定のもと、データから分かる統計的な「関連」と⼀致 Ø Exchangeability, Consistency, Positivity
Ø Exchangeabilityを得るための分析デザイン Ø RCT, ⾃然実験, しらみつぶしに“調整“ Ø DAGを使った、調整すべき要因の特定 Ø 全ての裏⼝経路が閉じているという仮定(Conditional Exchangeability) Ø 調整の⽅法︓条件付け(層化) vs マッチング・重み付け Ø 条件付けを使⽤するとConditional Effectの識別 Ø データからアウトカムの条件付き期待値を推定すればよい Ø どうやって︖(次のステップ)
因果推論⼊⾨② 「••の効果」はどうすればデータからわかる︖ 〜アウトカムモデル(重回帰分析)による推定〜 Koichiro Shiba Harvard T.H. Chan School of
Public Health 64
「因果効果への道」(Causal Roadmap) ステップ1︓ どんな効果を知りたいのかを定義する (Causal Estimandの設定) ステップ2︓ データから効果を知るための条件を考える (効果の識別, Identification)
ステップ3︓ 実際にデータから求めたい値を計算する (推定, Estimation) 本⽇の流れ 65
66 Causal Roadmapの途中経過 1. !#$| − !#%| (Causal Estimandの設定) 2.
| = 1, − | = 0, (効果の識別, Identification) 3. 条件付き期待値 | = , をどうやって計算する︖ Ø Lの値が同じ&A=aの⼈たちにおけるYの平均 Ø ここから先は純粋に計算の問題(推定, Estimation) Conditional Effectの推定
67 条件付き期待値の推定︓シンプルなケース A Y L A︓⼆値変数(例︓服薬あり vs なし) L︓⼆値変数(例︓喫煙あり・なし) Y︓連続値(例︓⾎圧)
Ø 1つの⼆値変数Lを条件づけるだけでConditional Exchangeability が得られるという仮定 Ø ⾮現実的な仮定(説明のためにここからはじめる) Ø | = , = がわかればよい Ø シンプルに各層のYの平均値を計算 Ø 全部で4パターン Ø 因果効果の推定完了 Ø 例︓L=1の層でのConditional Effect | = 1, = 1 − | = 0, = 1 120-140 =- 20 A L 各層のYの平均 0 0 120 0 1 140 1 0 110 1 1 120
68 条件付き期待値の推定︓シンプルなケース Ø | = , = の推定 Ø 回帰分析は不要
Ø 使うこともできる Ø 回帰モデル︓ |, =% + $ + & + ' ∗ Ø アウトカムモデル Ø 例えばRだと・・・ パターン A L 各層のYの平均 回帰分析による推定 1 0 0 120 ! 2 0 1 140 ! + " 3 1 0 110 ! + # 4 1 1 120 ! + # + " + $ 完全に⼀致
69 Ø 回帰モデル︓ |, =% + $ + & +
' ∗ Ø 全4パターンの層に対して、 推定値は4つ Ø 各層の平均値を計算するのと全く同じ Ø Saturated “Model” (a.k.a. Nonparametric “Model”) Ø モデルの誤設定(Misspecification)がない パターン A L 各層のYの平均 回帰分析による推定 1 0 0 120 ! 2 0 1 140 ! + " 3 1 0 110 ! + # 4 1 1 120 ! + # + " + $ 4つのを設定する ことでに任意の値 条件付き期待値の推定︓シンプルなケース
70 Ø 回帰モデル︓ |, =% + $ + & Ø
AとLの掛け算項がない(層の数 > モデルの推定値) Ø パターン1〜3が決まるとパターン4が決まる Ø 制約のある推定 Ø パラメトリックモデル Ø モデルの仮定(後ほど詳しく) Ø モデルの誤設定ー>条件付き期待値を正しく推定できない可能性 パターン A L 各層のYの平均 回帰分析による推定 1 0 0 120 ! 2 0 1 140 ! + " 3 1 0 110 ! + # 4 1 1 120 ! + # + " ⼀致しないことが多い 条件付き期待値の推定︓シンプルなケース
71 回帰分析を使った条件付き期待値の推定 Ø (線形)回帰モデルを使うとは・・・ Ø 変数間の関係性を単純化してYの条件付き期待値を推定 Ø ロジスティック回帰の場合︓logit(Pr[Y=1|A,L])を推定 Ø 単純化をしないSaturated
modelは「モデル」︖ Ø Saturated modelはモデルの誤設定の影響を受けない Ø ではなぜパラメトリックモデルを使うのか︖
72 “パラメトリック”が必要な理由1︓次元の呪い Ø ⼆値変数L1を条件付けで裏⼝経路が閉じ ると仮定 Ø AとLの組み合わせ=2*2=4通り A Y L1
A Y L1 L2 Ø ⼆値変数L1, L2を条件付けで裏⼝経路が 閉じると仮定 Ø A,L1, L2の組み合わせ=2*2*2=8通り A Y L1 L2 L3 Ø ⼆値変数L1, L2, L3を条件付けで裏⼝経路 が閉じると仮定 Ø A,L1, L2,L3の組み合わせ=2*2*2*2=16通り
73 “パラメトリック”が必要な理由1︓次元の呪い Ø 裏⼝経路を閉じるのに必要なL = L1, L2, ….., L10 Ø
9個の⼆値変数と1個のカテゴリ変数(4レベル) Ø A,L1,L2,….,L10の組み合わせ=29*4=2048(!) Ø Saturated model -> 2048個のを推定 Ø 条件づける変数が増えると、条件付き期待値のパ ターン数が激増する(Curse of Dimensionality) Ø 単純化(パラメトリック)が必要 A Y L
74 “パラメトリック”が必要な理由2︓⾮カテゴリ変数 Ø Aは⼆値変数 Ø | = 0 ? Ø
| = 1 ? Ø Aはカテゴリ変数 Ø | = 1 ? Ø | = 2 ? Ø | = 3 ? Ø | = 4 ?
75 “パラメトリック”が必要な理由2︓⾮カテゴリ変数 Ø Functional formの設定 Ø 周りのデータの情報を借 りて予想をつける Ø パラメトリックモデル︕
Ø Aは連続変数 Ø | = 5 ? Ø A=5のデータは無い Ø 全てのAの値の層を 考えるのは不可能
76 A Y L Ø A, Lは⼆値変数 Ø 回帰モデル︓ |,
=% + $ + & Ø 層の数=2*2=4 Ø 推定されるパラメータの数=3 Ø パラメトリックモデル Ø L=0層でのAの平均因果効果︓ | = 1, = 0 − | = 0, = 0 = % + $ − % = Ø L=1層でのAの平均因果効果︓ | = 1, = 1 − | = 0, = 1 = % + $ + & − (% +& ) = Lの値によらずAの効果は⼀定という仮定︕ “パラメトリック”モデルの仮定1︓Constant Relationship
77 “パラメトリック”モデルの仮定1︓Constant Relationship A Y L Ø ノンパラメトリックモデル︓ |, =%
+ $ + & +' ∗ Ø A, Lの組み合わせの数=パラメータの数 Ø モデルの仮定なし Ø パラメトリックモデル︓ |, =% + $ + & Ø A, Lの組み合わせの数 >パラメータの数 Ø 掛け算項( ' )が不要という仮定 Ø LによるAの効果修飾がないという仮定 Ø L同⼠の掛け算項(例︓L1*L2)にも注意
78 “パラメトリック”モデルの仮定2︓Functional Form A Y L Ø Aは⼆値変数、 Lは連続変数(例︓所得) Ø
回帰モデル︓ |, =% + $ + & Ø 層の数=とても多い(Lはどんな値でも取りうる) Ø 推定されるパラメータの数=3 Ø パラメトリックモデル Ø Aの層内でのYとLの関係が直線という仮定
79 “パラメトリック”モデルの仮定2︓Functional Form Ø 回帰モデル︓ |, =% + $ +
& + ' & Ø (Aの層内で)LとYは⼆次関数的な関係 Ø Cubic(三次関数)やSpline曲線も使⽤可能
80 “パラメトリック”モデルの仮定2︓Functional Form Ø 回帰モデル︓ |, =% + $ +
& + ' & Ø ⼆乗項&を含めるのは間違い︖ Ø 回帰モデル︓ |, =% + $ + & Ø ⼆乗項があるモデルの特別バージョン( ' = 0) Ø 複雑なモデルのほうが誤設定の可能性は低いが・・・ Ø Bias-varianceトレードオフ Ø 解釈可能性
81 「ステップ3︓推定」まとめ Ø Conditional Exchangeabilityが成⽴しているとき・・・ Ø 条件付き期待値=反事実世界のアウトカム(Identification) Ø 層化が最もシンプルな⽅法 Ø
Conditional (vs Marginal) Effectが推定可能 Ø 調整変数が多い、連続変数がある場合はパラメトリックな回帰分析を ⽤いた条件付き期待値の推定 Ø モデルの仮定に気をつける Ø 複雑すぎず、でもデータ間の関係を正しく記述したモデルが理想 (難しい)
ステップ1︓ どんな効果を知りたいのかを定義する (Causal Estimandの設定) ステップ2︓ データから効果を知るための条件を考える (効果の識別, Identification) ステップ3︓ 実際にデータから求めたい値を計算する
(推定, Estimation) 82 アウトカムモデルによる因果推論の全体像 Ø サンプルが取られた⺟集団 Ø Lの層における効果(Conditional) Ø Conditional Exchangeability (+ Consistency, Positivity) Ø Lの条件付けで全ての裏⼝経路が閉じるという仮定 Ø アウトカムに対するモデル Ø 誤設定の可能性 A Y L
推定値 95%信頼区間 p値 X # XX-YY 0.03 L1 " …
… L2 $ … … L3 % … … 83 再び、疫学・医学研究あるある Ø |, =% + $ + & 1 + ' 2 + ) 3 $ = = 1, − [| = 0, ] ステップ2︓識別(Identification) -> L1, L2, L3でX-Y間の裏⼝経路は閉じる︖ ステップ1︓Causal Estimandの設定 Marginal︖ [!#$] − [!#%] Conditional︖ [!#$|] − [!#%|] ステップ3︓推定(Estimation) 掛け算項がないという仮定 (Lによる効果修飾なし) 9ͷޮՌΞϦʂ
推定値 95%信頼区間 p値 X # XX-YY 0.03 L1 " …
… L2 $ … … L3 % … … 84 再び、疫学・医学研究あるある Ø |, =% + $ + & 1 + ' 2 + ) 3 & = 1 = 1, , 2, 3 − [|1 = 0, , 2, 3] ステップ2︓識別(Identification) -> X, L2, L3でL1とYの間の裏⼝経路は閉じる? -> L2やL3はXとYの交絡因⼦として選ばれた -> 因果的な解釈はできない -ͷޮՌΞϦʂʁ
85 その他の⼿法との⽐較 Ø RCT, ⾃然実験 Ø 傾向スコアマッチング, Ø 逆確率重み付け(IPTW) Ø
g-computation (a.k.a. g-formula) Ø 機械学習 なんかすごそうだが・・・ Ø なにが優れているのか︖ Ø もし違う結果が得られた場合、その理由は︖
86 傾向スコアマッチング Ø 傾向スコア︓Pr[A=1|L] Ø マッチング後はLの分布が同じになる Ø L->Aの⽮印がなくなる(vs 条件付け) Ø
L層でのConditional exchangeabilityを仮定 Ø マッチング後のサンプルではA=0群とA=1 群をシンプルに⽐較 A Y L A Y L
87 逆確率重み付け(IPTW) Ø 傾向スコア(っぽいもの)︓Pr[A=a|L] Ø Inverse Probability Weighting Ø 重み付けによるPseudo-populationの作成
Ø L->Aの⽮印がなくなる(vs 条件付け) Ø L層でのConditional exchangeabilityを仮定 Ø Pseudo-population内ではYとAの関連をシ ンプルに⽐較(Marginal Structural Model) A Y L A Y L
88 g-formula / g-computation Ø アウトカムモデル︓E[Y|A, L] Ø Lの条件付け Ø
L層でのConditional exchangeabilityを仮定 Ø L層でのConditional Effectを集団全体に 標準化(重み付け平均を計算) A Y L ! − !∗ = H * !| = − !∗ | = ∗ = = H * | = , = − | = ∗, = ∗ =
「因果効果への道」(Causal Roadmap) ステップ1︓ どんな効果を知りたいのかを定義する (Causal Estimandの設定) ステップ2︓ データから効果を知るための条件を考える (効果の識別, Identification)
ステップ3︓ 実際にデータから求めたい値を計算する (推定, Estimation) 89 統計的因果推論の全体像 “誰”における効果︖ Marginal vs Conditional? Exchangeability? Conditional Exchangeability? なにに対するモデル︖ モデルの誤設定︖
Ø チェックポイント1︓⺟集団は︖ Ø チェックポイント2︓Marginal? Conditional? 90 推定されているのは誰における効果︖ 曖昧に定義された ⺟集団 サンプリングに基づく
⺟集団への推論 Conditional Ø アウトカムモデル Ø 層化 Marginal Ø RCT Ø (傾向スコア)マッチング Ø ⾃然実験(IVのCATEなど) Ø IPTW Ø g-formula Ø Lによる効果修飾 Ø ⺟集団間の修飾因⼦の分布の違い Ø 推定値が⼀致しない(異なるクエスチョンに答えているだけ) Ø Kurth et al, AJE (2006)
91 効果識別の仮定は︖ Exchangeability Conditional Exchangeability 仮定の実証不可能 Ø ⾃然実験 Ø アウトカムモデル
Ø 層化 Ø (傾向スコア)マッチング Ø IPTW Ø g-formula 成⽴が確率的に期待 Ø RCT Ø ファンシーな⼿法でもExchangeabilityに対する仮定はアウトカムモデルと 変わらず Ø Conditional Exchangeabilityが成⽴するための条件は統計的な基準(例︓変 数間の関連の強さ)では知ることができない Ø 機械学習による⾃動化は厳しい Ø ドメイン知識に基づいた仮定(正しいことの証明不可能) Ø DAG︕ Ø IPTW & g-formulaは時間によって変化するTreatmentの効果推定に応⽤可能
92 効果識別の仮定は︖ Positivityあり Positivity仮定 Consistencyあり Ø RCT Consistency仮定 Ø (傾向スコア)マッチング
Ø アウトカムモデル Ø 層化 Ø IPTW Ø g-formula Ø RCTは実際に介⼊するのでConsistency成⽴が⾒込める Ø 事前のデザインの設定が悪い場合は成⽴しない(例︓薬剤の doseが指定されていない) Ø 観察データに基づく分析はill-defined treatmentに注意 →詳しくはKRSKブログを確認︕ Ø Positivityを保証するのがマッチングの強み
93 何に対するモデル︖ アウトカムモデル 曝露モデル RCT Ø なしでOK (モデル化することも) Ø なし
傾向スコア マッチング Ø なし Ø 複雑 Ø 誤設定チェック しやすい アウトカムモデル Ø 複雑 Ø なし IPTW Ø シンプル (Marginal Structural Model) Ø 複雑 g-formula Ø 複雑(アウトカムモデル) Ø なし(Time-fixed exposure) Ø 異なるモデルの仮定 Ø 仮定が違えば答えも違う Ø Saturated modelならIPTWとg-formulaの答えは完全に⼀致 Ø Doubly Robust︓IPTWの曝露モデルとg-formulaのアウトカムモデ ルのどちらかが正しければOK
94 因果推論におけるモデル作り Ø 多くの仮定をおいたパラメトリックモデルに依存 Ø 機械学習が⼊ってきうるのはココ︕(識別ではなく推定) Ø 複数アルゴリズムを使った推定結果 を併合(Superlearner) Ø
Doubly Robust推定(TMLE)との併⽤ Ø Schuler & Rose, AJE 2017 応⽤例2︓Heterogenous Treatment Effect Ø パラメトリックアウトカムモデルによる Conditional Effectの推定には掛け算項が必要 Ø 複雑・仮定の強いモデル Ø 機械学習的アプローチでより良いモデルを・・・ Ø Wager & Athey, JASA 2017 応⽤例1︓Ensemble Estimator
95 因果推論における測定の重要性 Ø データの質も考慮すべき Ø 「完璧なデータ」が因果推論に関する議論で仮定されている Ø Assuming no measurement
error…. 1.「⾒たい概念」を測定できているか︖ Ø 「肥満度」の指標としてのBMI Ø ウェアラブルデバイスによる「⾏動」 Ø Validation研究の重要性 Ø Random vs non-random Ø 曝露とアウトカムの関連の強さがゆがめられる Ø Residual confounding 2. 測定誤差・誤分類はどの程度か︖どんなタイプか︖
96 データのサイズと質 Ø ビッグデータ時代 Ø 質を無視すると⼤きいデータほどバイアスが増幅される可能性
Ø Causal Estimandの設定、識別、推定の3ステップ Ø 識別はドメイン知識を⽤いて(⾃動化はできない) Ø ⼿法ごとに各ステップへのアプローチが異なる Ø 答えているクエスチョン(「誰における効果か︖」)や識別のため の仮定、推定に使われるモデル(およびその仮定)の違い
Ø 異なるクエスチョンに答える⼿法同⼠は⽐較できない Ø パラメトリックモデルに依存した推定を機械学習で改善できる 可能性あり Ø データの質にも注意︕ 97 全体のまとめ