28
学学学学学学学学学学 Bias 2 - Variance - Noise 学学 学学学 学学学学学 Bias,Variance, Noise K-Nearest Neighbor 学学学学学 bias2 学 variance 学学学学学学学学学学学 学学学学学学学

学習データと予測性能 Bias 2 - Variance - Noise 分解

  • Upload
    sukey

  • View
    46

  • Download
    4

Embed Size (px)

DESCRIPTION

学習データと予測性能 Bias 2 - Variance - Noise 分解. 過学習 損失関数と Bias,Variance , Noise K-Nearest Neighbor 法への応用 bias2 と variance の間のトレードオフの線形回帰への応用. 過学習: over-fitting. 教師データによる学習の目的は未知のデータの正確な分類や識別 過学習 (over-fitting) 教師データに追従しようとすればするほど、複雑なモデル(=パラメタ数の多い)になり、教師データへの過剰な適応が起こりやすい。 このことを数学的に整理してみるのが目的。. - PowerPoint PPT Presentation

Citation preview

Page 1: 学習データと予測性能 Bias 2  - Variance - Noise  分解

学習データと予測性能Bias2 - Variance - Noise 分解

過学習損失関数と Bias,Variance, Noise

K-Nearest Neighbor 法への応用bias2 と variance の間のトレードオ

フの線形回帰への応用

Page 2: 学習データと予測性能 Bias 2  - Variance - Noise  分解

過学習: over-fitting

教師データによる学習の目的は未知のデータの正確な分類や識別

過学習 (over-fitting)教師データに追従しようとすればするほど、複

雑なモデル(=パラメタ数の多い)になり、教師データへの過剰な適応が起こりやすい。

このことを数学的に整理してみるのが目的。

Page 3: 学習データと予測性能 Bias 2  - Variance - Noise  分解

x が与えられたときの結果: t の推定値= y(x) 損失関数 : L(t,y(x))    ex. (y(x)-t)2

損失の期待値: E[L] を最小化する  t の推定値=Et[t|x]

この導出は次の次のページを参考にしてください

E[L] を計算してみると(次のページ参照)

第 1 項は予測値と学習データからの期待値の差の 2 乗、第 2 項は雑音 (noise)

