はじめてのパターン認識 第11章 11.1-11.2

39
14回「はじめてのパターン認識」読書会 11章 識別器の組み合わせによる性能強化(前半) 2014/3/18() @Prunus1350

Upload: prunus-1350

Post on 11-Jul-2015

853 views

Category:

Education


4 download

TRANSCRIPT

Page 1: はじめてのパターン認識 第11章 11.1-11.2

第14回「はじめてのパターン認識」読書会第11章識別器の組み合わせによる性能強化(前半)

2014/3/18(火)

@Prunus1350

Page 2: はじめてのパターン認識 第11章 11.1-11.2

11.1 ノーフリーランチ定理

Page 3: はじめてのパターン認識 第11章 11.1-11.2

11.1 ノーフリーランチ定理

• 「すべての諸問題に対して、ほかの識別器より識別性能がよい識別器は存在しない」

Page 4: はじめてのパターン認識 第11章 11.1-11.2

11.1 ノーフリーランチ定理

• すべてのクラス分布で一様に評価すれば、どの識別器も同じ性能になる。

• 対象とする問題領域を規定しなければ、汎化性能はすべて同じになってしまう。

学習データ テストデータ

𝒙 𝑡 ℎ1 ℎ2 𝒙 𝑡1 𝑡2 ⋯ 𝑡25 ℎ1 ℎ2

000 −1 −1 −1 011 1 −1 ⋯ −1 −1 1

001 −1 −1 −1 100 −1 1 ⋯ −1 −1 1

010 1 1 1 101 1 −1 ⋯ −1 −1 1

110 −1 1 ⋯ −1 −1 1

111 −1 1 ⋯ −1 −1 1

Page 5: はじめてのパターン認識 第11章 11.1-11.2

11.1 ノーフリーランチ定理

• 問題領域が規定されても、一つの識別器ではよい認識性能が得られない場合がある。

• そのような場合に対処する一つの方法は、複数の識別器を組み合わせることである。

Page 6: はじめてのパターン認識 第11章 11.1-11.2

11.1 ノーフリーランチ定理

• 簡単な識別器の組み合わせで複雑な識別境界を構成する手法• 決定木

• 複数の決定木や識別器を組み合わせて識別性能を強化する手法• バギング

• ブースティング

• ランダムフォレスト

Page 7: はじめてのパターン認識 第11章 11.1-11.2

11.1 ノーフリーランチ定理

• 決定木の学習に関する代表的な方式• CART (classification and regression tree) ← 本章ではこれを中心に扱う

• ID3

• C4.5

Page 8: はじめてのパターン認識 第11章 11.1-11.2

11.2 決定木

Page 9: はじめてのパターン認識 第11章 11.1-11.2

11.2 決定木

• この図のようなデータ分布があった場合、●と○のクラスを識別するための識別関数は非線形になる。

𝑥1

𝑥2

Page 10: はじめてのパターン認識 第11章 11.1-11.2

11.2 決定木

𝑥1

𝑥2

𝑎

Page 11: はじめてのパターン認識 第11章 11.1-11.2

11.2 決定木

𝑥1

𝑥2

𝑎

𝑏

Page 12: はじめてのパターン認識 第11章 11.1-11.2

11.2 決定木

𝑥1

𝑥2

𝑎

𝑐

𝑏

Page 13: はじめてのパターン認識 第11章 11.1-11.2

11.2 決定木

𝑥1

𝑥2

𝑎 𝑑

𝑐

𝑏

Page 14: はじめてのパターン認識 第11章 11.1-11.2

11.2 決定木

𝑥1

𝑥2

𝑎 𝑑 𝑒

𝑐

𝑏

Page 15: はじめてのパターン認識 第11章 11.1-11.2

11.2 決定木

• 特徴軸 𝑥1の値がしきい値 𝑎, 𝑑, 𝑒より大きいか小さいか、特徴軸 𝑥2の値がしきい値 𝑏, 𝑐より大きいか小さいかを判断しさえすれば、●と○を識別することができる。

𝑥1

