みどりぼん読書会 第4章
Post on 15-Jan-2015
1.744 Views
Preview:
DESCRIPTION
TRANSCRIPT
第4章 GLMのモデル選択 -‐AICとモデルの予測の良さ-‐
担当者: takano Twi3er: @mtknnktm
第4回 「データ解析のための統計モデリング入門」読書会 #みどりぼん
1
第4章の目的 データはひとつ、モデルはたくさん • あるデータに対して考えることができる統計モデルは
無数にありうる • どんなモデルを採用したらいいのか? – あてはまりの良いモデル? – モデルを複雑化させればいくらでもあてはまりはよくでき
る(が理解できない)
• いい統計モデルとはなにか? – データ解析の目的達成のためにどうやってモデル選択を
したらいいか? • データ解析の目的 – 観測される現象の背後にあるしくみを知るため – そのために現象を近似する統計モデルの構築をしたい
4.0,節 4.1節 2
例題: あるデータに対する5つのモデル
4.2節 3
y ~ Poisson(exp(β1))y ~ Poisson(exp(β2 f +β1))y ~ Poisson(exp(β3x +β1))y ~ Poisson(exp(β2 f +β3x +β1))y ~ Poisson(exp(β1x1 +β2x2 +!))
A. B. C. D. E.
y: 種子数, x: 体サイズ, f: 施肥処理の有無
例題: あるデータに対する5つのモデル
• パラメータ数k=1 切片のみ • 体のサイズxも施肥処理fも影響しないモデル • 一定モデル / Nullモデルと呼ぶ • 多分、一番あてはまりが悪い
4.2節 4
y: 種子数, x: 体サイズ, f: 施肥処理の有無
A. B. C. D. E.
※イメージ
y ~ Poisson(exp(β1))y ~ Poisson(exp(β2 f +β1))y ~ Poisson(exp(β3x +β1))y ~ Poisson(exp(β2 f +β3x +β1))y ~ Poisson(exp(β1x1 +β2x2 +!))
例題: あるデータに対する5つのモデル
• パラメータ数k=2 • 施肥処理fが影響するモデル
4.2節 5
y: 種子数, x: 体サイズ, f: 施肥処理の有無
施肥処理あり
施肥処理なし
A. B. C. D. E.
※イメージ
y ~ Poisson(exp(β1))y ~ Poisson(exp(β2 f +β1))y ~ Poisson(exp(β3x +β1))y ~ Poisson(exp(β2 f +β3x +β1))y ~ Poisson(exp(β1x1 +β2x2 +!))
例題: あるデータに対する5つのモデル
• パラメータ数k=2 • 体のサイズxが影響するモデル
4.2節 6
y: 種子数, x: 体サイズ, f: 施肥処理の有無
A. B. C. D. E.
※イメージ
y ~ Poisson(exp(β1))y ~ Poisson(exp(β2 f +β1))y ~ Poisson(exp(β3x +β1))y ~ Poisson(exp(β2 f +β3x +β1))y ~ Poisson(exp(β1x1 +β2x2 +!))
例題: あるデータに対する5つのモデル
• パラメータ数k=2 • 体のサイズxも施肥処理fも影響するモデル
4.2節 7
y: 種子数, x: 体サイズ, f: 施肥処理の有無
施肥処理あり
施肥処理なし
A. B. C. D. E.
※イメージ
y ~ Poisson(exp(β1))y ~ Poisson(exp(β2 f +β1))y ~ Poisson(exp(β3x +β1))y ~ Poisson(exp(β2 f +β3x +β1))y ~ Poisson(exp(β1x1 +β2x2 +!))
例題: あるデータに対する5つのモデル
• パラメータ数k=データ数
• 各データに1対1で対応したパラメータであてはめるモデル
• フルモデルと呼ぶ 4.2節 8
y: 種子数, x: 体サイズ, f: 施肥処理の有無
A. B. C. D. E.
※イメージ
y ~ Poisson(exp(β1))y ~ Poisson(exp(β2 f +β1))y ~ Poisson(exp(β3x +β1))y ~ Poisson(exp(β2 f +β3x +β1))y ~ Poisson(exp(β1x1 +β2x2 +!))
で、結局どれがいいの?
9
あてはまりに関する量を計算してみる
モデル k 最大対数尤度 log L*
逸脱度 D=-‐2 log L*
残差逸脱度 D -‐ min(D)
A: 一定 1 -‐237.6 475.3 89.5
B: f 2 -‐237.6 475.3 89.5
C: x 2 -‐235.4 470.8 85.0
D: x+f 3 -‐235.3 470.6 84.8
E: フル 100 -‐192.9 385.8 0.0
4.3節 10
あてはまりに関する量を計算してみる
モデル k 最大対数尤度 log L*
逸脱度 D=-‐2 log L*
残差逸脱度 D -‐ min(D)
A: 一定 1 -‐237.6 475.3 89.5
B: f 2 -‐237.6 475.3 89.5
C: x 2 -‐235.4 470.8 85.0
D: x+f 3 -‐235.3 470.6 84.8
E: フル 100 -‐192.9 385.8 0.0
4.3節 11
• モデルのデータに対するあてはまりの良さ (2章参照)
あてはまりに関する量を計算してみる
モデル k 最大対数尤度 log L*
逸脱度 D=-‐2 log L*
残差逸脱度 D -‐ min(D)
A: 一定 1 -‐237.6 475.3 89.5
B: f 2 -‐237.6 475.3 89.5
C: x 2 -‐235.4 470.8 85.0
D: x+f 3 -‐235.3 470.6 84.8
E: フル 100 -‐192.9 385.8 0.0
4.3節 12
• モデルのデータに対するあてはまりの悪さ • “−最大対数尤度” と比例
あてはまりに関する量を計算してみる
モデル k 最大対数尤度 log L*
逸脱度 D=-‐2 log L*
残差逸脱度 D -‐ min(D)
A: 一定 1 -‐237.6 475.3 89.5
B: f 2 -‐237.6 475.3 89.5
C: x 2 -‐235.4 470.8 85.0
D: x+f 3 -‐235.3 470.6 84.8
E: フル 100 -‐192.9 385.8 0.0
4.3節 13
• モデルのデータに対する相対的なあてはまりの悪さ • 対象のモデルの逸脱度から最も逸脱度の低くなるフルモ
デルを引いた値 • Rの表記 • 一定モデルの残差逸脱度: Null Deviance • 対象のモデルの残差逸脱度: Residual Deviance
あてはまりの良いモデルを選んでみる
モデル k 最大対数尤度 log L*
逸脱度 D=-‐2 log L*
残差逸脱度 D -‐ min(D)
A: 一定 1 -‐237.6 475.3 89.5
B: f 2 -‐237.6 475.3 89.5
C: x 2 -‐235.4 470.8 85.0
D: x+f 3 -‐235.3 470.6 84.8
E: フル 100 -‐192.9 385.8 0.0
4.3節 14
• 最もあてはまりの良いモデルはフルモデル • データ1つ1つに対して、パラメータを1つ1つ割り
当てたモデル → 体のサイズの影響も施肥処理の効果も全くわからない → たまたま得られた観測データへの特殊化をしてるだけ (もう一回データ取ってきたら多分全然当てはまらない)
困った
15
そこでAIC
16
AIC
モデル k 最大対数尤度 log L*
逸脱度 D=-‐2 log L*
残差逸脱度 D -‐ min(D)
AIC D+2k
A: 一定 1 -‐237.6 475.3 89.5 477.3
B: f 2 -‐237.6 475.3 89.5 479.3
C: x 2 -‐235.4 470.8 85.0 474.8
D: x+f 3 -‐235.3 470.6 84.8 476.6
E: フル 100 -‐192.9 385.8 0.0 585.8
4.3節 17
• AIC = -‐2{最大対数尤度 – パラメータ数}=D+2k • つまり、 • あてはまりがよい(逸脱度Dが小さい) • パラメータ数が少ない というモデルがAIC最小になる
• あてはまりの良さではなく予測の良さの指標
そのAICでモデルを選ぶと
モデル k 最大対数尤度 log L*
逸脱度 D=-‐2 log L*
残差逸脱度 D -‐ min(D)
AIC D+2k
A: 一定 1 -‐237.6 475.3 89.5 477.3
B: f 2 -‐237.6 475.3 89.5 479.3
C: x 2 -‐235.4 470.8 85.0 474.8
D: x+f 3 -‐235.3 470.6 84.8 476.6
E: フル 100 -‐192.9 385.8 0.0 585.8
4.3節 18
• AIC最小になるモデルは 体のサイズが種子数に影響するモデル • なんかそれっぽい!
予測の良さっ何? なんで予測の良さで
選んでいいの? なんで予測の良さが
AIC=-‐2(log L*-‐k) なの?
19
AICのための例題
• 体のサイズも施肥処理も影響しない植物の観測データ – 「50個体を観測」×200回実施
• 比較する2つのモデル A: B:
• この2つはβ=0と置くと、AとBは同じ – BはAを含んでいるような場合、 BはAをネストしている (nested) と言う
4.4節 20
こっちが正解 y ~ Poisson(exp(β1))y ~ Poisson(exp(β2x +β1))
AICのための例題
• 体のサイズも施肥処理も影響しない植物の観測データ – 「50個体を観測」×200回実施
• 比較する2つのモデル A: B:
• この2つはβ=0と置くと、AとBは同じ – BはAを含んでいるような場合、 BはAをネストしている (nested) と言う
4.4節 21
y ~ Poisson(exp(β1))y ~ Poisson(exp(β2x +β1))
まずこちらのモデルの 予測の良さを評価する
予測の良さ: 平均対数尤度
4.5節 22
(本来わからない) 真の統計モデル
50個体の種子を調査×200
パラメータを最尤推定→
・・・
β1, logL* β1, logL
* β1, logL*
・・・
y ~ Poisson(exp(β1))
1つのデータについて最尤推定してモデルを求める×200回
予測の良さ: 平均対数尤度
4.5節 23
(本来わからない) 真の統計モデル
50個体の種子を調査×200
パラメータを最尤推定→
・・・
β1, logL* β1, logL
* β1, logL*
・・・
• 平均対数尤度 – ある観測データに対して求めたモデルが、他の観測データに対してど
の程度あてはまるか? の指標 • つまり、真の統計モデルから生成される未知のデータに対するあ
てはまりの良さ「予測の良さ」を表していると言える
E(logL*)
y ~ Poisson(exp(β1))
それぞれ求めたモデルを 他の199個のデータで対数尤度を評価
それの平均値: 平均対数尤度
それぞれの最大対数尤度は平均対数尤度からどのぐらいずれているのか計算してみる
4.5節 24
(本来わからない) 真の統計モデル
50個体の種子を調査×200
・・・
b = logL* −E(logL*) 平均対数尤度は200回分を平均して擬似的に求める
このbをバイアスと呼ぶ
パラメータを最尤推定→
β1, logL* β1, logL
* β1, logL*
・・・
y ~ Poisson(exp(β1))
それぞれの最大対数尤度は平均対数尤度からどのぐらいずれているのか計算してみる
4.5節 25
(本来わからない) 真の統計モデル
50個体の種子を調査×200
・・・
b = logL* −E(logL*)
パラメータを最尤推定→
β1, logL* β1, logL
* β1, logL*
・・・
E(logL*) = logL* − b
b はだいたい1
y ~ Poisson(exp(β1))
それぞれの最大対数尤度は平均対数尤度からどのぐらいずれているのか計算してみる
4.5節 26
(本来わからない) 真の統計モデル
50個体の種子を調査×200
・・・
b = logL* −E(logL*)
パラメータを最尤推定→
β1, logL* β1, logL
* β1, logL*
・・・
E(logL*) = logL* − b = logL* −1
b はだいたい1
?
y ~ Poisson(exp(β1))
それぞれの最大対数尤度は平均対数尤度からどのぐらいずれているのか計算してみる
4.5節 27
(本来わからない) 真の統計モデル
50個体の種子を調査×200
・・・
b = logL* −E(logL*)
パラメータを最尤推定→
β1, logL* β1, logL
* β1, logL*
・・・
E(logL*) = logL* − b = logL* −1
b はだいたい1
?
パラメータ数 k と同じ?
y ~ Poisson(exp(β1))
それぞれの最大対数尤度は平均対数尤度からどのぐらいずれているのか計算してみる
4.5節 28
(本来わからない) 真の統計モデル
50個体の種子を調査×200
・・・
b = logL* −E(logL*)
パラメータを最尤推定→
β1, logL* β1, logL
* β1, logL*
・・・
y ~ Poisson(exp(β x + b))
b はだいたい1
実は、最尤推定するパラメータをk個もつモデル の平均対数尤度の推定量は log L* -‐ k であると
解析的かつ一般的に導出できる ※ 前述の数理統計学の教科書などを参照のこと
E(logL*) = logL* − b = logL* −1 ?
パラメータ数 k と同じ?
平均対数尤度は求まった。AICは?
• 平均対数尤度
• AICは平均対数尤度に-‐2を掛けただけ
• この章の前半で実施したモデル選択方法 「AICが最小のモデルを選ぶ」は 平均対数尤度が最大になるモデルを選択していたということ同じ – つまり、AIC最小のモデル=良い予測をするモデル
4.5節 29
E(logL*) = logL* − k
AIC = −2(logL* − k)
モデル k 最大対数尤度 log L*
逸脱度 D=-‐2 log L*
残差逸脱度 D -‐ min(D)
AIC D+2k
一定(真のモデル) 1 -‐120.1 240.2 50.8 242.1
x 2 -‐120.1 240.1 50.7 244.1
ちょっと待って
• バイアス b の平均は確かにパラメータ数 k とだいたい同じだったが、ばらつきが大きい
• こんなにばらつきの大きな値を使ってい
いの?
4.5節 30
ネスト関係にある2つのモデルを比較
4.5節 31
(本来わからない) 真の統計モデル
50個体の種子を調査×200
・・・
2つのモデルでパラメータを最尤推定
logL*1 − logL*2
y ~ Poisson(exp(β1x + b))
y ~ Poisson(exp(b))
y ~ Poisson(exp(b))
最大対数尤度の差
E(logL*1)−E(logL*2 )
平均対数尤度(推定値?)の差
ネスト関係にある2つのモデルを比較
4.5節 32
(本来わからない) 真の統計モデル
50個体の種子を調査×200
・・・
2つのモデルでパラメータを最尤推定
logL*1 − logL*2
y ~ Poisson(exp(β1x + b))
y ~ Poisson(exp(b))
y ~ Poisson(exp(b))
最大対数尤度の差
E(logL*1)−E(logL*2 )
平均対数尤度(推定値?)の差
バイアスのばらつきは大きいが、 ・最大対数尤度 ・平均対数尤度 の差のばらつきは小さい
なので、両モデルのバイアスの差のばらつきも小さい
• したがって、ネスト関係にあるモデル間の相対的な比較をする分には大丈夫そう
4.5節 33
まとめ
• 良いモデルとは? – あてはまりがいいだけではダメ – 良い予測をするモデルを良いモデルとしよう
• 予測の良いモデルを選択するにはどうしたらいいか? – AICが最小になるモデルを選べばよい
• AICとは –2(最大対数尤度 – パラメータ数) → 平均対数尤度の推定値× –2
• ただしAICを使ったら、真のモデルに近いモデルが選ばれるかというと、そうではない
4.6節 34
top related