bias 2 とvariance

学習データと予測性能
Bias2 - Variance - Noise 分解
過学習
損失関数と Bias,Variance, Noise
K-Nearest Neighbor法への応用
bias2とvarianceの間のトレードオフの線
形回帰への応用
過学習:over-fitting
教師データによる学習の目的は未知のデータ
の正確な分類や識別
過学習(over-fitting)
教師データに追従しようとすればするほど、複雑な
モデル(=パラメタ数の多い)になり、教師データへ
の過剰な適応が起こりやすい。
このことを数学的に整理してみるのが目的。
損失関数と Bias,Variance, Noise
 xが与えられたときの結果:tの推定値=y(x)
 損失関数: L(t,y(x)) ex. (y(x)-t)2
 損失の期待値:E[L]を最小化する t の推定値=Et[t|x]
 この導出は次の次のページを参考にしてください
 E[L]を計算してみると(次のページ参照)
E[ L]   ( y ( x )  Et [t | x ]) 2 p( x )dx   ( Et [t | x ]  t )2 p( x, t )dtdx
 第1項は予測値と学習データからの期待値の差の2乗、第2項
は雑音(noise)
参考:E[L]の計算
L   y ( x)  t    y ( x)  Et t | x   Et t | x   t 
2
2
  y ( x)  Et t | x   2 y ( x)  Et t | x Et t | x   t   Et t | x   t 
2
2
第2項の 1 / 2倍を tで周辺化する
  y( x)  E t | xE t | x  t  p( x, t ) dt
t
t
y ( x)  Et t | x はtの関数ではないので
  y ( x)  Et t | x  Et t | x   t  p ( x, t )dt

  y ( x)  Et t | x  Et t | x  p( x, t )dt   tp( x, t )dt




p ( x, t )
  y ( x)  Et t | x  Et t | x  px    t
dt px 
px 


  y ( x)  Et t | x Et t | x  px   Et t | x  p x   0

E  y ( x)  t      y ( x)  Et t | x  p ( x, t )dtdx
2
よって
2
   y ( x)  Et t | x  px dx    Et t | x   t  p ( x, t )dtdx
2
2
参考:E[L]を最小化するt の推定値=Et[t|x]の導出
E L     L y ( x), t p  x, t dtdx     y ( x)  t  p  x, t dtdx
2
E L を最小化する関数 y ( x)を求めるには変分法。
この場合は 簡単で E L を y ( x)で変分(微分)し0と
おけばよい
ただし、 xは微分の対象ではない ので、定数とみなして
E L 

 y ( x)  t 2 px, t dt  2  y ( x)  t  px, t dt  0

y ( x)
y ( x)


y ( x)  p  x, t dt  y ( x) p x 
tp x, t dt

y ( x) 

px 

 tpx, t dt
p  x, t 
 t px  dt   tpt | x dt  Et t | x
おくから
 t(=Et[t|x])はxによって決まる。E[L]は次式でした。
E[ L]   ( y ( x)  Et [t | x]) 2 p( x)dx   ( Et [t | x]  t ) 2 p( x, t )dtdx
 第2項
 ()内の左の項は、観測値として与えられたxに対して
E[L]を最小化するtの予測値だから、()内の右の項すな
わち真のt との差は、観測における誤差と考えられる。
 y(x)の作り方で解決できないノイズ
は、データ点の観測に伴う誤差あるいはノイズの効果を示し、真の
データ点は、大体
のような範囲にある。このノイズの項が既
に述べた次の式:
2
 ( E [t | x]  t )