𝑥2

𝑎 𝑑 𝑒

𝑐

𝑏

Page 16: はじめてのパターン認識 第11章 11.1-11.2

11.2 決定木

• ある特徴軸の値としきい値の大小関係を判断する過程は、上図のような決定木として表現することができる。

1

2 3

4 5

8 9 10 11

6 7

𝑥1 > 𝑎

𝑥2 > 𝑏

𝑥1 > 𝑑 𝑥1 > 𝑒

𝑥2 > 𝑐

Yes

Yes

Yes Yes

No

No

No No

NoYes

Page 17: はじめてのパターン認識 第11章 11.1-11.2

11.2 決定木1

2 3

4 5

8 9 10 11

6 7

𝑥1 > 𝑎

𝑥2 > 𝑏

𝑥1 > 𝑑 𝑥1 > 𝑒

𝑥2 > 𝑐

Yes

Yes

Yes Yes

No

No

No No

NoYes

根ノード

Page 18: はじめてのパターン認識 第11章 11.1-11.2

11.2 決定木1

2 3

4 5

8 9 10 11

6 7

𝑥1 > 𝑎

𝑥2 > 𝑏

𝑥1 > 𝑑 𝑥1 > 𝑒

𝑥2 > 𝑐

Yes

Yes

Yes Yes

No

No

No No

NoYes

終端ノード葉ノード

Page 19: はじめてのパターン認識 第11章 11.1-11.2

11.2 決定木1

2 3

4 5

8 9 10 11

6 7

𝑥1 > 𝑎

𝑥2 > 𝑏

𝑥1 > 𝑑 𝑥1 > 𝑒

𝑥2 > 𝑐

Yes

Yes

Yes Yes

No

No

No No

NoYes

内部ノード

Page 20: はじめてのパターン認識 第11章 11.1-11.2

11.2 決定木1

2 3

4 5

8 9 10 11

6 7

𝑥1 > 𝑎

𝑥2 > 𝑏

𝑥1 > 𝑑 𝑥1 > 𝑒

𝑥2 > 𝑐

Yes

Yes

Yes Yes

No

No

No No

NoYes

非終端ノード

Page 21: はじめてのパターン認識 第11章 11.1-11.2

11.2 決定木

• 学習データから決定木を構成する方法• ボトムアップ的な手法

• ある一つの学習データを正しく識別できる特徴の集合を探して特殊な識別規則を作り、特徴に対する制約を緩めながら、ほかの学習データも正しく識別できるよう規則を一般化していく手法

• トップダウン的な手法• まず根ノードですべての学習データをできるだけ誤りの少ないようにクラス分けできる特徴軸を探して特徴空間を2分割する規則を求め、2分割された空間をさらにそれぞれ2分割する規則を求めることを繰り返して決定木を成長させる手法

• 分割統治法と呼ばれる

• 現在主流の手法

Page 22: はじめてのパターン認識 第11章 11.1-11.2

11.2 決定木

• トップダウン的な手法で決定木を学習データから構成するためには、次の要素について考える必要がある。

1. 各ノードにおいて特徴空間分割規則を構成するための特徴軸としきい値の選択2. 終端ノードの決定。大きくなった木の剪定をどこまで行うかの選択。3. 終端ノードに対する多数決によるクラスの割り当て。

Page 23: はじめてのパターン認識 第11章 11.1-11.2

11.2.1 決定木に関する諸定義

Page 24: はじめてのパターン認識 第11章 11.1-11.2

11.2.1 決定木に関する諸定義

• 木は、0ではない有限個の正の整数からなる集合 𝑇と、 𝑡 ∈ 𝑇から 𝑇 ∪0 への二つの関数 left( )と right( )で構成される。

• left , right( )はそれぞれ左側、右側の次ノード番号を与える関数

Page 25: はじめてのパターン認識 第11章 11.1-11.2

11.2.1 決定木に関する諸定義

• 木が満たす性質1. 各 𝑡 ∈ 𝑇について、left 𝑡 = right 𝑡 = 0 (終端ノード)か、left 𝑡 > 𝑡かつ

