スライド 1

クラシックな機械学習の入門
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 | xE t | x  t   E t | x  t 
2
2
第2項の 1 / 2倍を tで周辺化する
  y(x)  Et | xEt | 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 px    t
dt px 
px 


  y (x)  E t | xE t | x px   E t | x px   0

E  y (x)  t      y (x)  E t | x p (x, t )dtdx
2
よって
2
   y (x)  E t | x px dx    E t | x  t  p (x, t )dtdx
2
2
参考:E[L]を最小化するt の推定値=E[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  Et | 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 XX X  x 
x X X  x    E trX 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 ( nn ) だから
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 1K 1)ゆえに
2
 2 K  1
T
だから X X
(loss 40)=
N
1


tr I ( K 1K 1) 
N
: variance
1 T 
X X  (loss 40)
N

過学習:over-fittingと
2
bias -variance分解
 bias2-variance分解は過学習現象を扱う数学的概念として便利
 教師データによる学習の目的は未知のデータの正確な分類や
識別
 過学習(over-fitting)
 学習するモデルを複雑な(=パラメタ数の多い)ものにすると
過学習が起こりやすい。
 モデルの良さ(=(対数)尤度あるいは2乗誤差などの損失-
1 )を最大化し、かつ簡単なモデルであるほど良い
 モデルの簡単さを表すのは線形回帰における正規化項(正
則化項とも呼ぶ)。cf.情報量基準、MDL