Successfully reported this slideshow.                                               Upcoming SlideShare
×

20130716 はじパタ３章前半 ベイズの識別規則

15,788 views

Published on

「はじめてのパターン認識」読書会の発表資料です。

Published in: Technology
• Full Name
Comment goes here.

Are you sure you want to Yes No • Be the first to comment

20130716 はじパタ３章前半 ベイズの識別規則

1. 1. はじパタ！輪読会 第３章前半 ベイズの識別規則 ２０１３．０７．１６ （火） 担当： @_kobacky http://www.amazon.co.jp/dp/4627849710
2. 2. 自己紹介 • Twitter ID : @_kobacky • どこで働いている？ •  株式会社 ALBERT　システム開発部 • 日頃のお仕事？ •  システム設計・プログラム開発 •  レコメンドエンジンとか、Twitterの解析を行うシステムとか •  ウェブサイト運用 •  etc.
3. 3. ３.１で学ぶこと • 3.1.1 ベイズの識別規則 • 3.1.2 ベイズの識別規則の例 • 3.1.3 尤度比 • 3.1.4 ベイズの識別規則は誤り率最小 • 3.1.5 最小損失基準に基づくベイズの識別規則 • 3.1.6 リジェクト
4. 4. ３.１で学ぶこと • 3.1.1 ベイズの識別規則 • 3.1.2 ベイズの識別規則の例 • 3.1.3 尤度比 • 3.1.4 ベイズの識別規則は誤り率最小 • 3.1.5 最小損失基準に基づくベイズの識別規則 • 3.1.6 リジェクト
5. 5. 本章で扱う識別問題 •  観測データ x と所属するクラスの間に確率分布が仮定される 識別問題（p21） P(x|C2) x P(x|C1) の 生 起 確 率 x
6. 6. 3.1.1. 最大事後確率基準 • チェックポイント •  事前確率・事後確率とは何か？ •  修正項における尤度・周辺確率とは何か？ •  ベイズの定理を用いて識別境界をどのように決定するか？
7. 7. 突然ですが・・ • 目の前にくじの入った袋があります。 •  袋の中には赤い紙と青い紙が折り畳まれて入っています。 •  紙を広げるとその中に「あたり」「はずれ」のどちらかが記述 されています。
8. 8. 突然ですが・・ • 目の前にくじの入った袋があります。 •  袋の中には赤い紙と青い紙が折り畳まれて入っています。 •  紙を広げるとその中に「あたり」「はずれ」のどちらかが記述 されています。 • これまで１００人の人がくじを引きました。 •  60人が赤い紙、40人が青い紙でした。 •  30人が「あたり」でした。 •  「あたり」を引いた人のうち10人は赤い紙で、20人は青い紙でした。
9. 9. 突然ですが・・ • 目の前にくじの入った袋があります。 •  袋の中には赤い紙と青い紙が折り畳まれて入っています。 •  紙を広げるとその中に「あたり」「はずれ」のどちらかが記述 されています。 • これまで１００人の人がくじを引きました。 •  60人が赤い紙、40人が青い紙でした。 •  30人が「あたり」でした。 •  「あたり」を引いた人のうち10人は赤い紙で、20人は青い紙でした。 •  とある情報スジからくじの色と「あたり」の割合には何かし らの関係があるという情報をつかんでいます。
10. 10. (勉強会発表時の実演 ) • ここで @Prunus1350 さんがクジを引くことになりま した。
11. 11. (勉強会発表時の実演 ) • ここで @Prunus1350 さんがクジを引くことになりま した。 • この時点で @Prunus1350 さんが当たりを引く確率 は 「30 / 100」である予測できます。
12. 12. (勉強会発表時の実演 ) • ここで @Prunus1350 さんがクジを引くことになりま した。 • この時点で @Prunus1350 さんが当たりを引く確率 は 「30 / 100」である予測できます。 • ここで @Prunus1350 さんがクジを引いたところ、青 いクジを引き当てました。
13. 13. (勉強会発表時の実演 ) • ここで @Prunus1350 さんがクジを引くことになりま した。 • この時点で @Prunus1350 さんが当たりを引く確率 は 「30 / 100」である予測できます。 • ここで @Prunus1350 さんがクジを引いたところ、青 いクジを引き当てました。 • この時点で @Prunus1350 さんが当たりを引く確率 は 「20 / 40」である予測できます。
14. 14. (勉強会発表時の実演 ) • ここで @Prunus1350 さんがクジを引くことになりま した。 • この時点で @Prunus1350 さんが当たりを引く確率 は 「30 / 100」である予測できます。 • ここで @Prunus1350 さんがクジを引いたところ、青 いクジを引き当てました。 • この時点で @Prunus1350 さんが当たりを引く確率 は 「20 / 40」である予測できます。 クジの色を観測する前から わかる確率 「事前確率」 クジの色を観測したことに よってわかった確率 「事後確率」
15. 15. (勉強会発表時の実演 ) • ここで @Prunus1350 さんがクジを引くことになりま した。 • この時点で @Prunus1350 さんが当たりを引く確率 は 「30 / 100」である予測できます。 • ここで @Prunus1350 さんがクジを引いたところ、青 いクジを引き当てました。 • この時点で @Prunus1350 さんが当たりを引く確率 は 「20 / 40」である予測できます。 • （・・ちなみに @Prunus1350 さんがクジを開いたとこ ろ見事当たりでした。さすが @Prunus1350 さん！）
16. 16. ベイズの定理 • ベイズの識別規則はベイズの定理で定義される最大 事後確率が最も大きなクラスに観測データを分類す る。 •  x ： 観測データ •  くじ袋の例では [赤 or 青] •  Ci ： 識別クラス（i = 1,2,3,・・・, K） •  くじ袋の例では [あたり or はずれ] P Ci x( )= p x Ci( ) p x( ) × P Ci( ) x　=　赤 x = 青 あたり 10 20 はずれ 50 20 合計 60 40
17. 17. ベイズの定理 • ベイズの定理は下記の項からなる •  事後確率 •  事前確率 •  クラス条件付き確率（尤度） •  周辺確率 P Ci x( )= p x Ci( ) p x( ) × P Ci( ) 事後確率 尤度 周辺確率 事前確率
18. 18. ベイズの定理 • 事後確率 •  観測データ x が与えられた下で、それがクラス Ci に属する条件 付き確率 •  事前確率 •  Ci の生起確率 •  データを観測する前からわかっている確率 P Ci x( )= p x Ci( ) p x( ) × P Ci( ) 事後確率 尤度 周辺確率 事前確率
19. 19. ベイズの定理 • 尤度 •  クラスCiが与えられた下での観測データ x の確率分布 P Ci x( )= p x Ci( ) p x( ) × P Ci( ) 事後確率 尤度 周辺確率 事前確率 C１ C２ x
20. 20. ベイズの定理 • 周辺確率 •  観測データ x の生起確率 •  全てのクラスに対する観測データ x の同時確率を合計（周辺化） することで得られる。 P Ci x( )= p x Ci( ) p x( ) × P Ci( ) 事後確率 尤度 周辺確率 事前確率 p x( )= p Ci, x( ) i=1 K ∑
21. 21. 最大事後確率基準による識別 •  識別においては、観測データ x に対して事後確率が一番大きなクラ スを採用する。 •  事前確率p(x) はクラスが異なっても一定であるため、識別において は無視できる。 argmax i P Ci x( ) = argmax i p x Ci( )P Ci( ) p x( ) = argmax i p x Ci( )P Ci( )
22. 22. 3.1.2. ベイズの識別規則の例 • チェックポイント •  実際の事後確率演算の流れはどのようになるか？
23. 23. 状況設定 • 下記の観測データから「健康な人（G＝１）」「健康で ない人（G＝０）」を識別したい。 •  「喫煙している（S＝１）」 or 「喫煙していない（S＝０）」 •  「飲酒している（T＝１）」 or 「飲酒していない（T＝０）」 • ある街の住人からランダムに（識別モデル作成用に） 1000人サンプリング サンプル数 喫煙する人 （S＝１） 飲酒する人 （T=１） 健康な人（G＝１） 800人 320人 640人 健康でない人（G＝０） 200人 160人 40人
24. 24. 演算の目標 • 最終的に求めたいものはS, T, G 全ての組み合わせ （8通り）における事後確率 • 右辺の確率を順番に演算していく サンプル数 喫煙する人 （S＝１） 飲酒する人 （T=１） 健康な人（G＝１） 800人 320人 640人 健康でない人（G＝０） 200人 160人 40人 P G | S,T( )= P S,T |G( )P G( ) P S,T( )
25. 25. 事前確率の演算 • P(G=1) = 800/1000 = 4/5 • P(G=0) = 200/1000 = 1/5 サンプル数 喫煙する人 （S＝１） 飲酒する人 （T=１） 健康な人（G＝１） 800人 320人 640人 健康でない人（G＝０） 200人 160人 40人 P G | S,T( )= P S,T |G( )P G( ) P S,T( )
26. 26. 尤度の演算 • 条件付き独立 P(S,T|G) = P(S|G) P(T|G) を仮定 サンプル数 喫煙する人 （S＝１） 飲酒する人 （T=１） 健康な人（G＝１） 800人 320人 640人 健康でない人（G＝０） 200人 160人 40人 S=1 S=0 G＝１ 320/800 480/800 G＝０ 160/200 40/200 T=1 T=0 G＝１ 640/800 160/800 G＝０ 40/200 160/200 P(S|G)の演算 P(T|G)の演算 P G | S,T( )= P S,T |G( )P G( ) P S,T( ) S=1, T=1 S=0, T=1 S=1, T=0 S=0, T=0 G＝１ (2/5) X (4/5) (3/5) X (4/5) (2/5) X (1/5) (3/5) X (1/5) G＝０ (4/5) X (1/5) (1/5) X (1/5) (4/5) X (4/5) (1/5) X (4/5) P(S,T|G)の演算
27. 27. 周辺確率の演算 •  周辺化により P(S,T) を演算 P G | S,T( )= P S,T |G( )P G( ) P S,T( ) S=1, T=1 S=0, T=1 S=1, T=0 S=0, T=0 P(S,T|G=1) (2/5) X (4/5) (3/5) X (4/5) (2/5) X (1/5) (3/5) X (1/5) P(S,T|G=0) (4/5) X (1/5) (1/5) X (1/5) (4/5) X (4/5) (1/5) X (4/5) P(S,T,G=1) (8/25) X (4/5) (12/25) X (4/5) (2/25) X (4/5) (3/25) X (4/5) P(S,T,G=0) (4/25) X (1/5) (1/25) X (1/5) (16/25) X (1/5) (4/25) X (1/5) P(S,T) 36/125 49/125 24/125 16/125 •  ①→②： P(S,T,G) = P(S,T|G) X P(G) •  ②→③： P(S,T) = P(S,T,G=0) + P(S,T,G=1) （←周辺化） ① ② ③
28. 28. 事後確率の演算 •  ベイズの定理より事後確率を演算 P G | S,T( )= P S,T |G( )P G( ) P S,T( ) S=1, T=1 S=0, T=1 S=1, T=0 S=0, T=0 P(G=1|S,T) 8/9 48/49 1/3 3/4 P(G=0|S,T) 1/9 1/49 2/3 1/4 • 観測データ S, T に対して事後確率の大きい方のクラ スとして判定される。
29. 29. 3.1.3. 尤度比 •  ある観測データ x が２つのクラスのどちらであるかを識別する 際、尤度の比と事前確率の比を比べれば識別ができるという だけのお話。 p x Ci( )P Ci( ) > < ! " # \$ % & p x Cj( )P Cj( ) ⇒ Ci ⇒ Cj ! " # \$ % & p x Ci( ) p x Cj( ) > < ! " # \$ % & P Cj( ) P Ci( ) ⇒ Ci ⇒ Cj ! " # \$ % &
30. 30. 3.1.4. ベイズの識別規則は誤り率最小 • チェックポイント •  ベイズの識別規則における「条件付きベイズ誤り率」とは何 か？ •  ベイズ誤り率の定義と計算方法はどういうものか？ •  なぜベイズの識別境界で誤り率は最小になるのか？
31. 31. 条件付きベイズ誤り率 •  ある観測データ x が与えられた時、ベイズの識別規則に従っ て識別を行った場合に誤識別する確率 •  ε(x) = min [P(C1|x), P(C2|x)] P(C１|x) x x１ P(C2|x) 観測データ x の値が x1 である場合に 誤識別をする確率 R2(C２と判定される領域) R1(C１と判定される領域)
32. 32. ベイズ誤り率 •  条件付きベイズ誤り率の（xに関する）期待値 ε* = E ε x( ){ }= ε x( )p x( )dx R1+R2 ∫ 期待値の定義より
33. 33. ベイズ誤り率 •  条件付きベイズ誤り率の（xに関する）期待値 ε* = E ε x( ){ }= ε x( )p x( )dx R1+R2 ∫ ε(x)の定義代入 = min P C1 x( ), P C2 x( )! " # \$p x( )dx R1+R2 ∫
34. 34. ベイズ誤り率 •  条件付きベイズ誤り率の（xに関する）期待値 ε* = E ε x( ){ }= ε x( )p x( )dx R1+R2 ∫ ベイズの定理代入 = min P C1 x( ), P C2 x( )! " # \$p x( )dx R1+R2 ∫ = min p x C1( )P C1( ) p x( ) , p x C2( )P C2( ) p x( ) ! " # # \$ % & & p x( )dx R1+R2 ∫
35. 35. ベイズ誤り率 •  条件付きベイズ誤り率の（xに関する）期待値 ε* = E ε x( ){ }= ε x( )p x( )dx R1+R2 ∫ p(x) で約分 = min P C1 x( ), P C2 x( )! " # \$p x( )dx R1+R2 ∫ = min p x C1( )P C1( ) p x( ) , p x C2( )P C2( ) p x( ) ! " # # \$ % & & p x( )dx R1+R2 ∫ = min p x C1( )P C1( ), p x C2( )P C2( )! " # \$dx R1+R2 ∫
36. 36. ベイズ誤り率 •  条件付きベイズ誤り率の（xに関する）期待値 ε* = E ε x( ){ }= ε x( )p x( )dx R1+R2 ∫ ベイズの識別規則によって識別境界が定められているとすると、 R2の領域では p(x|C1)P(C1) < p(x|C2)P(C2) R1の領域では p(x|C2)P(C2) < p(x|C1)P(C1) = min P C1 x( ), P C2 x( )! " # \$p x( )dx R1+R2 ∫ = min p x C1( )P C1( ) p x( ) , p x C2( )P C2( ) p x( ) ! " # # \$ % & & p x( )dx R1+R2 ∫ = min p x C1( )P C1( ), p x C2( )P C2( )! " # \$dx R1+R2 ∫ = p x C1( )P C1( )( )dx R2 ∫ + p x C2( )P C2( )( )dx R1 ∫
37. 37. ベイズ誤り率 •  条件付きベイズ誤り率の（xに関する）期待値 ε* = p x C1( )P C1( )( )dx R2 ∫ + p x C2( )P C2( )( )dx R1 ∫ P(x|C1)P(C1) x R2(C２と判定される領域) R1(C１と判定される領域) P(x|C2)P(C2)
38. 38. ベイズ誤り率 •  条件付きベイズ誤り率の（xに関する）期待値 ε* = p x C1( )P C1( )( )dx R2 ∫ + p x C2( )P C2( )( )dx R1 ∫ P(x|C1)P(C1) x R2(C２と判定される領域) R1(C１と判定される領域) P(x|C2)P(C2) 識別境界をずらすと 誤り率が増加する
39. 39. 3.1.5. 最小損失基準に基づくベイズの識別規則 • チェックポイント •  最小損失基準という考え方は何故必要か？ •  損失行列とはどういうものか？ •  最大事後確率基準に基づく識別との関係は？
40. 40. 損失の考え方 •  「病気の人を健康であると誤識別するリスク」は「健康な人を 病気であると誤識別するリスク」よりも高い。 •  危険性を考慮した識別が必要。 •  損失：Lij •  真のクラスがCj であるサンプルを Ci と判断することによって被る損失 •  一般に i = j の時の損失は小さい •  識別対象のクラスがK個ある場合、K x K の損失行列が定義 できる。 L11 L12 L21 L22 ! " # # \$ % & & = 0 10 20 0 ! " # \$ % & 損失行列の例
41. 41. 最小損失基準に基づく識別 •  観測データ x をクラス Ci と判断した時に被る損失を定義 r Ci x( )= LikP Ck x( ) k=1 K ∑ 観測データ x を Ckと判断する確率 •  観測データ x に対して損失が最も小さいクラスに識別する argmin i r Ci x( )
42. 42. 最小損失基準に基づく識別の例（2 クラス） •  事後確率は下記の通りとする •  P(C1|x) = 0.6 •  P(C2|x) = 0.4 •  最大事後確率基準では観測データ x は C1 と判定される •  下記の損失行列を定義 r Ci x( )= LikP Ck x( ) k=1 K ∑ L11 L12 L21 L22 ! " # # \$ % & & = 0 20 10 0 ! " # \$ % & 真のクラス：C1 (k=1) 真のクラス：C2 (k=2) 合計 識別：C1 (i=1) 0 x 0.6 20 x 0.4 8 識別：C2 (i=2) 10 x 0.6 0 x 0.4 6 C2をC1と識別した時 の損失が大きいので、 最小損失基準に基づ く識別ではC2と判定 損失 L12 × P(C1|x) L22 × P(C2|x)
43. 43. P(病気|x) r(健康|x) P(健康|x) r(病気|x) 健康と識別 病気と識別 損失の定義による識別境界の移動 •  図3.2 (p28) 参考 •  健康（C1）と病気（C2）に対して、「健康な人を病気と判断する 時の損失が大きい」損失行列を定義 •  識別境界が左方に移動し、健康と判断されにくくなる。 L11 L12 L21 L22 ! " # # \$ % & & = 0 2 0.5 0 ! " # \$ % & r Ci x( )= LikP Ck x( ) k=1 K ∑
44. 44. 3.1.6 リジェクト • チェックポイント •  リジェクトはどのような目的で行うか？ •  リジェクトの判断を実際にどのように行うか？
45. 45. リジェクトの概念 • 誤り率の大きな領域で判断を避ける（リジェクトする） •  ε(x) ＞＝ t なる x の領域 •  t ：しきい値 • リジェクトを含めた識別規則 •  最大事後確率が 1-t より大きい場合、識別を行う •  全てのクラスの事後確率が1-t 以下の場合リジェクト • 例：t = 0.3, K=3 の場合の事後確率と識別結果 No P(C1 | x) P(C2 | x) P(C3 | x) 識別結果 ① 0.1 0.1 0.8 C3 ② 0.5 0.2 0.3 リジェクト ③ 0.9 0.07 0.03 C1 どのクラスに 識別しても誤 り率は0.3 を 超える
46. 46. リジェクト率と（誤）認識率の関係 • 認識率 •  [正答数] / （[全テストデータ数] – [リジェクトされたデータ数]） • 誤識別率 •  [誤り数] / （[全テストデータ数] – [リジェクトされたデータ数]） •  しきい値との関係 •  しきい値を下げるとリジェクト率が上がる •  しきい値を下げる（リジェクト率が上がる）と認識率は上がり、誤認識率 は下がる。
47. 47. ありがとうございました！