right 𝑡 > 𝑡 (非終端ノード)のいずれかが成り立つ。

2. 各 𝑡 ∈ 𝑇について、 𝑇内の最小数(根ノード)を除いて 𝑡 = left 𝑠 または 𝑡 =right 𝑠 のどちらかを満たすただ一つの 𝑠 ∈ 𝑇が存在する。𝑠を親ノード、 𝑡を子ノードといい、 𝑠 = parent 𝑡 で表す。

Page 26: はじめてのパターン認識 第11章 11.1-11.2

11.2.2 ノード分割規則

Page 27: はじめてのパターン認識 第11章 11.1-11.2

11.2.2 ノード分割規則

• 各ノードにおける特徴空間の最適な分割は、特徴軸ごとに可能な考えうる分割を、不純度と呼ばれる評価関数で評価し選択する。

Page 28: はじめてのパターン認識 第11章 11.1-11.2

11.2.2 ノード分割規則

• ノード 𝑡の不純度

ℐ 𝑡 = 𝜙 𝑃 𝐶1|𝑡 ,⋯ , 𝑃 𝐶𝐾|𝑡 11.7

• ここで、関数𝜙 𝑧1, ⋯ , 𝑧𝐾 は、𝑧𝑖 ≥ 0, 𝑖=1𝐾 𝑧𝑖 = 1に対して次の三つの

性質を満たせばよい。

1. 𝜙()は、すべての 𝑖 = 1,⋯ ,𝐾に対して 𝑧𝑖 = 1/𝐾のとき、すなわちどのクラスの事後確率も一様に等しいとき最大になる。

2. 𝜙()は、ある 𝑖 について 𝑧𝑖 = 1となり、𝑗 ≠ 𝑖 のときはすべて 𝑧𝑗 = 0、

すなわち、ただ一つのクラスに定まるとき最小になる。

3. 𝜙()は、 𝑧1, ⋯ , 𝑧𝐾 に関して対称な関数である。

Page 29: はじめてのパターン認識 第11章 11.1-11.2

11.2.2 ノード分割規則• 代表的な不純度を表す関数1. ノード 𝑡における誤り率

ℐ 𝑡 = 1 −max𝑖

𝑃 𝐶𝑖|𝑡

2. 交差エントロピーまたは逸脱度(deviance)

ℐ 𝑡 = −

𝑖=1

𝐾

𝑃 𝐶𝑖|𝑡 ln 𝑃 𝐶𝑖|𝑡

3. ジニ係数(Gini index)

ℐ 𝑡 =

𝑗≠𝑖

𝑃 𝐶𝑖|𝑡 𝑃 𝐶𝑗|𝑡

= 𝑖=1

𝐾

𝑃 𝐶𝑖|𝑡 1 − 𝑃 𝐶𝑖|𝑡

Page 30: はじめてのパターン認識 第11章 11.1-11.2

11.2.2 ノード分割規則

• ノード 𝑡で分割規則を作るとき、不純度の減り方が一番大きな分割を選べばよい。

• 分割を 𝑠としたとき、

Δℐ 𝑠, 𝑡 = ℐ 𝑡 − 𝑝𝐿ℐ 𝑡𝐿 + 𝑝𝑅ℐ 𝑡𝑅

が最大になる 𝑠を、可能な分割の候補の中から選べばよい。

Page 31: はじめてのパターン認識 第11章 11.1-11.2

11.2.2 ノード分割規則

• どこで分割を止めればよいのか?

• 解決策の一つとして、「不純度が十分に小さくなるまで木を成長させ、次に、誤り率と木の複雑さで決まる許容範囲まで木を剪定する」というものがある。

Page 32: はじめてのパターン認識 第11章 11.1-11.2

11.2.3 木の剪定アルゴリズム

Page 33: はじめてのパターン認識 第11章 11.1-11.2

11.2.3 木の剪定アルゴリズム

• 木を構成した学習アルゴリズムに対する再代入誤り率を定義する。• 終端ノード 𝑡 ∈ 𝑇における誤り率は

