Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
1
GAMとその周辺
○田中祐輔* 伊庭克拓** 辻谷将明***
*大阪電気通信大学大学院 工学研究科 情報工学専攻**東京CRO株式会社 DM統計本部 統計解析部
***大阪電気通信大学 情報通信工学部 情報工学科
GAM and Its Related Problems
Yusuke Tanaka* Katsuhiro Iba** Masaaki Tsujitani***
*Osaka Electro-Communication University, Graduate School of Engineering
**TOKYO CRO, Inc.
***Osaka Electro-Communication University
1
発表内容はじめに一般化加法モデル(GAM)平滑化スプライン薄板平滑化スプライン
適用例脊柱後湾症データ糖尿病網膜症データ
シミュレーション実験まとめ
2
2
はじめに非線形性をもつ統計的多変量解析の発展
局所回帰 ⇒PROC LOESS
一般化加法モデル(Generalized Addtive Models : GAM)
⇒PROC GAM
薄板平滑化スプライン ⇒PROC TPSPLINE
平滑化スプラインによるロジスティック判別の紹介と適用
3
ロジット変換Y
Pr( 1) , Pr( 0) 1Y Y
10 1ln1
kkc xc c x
ロジット変換 ,
2値応答 :
, 1E Y V Y
1,Y Bin : ベルヌーイ分布
3
4
ロジスティック判別
1
( 1) :
( 0) :
y
y
観測値が に属する 確率
観測値が に属する 確第2 率群
第1群
2値応答1:
0 :y
第1群
第2群
0 1 1
1
1 exp kkc xc cx
判別方法
ロジット逆変換
5
ロジスティック判別
0.5
0.5
⇒第1群 1y
0y ⇒第2群
0 1 1
1
1 exp kkc xc cx
ロジット逆変換
判別方法
4
6
一般化加法モデル
応答変数に指数分布族を仮定
平滑化関数 の加法モデル s x
(Generalized Addtive Models : GAM)
1ln1
klogit s x s x
GAM :
ロジット変換 平滑化スプライン
7
ペナルティ付き残差平方和
2
2
=1
n
i i
i
y s x s x dx
最小にするスプライン関数
s x の曲率
小さいほどモデルの当てはまりは良い
小さいほど滑らかな曲線(曲げ弾性エネルギー)
平滑化スプライン 0
3
1
1
1
12d
n
d
d
y s x x x xc c
平滑化パラメータ
5
8
自由度と平滑化パラメータ
平滑化パラメータ の決定
ハット行列
y H yy応答 の予測値:
モデルの自由度
実効自由度(=有効パラメータ数)
Hdf = tr
df自由度 の決定
9
クロス・バリデーション(CV) 1例消去(leaving-one-out)CV法
1
1ˆ
nd d
dd
CV y yn
1 2 1 1
, , , , , ,X X X X X Xd d n
d
1 2, , ,X X X X
n 初期標本:
d番目を除去: 1 , ;Xd d d
I
dx x y
で構築したモデルの, の予測値Xd
Xd
最小にする平滑化パラメータ が最適
6
で構築したモデルの, の予測値Xd
Xd
10
クロス・バリデーション(CV) 1例消去(leaving-one-out)CV法
1 2 1 1, , , , , ,X X X X X X
d d n
d
1 2, , ,X X X X
n 初期標本:
d番目を除去: 1 , ;Xd d d
I
dx x y
最小にする平滑化パラメータ が最適
1
ˆ ˆ2 ln 1 ln 1n
d d d d
d dd
CV y y
11
適用例1脊柱後湾症データ
予測変数
1x : age 手術時の月齢
2x : start 何番目の脊椎から先を手術したか
3x : num 手術した脊椎の個数
y :術後の症状の有無応答変数
1 : 症状が残る
0 : 症状なし
7
12
PROC GAMの文法
① model文の左辺は応答変数,右辺はモデル式
proc gam data=kyphosis( where=(id^=&d) ) ;
model kyp = param( start num ) spline( age , df=&df )
/ link = logit dist = binomial ;
run; ① ②
線形項
薄板平滑化スプライン
LOESS
平滑化スプライン
param( variable ・・・ )
loess( variable ,df=number )
spline( variable ,df=number )
spline2( variable1,variable2 ,df=number )
②
13
PROC GAMの文法
③ df値を指定しないとき、デフォルトdf=4
④ ③の場合,/の後にmethod=gcvを指定するとGCV規準に基づいて最適な平滑化パラメータの探索
proc gam data=kyphosis( where=(id^=&d) ) ;
model kyp = param( start num ) spline( age , df=&df )
/ link = logit dist = binomial ;
run; ① ②
③
④
8
14
自由度の最適選択 PROC GAMにおける最適自由度の決定
グリッド検索による平滑化パラメータの探索 method=gcvを指定した場合,モデルが収束しないことが起こり得る
提案法主効果スプラインモデル :
ln s age start num1-
クロス・バリデーション(CV)規準に基づいて,各項の最適な自由度を探索
15
自由度の最適選択最適選択の結果
CV 逸脱度 df(age) 誤判別率
1例消去CV法 65.92 56.39 2 0.133
他の判別手法との比較0.133 :GAM
0.205 :ロジスティック判別0.193 :線形判別
誤判別率=
9
0 50 100 150 200 250
-8-6
-4-2
02
age
s(a
ge
,2)
16
平滑化スプラインの予測値
症状の残りやすさ
手術の成功率が高い
可視化
残りにくい
残りやすい
手術時の月齢
17
影響分析
影響観測値
2x
曲線は簡単になり、誤判別は少なくなる
第1群 :○第2群 :●
1x
10
18
影響分析
曲線はあまり変わらず、誤判別も変わらない
影響観測値?
第1群 :○第2群 :●
1x
2x
19
DIFDEV
0d d
Dev DevDev
検定の方法
2 0.05 3.84d
Dev
::
dd
DevDev
すべての個体を用いたときの逸脱度番目の個体を取り除いたときの逸脱度
21 0.05自由度の 分布に基づき、有意水準 で検定
dならば、 番目の個体を除去
11
20
DIFDEV
10 30 50 70 90
Index
0
2
4
6
DIFDEV
2
1 0.05 3.84
No.45No.79
除去後 : CV値65.92 ⇒ 49.10 (誤判別率0.133 ⇒ 0.111)
21
適用例2
1x :dur
2x :gly
3x :bmi
y :ret 糖尿病網膜症の進行
糖尿病の罹病期間 ; year
糖化ヘモグロビン;%
肥満度;㎏/m2
糖尿病網膜症 網膜内の血管障害に伴う病気 669例の糖尿病患者における網膜症の進行の有無を調査
交互作用
1 : 進行あり
0 : 進行なし
12
22
薄板平滑化スプライン罹病期間とBMIとには交互作用あり
proc gam data=WESDR( where=(id^=&d) ) ;
model ret = param( gly ) spline2( dur , bmi , df=&df )
/ link = logit dist = binomial ;
run;
薄板平滑化スプラインの利用交互作用スプラインモデル :
,ln s dugly1
b-
r mi
23
自由度の最適選択最適選択の結果
CV 逸脱度 df 誤判別率
1例消去CV法 763.49 743.47 9 0.272
SAS自動選択 764.25 744.81 8.3 0.274
他の判別手法との比較0.272 :GAM
0.306 :ニューラルネット0.293 :ロジスティック判別0.318 :線形判別
誤判別率=
13
24
薄板平滑化スプラインの予測値
dur
10
20
30
40
50
bmi
20
30
40
50
s(d
ur,b
mi,9
) -2
-1
0
網膜症の進行しやすさ
進行しにくい
進行しやすい
罹病期間BMI
網膜症進行のリスクが低い
25
薄板平滑化スプラインの予測値
10 20 30 40 50
15
20
25
30
35
40
45
50
dur
bm
i
-2.5
-2
-2
-2
-1.5
-1.5
-1
-1
-0.5
-0.5
0
0
0
0
BMI
罹病期間
網膜症進行のリスクが低い
14
26
シミュレーション・データの生成
1 2, 1, 1x x 手順1 : 予測変数として,一様乱数
を生成
手順2 : を
1 1 2 21 2 sin 2 3.14 sin 2 3.1, 4x x xx xf x
1 2,x x
へ代入
交互作用項
交互作用の調整用1,5
27
シミュレーション・データの生成
手順4 : 手順3の を用いて,ベルヌーイ乱数p
を発生
1( )
0( )y
第1群
第2群 1,y pBin~
1 2
1
1 exp ,p
f x x
,0 1 p
手順3 : を求めるp
15
28
シミュレーション・データ(α=5)
1x
2x
(a) 3次元プロット (b) 散布図(1000例)
-1
-0.5
0
0.5
1-1
-0.5
0
0.5
1
0
0.25
0.5
0.75
1
-1
-0.5
0
0.5
1
p
1x2x
29
シミュレーション・データ(α=5)
1x
2x
-1 -0.5 0 0.5 1
-1
-0.5
0
0.5
1
1x
2x
確率 が高いp
確率 が低いp
(a) 等高線図 (b) 散布図(1000例)
16
30
シミュレーションの設定
•シミュレーション・データ訓練標本(モデル構築用)
検証標本(未知のデータ)
•サンプル・サイズ 100, 200, 400, 600, 800, 1000例
•観測値の構成予測変数 、2値応答1 2,x x y
31
シミュレーションの設定•判別モデル主効果スプライン
交互作用(薄板)スプライン
ニューラルネットワーク 隠れユニット数 : 100,200例=5個,
400,600,800,1000例=6個
線形判別ロジスティック判別
1 2ln1
ps x s x
p
1 2ln ,1
ps x x
p
17
32
性能評価(α=1)誤判別率の比較
(a) 訓練標本(モデル構築用) (b) 検証標本(予測用)
33
性能評価(α=5)誤判別率の比較
(a) 訓練標本(モデル構築用) (b) 検証標本(予測用)