dtdx),()]|[(dx)(])|[)((][ 22 txptxtExpxtExyLE tt

損失関数と Bias,Variance, Noise

Page 4: 学習データと予測性能 Bias 2  - Variance - Noise  分解

参考: E[L] の計算

xttxptxtExxpxtExy

xttxpxtExytxyE

xpxtExpxtExtExy

xptxp

txptxpxtExtExy

ttxtpttxpxtExtExy

ttxptxtExtExy

txtExy

ttxptxtExtExy

t

txtEtxtExtExyxtExy

txtExtExytxyL

tt

t

ttt

tt

tt

tt

t

tt

tttt

tt

dd),(|d|)(

dd),(|)()(

0|||)(

d),(

||)(

d),(d),(||)(

d),(||)(

|)(

d),(||)(

2/1

|||)(2|)(

||)()(

22

22

22

22

よって

の関数ではないのでは

で周辺化する倍を第2項の

Page 5: 学習データと予測性能 Bias 2  - Variance - Noise  分解

参考: E[L] を最小化する t の推定値 =Et[t|x] の導出

xtEtxttptxp

txpt

xp

ttxtpxy

ttxtpxpxyttxpxy

ttxptxyttxptxyxyxy

LE

x

xyLE

xyLE

xttxptxyxttxptxyLLE

t |d|d,d,

)(

d,)(d,)(

0d,)(2d,)()()(

)(

)(

dd,)(dd,),(

2

2

おくからので、定数とみなしては微分の対象ではないただし、おけばよいで変分(微分)し0とを簡単でこの場合は

を求めるには変分法。 を最小化する関数

Page 6: 学習データと予測性能 Bias 2  - Variance - Noise  分解

t(=Et[t|x]) は x によって決まる。 E[L] は次式でした。

第2項()内の左の項は、観測値として与えられた x に対

して E[L] を最小化する t の予測値だから、()内の右の項すなわち真の t  との差は、観測における誤差と考えられる。

y(x) の作り方で解決できないノイズ

dtdx),()]|[(dx)(])|[)((][ 22 txptxtExpxtExyLE tt

Page 7: 学習データと予測性能 Bias 2  - Variance - Noise  分解

は、データ点の観測に伴う誤差あるいはノイズの効果を示し、真のデータ点は、大体    のような範囲にある。このノイズの項が既に述べた次の式:

dtdx),()]|[( 2 txptxtEt

Page 8: 学習データと予測性能 Bias 2  - Variance - Noise  分解

さて、 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) を用いると次の式

xttxptxtExxpxtExyLE tt dd),()]|[(d)(])|[)((][ 22

]])|[);([(dx)(])|[);(( 22 xtEDxyExpxtEDxyE DD

Page 9: 学習データと予測性能 Bias 2  - Variance - Noise  分解

])|[)]:([)])(:([):((2

])|[)]:([()]):([):((

])|[)]:([)]:([):((])|[):((22

22

xtEDxyEDxyEDxy

xtEDxyEDxyEDxy

xtEDxyEDxyEDxyxtEDxy

DD

DD

DD

この式を ED[] すると、第 3 項は消え

]])|[)]:([[(])]):([):([(

]])|[):([(22

2

xtEDxyEEDxyEDxyE

xtEDxyE

DDDD

D

    第 1 項は variance 第 2 項は bias2

variance : y(x) の機械学習による推定値が、教師データ集合によって変動する度合いの期待値:複雑なモデルになって新規データの予測誤差が悪化する度合い

bias2 : y(x) の機械学習による推定値が、損失の期待値:E[L] を最小化する t からずれる度合いの期待値:モデルを記述が単純になるとき予測誤差が悪化する度合い。

Page 10: 学習データと予測性能 Bias 2  - Variance - Noise  分解

以上により損失の期待値:E[L]=bias2+variance+noise

dxdt),()]|[(

dx)(])]);([);([(

dx)(])|[)];([(

][

2

2

2

txptxtE

xpDxyEDxyE

xpxtEDxyE

LE

DD

D

bias2

variance

noise

bias2 と variance の間には次のページに示すようなトレードオフがある。

Page 11: 学習データと予測性能 Bias 2  - Variance - Noise  分解

      複雑   モデルの複雑さ   単純

予測誤差

bias2

variance

variance+bias2

noise

新規データに対する誤差: variance+ bias2+ noise

Page 12: 学習データと予測性能 Bias 2  - Variance - Noise  分解

bias2 と variance の間のトレードオフを K-Nearest Neighbor 法と線形回帰で具体的に見てみよう。

K-Nearest Neighbor 法

2クラスへの分類問題で考える。教師データはクラス:   とクラス:   と判定さ

れた相当数 があるとする。未知のデータ x がクラス  /  である確率は

x に近いほうから K 個の教師データ点のうちでクラス / であるものの割合

至ってシンプルだがかなり強力。

Page 13: 学習データと予測性能 Bias 2  - Variance - Noise  分解

下の図のような教師データの配置で考える

Page 14: 学習データと予測性能 Bias 2  - Variance - Noise  分解

K=1 の場合:クラス青,赤の確率が等しい境界線は以下のようにかなり複雑。相当多くのパラメターを使わないと記述できない。教師データ数に強く依存。

  は新規に到着した分類すべきデータ

   

の点は本来赤い点かもしれないが、青だと判断される。

の点は本来青い点かもしれないが、赤だと判断される。

Page 15: 学習データと予測性能 Bias 2  - Variance - Noise  分解

K= 3の場合のクラス間の境界

境界線はだいぶ滑らか。 K=1 の場合より境界を決めるパラメターは多い

この点は本来赤かもしれないが青と判断される

この青の近辺のデータは本当に青かもしれないが、新規データとしては頻出しない

Page 16: 学習データと予測性能 Bias 2  - Variance - Noise  分解

K=13 以上だと、どんな新規データでも赤と判定される。

Page 17: 学習データと予測性能 Bias 2  - Variance - Noise  分解

K=1 だと非常に複雑な境界線であり、個々の教師データに強く依存した結果をだすため、過学習をしやすい。 bias2 が大きい。

K が大きくなると、境界線は平滑化される方向に進む。教師データを適当な数使って結果を出すので、過学習を起こしにくい。

K が非常に大きくなると、境界線はますます滑らか(=いい加減?)になり、あるところから個別の教師データの影響が無視され、モデルとして大域のデータに依存し、個別データに対する精密さを欠くため、新規データを正確に分類できなくなってくる。 variance が大きい。

以上のから、 bias2 と variance の間には次ページの図のような関係が見てとれる。

Page 18: 学習データと予測性能 Bias 2  - Variance - Noise  分解

K=1K= 3K=1 3

モデル単純モデル複雑

Error rate

bias2

variance

新規データの予測誤差= bias2+variance+noise

最適な複雑さ: K

Page 19: 学習データと予測性能 Bias 2  - Variance - Noise  分解

bias2 と variance の間のトレードオフを

線形回帰で具体的に見てみよう。

まず線形モデルのパラメタ- w推定の復習から

と考える。はノイズで                        

ただし、

),0(

),,,,(),,,,1(

2

T101

0

N

wwwxxxwy KKi

K

ii

wxxw

Page 20: 学習データと予測性能 Bias 2  - Variance - Noise  分解

と考える。はノイズで                        

ただし、

),0(

),,,,(),,,,1(

2

T101

0

N

wwwxxxwy KKi

K

ii

wxxw

入力ベクトル: x から出力: y  を得る関数が xの線形関数( w と x の内積)にノイズが加算された場合を再掲

得られた N 個の観測データ の組( y,X)に対して 2 乗誤差を最小化するように wを推定し  を得る。

)0(ˆ

),0(),...,1(

1

1

T1T1

2

1

1

1111

   

のは               

 

yXXXwεXwy

ε

x

x

X

N

i

NNKN

K

N

y

y

iidNNi

xx

xx

w

Page 21: 学習データと予測性能 Bias 2  - Variance - Noise  分解

)2(d|d|

d|]|[

)1(d|]|)([

)1(

)0(dd),()]|)([(

d)(])|)([)((][

00000000

000000

000000

00

00002

000

002

000

0

0

0

000

lossxyxypyxypx

yxypxxyE

lossyxypyxxyE

lossxy

lossxyyxpyxxyE

xxpxxyExyLE

y

y

y

yxy

   

 

を使うと  だったが、

           

ww

w

w

ここで、前にやった損失の期待値  E(L) を思いだそう

ただし、新規の未知データは以下の通り

測に伴う雑音新規の未知データの観       

   項第

200

2

00002

0000002

00

00002

00002

00,

d)(

ddyd),,()(ddyd),,()(2

ddyd),,()(dd),()(][00

xxp

xyxpxxxyxpyx

xyxpyxxxpxxyLE Dxy

yywwyyw

yywyyw

Page 22: 学習データと予測性能 Bias 2  - Variance - Noise  分解

wεXwXXXyXXXw T1TT1Tˆ DDD EEE

次に すなわち N 個の観測データ の組(あるいは計画行列) ( y,X)= D :学習データとする部分について考える。

X に対して繰り返し y を観測することで D を動かした場合の

 期待 値: ED[..] を求めてみよう。

重み wの期待値 :   の D 動かした場合の期待値 w wDE

yyw ddd)d,()(1][ 0002

00,00yxxpxxyLE Dxy 項の第

Page 23: 学習データと予測性能 Bias 2  - Variance - Noise  分解

1T21TT1T21TT1T2

T1TT1TT1TT1T

T1TT1T

T1TT1T

T1TT1T ˆˆˆcov

XXXXXXXXXXXXXX

XXXεεXXXεXXXεXXX

wεXXXwwεXXXw

wεXwXXXwεXwXXX

wyXXXwyXXXw

NN

TD

T

D

T

D

T

D

T

DDDD

I

EE

E

E

EEE

   

   

   

   

おまけ 共分散行列

Page 24: 学習データと予測性能 Bias 2  - Variance - Noise  分解

0bias

])[(])[(

biasvariance)10(

)0(

):(

ˆ)]:([

ˆ

)]:([

)10(

]))]:([[(])]):([):([(

])):([(

ddd)d,()(1][

2

200,

20

T1T0,

2

T1T0

0

000

200,

200,

200,

0002

00,

0000

0000

00

00

                               

       

   より解に対する正規方程式の

に対する予測だから、はある 

     

になる。値はているので、この期待  観測だけを繰り返しのは同一でが、を動かしての期待値だは 

   

項の第

wwwyXXX

yXXX

ww

w

X

w

w

yyw

xxExxE

loss

xD

DDxy

xExDxyE

E

yDDxyE

loss

xDxyEEDxyEDxyE

xDxyE

yxxpxxyLE

DxyDxy

DD

D

D

DDxyDDxy

Dxy

Dxy

bias2 が 0 にならない時とは?

Page 25: 学習データと予測性能 Bias 2  - Variance - Noise  分解

)20(])[(

])[(

])[(

])[(

])[(

])[()10( of variance

)10(]))]:([[(])]):([):([(

])):([(

ddd)d,()(1][

2T1T0,

20

T1T00,

20

T1T0

T1T0,

20

T1T0

T1T0,

20

T1T0,

20

T1T0,

200,

200,

200,

0002

00,

0

0

0

0

0

00

0000

00

00

lossxE

xxxE

xxxE

xxxE

xxE

xxEloss

lossxDxyEEDxyEDxyE

xDxyE

yxxpxxyLE

Dx

Dx

Dx

Dx

Dx

Dxy

DDxyDDxy

Dxy

Dxy

   

 

   

項の第

εXXX

wεXXXw

wεXXXXwXXX

wεXXXXwXXX

wεXwXXX

wyXXX

w

w

yyw

Page 26: 学習データと予測性能 Bias 2  - Variance - Noise  分解

どうなるか?と近似できるとすると

明変数からなるのでは十分大きく多様な説

   

だからここで

を書き直すとこれを使って

はスカラーなので

0T

0T

0T

0

12T0

1

02

T0

11

02

)(

2T0

11

0

T0

11

0

2T1T0,

0

11

0

1

0

1

0

0

00

0

0

0

0

)30(trEE

E

EEE

EE)20(

])[()20(

xxEN

lossxxxx

xx

Ixx

xxloss

xEloss

xxxx

x

Tx

Tx

TTTx

nn

TTTTTx

TTTTx

Dx

TTTT

TTTTTT

DD

D

XX

X

XXXX

XXXXXX

εεXXXεεXXX

XXXεεXXX

εXXX

XXXεεXXXεXXXεXXX

Page 27: 学習データと予測性能 Bias 2  - Variance - Noise  分解

variance: )40(

)40(1

trtr)30(

)30(trEE

EE)20(

2

)(

2

)(

1

120

T0

12

0T

0T

0T

0

12T0

1

02

T0

11

0

0

0

00

0

N

KItr

Nloss

IKKKN

lossN

xxEloss

xxEN

lossxxxx

xxloss

KK

KKTTT

TTx

T

x

Tx

Tx

TTTTx D

ゆえにだからはなので、は

   

と近似できるとすると

明変数からなるのでは十分大きく多様な説

   

XXXXXXX

XXXXXX

XX

X

XXXX

XXXεεXXX

Page 28: 学習データと予測性能 Bias 2  - Variance - Noise  分解

過学習: over-fitting とbias2-variance 分解

bias2-variance 分解は過学習現象を扱う数学的概念として便利

教師データによる学習の目的は未知のデータの正確な分類や識別

過学習 (over-fitting)学習するモデルを複雑な(=パラメタ数の多い)もの

にすると過学習が起こりやすい。モデルの良さ(=(対数)尤度あるいは 2 乗誤差など

の損失-1 )を最大化し、かつ簡単なモデルであるほど良い

モデルの簡単さを表すのは線形回帰における正規化項(正則化項とも呼ぶ)。 cf.情報量基準、 MDL