𝑅 𝑡 =𝑀 𝑡

𝑁𝑡 ∈ 𝑇

と定義できる。

• ここで、• 𝑀 𝑡 :終端ノード 𝑡における誤り数

• 𝑁:総学習データ数

• 木全体での再代入誤り率の推定値は

𝑅 𝑇 =

𝑡∈ 𝑇

𝑅 𝑡

となる。

Page 34: はじめてのパターン認識 第11章 11.1-11.2

11.2.3 木の剪定アルゴリズム

• 木の複雑さを終端ノードの数で評価することにする。• 一つの終端ノードにおける誤り率と複雑さのコストの和

𝑅𝛼 𝑡 = 𝑅 𝑡 + 𝛼

• ここで、𝛼:一つの終端ノードがあることによる複雑さのコスト

• 木全体のコストは、

𝑅𝛼 𝑇 =

𝑡∈ 𝑇

𝑅𝛼 𝑡 = 𝑅 𝑇 + 𝛼 𝑇

となる。

• ここで、 𝑇 :終端ノード数

Page 35: はじめてのパターン認識 第11章 11.1-11.2

11.2.3 木の剪定アルゴリズム

• 任意のノード 𝑡と根ノードとする分枝( 𝑡のすべての子孫からなる部分木)を 𝑇𝑡で表す。

• もし、 𝑅𝛼 𝑇𝑡 < 𝑅𝛼 𝑡 であれば、𝑡を終端ノードと考えたときの誤りと複雑さのコストより、 𝑡の分枝がもつコストの方が小さいので、 𝑇𝑡をそのままにしておいた方が全体のコストは小さくなる。

• しかし、正則化パラメータ 𝛼を次第に大きくしていけば両者は等しくなり、そのときの 𝛼は、

𝛼 =𝑅 𝑡 − 𝑅 𝑇𝑡

𝑇𝑡 − 1

で与えられる。

Page 36: はじめてのパターン認識 第11章 11.1-11.2

11.2.3 木の剪定アルゴリズム

• 𝛼を 𝑡 の関数とみなして、

𝑔 𝑡 =𝑅 𝑡 − 𝑅 𝑇𝑡

𝑇𝑡 − 1

と定義する。

• これをノード 𝑡のリンクの強さに関する尺度と考える。

Page 37: はじめてのパターン認識 第11章 11.1-11.2

11.2.3 木の剪定アルゴリズム

• 木の剪定アルゴリズム1. 𝑇0 = 𝑇, 𝑘 = 0とする

2. 𝑔𝑘 𝑡𝑘 = min𝑡∈ 𝑇𝑘− 𝑇𝑘 𝑔 𝑡 を計算する

3. 最小値をとるノードの集合を 𝑇𝑘 = 𝑡1𝑘 , ⋯ , 𝑡𝑚𝑘

𝑘 とする

4. 𝑖 = 1,⋯ ,𝑚𝑘について以下を繰り返す

a. left 𝑡𝑖𝑘 を根とする分枝を 𝑇𝑘から削除する

b. right 𝑡𝑖𝑘 を根とする分枝を 𝑇𝑘から削除する

5. 𝑘 = 𝑘 + 1とする

6. 剪定された木を 𝑇𝑘とする

7. 𝑇𝑘 = 1であれば終了。そうでなければ 2に戻る

Page 38: はじめてのパターン認識 第11章 11.1-11.2

11.2.3 木の剪定アルゴリズム

• 再代入誤り率 𝑅 𝑇𝐾 は、剪定を進めると単調に増加するので、どこで止めるべきかの情報を与えてくれない。

• 止めるとことを探すためには、テストデータで汎化誤差を推定しながら剪定を進める必要がある。

• ホールドアウト法や交差確認法を用いて誤り率が最も小さくなる 𝑘の値を求めればよい。

• 1標準偏差ルールとよばれる手法が提案されている。

Page 39: はじめてのパターン認識 第11章 11.1-11.2

ご清聴ありがとうございました。