はじめてのパターン認識 第11章 識別器の組み合わせによる性能...

26
はじめてのパターン認識 11識別器の組み合わせによる性能強化 新納浩幸

Upload: others

Post on 31-Aug-2019

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: はじめてのパターン認識 第11章 識別器の組み合わせによる性能 …nlp.dse.ibaraki.ac.jp/~shinnou/zemi2013/patten/shinnou-sec11.pdf · 決定木の構築 T {

はじめてのパターン認識 第11章 識別器の組み合わせによる性能強化

新納浩幸

Page 2: はじめてのパターン認識 第11章 識別器の組み合わせによる性能 …nlp.dse.ibaraki.ac.jp/~shinnou/zemi2013/patten/shinnou-sec11.pdf · 決定木の構築 T {

ノーフリーランチ定理

すべての識別問題に対して、他の識別器 よりも識別性能がよい識別器は存在しない

完璧な識別器は存在しない

Page 3: はじめてのパターン認識 第11章 識別器の組み合わせによる性能 …nlp.dse.ibaraki.ac.jp/~shinnou/zemi2013/patten/shinnou-sec11.pdf · 決定木の構築 T {

NFL を示す簡単な例

入力 X のパターンは8通り

h1 は未知データに対して -1 h2 は未知データに対して 1

未知データ 正解のパターン1 h1 > h2

正解のパターン2(パターン1の逆) h1 < h2

左の表では未知データは 5 通り 正解パターンは 2^5 = 32 通り

すべての正解パターンで識別器の性能を測ると全部同じ性能

Page 4: はじめてのパターン認識 第11章 識別器の組み合わせによる性能 …nlp.dse.ibaraki.ac.jp/~shinnou/zemi2013/patten/shinnou-sec11.pdf · 決定木の構築 T {

決定木(1)

Page 5: はじめてのパターン認識 第11章 識別器の組み合わせによる性能 …nlp.dse.ibaraki.ac.jp/~shinnou/zemi2013/patten/shinnou-sec11.pdf · 決定木の構築 T {

決定木(2)

Page 6: はじめてのパターン認識 第11章 識別器の組み合わせによる性能 …nlp.dse.ibaraki.ac.jp/~shinnou/zemi2013/patten/shinnou-sec11.pdf · 決定木の構築 T {

決定木の構築

},,,{ 21 NdddT

1T 2T

TTT 21

21 TT

素性 f に より分割

どの素性で分割するかがポイント

t

1t 2t

不純度 )(tI

))(()( itIEtI

が最大になるような素性 f で分割

Page 7: はじめてのパターン認識 第11章 識別器の組み合わせによる性能 …nlp.dse.ibaraki.ac.jp/~shinnou/zemi2013/patten/shinnou-sec11.pdf · 決定木の構築 T {

Gini index(ジニ係数)

不純度として使われる代表的関数

K

i

i

ij

ji

tCP

tCPtCPtI

1

2 )|(1

)|()|()(

Page 8: はじめてのパターン認識 第11章 識別器の組み合わせによる性能 …nlp.dse.ibaraki.ac.jp/~shinnou/zemi2013/patten/shinnou-sec11.pdf · 決定木の構築 T {

ジニ係数の計算例(1)

Iris データ データ数は 150個、 クラスは setosa, virginica, versicolor 各 50 個 データ4次元、花びらの長さ、幅、がく片の長さ、幅

クラスは setosa と virginica をまとめる versicolor (c) OR not-versicolor (s+v)

50データ 100 データ

ルートノード t のジニ係数 9

2

150

100

150

50)( tI

Page 9: はじめてのパターン認識 第11章 識別器の組み合わせによる性能 …nlp.dse.ibaraki.ac.jp/~shinnou/zemi2013/patten/shinnou-sec11.pdf · 決定木の構築 T {

ジニ係数の計算例(2)

「花べんの長さが 2.45 以上」 という素性で分割 t

1t 2t

t1: s+t 50個、 c 50 個 t2: s+t 50個、 c 0 個

4

1

100

50

100

50)( 1 tI 0

50

0

50

50)( 2 tI

6

10

150

50

4

1

150

100))(( itIE

0556.018

1

6

1

9

2))(()( itIEtI

Page 10: はじめてのパターン認識 第11章 識別器の組み合わせによる性能 …nlp.dse.ibaraki.ac.jp/~shinnou/zemi2013/patten/shinnou-sec11.pdf · 決定木の構築 T {

木の剪定(せんてい、 pruning)

木が大きくなると汎化誤差も大きくなる

不純度が十分小さくなるまで木を成長させ、 次にある許容範囲まで木を剪定する

この計算方法がポイント

Page 11: はじめてのパターン認識 第11章 識別器の組み合わせによる性能 …nlp.dse.ibaraki.ac.jp/~shinnou/zemi2013/patten/shinnou-sec11.pdf · 決定木の構築 T {

剪定の手順

(1) 全てのノード t に対してリンクの強さ g(t) を計算

(2) g(t) の最小値を持つノードを終端ノードとし、 その子孫のノードを剪定する、(1) へ

(3) どこかで剪定を終了する

交差検定を利用 1標準偏差ルール

最終的にはルートノードだけになる

なので

Page 12: はじめてのパターン認識 第11章 識別器の組み合わせによる性能 …nlp.dse.ibaraki.ac.jp/~shinnou/zemi2013/patten/shinnou-sec11.pdf · 決定木の構築 T {

リンクの強さ

|1~

|

)()()(

t

t

T

TRtRtg

N

tMtR

)()(

ノード t の誤り数

全データ数

},,,{ 21 Kt tttT ノード t の子ノードの中の 葉ノードの集合

K

i

it tRTR1

)()(

KTt |~

|

その要素数

Page 13: はじめてのパターン認識 第11章 識別器の組み合わせによる性能 …nlp.dse.ibaraki.ac.jp/~shinnou/zemi2013/patten/shinnou-sec11.pdf · 決定木の構築 T {

計算例 1

8 9

0:50 50:50

50:100

49:5 1:45

47:1 2:4

2:1 0:3

Page 14: はじめてのパターン認識 第11章 識別器の組み合わせによる性能 …nlp.dse.ibaraki.ac.jp/~shinnou/zemi2013/patten/shinnou-sec11.pdf · 決定木の構築 T {

8 9

0:5050:50

50:100

49:5 1:45

47:1 2:4

2:1 0:3

0067.0150/1)5(

033.0150/5)4(

0150/0)3(

33.0150/50)2(

33.0150/50)1(

R

R

R

R

R

0150/0)9(

0067.0150/1)8(

013.0150/2)7(

0067.0150/1)6(

R

R

R

R

誤り率は簡単

Page 15: はじめてのパターン認識 第11章 識別器の組み合わせによる性能 …nlp.dse.ibaraki.ac.jp/~shinnou/zemi2013/patten/shinnou-sec11.pdf · 決定木の構築 T {

8 9

0:5050:50

50:100

49:5 1:45

47:1 2:4

2:1 0:3

0067.0

12

)9()8()7()7(

RRRg

}9,8{7 T

Page 16: はじめてのパターン認識 第11章 識別器の組み合わせによる性能 …nlp.dse.ibaraki.ac.jp/~shinnou/zemi2013/patten/shinnou-sec11.pdf · 決定木の構築 T {

8 9

0:5050:50

50:100

49:5 1:45

47:1 2:4

2:1 0:3

01.0

13

)9()8()6()4()4(

RRRRg

}9,8,6{4 T

Page 17: はじめてのパターン認識 第11章 識別器の組み合わせによる性能 …nlp.dse.ibaraki.ac.jp/~shinnou/zemi2013/patten/shinnou-sec11.pdf · 決定木の構築 T {

8 9

0:5050:50

50:100

49:5 1:45

47:1 2:4

2:1 0:3

1044.0

13

)9()8()6()5()2()2(

RRRRRg

}9,8,6,5{2 T

Page 18: はじめてのパターン認識 第11章 識別器の組み合わせによる性能 …nlp.dse.ibaraki.ac.jp/~shinnou/zemi2013/patten/shinnou-sec11.pdf · 決定木の構築 T {

8 9

0:5050:50

50:100

49:5 1:45

47:1 2:4

2:1 0:3

0783.0

15

)9()8()6()5()3()1()1(

RRRRRRg

}9,8,6,5,3{1 T

Page 19: はじめてのパターン認識 第11章 識別器の組み合わせによる性能 …nlp.dse.ibaraki.ac.jp/~shinnou/zemi2013/patten/shinnou-sec11.pdf · 決定木の構築 T {

8 9

0:5050:50

50:100

49:5 1:45

47:1 2:4

2:1 0:3

0067.0)7( g

01.0)4( g

1044.0)2( g

0783.0)1( g

最小

剪定

Page 20: はじめてのパターン認識 第11章 識別器の組み合わせによる性能 …nlp.dse.ibaraki.ac.jp/~shinnou/zemi2013/patten/shinnou-sec11.pdf · 決定木の構築 T {

0:50 50:50

50:100

49:5 1:45

47:1 2:4

リンクの強さの計算を繰り返す

新しい木

Page 21: はじめてのパターン認識 第11章 識別器の組み合わせによる性能 …nlp.dse.ibaraki.ac.jp/~shinnou/zemi2013/patten/shinnou-sec11.pdf · 決定木の構築 T {

Bagging(バギング)

複数の識別木を組み合わせる方法の1つ

Page 22: はじめてのパターン認識 第11章 識別器の組み合わせによる性能 …nlp.dse.ibaraki.ac.jp/~shinnou/zemi2013/patten/shinnou-sec11.pdf · 決定木の構築 T {

ブートストラップサンプル

N 個のデータから重複を許して N 個をサンプリング

新しいデータ 推定

これを何度も繰り返すと、推定したい値の バラツキがわかる

Page 23: はじめてのパターン認識 第11章 識別器の組み合わせによる性能 …nlp.dse.ibaraki.ac.jp/~shinnou/zemi2013/patten/shinnou-sec11.pdf · 決定木の構築 T {

AdaBoost (アダブースト)

データ D0 から 弱学習器 f0 を学習

F0 で D0 を識別、誤ったデータの重みを大きく、 正しく識別されたデータの重みを小さくした データ D1 を作成

データ D1 から 弱学習器 f1 を学習

繰り返して、 f1,f2,・・・,fM を構築、 識別はそれらの重み付き多数決

Page 24: はじめてのパターン認識 第11章 識別器の組み合わせによる性能 …nlp.dse.ibaraki.ac.jp/~shinnou/zemi2013/patten/shinnou-sec11.pdf · 決定木の構築 T {

ランダムフォレスト(1)

ランダムフォレスト 決定木のバギングを改良した手法。 決定木の各非終端ノードにおいて識別に用いる 特徴を予め決められた数だけランダムに選択。 これによって相関の低い多様な決定木が生成される

バギングの問題 各識別器の相関が高いと性能が強化できない

Page 25: はじめてのパターン認識 第11章 識別器の組み合わせによる性能 …nlp.dse.ibaraki.ac.jp/~shinnou/zemi2013/patten/shinnou-sec11.pdf · 決定木の構築 T {

ランダムフォレスト(2)

Page 26: はじめてのパターン認識 第11章 識別器の組み合わせによる性能 …nlp.dse.ibaraki.ac.jp/~shinnou/zemi2013/patten/shinnou-sec11.pdf · 決定木の構築 T {

randomForest

R のランダムフォレストのパッケージ、 非常に有名