t
p( x, t )dtdx
E[ L]   ( y ( x)  Et [t | x]) 2 p ( x)dx   ( Et [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)を用いると次の式


ED  ( y ( x; D )  E[t | x ]) 2 p( x )dx  ED [( y ( x; D )  E[t | x ]) 2 ]
( y ( x : D)  E[t | x ]) 2  ( y ( x : D)  E D [ y ( x : D)]  E D [ y ( x : D)]  E[t | x ]) 2
 ( y ( x : D)  E D [ y ( x : D)]) 2  ( E D [ y ( x : D)]  E[t | x ]) 2
 2( y ( x : D)  E D [ y ( x : D)])( E D [ y ( x : D)]  E[t | x ])
この式をED[]すると、第3項は消え
E D [( y ( x : D)  E[t | x ]) 2 ]
 E D [( y ( x : D)  E D [ y ( x : D)]) 2 ]  E D [( E D [ 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] 
 ( E [ y( x; D)]  E[t | x]) p( x)dx
 E [( y( x; D)  E [ y( x; D)]) ] p( x)dx
 ( E[t | x]  t ) p( x, t )dxdt
2
bias2
D


2
D
D
2
variance
noise
bias2とvarianceの間には次のページに示すようなトレード
オフがある。
新規データに対する誤差:
予測誤差 variance+ bias2+ noise
noise
variance
variance+bias2
bias2
複雑
モデルの複雑さ
単純
bias2とvarianceの間のトレードオフをK-Nearest Neighbor法
と線形回帰で具体的に見てみよう。
K-Nearest Neighbor法
2クラスへの分類問題で考える。
教師データはクラス:
があるとする。
未知のデータxがクラス
とクラス:
/
と判定された相当数
である確率は
xに近いほうからK個の教師データ点のうちでクラス /
であるものの割合
至ってシンプルだがかなり強力。
下の図のような教師データの配置で考える
K=1の場合:クラス青,赤の確率が等しい境界線は以下のようにかなり複
雑。相当多くのパラメターを使わないと記述できない。教師データ数に強く
依存。
は新規に到着した分類すべきデータ
の点は本来青い点かもしれないが、赤だ
と判断される。
の点は本来赤い点かもしれないが、青だと判断される。
K=3の場合のクラス間の境界
境界線はだいぶ滑らか。K=1の場合より境界を決
めるパラメターは多い
この点は本来赤かもしれないが青と
判断される
この青の近辺のデータは本当に青かもしれな
いが、新規データとしては頻出しない
K=13以上だと、どんな新規データでも赤と判定される。
K=1だと非常に複雑な境界線であり、個々の教師データに
強く依存した結果をだすため、過学習をしやすい。 bias2 が大
きい。
Kが大きくなると、境界線は平滑化される方向に進む。教師
データを適当な数使って結果を出すので、過学習を起こしにく
い。
Kが非常に大きくなると、境界線はますます滑らか(=いい
加減?)になり、あるところから個別の教師データの影響が無
視され、モデルとして大域のデータに依存し、個別データに対
する精密さを欠くため、新規データを正確に分類できなくなっ
てくる。 variance が大きい。
以上のから、 bias2とvarianceの間には次ページの図のよ
うな関係が見てとれる。
Error rate
新規データの予測誤差
=bias2+variance+noise
variance
bias2
K=13
モデル複雑
K=1
K=3
モデル単純
最適な複雑さ:K
bias2とvarianceの間のトレードオフを
線形回帰で具体的に見てみよう。
まず線形モデルのパラメタ-w推定の復習から
K
y  xw     wi xi  
i 0
ただし、 x  (1, x1 ,, xK ), w  ( w0 , w1 , ,, wK )T
はノイズで N (0,  2 )と考える。
入力ベクトル:x から出力:y を得る関数がxの線形関数
(wとxの内積)にノイズが加算された場合を再掲
K
y  xw     wi xi  
ただし、 x  (1, x1 ,, xK ), w  ( w0 , w1 , ,, wK )T
i 0
はノイズで N (0,  2 )と考える。
得られたN個の観測データ の組(y,X)に対して2乗誤差を最
小化するようにwを推定し ŵ を得る。
 x1   1 x11

 
X    
 x  1 x
N1
 N  
 y1 
 
    y  Xw  ε
y 
 N



 1 
 
ε  
 
 N
x1K 

 
xNK 
 i (i  1,..., N )は N (0,  2 )の iid


ˆ  XT X
w

1
XT y (0)
ここで、前にやった損失の期待値 E(L) を思いだそう
ただし、新規の未知データは以下の通り
E y0 x0 [ 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 y0 x0 , 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
)
   0 0 p( x0 , dy)dx0dy0dy
次に y0 x0 ,D
すなわちN個の観測データ の組(あるいは計画行列)
(y,X)=D:学習データとする部分について考える。
Xに対して繰り返しyを観測することでDを動かした場合の
期待 値:ED[..]を求めてみよう。
重みwの期待値: ŵ のD動かした場合の期待値  ED ŵ

 

ˆ   ED X T X  X T y  ED X T X  X T Xw  ε   w
ED w
1
1
おまけ 共分散行列


 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
ˆ 
cov D w


1
T
T
1
T
T
T
D
1
T
T
T
1
T
T
D
1
T
T
1
T
T
T
1
T
D
T
T
1T
T
D


  X X  X I N N X X X    X X  X X X X    X X 
2
T
1
T
T
1
2
T
1
T
T
1
2
T
1
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)  ED [ y ( x0 : D)])2 ]  E y0 x0 , D [( ED [ y ( x0 : D)]  x0 w ) 2 ]
 (loss10)
