MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方...

80
評価方法 機械学習の入門 by 中川裕志(東京大学)

Transcript of MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方...

Page 1: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

評価方法

機械学習の入門

by 中川裕志(東京大学)

Page 2: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

教師あり学習の評価

予測値の決め方

機械学習の結果の予測器によって

xが正解(1)である確率が閾値θthより大きければ予測値 =+1 小さければ =ー1

となる。

ここで、閾値への予測値の依存性に注意

(不正解)正解  1ˆ otherwise )( 1ˆ then|1 if yyp thx

Page 3: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

閾値と正解の関係

閾値

Page 4: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

一般的なデータ処理結果の状態

• 処理sで結果のデータ集合が得られた。しかし、結果の中には間違いもあるし、得られなかったデータの中にも正解がありうる。

データ集合全体{x}

=1の

データ集合

正解データの集合

TN(True Negative)

FP(False positive)

TP(TruePositive)

FN(FalseNegative)

Page 5: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

性能評価尺度

再現率

適合率あるいは精度

フォールアウト

一般性

Accuracyor

Rand Index

FNTPTPrecall

FPTPTPprecision

FPTNTNfallout

FNFPTNTPTPgenerarity

FNTNFPTPTNTPaccuracy

Page 6: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

再現率 vs 精度

• よく使う評価の表現法

再現率

精度

0 0.5 1.0

1.0

0.0

再現率100%の自明なシステム??

Page 7: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

再現率 vs 精度に関連した尺度

• Break even point 再現率と精度が一致する点

• 11点平均精度 再現率=0.0 , 0.1, 0.2, ….. 0.9, 1.0 の11点における精度の平均値

• F値 ただし、bは精度が再現率よりどれだけ重視されているかを示すパラメタ― b=1がよく使われる。

RPbRP)b1(

2

2

F

RPRP

PRF 1122

Page 8: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ
Page 9: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ
Page 10: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ
Page 11: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

ROCとAUCROC曲線

ROC曲線の下の部分の面積がAUC(Area Under Curve)

Page 12: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

理想的な場合(表1.2): 正解: 不正解

θth=a: TPR=1/4FPR=0

θth=b: TPR=4/4FPR=0

θth=c: TPR=4/4FPR=3/4

Page 13: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

現実的な場合(表1.3): 正解: 不正解

θth=a: TPR=1/4FPR=0

θth=b: TPR=2/4FPR=2/4

θth=c: TPR=4/4FPR=3/4

Page 14: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

順位つき結果の評価

単純な識別では結果は全て同等

生成モデルの場合は、結果が適合性のよい順番に並ぶ。(表示も適合順)

この場合の評価法について

Page 15: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

Recall , Precision処理qに適合する結果(以下、正解、という)の数: |Dq |処理システムの順位つけられた結果: (d1…….dn)di が処理qへの正解なら ri=1、 そうでなければ ri=0

とする。すると、

第k順位まで拾ったときの

ki

irk1q |D|

1)Recall(

ki

irkk

1

1)Precision(

Page 16: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

平均適合率:average precision

• 例:順位は正解が最後に現れたただし、N

krD Nk

kq

)precision(||

1csionAveragePre1

順位 正解か

1 〇

4 〇

75.042

11

21

AvPrec

Page 17: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

平均逆順位:Mean Reciprocal Rank(MRR)

• 例

の平均値全質問に対する

=0現れなければ もし、正解がひとつも

位は初めて正解がでた順

RRMRRMRR

nn

RR

:1

順位 正解か

第1問 第2問

1 〇

3 〇

4 〇

625.02/41

11

MRR

Page 18: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

nDCG

DCG(Discounted Cumulative Gain)結果には関連度(relevancy):Rが与えられている。Rは適

当な範囲の数値

順位i番目の結果の関連度をRiとする

p位までの結果に対するCG(Cumulative Gain):

CGpに順位が低いものに関連度Rの高いものが現れた場合のペナルティを考慮したのがDCGp

p

i iRCGp1

の減少関数はifRf

iRRDCGp

ip

i ii

p

ii

:generally moreor

log

1

22

1

Page 19: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

DCGはRiの決め方や関数fiの定義に強く依存

そこで理想的な場合のDCG(=IDCG)と実際の結果に対するDCGの比を使う nDCG

IDCGpDCGpnDCGp

Page 20: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

DCG,nDCGの例

結果: R1=4, R2=1, R3=4, R4=2, R5=1log23=1.58, log24=2, log25=2.32DCG5=4+1+4/1.58+2/2+1/2.32=8.96IDCG5=4+4+2/1.58+1/2+1/2.32=10.70 nDCG5=8.96/10.70=0.83 もし、結果が関連度Rの大きい順に並んでいれば、

DCG=IDCGだから nDCG=1 もし、結果が逆順なら(1,1,2,4,4)

DCG5=1+1+2/1.58+4/2+4/2.32=6.98 IDCG5=6.98/10.70=0.65

Page 21: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

学習と評価(教師ありの場合)

正解データがある場合。

正解データ全部を教師データとして機械学習。学習結果のシステムをs

s を教師データで評価

s を未知のデータで評価 本当は、未知データでの評価をしたいが、なにしろ未知

正解データを教師データとテストデータに分割 教師データで学習し、テストデータを未知データとみなして評価

正解データが少ない場合:N-fold cross validation(N-交差検定)正解データをN等分。N-1個を教師データとして学習し、残りの1個で評価。

これをN種類繰り返す。

特殊なケースとして、1個だけを除いて学習し、その1個で評価。これをデータ数繰り返す。Leave-one-out法

Page 22: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

教師なしの場合

クラスタリングの場合

人手で正解データを作っておき、教師あり学習と同じような評価。

一応、再現率も計測できる。

正解データが存在しない場合

学習結果をサンプリングして、人手で評価するしかない。

再現率は評価できない。

Page 23: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

クラスタリングの評価:Purity生成されたクラスタがどれだけ多数派で占めら

れているかを表す尺度

L

ijij

L

ijijL

i

K

jji

jiL

jji

ji

K

nN

nn

purityglobal

nn

puritylocal

j

inL

CCCN

1,

1,

1 1,

,

1,

,

1

max1max1

max1

:

,,...:,:

 

 

するデータ数番目の真のクラスに属

て番目のクラスタにおい生成された

生成されたクラスタ数

真のクラス集合データ数

Page 24: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

local purityglobal purity

問題点 何もしない場合

全データが同一クラスタ

1クラスタが1データ

1 2 3

106)1( ,

84)1( ,

75)1( puritypuritypurity

6.02515

1087645

purity

jijin

Npurity ,,

max1

111max111

, N

NN

nN

purityL

i

L

ijij

Page 25: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

Inverse Purity

K

i

L

jjiK

iji

jij n

n

n

NityInversePur

1 1,

1,

,max1

真のクラスjのデータ総数1クラスタに1個のデータしかない場合もInverse Purityは1より小さい。そこでPurityとの調和平均であるF値で評価

ityInversePurPurity

F 112

クラスタiで捉えたクラスjのデータ数

再現率のような

もの

Page 26: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

8個、 7個、 10個

1 2 3

2515

1087645

Purity

599.0

598.01

6.01

2

値F

598.0101068

747

85

251

ityInversePur

Page 27: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

テストコレクション

(a) 入力データ集合、(b) 解くべき問題(識別など)、(c)問題において

<入力データ、推測結果>対の集合、を組にしたデータベースをテストコレクションと呼び、機械学習システムの性能評価において必須の資源である

ある入力データに対応する推定結果の個数が多いような問題(例えば、情報検索)では、 <入力データ、推測結果>の大規模な集合を作ることは大規模テストコレクションでは困難

Pooling method:、 同一の入力データ集合に対して、多数のシステムで同じ問題に対して出した上位N 個の結果を全て集める。N の値として、100 程度が多い。この結果に対してのみその適合性を人手で判断し、それを正解の集合とする

Page 28: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

線形回帰および識別

機械学習の入門

by 中川裕志(東京大学)

Page 29: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

線形モデル

データ の分布状況から線形回帰式を求める

w0

x

y y=w1x+w0

Page 30: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

線形モデル

T101

0

],,,,[,],,,1[, KT

Ki

K

ii wwwxxxwy

wxwx ただし、

入力ベクトル:x から出力:y を得る関数がxの線形関数(wとxの内積)

一般に観測データはノイズを含んでいる。つまり

得られたN個の観測データ の組(y,X)に対して最適なwを推定する。

そこで、yと の2乗誤差を最小化するようにwを選ぶ。

と考える。はノイズで ),0(, 2 Ny wx

wX

Page 31: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

2乗誤差の最小化

yXXXw

yXXwXw

XwyXwy

XwyXwyww

x

xXy

TT

w

N

1

TT

T

T

KNKN

K

T

T

N w

ww

wxx

xx

y

y

1

1

0

1

1111

)(

0)()(

)()(minargˆ

1

1

を解くと

の推定値

正規方程式 と呼ばれる基本式

Page 32: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

補遺:正規方程式の導出

)(2)()(..)(

..)(..)(..)(..)(

..)(..)(..)()()(

)()(rulechain

0222)1(

2

)1(0)()()()()(

1

XwyXXwyXXwyXy

yywy

yyy

wy

wXwyXwy

xx

xx

xx

yXXXw

XwXyXXwXyXXwyX

XwXXXwXwXw

wXXwwXwXw

wXwXw

yXXywXwya

xxayX

wyXwa

xax

wXwXw

wXwy

wyXw

wXwyXwy

XwXwXwyyXwyyXwyXwyXwyXwy

TTT

T

TTTT

TT

TTTTT

TTTTTTTTTTT

TTTTT

TTTT

TTTTTT

TTTTTTTTTT

ggfggfcf

  

  

 を使えば  の 行列で微分する場合

よりより

Page 33: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

正規方程式を解く簡単な例

N

ii

N

iiN

ii

N

ii

N

ii

N

ii

N

iii

N

ii

N

ii

N

ii

N

ii

N

iii

N

ii

N

ii

N

ii

N

ii

N

ii

N

ii

N

ii

N

iii

N

ii

N

ii

N

ii

N

ii

N

ii

T

TTN

iii

N

ii

N

ii

N

ii

N

ii

NN

NN

T

NN

xwN

yN

wxxN

yxyxN

N

x

N

y

xxN

yxxyxw

xxN

yxyxNw

Nx

xx

xxN

yx

y

ww

xx

xN

y

y

xxww

x

x

xx

ww

y

y

x

x

11

102

11

2

111112

11

2

1111

2

0

2

11

2

1111

1

11

2

2

11

2

1

1

1

1

0

1

2

1

1

1

11

01

1

1

011

11

1

11

1

111

1

1

XX

yXwXX

yXXwXwyX T

    

  

は正規方程式  

Page 34: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

用語:誤差、損失、目的関数

線形モデルで最小化したかったのは2乗誤差

真のモデルにおける値(2乗誤差におけるy)と予測値(2乗誤差におけるXw)の差異を表す関数を損失関数(単に損失)あるいはLossと呼び、Lで表すことが多い。

上記のような最適化問題において最小化(一般的には最適化)したい関数を目的関数と呼ぶ。

線形モデルの2乗誤差最小化では

2乗誤差=損失=目的関数

Page 35: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

線形識別

と の領域の境界面を線形関数として求める

Page 36: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

線形識別

データ: xがいくつかのクラス(あるいはカテゴリー):Ckのどれか

に属する。 例:新聞記事が「政治」「経済」「スポーツ」「芸能」「社会」などのクラ

スのどれかに属する場合。この場合、データ:xは例えば、記事に現れる単語の集合、など。

データ:xがK個のクラスの各々に属するかどうかの判定は(-1=属さない,1=属する)の2値を要素とするK次元ベクトル:yi=(-1,1,-1,..,1)で表される。 ただし、1つのクラスに属するか属さないかだけを識別すの場合は

2クラス分類という。当然、 yi=ー1 or yi = 1 この属するか否かの判断をする式が線形の場合を線形識

別という。

TMxxx ],,,[ 21 x

Page 37: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

線形識別の関数

一般化線形識別の関数は以下

2クラス分類

クラスC1に属するかC2(=notC1)に属するかは、次の通り

if y(x)≥0 then データ:xはC1に属する

otherwiseデータ:xはC2に属する

(すなわちC1に属さない)

wxxw

wx

x

wxx

~,~)(~,1~

,)(

0

0

yw

wy

とおくならあるいは

は非線形でもよいfwfy ),()( 0 wxx

Page 38: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

2値分類の直観的説明

y={-1,1}、xは2次元とする。(下図を参照)

{y,x}を教師データとして、2乗誤差の最小化を行っ

て正規方程式を求めると、下図の のようなクラスを分類する分離平面が得られる。

y=-1

y=1

x1

x2

境界面

Page 39: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

線形識別関数の幾何学的解釈

xxa

xb

w

xc

||||)(

wxy

||||0

wx w

d

直交。すなわち識別境界線とは )(

),()()(0

0,)(,0,)( 00

ba

baba

bbaa

yy

wywy

xxw

wxxxx

wxxwxx

識別境界線

||||||0||||||||,

|||||||,

,)(0

000

0

wxwxwx

wxwxwx

wxxx

www

wy

ddd

ddd

dd

d

整理するとこれを上式に代入して

から、に並行で横ベクトルだは

とおく。の垂線の交点を原点から識別境界線へ

xd

Page 40: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

線形識別関数の幾何学的解釈

x

w

xc

||||)(

wxyr

||||0

ww

識別境界線

||||)(0)(

||||||||)(

||||,

,,)(

||||2

00

0

wxx

wwx

www

wxwxx

wwwxx

yry

ryrwwy

wr

c

cc

c

だから

を足すとの内積をとり、両辺と

xaxb

xd

Page 41: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

wの計算方法:2クラス分類の場合

.すると新規のデータ:xは が正ならクラス

C1に,負ならC2属する

.

で書けるとするの境界がクラス wxx ~,~)(, 21 yCC

)~(xy

wx

wxWXY

x

xX

x

~,~

~,~~~

~

~~

10,1),1(,~

111

NNT

N

T

nn

nn

y

y

yyNnyN

なら  ただしクラス1なら

があったとき個の教師データ

Page 42: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

すると、観測データ(教師データ)において個々のクラスに分類されたか否かの観点からの2乗誤差は次式となる

もう少し詳しく書くと

YWXYWXW ~~~~)~(T

E

  

2211

11

11

~,~~,~

~,~

~,~~,~~,~

~~~~

NN

NN

NN

T

yy

y

yyy

wxwx

wx

wxwxwx

YWXYWX

Page 43: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

これを最小化する は で微分して0とおけば、線形回帰のときと同様の計算により求まる。

微分は次式:

YWXYWXW ~~~~)~(T

E

W~ W~

YXXXW

YWXXWW

TT

TE

~)~~(~0~~~

~~

1

YWXXYWXAAWA

WAA

~~~2~~2 T

TT

Page 44: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

新規のデータxnewに対する予測を行うy(xnew)も求まる。

YXXXxWxx

xxy

YXXXW

TTnewnew

newK

new

new

TT

y

y~)~~(~~~

)~(

)~()~(

~)~~(~

11

1

y(xnew)が大きいほどクラス C1 に属する可能性が高い。

Page 45: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

サポートベクターマシン

機械学習の入門

by 中川裕志(東京大学)

Page 46: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

再掲:2乗誤差最小化の線形識別の問題点

この領域の判断が困難

この領域に青の境界線が引っ張られることあり。

そもそも、Yの値は正規分布を想定した理論なのに、{0、1}の2値しかとらないとして2乗誤差最小化を当てはめたところに無理がある。

Page 47: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

学習データ:

N個の入力ベクトルx1,…,xNと

各々に対応するクラス分け結果 y1,….,yN

ただし、 yi は+1(正例)かー1(負例)をとる。

新規のデータxに対して、yが y(x)>0なら正、y(x)<0なら負になるようにしたい

0)(0)(

10)(10)(

,)( 0

yyyy

yyyy

wy

xx

xx

xwx

た場合は、当然ながら正しく分類できなかっ

すなわち、

かつあるいはかつ

合は、正しい分類ができた場

SVMの定式化

Page 48: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

y(x)=+1

y(x)=0

y(x)=ー1

Support vector

正例

負例|||||)(|

wxy

margin

この図から分かるように対象は線形分離

可能な場合

この長さを最大化したい:(SVM10)の

max

境界面との距離が小さいデータを選びたい(SVM10)のmin

Page 49: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

マージン最大化SVMの狙いは識別境界面:y(x)=0から一番近いデ

ータ点までの距離(マージン:margin)を最大化すること。以下でその考えを定式化する。

識別境界面:y(x)=0からあるxまでの距離は、線形識別の幾何学的解釈で述べたようにy(x)/||w||

我々は正しく識別されたデータ、すなわちyny(xn)>0 のデータにだけ焦点を当てる。

すると、点xnから境界面までの距離は次式。

||||),(

||||)( 0

wxw

wx wyyy nnnn

Page 50: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

したがって、最適なw,w0を求めることは、境界面までの距離が最小の点の距離(margin)を最大化するという問題に定式化でき、以下の式となる。

この最適化はそのままでは複雑なので、等価な問題に変換する。

)10(),(min||||

1maxarg 0, 0

SVMwy nnnw

xwww

wを定数倍してcwと変換しても、境界面までの距離

yny(xn)/||w||の値は分母子でcが相殺するので不変。

よって、境界面に一番近い点で次式が成立しているとする。

1),( 0 wy nn xw

Page 51: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

双対問題化

Nnwy nn ,,11),( 0 xw

元の問題では、argmax{ min }という一般的な枠組みの問題な

ので、内点法などの効率の良い最適化アルゴリズムが良く研究されている「線形制約凸2次計画問題」に変換する方向に進める。参考文献:工系数学講座17「最適化法」(共立出版)

境界面に一番近いデータでは

したがって、正しく識別された全てのデータは次式の制約を満たす。

ここで、等号が成り立つデータをactive、そうでないデータをinactiveと呼ぶ。

1),( 0 wy nn xw

Page 52: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

)30(,,11),(subject to21||||

21minarg

0

2

,

SVMNnwy nn

T

b

xw

wwww

ここで、等号が成り立つデータをactive、そうでないデータをinactiveと呼ぶ。

定義より、activeなデータは境界面に一番近いデータであり、これがsupport vectorとなる。

このとき、marginを最大化する式(SVM10)から、||w||-1を最大化するのだが、これは等価的に||w||2を最小化する問題となる。すなわち、以下の定式化。

制約条件: )20(,,11),( 0 SVMNnwy nn xw

Page 53: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

(SVM30)のような不等式制約を持つ最適化問題は、Lagrange未定乗数ベクトルaを導入したLagrange関数: L(w, w0,a)を

w,w0(最小化)a(最大化) という最適化問題に双対化する

まず、w, w0について、 L(w, w0,a)の最適化を行う。

)60(0

)50(

,

)40(),(1||||21)),,(

1

1

0

01

20

SVMya

SVMya

w

SVMwyawL

n

N

nn

nn

N

nn

nn

N

nn

xw

w

xwwaw

下の条件が出る。に関して微分すると以

(SVM50)(SVM60)を(SVM40)に代入して、wとw0を消すと、次のように双対問題としての定式化が得られる

Page 54: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

SVMの双対問題ー境界面で完全に分離できる場合

SVM100))()(

)(

,)(

)90(0

)80(,..,10 subject to

)70()(21max)(~max

01

1

1 1 1

で行う対する予測は次式のまた、新規のデータに

wkyay

y

kwhere

SVMya

SVMNna

SVMkyyaaaL

N

nnnn

mnmn

N

nnn

n

N

n

N

n

N

mmnmnmnn

xx,x

x

xxx,x

x,xa

上記(SVM70,80,90)を解くアルゴリズムは後に説明する。また、(SVM100)で良い理由はカーネルの関する記述で述べる(表現定理)

これがカーネル関数(データxn,xmの対だけによる)

後で説明する

Page 55: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

双対化を最適化の観点から見なおそう

mixg

xf

i ,..,10 subject tomin

最適化問題 P

ラグランジュ関数

双対問題 Q

はベクトルで書く    

  

gxgxf

xgxfxLT

ii

m

i

,

,1

0 subject tomax

,min

q

xLqx

Page 56: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

双対定理

弱双対定理

最適化問題Pにおけるfの最適値=f*

双対問題Qにおけるqの最適値=q*

q* ≤ f*

強双対定理

目的関数fが凸で、制約条件が線形の場合は q*

= f*であり、対応するラグランジュ乗数λ*が存在する。

Pは制約条件が線形なので、 fが凸なら強双対定理が成立

Page 57: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

双対化を最適化の観点から見なおそう

元の問題(再掲)

この問題では目的関数は2乗ノルムなので凸であり、制約条件が線形な式なので、強双対定理が成立し、双対問題を解けば、この問題(主問題)の解が得られる。

)30(,,11),(subject to

||||21minarg

0

2

, 0

SVMNnwy nn

w

xw

ww

Page 58: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

鞍点定理からみると

元の問題(再掲)

上記のLagrange関数L(w,w0,a)の最小化の意味は次のページの図

)30(,,11),(subject to

||||21minarg

0

2

,

SVMNnwy nn

b

xw

ww

)60(0

)50(

,

)40(,1||||21),,(

1

1

0

01

20

SVMya

SVMya

w

SVMwyawL

n

N

nn

nn

N

nn

nn

N

nn

xw

w

xwwaw

下の条件が出る。に関して微分すると以

Page 59: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

Lagrange関数L(w, w0,a)の最小化の意味は下の図で鞍点にかかる曲線に上から近づく処理であり、

となるw, w0を代入して のように動く。

この曲線に沿って最適点 に a を動かす処理が双対問題であり、図から分かるように最大化となる

つまり という問題

0,00

wLL

w

awLwa

,,minmax 0, 0

ww

Page 60: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

鞍点定理

前のページとの対応はww0=x, a=λ

は双対問題の解は主問題

  

**

0

**

0

**

,

,minmax,,maxmin,

x

xLxLxLxxx

Page 61: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

スパースなデータに対する識別器

;カーネル関数を利用して、回帰や識別を行うことは k(x,y)において、 {x,y} のペアの観測データ(=教師データ)が膨大だと、正規方程式に現れた XTX (XTXがちょうどk(xn,xm)を(n,m)成分とする行列)

の逆行列の計算が計算量的に困難!

すべての観測データを使うと、重要な境界線が観測データの集中的に集まっている部分に強い影響を受けてしまう。

限定された観測データを使って効率よく計算できないものだろうか。

正例データと負例データのうち、両者の境界にあるもの(これをSupport Vectorという)だけを使えば、つまりスパースなデータによるカーネルならずいぶん楽になる。

Support Vector Machine

mnmnk xxx,x ,)(

Page 62: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

KKT条件

を有効な制約と呼ぶ。このような

なので、なら条件と呼ぶ。なおこれを

i

ii

ii

i

i

m

iii

m

iii

i

ggKKT

KKTgKKTKKTg

KKTgf

gfLLagrangian

migf

0)(0

)4( 0)()3( 0)2( 0)(

)1(0)()(

)()(),(

,..,10)( subject to )( minimize

1

1

x

x

x

xx

xxx

xx

を最適化する以下の条件で得られる

Page 63: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

  の解釈0)()(1

m

iii gf xx

g2(x)=0

g1(x)=0

)(22 xg)(11 xg

)(xf

)(xf許容領域

許容領域の内部でf(x)が大き

くなるということは、その外側へ向う有効なgi(x)たちが作る凸錐の逆方向にf(x)の勾配が向いている

は許容領域の端で最小

り込むほど大きいのでなので、許容領域に入

勾配

ほど大きいならが許容領域から離れる

)(

)()()(

)(

1

x

xxx

x

f

fgg

gm

iiii

i

f(x)は許容領

域の中に入るほど大きくなる

gi(x)は許容領

域から離れるほど大きくなる

Page 64: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

である。この点たちが 

の点だけ。寄与するのは

に寄与しない。の点は

となる。 かは、よって、全てのデータ

る。条件は以下のようになるなお、この問題におけ

ctor support ve 1)(

)100()(01)(0

4)-(KKT0))(1(3)-(KKT 02)-(KKT 0)(1

nn

n

nnn

nnn

n

nn

yySVMya

yya

yyaa

yyKKT

xx

x

x

x

01

20

1

,1||||21),,(

0)()()(),(

wtawL

ggfL

nn

N

nn

i

m

iii

xwwaw

xxxx

式化では、だったが、ここでの定

Page 65: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

w0の求め方

Sm Snnmnnm

mm

N

nnmnnm

mm

yayS

w

wyy

wyay

yy

x,x

x,x

x

||1

1

1

1)(nS ctorsupport ve

0

0

2

01

る。は以下の式で与えられ

に注意すると、を掛け、両辺に

よって、

においては に含まれるデータ 

Page 66: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

SVMの定式化 境界面で完全に分離できない場合

少々は間違った側に入り込んでもよいが、ゆるい境界面の内側には入るように調整soft margin

y=ー1

y=0

y=+1

ξ>1

ξ<1

ξ=0

正例側

負例側

無理やり分離する複雑な境界面(over fitting)

ξ=1

Page 67: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

スラック変数ξ≥0を導入

正しいsoft marginの境界面の上ないし内側の点ではξ=0

その他の点xnでは ξn=|yn-y(xn)|

中央の識別境界面 y(xn)=0 では、 ξn=1

間違って識別された点はξn>1

まとめると線形分離できない場合の制約条件のξによる緩和:

ξn>1 が許容されるが、できるだけ小さく押さえたい!

)10...(00)(1 )(1 0)(1)(1

SFwhereyyyyyyyy

nnnn

nnnnnnn

xxxx

最適化は以下のように形式化される。ただし、Cはスラック変数ξのペナルティとmargin wの按配を制御するパラメター

)20...(0||||21

1

2 SFCwhereCminmizeN

nn

w

Page 68: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

2

1

2

1

||||21min||||

21))(1(min

0)(1 if0)(1 if0

))(1(

wwx

xx

x

N

nn

N

nnn CyyLossC

yyyy

yyLoss

n

る。関数の最小化問題とな

のこの関数を用いると次

                   

0 1

))(1( nn yyLossn

x

)(1 nn yy x

n

2||||21 w

Page 69: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

この最適化問題を解くためのLagrangianは以下のようになる。

最後の項はξ≧0 を表す項。

)30...()(00

)(1||||21),,(

0

111

20

SFwyawhere

yyaCwL

nnnn

N

nnn

N

nnnnn

N

nn

xw,x

xwaw

KKT条件は以下の通り。

Nnwhere

yyayy

a

nn

n

n

nnnn

nnn

n

,...,10

00

0)(10)(1

0

xx

Page 70: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

w、b、ξを最適化するためにLagrangianを各々で微分すると右下の結果が得られる。

右をLagrangianに代入す

ると下の双対問題が得られ

線形制約凸2次計画問題

となる。 nnn

n

N

nn

nn

N

nn

CaL

yawL

yaL

0

00

0

10

1xw

w

N

nnn

n

nnn

mnmn

N

n

N

mmnmnmn

N

nn

ya

Ca

Caa

k

yyaaaL

1

1 11

0

0

00

,,

,21)(~

うになる条件は全体で以下のよ以上をまとめると制約

制約条件は

xxxx

xxa

Page 71: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

SVM実装上のアルゴリズムの工夫

さて、いよいよ ai を求める段階になった。

SVMは「線形制約を持つ凸2次計画問題」なので、標準的な実装方法が使える。

ただし、次元が高い場合には、カーネルの行列をメモリに乗せるだけで大変。

独自の工夫がなされているので、ポイントを紹介

最適解の探索は、素朴なgradient ascent法でも解けるが、効率は良くない。

Page 72: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

ワーキング集合法

教師データSを分割して部分的に解くことを繰り返す。

教師データSに対して

ai0Sの適当な部分集合S’を選ぶ

repeatS’に対する最適化問題を解く

KKT条件を満たさないデータから新たなS’を選択

until 停止条件を満たす

return {ai}

Page 73: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

分解アルゴリズム

変数{ai}の集合全体ではなく、ある大きさの部分集合(ワーキング集合)のみを更新する。

この更新の後、ワーキング集合に新たな点を加え、他の点は捨てる。

上記の{ai}の選択における極端な方法として、2個のaiだけを使って更新する方法を

逐次最小最適化アルゴリズム(Sequential Minimal Optimization algorithm:SMO algorithm)と言う。

Page 74: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

なぜ2点か?

復習:右の

ような最適化

だった。

(SMO-2)より、最適化の各ステップで更新されるaiの個数の最小値は2。なぜなら、1個のaiを更

新したときは、(SMO-2)を満たすために、最低でもう1個のaiを調整のために更新する必要があるから。

)2(0

)1(0

00

,,

,21)(~

1

1 11

SMOya

SMOCa

Caa

k

yyaaaL

N

nnn

n

nnn

mnmn

N

n

N

mmnmnmn

N

nn

条件は全体で次式以上をまとめると制約

制約条件は

xxxx

xxa

Page 75: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

S’の2点を最適化する更新式

)9()(

)8(2

)()(

2'

222111

122211

2211222

,11

21

SMOaayyaa

SMOKKK

yfyfyaa

fKaykay

S

newoldoldnew

oldnew

ijij

N

jjjij

N

jj

xx

xx,x

x,x   とする。点=更新の対象となる

Page 76: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

2点の更新式の導出

対象とする2点をa1 、 a2とする。

動かすのが2点をa1 、 a2だけなので次式が成立

まず、 a2をa2oldからa2

newに変えることにする。

a2の取る範囲の制約 0≤a2≤Cから当然 0≤a2new≤C

ただし、(SMO-3)から次の制約が加わる。

)2,1(11)3(22112211

iySMOyayayaya

i

oldoldnewnew

かただし 

定数

Page 77: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

)5(

),min(),,0max(

0

)3(

)4(

),min(),,0max(

0

)3(

2

1221

1221

21212

1122

21

2

2121

2121

21212

1212

21

SMOVaU

aaCVaaCU

aaaa

aaCaCaa

aaaaSMO

yy

SMOVaU

aaCVCaaU

CaaaCa

aaaaa

aaaaSMO

yy

new

oldoldoldold

oldoldnewnew

oldoldnewnewnew

newoldoldnew

new

oldoldoldold

oldoldnewnew

oldoldnewnewnew

newoldoldnew

     

とおくと

よって、

だから、が最小値は最小になっても

だから、が最大値は最大になっても

より

の場合

     

とおくと

よって、

だから、が最小値は最小になっても

だから、が最大値は最大になっても

より

の場合

Page 78: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

a2newの更新式の導出

)6(21

21)(

1

21

21),(

),(,)70(

2,1

,

)70()(21max)(~max

2221211222

2222

2211222

2121

2121

1221122112211

2221111221212222

21112121

2121

2

13

21

1 1 1

SMOvayvsayKasas

aKsaKasaaW

saasaayysy

yyayayayayaya

vayvayKaayyaKaKaaaaW

kKaaWaaSVM

iforkayfkayv

aa

SVMkyyaaaL

newnew

oldoldnewnew

jiij

jijj

jijij

N

jji

N

n

N

n

N

mmnmnmnn

定数

とおくと上の式は  に注意し、

を掛け、の両辺にここで

定数

と略記する。ただし、

は次のように書ける。に関連する部分のすると

と定義する。

とにする。注目して最適化するこに関連する部分だけにを、

x,x

x,xxx,x

x,xa

Page 79: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

が更新式となる。 上記

は古い値なので、 に入っているここで

であるからが更新されたまたこの式の

に注意。  

とおく。で微分しての最大化のために

)7(

,)(

)7( )(1)2(

1

01

0)(0)(

21

2

1

2112111122

21212111222112

22

222

112112

2212212212222211

2

2

22

SMO

aaKayfv

SMOvvKKyyyyvvyKKssKKKa

aa

yyyyyysys

vyvysasKaKaKsasKsa

aWaaW

ijjj

jii

new

new

x

Page 80: MIMS - by 中川裕志(東京大学)...教師あり学習の評価 予測値の決め方 機械学習の結果の予測器によって xが正解(1)である確率が閾値θ

)9()(

)5)(4(

)8(2

)()(2

2)()()()(

)()(

)2(

)7(

222111

21221122111

2

2

122211

2211222

2212221122

2112122211222112

2222211112221111121122112112

22112111121

2

2

121

2

111211112

12221122

2

SMOaayyaa

ayyayayayaa

a

SMOSMOa

SMOKKK

yfyfyaa

aaKKKya

KKKKKayffyyKayKayKayKayKKayayffyy

ayayasyayysaa

KayfKayfKKyyy

KKKya

ySMO

newoldoldnew

newoldoldnewnewnew

new

new

oldnew

oldnew

jjj

jjjj

j

new

によってを掛け、今更新したの両辺には

の更新値とする。ものを  の条件で制約した

の値に対して  この結果の

としてで割れば、を掛け、の更新式は、両辺に

に注意し書き直すと および  

。直して整理してみようを掛け、もう少し書きの両辺に

xx

xxxx

xx