クラシックな機械学習の入門 4. 学習データと予測性能 Bias2 - Variance - Noise 分解 過学習 損失関数と Bias,Variance, Noise K-Nearest Neighbor法への応用 bias2とvarianceの間のトレードオフの 線形回帰への応用 by 中川裕志(東京大学) 過学習:over-fitting 教師データによる学習の目的は未知のデータ の正確な分類や識別 過学習(over-fitting) 教師データに追従しようとすればするほど、複雑な モデル(=パラメタ数の多い)になり、教師データへ の過剰な適応が起こりやすい。 このことを数学的に整理してみるのが目的。 損失関数と Bias,Variance, Noise xが与えられたときの結果:tの推定値=y(x) 損失関数: L(t,y(x)) ex. (y(x)-t)2 損失の期待値:E[L]を最小化する t の推定値=E[t|x] この導出は次の次のページを参考にしてください E[L]を計算してみると(次のページ参照) E[ L] ( y (x) E[t | x])2 p (x)dx ( E[t | x] t ) 2 p (x, t )dtdx 第1項は予測値と学習データからの期待値の差の2乗、第2項 は雑音(noise) 参考:E[L]の計算 L y (x) t y (x) E t | x E t | x t 2 2 y (x) E t | x 2 y (x) E t | xE t | x t E t | x t 2 2 第2項の 1 / 2倍を tで周辺化する y(x) Et | xEt | x t p(x, t ) dt y (x) E t | xは tの関数ではないので y (x) E t | x E t | x t p (x, t )dt y (x) E t | x E t | x p (x, t )dt tp (x, t )dt p (x, t ) y (x) E t | x E t | x px t dt px px y (x) E t | xE t | x px E t | x px 0 E y (x) t y (x) E t | x p (x, t )dtdx 2 よって 2 y (x) E t | x px dx E t | x t p (x, t )dtdx 2 2 参考:E[L]を最小化するt の推定値=E[t|x]の導出 E L L y (x), t px, t dtdx y (x) t px, t dtdx 2 E Lを最小化する関数 y (x)を求めるには変分法。 この場合は 簡単で E Lを y (x)で変分(微分)し0と おけばよい ただし、 xは微分の対象ではない ので、定数とみなして E L y(x) t 2 px, t dt 2 y(x) t px, t dt 0 y (x) y (x) y (x) px, t dt y (x) px tp x, t dt y ( x) px tpx, t dt px, t t px dt tpt | xdt Et | x おくから E[t|x]はxによって決まる。E[L]は次式でした。 E[ L] ( y (x) E[t | x])2 p(x)dx ( E[t | x] t ) 2 p(x, t )dtdx 第2項 ()内の左の項は、観測値として与えられたxに対して E[L]を最小化するtの予測値だから、()内の右の項すな わち真のt との差は、観測における誤差と考えられる。 y(x)の作り方で解決できないノイズ は、データ点の観測に伴う誤差あるいはノイズの効果を示し、真の データ点は、大体 のような範囲にある。このノイズの項が既 に述べた次の式: 2 ( E[t | x] t ) p(x, t )dtdx E[ L] ( y (x) E[t | x])2 p (x)dx ( E[t | x] t ) 2 p (x, t )dtdx E[L]の第1項と教師データ集合:Dから機械学習で 得た y(x;D)の関係について考えてみよう。 母集団のモデルとしてp(x,t)を想定する。このモデ ルからDという教師データ集合が繰り返し取り出さ れる状況を考えてみる。 Dからの機械学習の結果のy(x;D)の統計的性質 は、同じサイズのDを多数回、母集団モデルp(t,x) から取り出して、その上で期待値をとったED[y(x; D)]によって評価する。 E[L]の第1項はy(x;D)を用いると次の式 2 E ( y ( x ; D ) E [ t | x ]) p (x)dx D ( y (x : D) E[t | x])2 ( y (x : D) ED [ y (x : D)] ED [ y (x : D)] E[t | x])2 ( y (x : D) ED [ y (x : D)])2 ( ED [ y (x : D)] E[t | x])2 2( y (x : D) ED [ y (x : D)])( ED [ y (x : D)] E[t | x]) この式をED[]すると、第3項は消え ED [( y (x : D) E[t | x])2 ] ED [( y (x : D) ED [ y (x : D)])2 ] ED [( ED [ y (x : D)] E[t | x])2 ] 第1項はvariance 第2項はbias2 variance: y(x)の機械学習による推定値が、教師データ集合に よって変動する度合いの期待値:教師データに依存しすぎるモデ ルになって新規データの予測誤差が悪化する度合い bias2:y(x)の機械学習による推定値が、損失の期待値:E[L]を 最小化するtからずれる度合いの期待値:モデルを記述が単純に なるとき予測誤差が悪化する度合い。 以上により損失の期待値:E[L]=bias2+variance+noise E[ L] 2 ( E [ y ( x ; D )] E [ t | x ]) p (x)dx D bias2 2 E [( y ( x ; D ) E [ y ( x ; D )]) ] p (x)dx variance D D 2 ( E [ t | x ] t ) p (x, t )dxdt noise bias2とvarianceの間には次のページに示すようなトレード オフがある。 新規データに対する誤差: 予測誤差 variance+ bias2+ noise noise variance variance+bias2 bias2 小 正則化項の重みλ 大 予測誤差 新規データに対する誤差: variance+ bias2+ noise noise variance variance+bias2 bias2 小 正則化項の重みλ 大 L2正則化の場合 観測データに大きく異存小 λ 大正則化項(事前分布)に大きく依存 L1正則化の場合:重みがゼロ化される次元をみると ゼロの次元が少なく複雑 小 λ 大ゼロの次元が多く単純 bias2とvarianceの間のトレードオフをK-Nearest Neighbor法 と線形回帰で具体的に見てみよう。 K-Nearest Neighbor法 2クラスへの分類問題で考える。 教師データはクラス: があるとする。 未知のデータxがクラス とクラス: / と判定された相当数 である確率は xに近いほうからK個の教師データ点のうちでクラス / であるものの割合 至ってシンプルだがかなり強力。 下の図のような教師データの配置で考える K=1の場合:クラス青,赤の確率が等しい境界線は以下のようにかなり複 雑。相当多くのパラメターを使わないと記述できない。教師データ数に強く 依存。 は新規に到着した分類すべきデータ の点は本来青い点かもしれないが、赤だ と判断される。 の点は本来赤い点かもしれないが、青だと判断される。 K=3の場合のクラス間の境界 境界線はだいぶ滑らか。K=1の場合より境界を決 めるパラメターは多い この点は本来赤かもしれないが青と 判断される この青の近辺のデータは本当に青かもしれな いが、新規データとしては頻出しない K=13以上だと、どんな新規データでも赤と判定される。 K=1だと非常に複雑な境界線であり、個々の教師データに 強く依存した結果をだすため、過学習をしやすい。 varianceが 大きい。 Kが大きくなると、境界線は平滑化される方向に進む。教師 データを適当な数使って結果を出すので、過学習を起こしにく い。 Kが非常に大きくなると、境界線はますます滑らか(=いい 加減?)になり、あるところから個別の教師データの影響が無 視され、モデルとして大域のデータに依存し、個別データに対 する精密さを欠くため、新規データを正確に分類できなくなっ てくる。 bias2 が大きい。 以上のから、 bias2とvarianceの間には次ページの図のよ うな関係が見てとれる。 Error rate 新規データの予測誤差 =bias2+variance+noise variance bias2 K=1 境界線が複雑 K=3 K=13 境界線が単純 最適なK bias2とvarianceの間のトレードオフを 線形回帰で具体的に見てみよう。 まず線形モデルのパラメタ-w推定の復習から K y x, w wi xi i 0 ただし、 x (1, x1 ,, xK )T , w ( w0 , w1 , ,, wK )T はノイズで N (0, 2 )と考える。 入力ベクトル:x から出力:y を得る関数がxの線形関数 (wとxの内積)にノイズが加算された場合を再掲 K y x, w wi xi i 0 ただし、 x (1, x1 ,, xK )T , w ( w0 , w1 , ,, wK )T はノイズで N (0, 2 )と考える。 得られたN個の観測データ の組(y,X)に対して2乗誤差を最 ˆ を得る。 小化するようにwを推定し w x1T 1 x11 x1K 1 X ε T x 1 x x N N 1 NK N i (i 1,..., N )は N (0, 2 )の iid y1 y Xw ε y N ˆ XT X w 1 XT y (0) ここで、前にやった損失の期待値 E(L) を思いだそう ただし、新規の未知データは以下の通り E y0x0 [ L] ( y (x0 ) E y0 [ y (x0 ) | x0 ])2 p (x0 )dx0 ( E y0 [ y (x0 ) | x0 ] y0 ) 2 p (x0 , y0 )dy0dx0 (loss 0) y0 x0 , w (loss1) E y0 [ y (x0 ) | x0 ] y0 p y0 | x0 dy0 だったが、 (loss1)を使うと E y0 [ y0 | x0 ] x0 , w p y0 | x0 dy0 x0 , w p y0 | x0 dy0 p y0 | x0 dy0 x0 , w (loss 2) E y0x0 , D [ L] ( y x0 x0 , w ) 2 p (x0 , y )dx0dy ( x0 , w y0 ) 2 p (x0 , y0 , y )dx0dy0dy 第2項 ( x0 , w y0 ) 2 p (x0 , y0 , y )dx0dy0dy ( x0 , w x0 , w ) 2 p (x0 , y0 , y )dx0dy0dy 2 p (x0 )dx0 2 新規の未知データの観 測に伴う雑音 2 E [ L ] の第 1 項 ( y x x , w ) p (x0 , dy )dx0dy0dy 次に y0x0 ,D 0 0 すなわちN個の観測データ の組(あるいは計画行列) (y,X)=Dを学習データとする部分について考える。 Xに対して繰り返しyを観測することでDを動かした場合の 期待 値:ED[..]を求めてみよう。 ˆ のD動かした場合の期待値 ED w 重みwの期待値: w ˆ ˆ ED XT X XT y ED XT X XT Xw ε w ED w 1 共分散行列は? ˆ ? cov D w 1 XはDにおいては定数な ので、(XTX)-1XTも定数と 見なせることに注意 共分散行列 E X X X Xw ε w X X X Xw ε w E w X X X ε w w X X X ε w E X X X ε X X X ε E X X X εε X X X T 1 T 1 T T T ˆ ED X X X y ED w ˆ X X X y ED w ˆ covD w 1 T T 1 T T T D 1 T T T 1 T T D 1 T T 1 T T T D 2 1 T T T 1T T D X X T 1 T X I N N X X X T 1 2 X X T 1 X X X X T T 1 2 X X T 1 E y0x0 ,D [ L]の第1項 ( y x 0 x 0 , w ) 2 p( x 0 , dy )dx 0dy0dy E y0x0 ,D [( y ( x 0 : D ) x 0 , w ) 2 ] E y0x0 ,D [( y ( x 0 : D ) E D [ y ( x 0 : D )]) 2 ] E y0x0 ,D [( E D [ y ( x 0 : D )] x 0 , w ) 2 ] (loss10) E D [ y ( x : D )]は Dを動かしての期待値だ が、 Xは同一で yの 観測だけを繰り返し ˆ になる。 値は E D w ているので、この期待 ˆ x0 , w E D [ y ( x0 : D )] x 0 , E D w y ( x 0 : D )はある Dに対する予測だから、 Dに対する正規方程式の 解(0)より x 0 X T X X T y T 1 (loss10) variance bias2 E y0x0 ,D [( x 0 X T X X T y x 0 , w ) 2 ] E y0 x0 ,D [( x 0 , w x 0 , w ) 2 ] T 1 bias2 0 bias2が0にならない状況とはどんなもの? E y0x0 ,D [ L]の第1項 ( y x 0 x 0 , w ) 2 p( x 0 , dy )dx 0dy0dy E y0x0 ,D [( y ( x 0 : D ) x 0 , w ) 2 ] E y0x0 ,D [( y ( x 0 : D ) E D [ y ( x 0 : D )]) 2 ] E y0x0 ,D [( E D [ y ( x 0 : D )] x 0 , w ) 2 ] (loss10) variance of (loss10) E y0x0 ,D [( x 0 X T X X T y x 0 , w ) 2 ] T 1 variance of (loss 10)は? Xは十分大きく多様な説 明変数からなり X T X N Ex0 x 0x 0 と近似できるとする。 T レポート課題4:この場合variance of (loss 10) の近似はどうなる? E y0 x0 ,D [ L]の第1項 ( y x0 x0 w ) 2 p( x0 , dy )dx0dy0dy E y0 x0 ,D [( y ( x0 : D ) x0 w ) 2 ] E y0 x0 ,D [( y ( x0 : D ) E D [ y ( x0 : D )])2 ] E y0 x0 ,D [( E D [ y ( x0 : D )] x0 w ) 2 ] (loss10) variance of (loss10) E y0 x0 ,D [( x0 X T X X T y x0 w ) 2 ] 1 E x0 ,D [( x0 X X X T Xw ε x0 w ) 2 ] T 1 E x0 ,D [( x0 X T X X T Xw x0 X T X X T ε x0 w ) 2 ] 1 1 E x0 ,D [( x0 X T X X T Xw x0 X T X X T ε x0 w ) 2 ] 1 1 E x0 ,D [( x0 w x0 X T X X T ε x0 w ) 2 ] 1 E x0 , D [( x X X T 0 1 X T ε ) 2 ] (loss20) x0 X X X εはスカラーなので x0 X X X ε x0 X X X ε εT X X T X x0 T 1 T 1 T T T 1 T これを使って (loss20) E x0 ,D [( x0 X X X T ε )2 ]を書き直すと 1 T (loss20) E x0 E D x0 X T X X T εεT X X T X x0 1 1 2 E x0 2 E x0 T ここで E εε x X X X XX X x x X X x E trX X x x (loss30) E x0 x0 X T X X T E D εεT X X T X x0 1 1 1 T T T 1 0 T T D T 0 1 T 0 T 0 2 T 1 x0 T 0 0 Xは十分大きく多様な説 明変数からなるので X T X N E x0 x0 x0 と近似できるとすると T T どうなるか? 2 I ( nn ) だから 1 T (loss 20) E x0 E D x0 X T X 1 XT εεT X XT X 1 x0T 1 T T 1 T T 2 E x0 x0 X X x0 E x0 tr X X x0 x0 (loss30) Xは十分大きく多様な説 明変数からなるので 2 X T X N E x0 x0T x0 と近似できるとすると (loss30) tr X T X 2 1 E x0 x0 x0 2 tr X T X T 1 Xは N K 1なので、 X T XはK 1 K 1 X T X I ( K 1K 1)ゆえに 2 2 K 1 T だから X X (loss 40)= N 1 tr I ( K 1K 1) N : variance 1 T X X (loss 40) N 過学習:over-fittingと 2 bias -variance分解 bias2-variance分解は過学習現象を扱う数学的概念として便利 教師データによる学習の目的は未知のデータの正確な分類や 識別 過学習(over-fitting) 学習するモデルを複雑な(=パラメタ数の多い)ものにすると 過学習が起こりやすい。 モデルの良さ(=(対数)尤度あるいは2乗誤差などの損失- 1 )を最大化し、かつ簡単なモデルであるほど良い モデルの簡単さを表すのは線形回帰における正規化項(正 則化項とも呼ぶ)。cf.情報量基準、MDL
© Copyright 2024 ExpyDoc