学習データと予測性能 bias 2 - variance - noise 分解
Post on 06-Jan-2016
56 Views
Preview:
DESCRIPTION
TRANSCRIPT
学習データと予測性能Bias2 - Variance - Noise 分解
過学習損失関数と Bias,Variance, Noise
K-Nearest Neighbor 法への応用bias2 と variance の間のトレードオ
フの線形回帰への応用
過学習: over-fitting
教師データによる学習の目的は未知のデータの正確な分類や識別
過学習 (over-fitting)教師データに追従しようとすればするほど、複
雑なモデル(=パラメタ数の多い)になり、教師データへの過剰な適応が起こりやすい。
このことを数学的に整理してみるのが目的。
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
参考: 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項の
参考: 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とを簡単でこの場合は
を求めるには変分法。 を最小化する関数
t(=Et[t|x]) は x によって決まる。 E[L] は次式でした。
第2項()内の左の項は、観測値として与えられた x に対
して E[L] を最小化する t の予測値だから、()内の右の項すなわち真の t との差は、観測における誤差と考えられる。
y(x) の作り方で解決できないノイズ
dtdx),()]|[(dx)(])|[)((][ 22 txptxtExpxtExyLE tt
は、データ点の観測に伴う誤差あるいはノイズの効果を示し、真のデータ点は、大体 のような範囲にある。このノイズの項が既に述べた次の式:
dtdx),()]|[( 2 txptxtEt
さて、 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
])|[)]:([)])(:([):((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 からずれる度合いの期待値:モデルを記述が単純になるとき予測誤差が悪化する度合い。
以上により損失の期待値:E[L]=bias2+variance+noise
dxdt),()]|[(
dx)(])]);([);([(
dx)(])|[)];([(
][
2
2
2
txptxtE
xpDxyEDxyE
xpxtEDxyE
LE
DD
D
bias2
variance
noise
bias2 と variance の間には次のページに示すようなトレードオフがある。
複雑 モデルの複雑さ 単純
予測誤差
bias2
variance
variance+bias2
noise
新規データに対する誤差: variance+ bias2+ noise
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 の間には次ページの図のような関係が見てとれる。
K=1K= 3K=1 3
モデル単純モデル複雑
Error rate
bias2
variance
新規データの予測誤差= bias2+variance+noise
最適な複雑さ: K
bias2 と variance の間のトレードオフを
線形回帰で具体的に見てみよう。
まず線形モデルのパラメタ- w推定の復習から
と考える。はノイズで
ただし、
),0(
),,,,(),,,,1(
2
T101
0
N
wwwxxxwy KKi
K
ii
wxxw
と考える。はノイズで
ただし、
),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
)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
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 項の第
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
おまけ 共分散行列
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 にならない時とは?
)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
どうなるか?と近似できるとすると
明変数からなるのでは十分大きく多様な説
だからここで
を書き直すとこれを使って
はスカラーなので
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
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
過学習: over-fitting とbias2-variance 分解
bias2-variance 分解は過学習現象を扱う数学的概念として便利
教師データによる学習の目的は未知のデータの正確な分類や識別
過学習 (over-fitting)学習するモデルを複雑な(=パラメタ数の多い)もの
にすると過学習が起こりやすい。モデルの良さ(=(対数)尤度あるいは 2 乗誤差など
の損失-1 )を最大化し、かつ簡単なモデルであるほど良い
モデルの簡単さを表すのは線形回帰における正規化項(正則化項とも呼ぶ)。 cf.情報量基準、 MDL
top related