devianceと尤度比検定
1
2
一般化線形モデルをマスターしよう
予測と確率分布
尤度と最尤法
一般化線形モデル基礎
devianceと尤度比検定
一般化線形モデル色々
是非!!
ゼロ切断・過剰モデル、 一般化線形混合モデル
3
検定 やります
尤度比検定
4
今回やること
1.正規線形モデルの復習
• GLMにおける正規線形モデル
• 最小二乗法と最尤法
• 分散分析の復習
2.GLMで分散分析
• GLMにおける残差→deviance
• t検定とWald検定
• F比と尤度比
3.AICの導出
5
今回やること
1.正規線形モデルの復習
• GLMにおける正規線形モデル
• 最小二乗法と最尤法
• 分散分析の復習
6
GLMの構成要素
1.線形予測子
2.リンク関数
3.誤差構造
𝑌 = 𝑎𝑋 + 𝑏のような方程式
log 𝑌 = 𝑎𝑋 + 𝑏のような変換
正規・ポアソン分布のような確率分布
7
復習
正規線形モデルとは?
線形予測子=任意
リンク関数=そのまま(identity)
誤差構造=正規分布(gaussian)
であるGLMのこと
8
正規線形モデルとは
「期待値Yの正規分布」に従う結果の変動のモデル化
線形予測子
𝑌 = 𝑎𝑋 + 𝑏
例)
ビールの売り上げ=a×気温+b
ビールの売り上げ=a×晴れ+b
→晴れなら1、雨なら0
9
正規線形モデルのパラメタの計算方法
例)
ビールの売り上げ=a×気温+b
(Data-予測された期待値)
2
を最小化するa,bを計算
最小二乗法
この時の結果は最尤法の結果と一致する
(証明略)
10
正規線形モデルな最尤法
最小二乗法
(Data-予測された期待値)
2
を最小化
「正規分布を仮定できるなら」
最小二乗法の推定結果は最尤法の結果と一致する
(証明略)
正規分布が仮定できない時、どうなる?
11
正規線形モデルな予測残差
同じ距離だけ離れてる
→同じ残差
→同じ「はずれ度合」
予測された期待値
に対して左右対称
12
正規分布じゃない時
予測された期待値
に対して左右非対称
よくあるズレ
滅多にないズレ
→ずれが大きい
→予測された期待値より実際が大きくなることはよくある
→小さくなることはめったにない
正規線形モデルな最尤法
最小二乗法
(Data-予測された期待値)
2
を最小化
これが使えるのは正規分布の時だけ
もっと残差を一般化したい
deviance(尤離度・逸脱度)
→devianceは「残差」ではないが、少しいじれば残差っぽくなる
14
deviance
……その前に、
予測残差を使って検定する方法の復習
15
正規線形モデル
正規分布の期待値をidentityな線形予測子で表す
ある変数により予測値が有意に変わるかを検定
予測値の変化が大きい
予測値が比較に使える(予測残差小)
サンプルサイズが大きい
ナイーブ予測との比較ともみなせる
正規線形モデルにおける検定
16
ナイーブ予測との比較
コイツがナイーブ予測!
17
=
ナイーブ予測の予測残差 ー 予測値変化モデルの残差
予測値変化モデルの予測残差の大きさ
F比
正規線形モデル
正規分布の期待値をidentityな線形予測子で表す
ある変数により予測値が有意に変わるかを検定
正規線形モデルにおける検定
=ナイーブ予測と比べてどれだけ予測残差が減ったか
分散分析とは「予測残差の比較」である
18
① 絶対に予測誤差がナイーブ予測と有意に
異ならないとわかっているデータをたくさん集める
F比が12.79を超えた回数が、100回中5回以内だった
→偶然でt値が12.79を超える確率は小さい
→有意差あり
② そのデータのF比を計算する
③ 0とは有意に異ならないデータにおける
F比を例えば100回計算する。
④ 100回中、F比が12.79を超えた回数を記録
F比の大小の判別方法(F比が12.79の時)
19
F比の大小の判別方法(F比が12.79の時)
100回中、F比が12.79を超えた回数を算出
=
12.79を超えた回数
100
p値
p値≦0.05なら有意とみなす
=偶然で今回計算された
統計量( F比)を超える確率
20
今回やること
2.GLMで分散分析
• GLMにおける残差→deviance
• t検定とWald検定
• F比と尤度比
21
deviance
一般化線形モデルにおける
「予測残差の平方和」のようなもの
22
残差平方和
残差
=「データをカンペキに予測できた時」との差のこと
23
線形な予測・カンペキな予測
線形な予測
カンペキな予測
24
線形な予測・カンペキな予測
カンペキな予測
データをカンペキに予測できたら、残差は0になる
残差
=「データをカンペキに予測できた時」との差
25
残差平方和
残差
=「データをカンペキに予測できた時」との差のこと
尤度を使って、これを表す
26
ポアソン回帰
データが4セットあります(サンプルサイズ4)
Y : 5, 7, 10, 15
X : 1, 2, 3, 4
カンペキな「予測された期待値 λ」
= 5, 7, 10, 15
27
ポアソン回帰
𝑒−𝜆
𝜆 𝑦
𝑦!
カンペキパラメタλは5だ!
データ 「5」 が出る確率は?
𝑒−5
55
5!
≒ 0.18
λ=5
y=5
Y : 5, 7, 10, 15
28
ポアソン回帰
𝑒−𝜆
𝜆 𝑦
𝑦!
カンペキパラメタλは7だ!
データ 「7」 が出る確率は?
𝑒−7
77
7!
≒ 0.15
λ=7
y=7
Y : 5, 7, 10, 15
29
ポアソン回帰
𝑒−𝜆
𝜆 𝑦
𝑦!
対数尤度
≒ log(0.18 × 0.15 × 0.12 × 0.10)
≒ -8.006734
線形モデルの最大化対数尤度
カンペキ予測のカンペキ対数尤度
対数尤度
≒ log(0.18 × 0.15 × 0.13 × 0.10)
≒ -8.001173
完璧予測の方が大きい
この差分が大事
Y : 5, 7, 10, 15
30
カンペキ予測のカンペキ対数尤度
線形モデルの最大化対数尤度
-8.001173
-8.006734
Deviance
(Residual)Deviance
=2×{-8.001173ー(-8.006734)}
=0.01112324
31
deviance(残差平方和の代わり)
カンペキ予測のカンペキ対数尤度
線形モデルの最大化対数尤度
差をとって2倍する
→2倍するのは尤度比検定の都合上
まとめ 質問どうぞ!
Residual.devianceと呼ぶことも
deviance=最大化対数尤度×(-2)とする本もある
Rのdeviance()関数で計算されるのはこれ
32
deviance残差
≒ log 0.18 + log 0.15 + log 0.12 + log(0.10)
線形モデルの最大化対数尤度
カンペキ予測のカンペキ対数尤度
≒ log 0.18 + log 0.15 + log 0.13 + log(0.10)
つねに「カンペキ対数尤度」の方が大きい
→このままだと、残差は常に正になってしまう
差
33
≒ log 0.18 + log 0.15 + log 0.12 + log(0.10)
線形モデルの最大化対数尤度
カンペキ予測のカンペキ対数尤度
≒ log 0.18 + log 0.15 + log 0.13 + log(0.10)
予測より
小さかった
予測より
大きかった
予測された期待値 λ
過少予測なら
+の残差
過大に予測していれば
ーの残差
34
deviance残差
=各々差をとって、2倍して、平方根をとったもの
正負は予測された期待値と実データとの差を見て判断
→deviance残差を2乗して合計するとdevianceになる
→devianceを「残差平方和」とみなした時の残差
→GLMにおける残差といれば普通これ
≒ log 0.18 + log 0.15 + log 0.12 + log(0.10)
線形モデルの最大化対数尤度
カンペキ予測のカンペキ対数尤度
≒ log 0.18 + log 0.15 + log 0.13 + log(0.10)
予測より
小さかった
予測より
大きかった
質問どうぞ!
35
検定 やります
Wald検定(適当に…)
尤度比検定
Wald検定
Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) 1.2144 0.4870 2.493 0.0127 *
x 0.3704 0.1556 2.380 0.0173 *
---
summary(glm.model)の結果 コレのこと
今までt検定で「パラメタが0かどうか」検定してきた
GLMではWald検定を使う
→パラメタが正規分布していることを利用
→検定の意味付けはt検定とほとんど同じなので省略
37
尤度比検定
尤度比検定
deviance(ナイーブ) ー deviance(線形モデル)
→この値が大きければ
「有意に」予測残差が減ったとみなせる
マイナス
38
一般化線形モデル
確率分布のパラメタ(期待値など)を
リンク関数で変換した線形予測子で表す
ある変数により予測値が有意に変わるかを検定
一般化線形モデルにおける分散分析
devianceの変化が大きいかどうかを見る
(devianceの差は𝝌 𝟐分布という名の確率分布に従うので
p値も簡単に出せる。ただし、サンプルサイズが大きい時のみ。
もちろんパラメトリックブートストラップ検定でもOK)
質問どうぞ!
39
尤度比検定
Type II ANOVAを理解しよう
40
モデル|Y ~ X1 + X2 + Option1 + Option2
予測残差は“有意に”増えたか? を検定
Type II ANOVA
モデル|Y ~ + X2 + Option1 + Option2
X1を抜くことによって「有意に」予測残差が増えた
→X1はYを予測するモデルに必要不可欠な存在である
→ほかの変数(Option1等)があったとしても、
それでもX1という変数が必要なのかどうか検定
41
モデル|Y ~ X1 + X2 + Option1 + Option2
予測残差は“有意に”増えたか? を検定
Type II ANOVA
モデル|Y ~ X1 + + Option1 + Option2
モデル|Y ~ X1 + X2 + + Option2
モデル|Y ~ X1 + X2 + Option1 +
モデル|Y ~ + X2 + Option1 + Option2
42
普通のANOVA、Type II ANOVA
モデル|Y ~ X1
ナイーブ予測(Null.Model)
普通のANOVA
Type II ANOVA
モデル|Y ~ X1 + X2 + Option1 + Option2
モデル|Y ~ + X2 + Option1 + Option2
変数を増やすと予測残差は“有意に”減ったか?
変数を減らすと予測残差は“有意に”増えたか?
43
GLMなType II ANOVA
Type II ANOVA
モデル|Y ~ X1 + X2 + Option1 + Option2
モデル|Y ~ + X2 + Option1 + Option2
変数を減らすと予測残差は“有意に”増えたか?
残差をdevianceに置き換える
44
モデル|Y ~ X1 + X2 + Option1 + Option2
devianceは“有意に”増えたか? を検定
Type II ANOVA
モデル|Y ~ + X2 + Option1 + Option2
X1を抜くことによって「有意に」 devianceが増えた
→X1はYを予測するモデルに必要不可欠な存在である
→ほかの変数(Option1等)があったとしても、
それでもX1という変数が必要なのかどうか検定
質問どうぞ!
45
尤度比検定あれこれ
deviance
= 2×(カンペキ対数尤度 - 最大化対数尤度)
二つのモデルの比較( ②の方が複雑なモデル)
deviance① ー deviance②
=2×「カンペキ対数尤度 - 最大化対数尤度①」
- 2× 「カンペキ対数尤度 - 最大化対数尤度② 」
=2×(最大化対数尤度② - 最大化対数尤度① )
devianceの差=最大化対数尤度の差の2倍
46
尤度比検定あれこれ
2×(最大化対数尤度② - 最大化対数尤度① )
devianceの差
=最大化対数尤度の差の2倍
=尤度の比をとってから対数をとってから2倍
=2× log 尤度② − log 尤度①
=2×log
尤度②
尤度①
質問どうぞ!
47
実演
48
AICの復習
AICはどのように計算され、どのような意味を持つか
49
AICとは
未知のデータへの予測誤差が
小さくなるモデルが良いモデル
AIC
50
予測 とは何か?
統計モデルにおける
確率分布を予測すること
51
AICとは
未知のデータへの予測誤差が
小さくなるモデルが良いモデル
AIC
カルバック・ライブラー情報量
(KL情報量・相対エントロピー)
52
未知のデータへの予測のズレは
カルバック・ライブラー情報量で表せる
カルバック・ライブラー情報量
(やや適当な説明ですが)
「log(真の確率分布)ーlog(予測された確率分布)」の期待値
→ずれの大きさの期待値だと思ってください
53
ln 𝑔 𝑦 − ln 𝑓 𝑦
+∞
−∞
𝑔 𝑦 𝑑𝑦
注意! 別にわからなくてもいいです
真の
確率密度関数
予測された
確率密度関数
確率をかけてから積分(合計)している
→期待値!
54
カルバック・ライブラー情報量
確率
確率
ずれが大きい
→KL情報量大
ずれが小さい
→KL情報量小
正しい確率分布
正しい確率分布
推定分布
こっちの方がよい
55
未知のデータへの予測のズレは
カルバック・ライブラー情報量で表せる
カルバック・ライブラー情報量
こいつが小さくなるように最適化すればよい
56
注意! 別にわからなくてもいいです
= ln 𝑔 𝑦
+∞
−∞
𝑔 𝑦 𝑑𝑦 − ln 𝑓 𝑦 𝑔 𝑦 𝑑𝑦
+∞
−∞
f(y)が入ってない
→予測された確率分布関係なし!
こいつだけ使う
→こいつが大きければ
KL情報量は小さくなる
ln 𝑔 𝑦 − ln 𝑓 𝑦
+∞
−∞
𝑔 𝑦 𝑑𝑦
真の
確率密度関数
予測された
確率密度関数
57
ln 𝑓 𝑦 𝑔 𝑦 𝑑𝑦
+∞
−∞
注意! 別にわからなくてもいいです
コイツ→
を大きくしたい
予測された
確率密度関数
確率をかけてから積分(合計)している!
「データが得られる確率の対数」の期待値をとっている
対数尤度の期待値=平均対数尤度
58
未知のデータへの予測のズレは
カルバック・ライブラー情報量で表せる
AICへの道のり
こいつが小さくなるように最適化すればよい
「平均対数尤度」が最大になればいい
「対数尤度」が最大になればいい?
59
AIC
= 最大化対数尤度……?
データから得られた最大化対数尤度と
平均対数尤度はズレていて、偏りがある
この偏りは、もっとも単純には
「パラメタ数」で近似できる(証明略)
60
AIC
-2×(最大化対数尤度-パラメタ数)
本来なら、これが大きければ
予測のズレは小さいとみなせる
コイツで、バイアスを排除する
歴史的な理由(尤度比検定に合わせた)
61
AIC
-2×(最大化対数尤度-パラメタ数)
バイアスを排除した、予測のズレの大きさの指標
まとめ
数式は分からなくていいですが、
AICは「予測のズレ」を最小化する規準だということは
覚えておいてください
質問どうぞ!

2 4.devianceと尤度比検定