ED [ y ( x : D)]は Dを動かしての期待値だ が、 Xは同一で yの
ˆ になる。
値は ED w
観測だけを繰り返し
ているので、この期待
ˆ   x0 w
 ED [ y ( x0 : D)]  x0 ED w
y ( x0 : D)はある Dに対する予測だから、
Dに対する正規方程式の 解(0)より 

1
x0 XT X XT y
(loss10)  variance  bias 2


1
 E y0 x0 , D [( x0 X X XT y  x0 w ) 2 ]  E y0 x0 , D [( x0 w  x0 w ) 2 ]
T
 bias 2  0
bias2が0にならない時とは?
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 [( ED [ 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
 E x0 , D
 E x0 , D
 E x0 , D
 E x0 , D
[( x X X  X Xw  ε   x w ) ]
[( x X X  X Xw  x X X  X ε  x w ) ]
[( x X X  X Xw  x X X  X ε  x w ) ]
[( x w  x X X  X ε  x w ) ]
[( x X X  X ε ) ]  (loss 20)
1
T
T
2
0
0
1
T
T
T
0
T
0
1
T
T
1
0
1
T
0
0
T
T
2
T
2
0
T
2
0
1
2
0
T
0
0
1


x0 X X  X εはスカラーなので x0 X X  X ε  x0 X X  X ε  εT X X T X  x0
1
T
T
1
T
T
T
1
これを使って (loss 20)  E [( x X X  X ε ) ]を書き直すと
(loss 20)  E E x X X  X εε X X X  x 
 E x X X  X E εε X X X  x  ここで E εε   
  E x X X  X X X X  x 
  E x X X  x    E tr X X  x x  (loss 30)
1
T
x0 , D
1
T
x0
x0
x0
T
T
T
T
1
T
1
1
T
T
T
T
0
T
1
0
2
D
T
0
1
T
x0
T
D
T
2
0
0
2
0
T
0
2
T
1
x0
T
0
0
Xは十分大きく多様な説 明変数からなるので


X T X  N  E x0 x0 x0 と近似できるとすると
T
T
0
0
D
1
T
T
T
どうなるか?
2
I ( nn ) だから
1
T
 

x  (loss 30)
(loss 20)  E x0 E D x0 X T X  X T εεT X X T X  x0

1

1

  2 E x0 x0 X T X  x0   2 E x0 tr X T X  x0
1
T
1
T
T
0
Xは十分大きく多様な説 明変数からなるので


X T X  N  E x0 x0 x0 と近似できるとすると
T



1
1 1


T
(loss 30)   2 tr X T X  E x0 x0 x0   2 tr  X T X 
X T X  (loss 40)
N


Xは N  Kなので、 X T Xは K  Kだから X T X  X T X  I ( K K )ゆえに
1
(loss 40)=
2
N
trI ( K K )  
 2K
N
: variance
過学習:over-fittingと
2
bias -variance分解
 bias2-variance分解は過学習現象を扱う数学的概念として便利
 教師データによる学習の目的は未知のデータの正確な分類や
識別
 過学習(over-fitting)
 学習するモデルを複雑な(=パラメタ数の多い)ものにすると
過学習が起こりやすい。
 モデルの良さ(=(対数)尤度あるいは2乗誤差などの損失-
1 )を最大化し、かつ簡単なモデルであるほど良い
 モデルの簡単さを表すのは線形回帰における正規化項(正
則化項とも呼ぶ)。cf.情報量基準、MDL