More Related Content More from takehikoihayashi More from takehikoihayashi (9) 傾向スコア:その概念とRによる実装1. 某統計学勉強会
傾向スコア:
その概念とRによる実装
発表者 林岳彦
12年4月27日金曜日
2. 今回の資料&元ネタ
星野・岡田 (2006) J Natl Inst Public Helth 55(3): 230-243
『傾向スコアを用いた共変量調整による因果効果の推定と臨床医学・疫学・
薬学・公衆衛生分野での応用について』
R-package Matching
using data lalonde , lindner
星野崇宏 (2009) 『調査観察データの統計科学』
宮川雅巳 (2004) 『統計的因果推論』
里洋平さんweb資料 『Rで学ぶ傾向スコア解析入門』
http://www.slideshare.net/yokkuns/r-9387843
12年4月27日金曜日
3. もくじ (星野・岡田 2006に準拠)
(1) はじめに
(2) 因果効果の定義と無作為割付の重要性
(3) 既存の共変量調整法とその問題点
(4) 傾向スコアの定義
(5) 傾向スコアを用いた具体的な解析方法
(6) 傾向スコアによる調整が共分散分析的手法より優れ
ている点
(7) 前提条件のチェックと共変量の選択方法について
- Rによる実装( lalonde data)
- Rによる実装( linder data)
12年4月27日金曜日
4. 1.はじめに
調査・観察研究では常に交絡が起きている可能性がある
12年4月27日金曜日
5. 1.はじめに
調査・観察研究では常に交絡が起きている可能性がある
喫煙
大腸がん
発症
12年4月27日金曜日
6. 1.はじめに
調査・観察研究では常に交絡が起きている可能性がある
喫煙 飲酒
大腸がん
発症
12年4月27日金曜日
7. 1.はじめに
調査・観察研究では常に交絡が起きている可能性がある
その他
喫煙 飲酒
共変量
etc...
大腸がん
発症
12年4月27日金曜日
8. 1.はじめに
調査・観察研究では常に交絡が起きている可能性がある
その他
喫煙 飲酒
共変量
etc...
大腸がん
発症
近年傾向スコアによる共変量調整法が利用されている
12年4月27日金曜日
10. 傾向スコアの応用例
臨床医学・疫学
・アスピリンの冠動脈疾患に対する有用性
・フェノバービタルの曝露による知能への影響
・退院後の治療タイプの心筋梗塞への予後の影響
・非定型的抗精神病薬の副作用の影響
医療政策
評価研究
12年4月27日金曜日
11. 傾向スコアの応用例
臨床医学・疫学
・アスピリンの冠動脈疾患に対する有用性
・フェノバービタルの曝露による知能への影響
・退院後の治療タイプの心筋梗塞への予後の影響
・非定型的抗精神病薬の副作用の影響
医療政策
・復員軍人庁健康局の治療の質
・退院後のケアプログラムの影響
評価研究
12年4月27日金曜日
12. 傾向スコアの応用例
臨床医学・疫学
・アスピリンの冠動脈疾患に対する有用性
・フェノバービタルの曝露による知能への影響
・退院後の治療タイプの心筋梗塞への予後の影響
・非定型的抗精神病薬の副作用の影響
医療政策
・復員軍人庁健康局の治療の質
・退院後のケアプログラムの影響
評価研究
・養育問題に問題のある用事へのケアの効果
・アメリカ麻薬管理局による対麻薬キャンペーンの効果
・ボリビアの公衆衛生分野での社会資本へのインパクト評価
・銃暴力への曝露の将来の暴力的行動への因果効果推定
12年4月27日金曜日
13. 傾向スコアの応用例
臨床医学・疫学
・アスピリンの冠動脈疾患に対する有用性
・フェノバービタルの曝露による知能への影響
・退院後の治療タイプの心筋梗塞への予後の影響
・非定型的抗精神病薬の副作用の影響
医療政策
・復員軍人庁健康局の治療の質
・退院後のケアプログラムの影響
評価研究
・養育問題に問題のある用事へのケアの効果
・アメリカ麻薬管理局による対麻薬キャンペーンの効果
・ボリビアの公衆衛生分野での社会資本へのインパクト評価
・銃暴力への曝露の将来の暴力的行動への因果効果推定
『紹介されなかった多変量解析』(佐藤2002)
12年4月27日金曜日
16. 2. 因果効果の定義と無作為割付の重要性
*今日はLalondeデータを念頭に説明していきます
1976年米国職業訓練プログラム(445データ, 12変数)
職業訓練受講 訓練実施後の年収
興味のある
‘treat’ ‘re78’ 興味のある
受講したか 78年の年収 結果変数
説明変数
12年4月27日金曜日
17. 2. 因果効果の定義と無作為割付の重要性
*今日はLalondeデータを念頭に説明していきます
1976年米国職業訓練プログラム(445データ, 12変数)
職業訓練受講 訓練実施後の年収
興味のある
‘treat’ ‘re78’ 興味のある
受講したか 78年の年収 結果変数
説明変数 交絡
?
年齢 教育年数 黒人か ヒスパニックか 既婚か
‘age’ ‘educ’ ‘black’ ‘hisp’ ‘married’
高卒以上か 74年の年収 75年の年収 74年に収入ゼロか 75年に収入ゼロか
‘nodegr’ ‘re74’ ‘re75’ ‘u74’ ‘u75’
共変量 (いかにも交絡してそう!)
12年4月27日金曜日
20. 2. 因果効果の定義と無作為割付の重要性
Neyman-Rubinの反事実的モデル
yt=0(個体i) :個体iに処理t=0を与えたときの(決定論的)反応
yt=1(個体i) :個体iに処理t=1を与えたときの(決定論的)反応
12年4月27日金曜日
21. 2. 因果効果の定義と無作為割付の重要性
Neyman-Rubinの反事実的モデル
yt=0(個体i) :個体iに処理t=0を与えたときの(決定論的)反応
yt=1(個体i) :個体iに処理t=1を与えたときの(決定論的)反応
因果的効果 の定義
y (John) - y (John)
t=1 t=0
12年4月27日金曜日
22. 2. 因果効果の定義と無作為割付の重要性
Neyman-Rubinの反事実的モデル
yt=0(個体i) :個体iに処理t=0を与えたときの(決定論的)反応
yt=1(個体i) :個体iに処理t=1を与えたときの(決定論的)反応
因果的効果 の定義
y (John) - y (John)
t=1 t=0
ただし、現実世界では同一人物に
異なる処理を同時に与える(観測する)ことはできない!
12年4月27日金曜日
23. 2. 因果効果の定義と無作為割付の重要性
Neyman-Rubinの反事実的モデル
yt=0(個体i) :個体iに処理t=0を与えたときの(決定論的)反応
yt=1(個体i) :個体iに処理t=1を与えたときの(決定論的)反応
例:Johnさんの場合
yt=1 (John)
y
(たとえば年収)
yt=0 (John)
0 1
t(たとえば職業訓練受講の有無)
12年4月27日金曜日
24. 2. 因果効果の定義と無作為割付の重要性
Neyman-Rubinの反事実的モデル
yt=0(個体i) :個体iに処理t=0を与えたときの(決定論的)反応
yt=1(個体i) :個体iに処理t=1を与えたときの(決定論的)反応
例:Johnさんの場合
yt=1 (John)
y
(たとえば年収)
yt=0 (John)
0 1
t(たとえば職業訓練受講の有無)
12年4月27日金曜日
25. 2. 因果効果の定義と無作為割付の重要性
Neyman-Rubinの反事実的モデル
yt=0(個体i) :個体iに処理t=0を与えたときの(決定論的)反応
yt=1(個体i) :個体iに処理t=1を与えたときの(決定論的)反応
例:Johnさんの場合
yt=1 (John)
y
(たとえば年収)
yt=0 (John)
0 1
t(たとえば職業訓練受講の有無)
12年4月27日金曜日
26. 2. 因果効果の定義と無作為割付の重要性
Neyman-Rubinの反事実的モデル
yt=0(個体i) :個体iに処理t=0を与えたときの(決定論的)反応
yt=1(個体i) :個体iに処理t=1を与えたときの(決定論的)反応
例:Johnさんの場合
yt=1 (John)
y
(たとえば年収)
この差が因果的効果
yt=0 (John) でも現実には両点のどちらかは
反事実的なので観測不可能
0 1
t(たとえば職業訓練受講の有無)
12年4月27日金曜日
27. 2. 因果効果の定義と無作為割付の重要性
Neyman-Rubinの反事実的モデル
yt=0(個体i) :個体iに処理t=0を与えたときの(決定論的)反応
yt=1(個体i) :個体iに処理t=1を与えたときの(決定論的)反応
因果的効果 の定義
y (John) - y (John)
t=1 t=0
ただし、現実世界では同一人物に
異なる処理を同時に与える(観測する)ことはできない!
12年4月27日金曜日
28. 2. 因果効果の定義と無作為割付の重要性
Neyman-Rubinの反事実的モデル
yt=0(個体i) :個体iに処理t=0を与えたときの(決定論的)反応
yt=1(個体i) :個体iに処理t=1を与えたときの(決定論的)反応
因果的効果 の定義
y (John) - y (John)
t=1 t=0
上の二項のうちいずれかは
必ず 反事実的 である
ただし、現実世界では同一人物に
異なる処理を同時に与える(観測する)ことはできない!
12年4月27日金曜日
29. 2. 因果効果の定義と無作為割付の重要性
Neyman-Rubinの反事実的モデル
yt=0(個体i) :個体iに処理t=0を与えたときの(決定論的)反応
yt=1(個体i) :個体iに処理t=1を与えたときの(決定論的)反応
因果的効果 の定義
y (John) - y (John)
t=1 t=0
上の二項のうちいずれかは
必ず 反事実的 である
ただし、現実世界では同一人物に
異なる処理を同時に与える(観測する)ことはできない!
つまり、因果推論は原理的に不可能である!
( 因果推論における根本問題 )
12年4月27日金曜日
31. 2. 因果効果の定義と無作為割付の重要性
諦めたら負け:「集団」を考えれば何とかなる?
n
(1/n) yt=1(個体i) - yt=0(個体i)
i=1
集団の 因果的効果 の定義
E[Yt=1] - E[Yt=0]
12年4月27日金曜日
32. 2. 因果効果の定義と無作為割付の重要性
諦めたら負け:「集団」を考えれば何とかなる?
n
(1/n) yt=1(個体i) - yt=0(個体i)
i=1
集団の 因果的効果 の定義
E[Yt=1] - E[Yt=0]
ただし、現実世界では同一(サンプル)集団に
異なる処理を同時に与える(観測する)ことはできない!
12年4月27日金曜日
33. n=6の場合を考えてみよう
αさんβさんγさん →職業訓練受講
AさんBさんCさん →職業訓練なし
A
B
C
α
y β
(たとえば年収) γ
0 1
t(たとえば職業訓練受講の有無)
12年4月27日金曜日
34. n=6の場合を考えてみよう
αさんβさんγさん →職業訓練受講
AさんBさんCさん →職業訓練なし
でもA,B,Cさんとα,β,γさんは
A そもそも属性がかなり違うかも...
B 観測可能なのはこの差
C
α
y β
(たとえば年収) γ
0 1
t(たとえば職業訓練受講の有無)
12年4月27日金曜日
35. n=6の場合を考えてみよう
αさんβさんγさん →職業訓練受講
AさんBさんCさん →職業訓練なし
でもA,B,Cさんとα,β,γさんは
A そもそも属性がかなり違うかも...
B 観測可能なのはこの差
C
α
y β
(たとえば年収) γ
α
β
γ
0 1
t(たとえば職業訓練受講の有無)
12年4月27日金曜日
36. n=6の場合を考えてみよう
αさんβさんγさん →職業訓練受講
AさんBさんCさん →職業訓練なし
でもA,B,Cさんとα,β,γさんは
A そもそも属性がかなり違うかも...
B 観測可能なのはこの差
C
α
y β
(たとえば年収) γ
α
β
γ 職業訓練の因果効果はこの差
0 1
t(たとえば職業訓練受講の有無)
12年4月27日金曜日
37. n=6の場合を考えてみよう
αさんβさんγさん →職業訓練受講
AさんBさんCさん →職業訓練なし
でもA,B,Cさんとα,β,γさんは
A そもそも属性がかなり違うかも...
B 観測可能なのはこの差
C
α
y β
(たとえば年収) γ
α
β
γ 職業訓練の因果効果はこの差
でもα,β,γさんは現実には訓練を受けているので
このデータは反事実的である。残念!
0 1
t(たとえば職業訓練受講の有無)
12年4月27日金曜日
38. n=6の場合を考えてみよう
αさんβさんγさん →職業訓練受講
AさんBさんCさん →職業訓練なし
でもA,B,Cさんとα,β,γさんは
A そもそも属性がかなり違うかも...
B 観測可能なのはこの差
C
α
y β
(たとえば年収)
α
γ E[Yt=1] - E[Yt=0]
β
γ 職業訓練の因果効果はこの差
でもα,β,γさんは現実には訓練を受けているので
このデータは反事実的である。残念!
0 1
t(たとえば職業訓練受講の有無)
12年4月27日金曜日
39. ちなみに「欠測」の枠組みで見てみると...
非処置群(t=0) 処置群(t=1)
非処置時 非処置群のデータ
の効果 E[Yt=0 |t=0]
処置時の 処置群のデータ
効果 E[Yt=1 |t=1]
共変量
12年4月27日金曜日
40. ちなみに「欠測」の枠組みで見てみると...
非処置群(t=0) 処置群(t=1)
非処置時 非処置群のデータ 欠測値(反事実的)
の効果 E[Yt=0 |t=0] E[Yt=0 |t=1]
処置時の 欠測値(反事実的) 処置群のデータ
効果 E[Yt=1 |t=0] E[Yt=1 |t=1]
共変量
12年4月27日金曜日
41. ちなみに「欠測」の枠組みで見てみると...
非処置群(t=0) 処置群(t=1)
非処置時 非処置群のデータ 欠測値(反事実的)
の効果 E[Yt=0 |t=0] E[Yt=0 |t=1]
処置時の 欠測値(反事実的) 処置群のデータ
効果 E[Yt=1 |t=0] E[Yt=1 |t=1]
共変量
E[Yt=1 |t=1]- E[Yt=0 |t=1]
0
処置の因果効果
12年4月27日金曜日
42. ちなみに「欠測」の枠組みで見てみると...
非処置群(t=0) 処置群(t=1)
非処置時 非処置群のデータ 欠測値(反事実的)
の効果 E[Yt=0 |t=0] E[Yt=0 |t=1]
処置時の 欠測値(反事実的) 処置群のデータ
効果 E[Yt=1 |t=0] E[Yt=1 |t=1]
共変量
E[Yt=1 |t=1]- E[Yt=0 |t=1]
0
処置の因果効果
因果推論の根本問題 は 欠測値問題 の一種とも解釈できる
12年4月27日金曜日
43. 2. 因果効果の定義と無作為割付の重要性
諦めたら負け:「集団」を考えれば何とかなる?
n
(1/n) yt=1(個体i) - yt=0(個体i)
i=1
集団の 因果的効果 の定義
E[Yt=1] - E[Yt=0]
ただし、現実世界では同一(サンプル)集団に
異なる処理を同時に与える(観測する)ことはできない!
12年4月27日金曜日
44. 2. 因果効果の定義と無作為割付の重要性
諦めたら負け:「集団」を考えれば何とかなる?
n
(1/n) yt=1(個体i) - yt=0(個体i)
i=1
集団の 因果的効果 の定義
E[Yt=1] - E[Yt=0]
上の二項は依然
反事実的状況を含む
ただし、現実世界では同一(サンプル)集団に
異なる処理を同時に与える(観測する)ことはできない!
12年4月27日金曜日
45. 2. 因果効果の定義と無作為割付の重要性
諦めたら負け:「集団」を考えれば何とかなる?
n
(1/n) yt=1(個体i) - yt=0(個体i)
i=1
集団の 因果的効果 の定義
E[Yt=1] - E[Yt=0]
上の二項は依然
反事実的状況を含む
ただし、現実世界では同一(サンプル)集団に
異なる処理を同時に与える(観測する)ことはできない!
つまり、単に集団を考えるだけでは
因果推論における根本問題は解決しない!
12年4月27日金曜日
47. 2. 因果効果の定義と無作為割付の重要性
実験できる幸せ : 「無作為割付」の威力
α
y β
(たとえば年収) A γ
B
C
0 1
12年4月27日金曜日
t(たとえば職業訓練受講の有無)
48. 2. 因果効果の定義と無作為割付の重要性
実験できる幸せ : 「無作為割付」の威力
集団 ランダムに抽出 じゃないぞ!
個体に処理をランダムに割付
α
y β
(たとえば年収) A γ
B
C
0 1
12年4月27日金曜日
t(たとえば職業訓練受講の有無)
49. 2. 因果効果の定義と無作為割付の重要性
実験できる幸せ : 「無作為割付」の威力
集団 ランダムに抽出 じゃないぞ!
個体に処理をランダムに割付
α
y β
(たとえば年収) α A γ
β B
γ C
0 1
12年4月27日金曜日
t(たとえば職業訓練受講の有無)
50. 2. 因果効果の定義と無作為割付の重要性
実験できる幸せ : 「無作為割付」の威力
集団 ランダムに抽出 じゃないぞ!
個体に処理をランダムに割付
α
y β
(たとえば年収) α A γ
β B
γ C
E[Yt=0|t=1]= E[Y |t=0]
0t=0
0 1
12年4月27日金曜日
t(たとえば職業訓練受講の有無)
51. 2. 因果効果の定義と無作為割付の重要性
実験できる幸せ : 「無作為割付」の威力
集団 ランダムに抽出 じゃないぞ!
個体に処理をランダムに割付
α この観測された差
y β =職業訓練の因果効果!
(たとえば年収) α A γ
β B
γ C
E[Yt=0|t=1]= E[Y |t=0]
0t=0
0 1
12年4月27日金曜日
t(たとえば職業訓練受講の有無)
52. 2. 因果効果の定義と無作為割付の重要性
実験できる幸せ : 「無作為割付」の威力
集団 ランダムに抽出 じゃないぞ!
個体に処理をランダムに割付
α この観測された差
y β =職業訓練の因果効果!
(たとえば年収) α A γ
β B
γ C
E[Yt=1|t=1]- E[Y |t=1]
0
t=0
E[Yt=0|t=1]= E[Y |t=0]
0t=0
0 1
12年4月27日金曜日
t(たとえば職業訓練受講の有無)
53. 「欠測」の枠組みから見ると...
非処置群(t=0) 処置群(t=1)
非処置時 非処置群のデータ 欠測値(反事実的)
の効果 E[Yt=0 |t=0] E[Yt=0 |t=1]
処置時の 欠測値(反事実的) 処置群のデータ
効果 E[Yt=1 |t=0] E[Yt=1 |t=1]
共変量
12年4月27日金曜日
54. 「欠測」の枠組みから見ると...
個体に処理をランダム
集団
に割付
非処置群(t=0) 処置群(t=1)
非処置時 非処置群のデータ 欠測値(反事実的)
の効果 E[Yt=0 |t=0] E[Yt=0 |t=1]
処置時の 欠測値(反事実的) 処置群のデータ
効果 E[Yt=1 |t=0] E[Yt=1 |t=1]
共変量
12年4月27日金曜日
55. 「欠測」の枠組みから見ると...
個体に処理をランダム
集団
に割付
非処置群(t=0) 処置群(t=1)
非処置時 非処置群のデータ 欠測値(反事実的)
の効果 E[Yt=0 |t=0] = E[Yt=0 |t=1]
処置時の 欠測値(反事実的) 処置群のデータ
効果 E[Yt=1 |t=0] E[Yt=1 |t=1]
共変量
12年4月27日金曜日
56. 「欠測」の枠組みから見ると...
個体に処理をランダム
集団
に割付
非処置群(t=0) 処置群(t=1)
非処置時 非処置群のデータ 欠測値(反事実的)
の効果 E[Yt=0 |t=0] = E[Yt=0 |t=1]
処置時の 欠測値(反事実的) 処置群のデータ
効果 E[Yt=1 |t=0] E[Yt=1 |t=1]
共変量
E[Yt=1 |t=1]- E[Yt=0 |t=0]
0
12年4月27日金曜日
57. 「欠測」の枠組みから見ると...
個体に処理をランダム
集団
に割付
非処置群(t=0) 処置群(t=1)
非処置時 非処置群のデータ 欠測値(反事実的)
の効果 E[Yt=0 |t=0] = E[Yt=0 |t=1]
処置時の 欠測値(反事実的) 処置群のデータ
効果 E[Yt=1 |t=0] E[Yt=1 |t=1]
共変量
ランダム割付により
E[Yt=1 |t=1]- E[Yt=0 |t=0]
0
根本問題 を解決!
12年4月27日金曜日
59. 3. 既存の共変量調整法とその問題点
実験できない場合はどうすればいいの?
(1) マッチング・ 層別化
(2) 共変量も含めた回帰モデリング(SEM、共分散分析、重回帰等)
12年4月27日金曜日
60. 3. 既存の共変量調整法とその問題点
実験できない場合はどうすればいいの?
(1) マッチング・ 層別化
・共変量が似たものどうしを比べる
(2) 共変量も含めた回帰モデリング(SEM、共分散分析、重回帰等)
12年4月27日金曜日
61. 3. 既存の共変量調整法とその問題点
実験できない場合はどうすればいいの?
(1) マッチング・ 層別化
・共変量が似たものどうしを比べる
ただし: 類似 の判断はしばしば恣意的。共変量が多い
と 類似する データがどんどん少なくなる(次元の呪い)。
(2) 共変量も含めた回帰モデリング(SEM、共分散分析、重回帰等)
12年4月27日金曜日
62. 3. 既存の共変量調整法とその問題点
実験できない場合はどうすればいいの?
(1) マッチング・ 層別化
・共変量が似たものどうしを比べる
ただし: 類似 の判断はしばしば恣意的。共変量が多い
と 類似する データがどんどん少なくなる(次元の呪い)。
(2) 共変量も含めた回帰モデリング(SEM、共分散分析、重回帰等)
・回帰モデルにより共変量の影響を調整
12年4月27日金曜日
63. 3. 既存の共変量調整法とその問題点
実験できない場合はどうすればいいの?
(1) マッチング・ 層別化
・共変量が似たものどうしを比べる
ただし: 類似 の判断はしばしば恣意的。共変量が多い
と 類似する データがどんどん少なくなる(次元の呪い)。
(2) 共変量も含めた回帰モデリング(SEM、共分散分析、重回帰等)
・回帰モデルにより共変量の影響を調整
ただし:従属変数と共変量の関係を正しくモデル化する
必要がある。偏回帰係数の解釈はしばしば困難。
12年4月27日金曜日
64. 3. 既存の共変量調整法とその問題点
実験できない場合はどうすればいいの?
(1) マッチング・ 層別化
・共変量が似たものどうしを比べる
ただし: 類似 の判断はしばしば恣意的。共変量が多い
と 類似する データがどんどん少なくなる(次元の呪い)。
(2) 共変量も含めた回帰モデリング(SEM、共分散分析、重回帰等)
・回帰モデルにより共変量の影響を調整
ただし:従属変数と共変量の関係を正しくモデル化する
必要がある。偏回帰係数の解釈はしばしば困難。
傾向スコア法は上記の 良いとこどり 的な(←たぶん)
セミパラメトリックなアプローチ
12年4月27日金曜日
66. 4. 傾向スコアの定義
傾向スコアとは:「割り付けられっぽさ」の指標
ei = p(ti =1|ci)
12年4月27日金曜日
67. 4. 傾向スコアの定義
傾向スコアとは:「割り付けられっぽさ」の指標
データiの(共変量から予測される)
処理1への割り付けられやすさ(確率)
ei = p(ti =1|ci)
12年4月27日金曜日
68. 4. 傾向スコアの定義
傾向スコアとは:「割り付けられっぽさ」の指標
データiの(共変量から予測される) データiの共変量ベクトル
処理1への割り付けられやすさ(確率)
ei = p(ti =1|ci)
12年4月27日金曜日
69. 4. 傾向スコアの定義
傾向スコアとは:「割り付けられっぽさ」の指標
データiの(共変量から予測される) データiの共変量ベクトル
処理1への割り付けられやすさ(確率)
ei = p(ti =1|ci)
条件付け
割付がt=1となる確率
12年4月27日金曜日
70. 4. 傾向スコアの定義
傾向スコアとは:「割り付けられっぽさ」の指標
データiの(共変量から予測される) データiの共変量ベクトル
処理1への割り付けられやすさ(確率)
ei = p(ti =1|ci)
条件付け
割付がt=1となる確率
*この式は共変量と「割付」の関係なので従属変数も結果変数もでてこないことに注意!
12年4月27日金曜日
71. 4. 傾向スコアの定義
傾向スコアとは:「割り付けられっぽさ」の指標
データiの(共変量から予測される) データiの共変量ベクトル
処理1への割り付けられやすさ(確率)
ei = p(ti =1|ci)
条件付け
割付がt=1となる確率
*この式は共変量と「割付」の関係なので従属変数も結果変数もでてこないことに注意!
一般にはロジスティック回帰が用いられるらしいよ:
ti ~ 1/[1+exp(-(α+∑βkck,i))]
ei = 1/[1+exp(-(α+∑βkck,i))]
12年4月27日金曜日
72. イメージ的にはこんなかんじかな?
共変量
傾向スコア法では 結果変数の説明にではなく
こっちの計算に使う
「割付をモデル化」
同じ「傾向スコア=割り付けられっぽさ」を持つ
データが実際にどちらの処理に割付られているかは 傾向スコア
偶然による=処置以外の(平均)効果は
無作為化されてると期待できる!
非処置群(t=0) 処置群(t=1)
非処置時 非処置群のデータ 欠測値(反事実的)
の効果 E[Yt=0 |t=0] E[Yt=0 |t=1]
処置時の 欠測値(反事実的) 処置群のデータ
効果 E[Yt=1 |t=0] E[Yt=1 |t=1]
共変量
12年4月27日金曜日
74. 5. 傾向スコアを用いた具体的な解析方法
(1) 傾向スコアの推定
・ロジスティック回帰などを用いて共変量から傾向スコアを計算
(2) 指定された傾向スコアを用いた調整
12年4月27日金曜日
75. 5. 傾向スコアを用いた具体的な解析方法
(1) 傾向スコアの推定
・ロジスティック回帰などを用いて共変量から傾向スコアを計算
(2) 指定された傾向スコアを用いた調整
・マッチング
・層別解析
・共分散分析(回帰モデルにおける補正項として/ちょっと無理筋らしい)
・IPW推定量
12年4月27日金曜日
76. 5. 傾向スコアを用いた具体的な解析方法
(1) 傾向スコアの推定
・ロジスティック回帰などを用いて共変量から傾向スコアを計算
(2) 指定された傾向スコアを用いた調整
・マッチング 傾向スコアの似たデータ同士で処置間の
・層別解析 効果(結果変数)の差を解析
・共分散分析(回帰モデルにおける補正項として/ちょっと無理筋らしい)
・IPW推定量
12年4月27日金曜日
77. 5. 傾向スコアを用いた具体的な解析方法
(1) 傾向スコアの推定
・ロジスティック回帰などを用いて共変量から傾向スコアを計算
(2) 指定された傾向スコアを用いた調整
・マッチング 傾向スコアの似たデータ同士で処置間の
・層別解析 効果(結果変数)の差を解析
・共分散分析(回帰モデルにおける補正項として/ちょっと無理筋らしい)
・IPW推定量 傾向スコアの逆数を用いて重み付け平均する
(各群における周辺期待値と一致するらしい)
12年4月27日金曜日
78. 5. 傾向スコアを用いた具体的な解析方法
(1) 傾向スコアの推定
・ロジスティック回帰などを用いて共変量から傾向スコアを計算
(2) 指定された傾向スコアを用いた調整
・マッチング 傾向スコアの似たデータ同士で処置間の
・層別解析 効果(結果変数)の差を解析
・共分散分析(回帰モデルにおける補正項として/ちょっと無理筋らしい)
・IPW推定量 傾向スコアの逆数を用いて重み付け平均する
(各群における周辺期待値と一致するらしい)
よく分からないかもしれないので
とりあえずあとでRで実装してみましょう
12年4月27日金曜日
79. 傾向スコアを用いた解析のイメージ
職業訓練受講 訓練実施後の年収
‘treat’ マッチング
‘re78’
受講したか 78年の年収
層別化
重み付け 処置の上流にある交絡要因による偽相関の影響を
処理自体の影響(因果効果)と分離
傾向スコア
ロジスティック回帰
年齢 教育年数 黒人か ヒスパニックか 既婚か
‘age’ ‘educ’ ‘black’ ‘hisp’ ‘married’
高卒以上か 74年の年収 75年の年収 74年に収入ゼロか 75年に収入ゼロか
‘nodegr’ ‘re74’ ‘re75’ ‘u74’ ‘u75’
共変量
12年4月27日金曜日
81. 6. 傾向スコアによる調整が共分散分析的
手法より優れている点
(1) 次元の縮約
傾向スコアは共変量を一変数に縮約しているので、2つの群にお
いて共変量の値に重なりがない場合でも利用できる
(2) モデル依存性の低さ・解析のロバストさ
12年4月27日金曜日
82. 6. 傾向スコアによる調整が共分散分析的
手法より優れている点
(1) 次元の縮約
傾向スコアは共変量を一変数に縮約しているので、2つの群にお
いて共変量の値に重なりがない場合でも利用できる
(2) モデル依存性の低さ・解析のロバストさ
・共変量と従属変数間の関係をモデリングしなくてよい
・回帰モデル系の解析よりもモデルの誤設定に強い
12年4月27日金曜日
83. 6. 傾向スコアによる調整が共分散分析的
手法より優れている点
(1) 次元の縮約
傾向スコアは共変量を一変数に縮約しているので、2つの群にお
いて共変量の値に重なりがない場合でも利用できる
(2) モデル依存性の低さ・解析のロバストさ
・共変量と従属変数間の関係をモデリングしなくてよい
・回帰モデル系の解析よりもモデルの誤設定に強い
(一応解析結果でたけど解釈がわけわからんとか)
多変量解析における泥沼化 (「ほんとうのモデル探しの旅」に行ったきり帰ってこれないとか)
を避けるためにも有用そう(*林の感想)
12年4月27日金曜日
85. 7. 前提条件のチェックと共変量の
選択方法について
適用の前提条件:「強く無視できる割当」
どちらの群に割り当てられるかは観測された共変量の値に依存し、
従属変数の値の高低には依存しない
12年4月27日金曜日
86. 7. 前提条件のチェックと共変量の
選択方法について
適用の前提条件:「強く無視できる割当」
どちらの群に割り当てられるかは観測された共変量の値に依存し、
従属変数の値の高低には依存しない
前提条件の(間接的な)チェック法&変数選択法:
12年4月27日金曜日
87. 7. 前提条件のチェックと共変量の
選択方法について
適用の前提条件:「強く無視できる割当」
どちらの群に割り当てられるかは観測された共変量の値に依存し、
従属変数の値の高低には依存しない
前提条件の(間接的な)チェック法&変数選択法:
(1) 割付を共変量が説明していることを示す
・擬似決定係数、c統計量など(目安として0.8以上)
(2) 共変量自体の分布を調整していることを示す
・群間で共変量の分布の差が消えていることを示す
(3) 因果ダイアグラムの観点からの変数選択
・従属変数との因果的関連性の観点から共変量を選ぶ
12年4月27日金曜日
88. 7. 前提条件のチェックと共変量の
選択方法について
適用の前提条件:「強く無視できる割当」
どちらの群に割り当てられるかは観測された共変量の値に依存し、
従属変数の値の高低には依存しない
前提条件の(間接的な)チェック法&変数選択法:
(1) 割付を共変量が説明していることを示す
この辺りが
・擬似決定係数、c統計量など(目安として0.8以上) 実装の際の
びみょうな
(2) 共変量自体の分布を調整していることを示す ハードルっぽい
・群間で共変量の分布の差が消えていることを示す
(3) 因果ダイアグラムの観点からの変数選択
・従属変数との因果的関連性の観点から共変量を選ぶ
12年4月27日金曜日
89. Rによる実装( lalonde data)
lalonde data setとは:
1976年米国職業訓練プログラム(445データ, 12変数)
職業訓練受講 訓練実施後の年収
興味のある
‘treat’ ‘re78’ 興味のある
受講したか 78年の年収 結果変数
説明変数 交絡
?
年齢 教育年数 黒人か ヒスパニックか 既婚か
‘age’ ‘educ’ ‘black’ ‘hisp’ ‘married’
高卒以上か 74年の年収 75年の年収 74年に収入ゼロか 75年に収入ゼロか
‘nodegr’ ‘re74’ ‘re75’ ‘u74’ ‘u75’
共変量 (いかにも交絡してそう!)
12年4月27日金曜日
90. Rによる実装( lalonde data)
傾向スコアを用いた解析のイメージ
職業訓練受講 訓練実施後の年収
‘treat’ マッチング
‘re78’
受講したか 78年の年収
層別化
重み付け 処置の上流にある交絡要因による偽相関の影響を
処理自体の影響(因果効果)と分離
傾向スコア
ロジスティック回帰
年齢 教育年数 黒人か ヒスパニックか 既婚か
‘age’ ‘educ’ ‘black’ ‘hisp’ ‘married’
高卒以上か 74年の年収 75年の年収 74年に収入ゼロか 75年に収入ゼロか
‘nodegr’ ‘re74’ ‘re75’ ‘u74’ ‘u75’
共変量
12年4月27日金曜日
91. Rによる実装( lalonde data)
lalonde data setの読み込み
> #Data preparation
> install.packages("Matching")
> library(Matching)
> data(lalonde)
> summary(lalonde)
> head(lalonde)
> head(lalonde)
age educ black hisp married nodegr re74 re75 re78 u74 u75 treat
1 37 11 1 0 1 1 0 0 9930.05 1 1 1
2 22 9 0 1 0 1 0 0 3595.89 1 1 1
3 30 12 1 0 0 0 0 0 24909.50 1 1 1
4 27 11 1 0 0 1 0 0 7506.15 1 1 1
5 33 8 1 0 0 1 0 0 289.79 1 1 1
6 22 9 1 0 0 1 0 0 4056.49 1 1 1
12年4月27日金曜日
92. Rによる実装( lalonde data)
傾向スコアの算出
> logi <- glm(treat ~ age + educ + black + hisp + married + nodegr + re74 + re75 + u74+ u75, family=binomial,
data=lalonde)
> summary(logi)
Call:
glm(formula = treat ~ age + educ + black + hisp + married + nodegr +
re74 + re75 + u74 + u75, family = binomial, data = lalonde)
Deviance Residuals:
Min 1Q Median 3Q Max
-1.4884 -0.9934 -0.8708 1.2242 1.7403
Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) 1.622e+00 1.102e+00 1.472 0.1410
age 8.276e-03 1.452e-02 0.570 0.5687
educ -8.282e-02 7.230e-02 -1.145 0.2520
black -2.216e-01 3.684e-01 -0.601 0.5476 ←素朴な疑問:関連が強くなさそうな変数も
hisp -8.557e-01 5.128e-01 -1.669 0.0952 .
married
nodegr
1.960e-01 2.784e-01 0.704
-8.981e-01 3.146e-01 -2.855
0.4813
0.0043 **
入ってるっぽいけどこれいいのかなあ?
re74 -4.466e-05 3.010e-05 -1.483 0.1380
re75 2.924e-05 4.788e-05 0.611 0.5414
u74 -1.927e-01 3.765e-01 -0.512 0.6088
u75 -3.369e-01 3.213e-01 -1.048 0.2945
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
(Dispersion parameter for binomial family taken to be 1)
Null deviance: 604.20 on 444 degrees of freedom
Residual deviance: 584.26 on 434 degrees of freedom
AIC: 606.26
Number of Fisher Scoring iterations: 4
12年4月27日金曜日
93. Rによる実装( lalonde data)
マッチングによる因果効果の推定
>
> Y78 <- lalonde$re78
> Tre <- lalonde$treat
> lm(Y78 Tre)
> mout1 <- Match(Y=Y78,Tr=Tre,X=logi$fitted)
> summary(mout1)
Call:
lm(formula = Y78 Tre)
Estimate... 2138.6
AI SE...... 797.76
Coefficients:
T-stat..... 2.6807 Tre
(Intercept)
p.val...... 0.0073468
4555 1794 ←補正なしの線形モデルにおける処置効果
> mout1 number of observations.............. 445
Original <- Match(Y=Y78,Tr=Tre,X=logi$fitted)
> summary(mout1) treated obs............... 185
Original number of
Matched number of observations............... 185
Estimate... 2138.6 observations (unweighted). 322
Matched number of
←傾向スコアによるマッチング後の処置群での因果効果
AI SE...... 797.76
T-stat..... 2.6807
p.val...... 0.0073468
Original number of observations.............. 445
Original number of treated obs............... 185
Matched number of observations............... 185
Matched number of observations (unweighted). 322
12年4月27日金曜日
94. Rによる実装( lalonde data)
マッチングにより共変量の分布は近づいているか?
> MatchBalance(treat ~ age + educ + black + hisp + married + nodegr + re74 + re75 + u74+ u75,
> mout1 <- Match(Y=Y78,Tr=Tre,X=logi$fitted)
match.out=mout1, nboots=1000, data=lalonde)
> summary(mout1)
...(略)...
Estimate... 2138.6
***** (V4) hisp *****
AI SE...... 797.76
Before Matching $ $ After Matching
meanT-stat..... 2.6807
treatment........ 0.059459 $ $ 0.059459
meanp.val...... 0.0073468
control..........
std mean diff.........
0.10769 $
-20.341 $
$
$
0.048649
4.5591
←meanが近づいている
meanOriginal number of observations.............. 445
raw eQQ diff..... 0.048649 $ $ 0.015528
med Original number of treated obs............... 185
raw eQQ diff..... 0 $ $ 0
max Matched number of observations............... 185
raw eQQ diff..... 1 $ $ 1
Matched number of observations (unweighted). 322
mean eCDF diff........ 0.024116 $ $ 0.007764
med eCDF diff........ 0.024116 $ $ 0.007764
max eCDF diff........ 0.048233 $ $ 0.015528
var ratio (Tr/Co)..... 0.58288 $ $ 1.2083
T-test p-value........ 0.064043 $ $ 0.52743
var ratio (Tr/Co)..... 0.58288 $ $ 1.2083
T-test p-value........ 0.064043 $ $ 0.52743
12年4月27日金曜日
95. Rによる実装( lalonde data)
IPW推定量を用いた因果効果の解析
> > #Analysis ny IPW estimation
> ivec1 <- lalonde$treat
> ivec2 <- <- Match(Y=Y78,Tr=Tre,X=logi$fitted)
> mout1 rep(1, nrow(lalonde)) - ivec1
> ivec <- cbind(ivec1,ivec2)
> summary(mout1)
> iestp1 <- ivec1/logi$fitted
> iestp2 <- ivec2/(1-logi$fitted)
> Estimate... 2138.6
iestp <- iestp1 + iestp2
> ipwe <- lm(lalonde$re78 ~ ivec-1,weight=iestp, data=lalonde)
AI SE...... 797.76
> summary(ipwe)
T-stat..... 2.6807
p.val...... 0.0073468
Call:
lm(formula = lalonde$re78 ~ ivec - 1, data = lalonde, weights = iestp)
Original number of observations.............. 445
Residuals:
Original number of treated obs............... 185
Min 1Q Median 3Q Max
-11116 -5935 -2502 observations............... 185
Matched number of 4084 83691
Matched number of observations (unweighted). 322
Coefficients: ↓この差が因果効果(=1623.6)
Estimate Std. Error t value Pr(>|t|)
ivecivec1 6213.0 457.3 13.59 <2e-16 ***
ivecivec2 4571.4 455.9 10.03 <2e-16 ***
--- ↑推定誤差も計算できるよ
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 9630 on 443 degrees of freedom
Multiple R-squared: 0.3916,$ Adjusted R-squared: 0.3888
F-statistic: 142.6 on 2 and 443 DF, p-value: < 2.2e-16
12年4月27日金曜日
96. Rによる実装( linder data)
lindner datasetとは:
経皮的冠動脈形成術
Linderセンター病院においてPCIを受けた患者のデータ(996人, 12変数)
12年4月27日金曜日
97. Rによる実装( linder data)
lindner datasetとは:
経皮的冠動脈形成術
Linderセンター病院においてPCIを受けた患者のデータ(996人, 10変数)
血小板受容体
拮抗薬投与 術後余命
興味のある
‘abcix’ ‘lifepres’ 興味のある
abciximab投与か 術後期待される余命(年) 結果変数
説明変数 交絡
?
術後の医療費 急性心筋梗塞か 左室駆出率 女性か
‘cardbill’ ‘acutemi’ ‘ejecfrac’ ‘female’
初期PCIにおける血管数 肥満か 身長
‘vesi1proc’ ‘diabetic’ ‘height’
共変量
12年4月27日金曜日
98. Rによる実装( linder data)
傾向スコアを用いた解析のイメージ
血小板受容体
術後余命
拮抗薬投与
‘abcix’ マッチング ‘lifepres’
層別化 術後期待される余命(年)
abciximab投与か
重み付け 処置の上流にある交絡要因による偽相関の影響を
処理自体の影響(因果効果)と分離
傾向スコア
ロジスティック回帰
術後の医療費 急性心筋梗塞か 左室駆出率 女性か
‘cardbill’ ‘acutemi’ ‘ejecfrac’ ‘female’
初期PCIにおける血管数 肥満か 身長
‘vesi1proc’ ‘diabetic’ ‘height’
共変量
12年4月27日金曜日
99. Rによる実装( linder data)
linder data setの読み込み
> #Data preparation
> install.packages("PSAgraphics")
> install.packages("USPS")
> library(USPS)
> data("lindner")
> attach(lindner)
> summary(lindner)
> head(lindner)
> head(lindner)
lifepres cardbill abcix stent height female diabetic acutemi ejecfrac ves1proc
1 0.0 14301 1 0 163 1 1 0 56 1
2 11.6 3563 1 0 168 0 0 0 56 1
3 11.6 4694 1 0 188 0 0 0 50 1
4 11.6 7366 1 0 175 0 1 0 50 1
5 11.6 8247 1 0 168 1 0 0 55 1
6 11.6 8319 1 0 178 0 0 0 50 1
12年4月27日金曜日
100. Rによる実装( linder data)
傾向スコアの算出とマッチングによる解析
> Ylifepres <- lindner$lifepres
> Tre <-lindner$abcix
> lm(Ylifepres ~ Tre)
Call:
lm(formula = Ylifepres ~ Tre)
Coefficients:
(Intercept) Tre
11.0161 0.4011 ←補正なしの線形回帰による処理効果
>
> lindner.log <- glm(abcix ~ stent + height + female + diabetic + acutemi +
ejecfrac + ves1proc, data=lindner, family = binomial)
> ps <- lindner.log$fitted
>
> mout <- Match(Y=Ylifepres,Tr=Tre,X=ps)
> summary(mout)
Estimate... 0.77278←傾向スコアによるマッチング後の因果効果
AI SE...... 0.24958
T-stat..... 3.0963
p.val...... 0.0019596
Original number of observations.............. 996
Original number of treated obs............... 698
Matched number of observations............... 698
Matched number of observations (unweighted). 986
12年4月27日金曜日
101. Rによる実装( linder data)
マッチングにより共変量の分布は近づいているか?
> MatchBalance(abcix ~ stent + height + female + diabetic + acutemi + ejecfrac +
ves1proc, match.out=mout, nboots=1000, data=lindner)
...(略)...
***** (V5) acutemi *****
Before Matching $ $ After Matching
mean treatment........ 0.17908 $ $ 0.17908
mean control.......... 0.060403 $ $ 0.16655
std mean diff......... 30.931 $ $ 3.2671 ←meanが近づいている
mean raw eQQ diff..... 0.11745 $ $ 0.0060852
med raw eQQ diff..... 0 $ $ 0
max raw eQQ diff..... 1 $ $ 1
mean eCDF diff........ 0.05934 $ $ 0.0030426
med eCDF diff........ 0.05934 $ $ 0.0030426
max eCDF diff........ 0.11868 $ $ 0.0060852
var ratio (Tr/Co)..... 2.5853 $ $ 1.0591
T-test p-value........ 4.6617e-09 $ $ 0.396
12年4月27日金曜日
102. Advanced Topics
(1) 条件が3つ以上の比較の場合
・一般化傾向スコアという単純な拡張があるらしい
(2) 回帰モデル自体/回帰係数に興味がある場合
・周辺平均構造を扱う一般化推定方程式を用いるらしい
・重み付けM推定量
(3) 傾向スコアのモデル式自体が怪しくないですか?
・二重にロバストな推定法(回帰分析+周辺構造モデルの標準化)
場合によってはこの辺りも必要になるかも
12年4月27日金曜日