Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

はじパタ2章

16,753 views

Published on

  • Be the first to comment

はじパタ2章

  1. 1. はじめてのパターン認識 第2章 「識別規則と学習法の概要」 後半  2013/7/2 @リクルート
  2. 2. あんた誰? 名前            伊藤 徹郎 (@tetsuroito) 所属 株式会社ALBERT データ分析部 好きなもの サッカー、スキー、オレオ!
  3. 3. 株式会社ALBERTについて 「分析力をコアとするマーケティングソリューションカンパニー」 ALBERTの事業領域 CRMソリューションの開発・提供 レコメンドエンジンの開発・提供 行動ターゲティング広告システムの 開発・提供 データサイエンティスト、エンジニア大募集中です! 一緒にデータサイエンスしませんか?
  4. 4. では、本題 2.2 汎化能力とは?
  5. 5. 2.2 汎化能力とは? ちょっとおさらい 学習:学習データに対する識別関数の出力値と学習データとの誤差が最小に    なるように、識別関数のパラメータを調整すること 未知のデータに対しての性能保証はなし! 学習データから動作確認のためにテストデータを除いて試そう! 汎化能力:未知データに対する識別能力 汎化誤差:未知データを識別した時の誤差
  6. 6. 学習データとテストデータ 手元にある学習データセットを分割してテストデータセットを作ります。 重さ 透磁率 etc‥ d個の特徴 d次元の特徴ベクトルの分布p 真の誤り率ε(p,p) 重さ 透磁率 etc‥ 10,000枚 8,000枚 2,000枚 母集団 学習データセット テストデータセット d個の特徴 d次元の特徴ベクトルの分布pL 再代入誤り率ε(pL,pL) d個の特徴重さ 透磁率 etc‥ d次元の特徴ベクトルの分布pT
  7. 7. 用語たち 母集団:先の事例では、全硬貨の集合(事例では10,000枚) 真の分布:母集団のd次元特徴の分布p バイアス:真の分布とランダムサンプルのズレ (平均値や分散など) 真の誤り率ε(p,p):真の分布pに従う学習データを用いて設計し、真の分布          pに従うテストデータを用いてテストしたときの誤り率 再代入誤り率:学習データを母集団からサンプルし、テストにも同じデータを        用いて測定した誤り率
  8. 8. 例題だよ 再代入誤り率が大きい場合、 どのような対処法が考えられ ますか?
  9. 9. ANSWER 学習データに対する誤りが多いので、 識別機の能力が足りません。 何らかの方法で 識別機の性能をあげましょう!
  10. 10. データの主な分割方法 1、ホールドアウト法(holdout法) 2、交差確認法(cross validation法) 3、一つ抜き法(leave-one-out法) (ジャックナイフ法) 4、ブートストラップ法(bootstrap法)
  11. 11. 1、ホールドアウト法 母集団 学習データ テストデータ ホールドアウト誤り率 分割の配分はご自由に ★欠点 学習データを増やす→学習精度は向上するが、性能評価がいまいち 検証データを増やす→学習精度が悪くなってしまう
  12. 12. 2、交差確認法 手元の各クラスのデータをm個に分割し、m-1個のグループのデータを使って 識別機を学習し、残りの1つで検証を行う方法です。これをm回繰り返し、 それらの誤り率の平均を性能予測値とします。 学習データテスト 学習データテスト 学習データ テスト m個に分割 m 回 識別率の予測値 全データを検証できるので、
  13. 13. 3、一つ抜き法(ジャックナイフ法) 交差確認法において、データの数とグループの数を等しくした場合のこと。 1つを除いたデータすべてのデータで学習し、除いた1つでテストすることを データ数分繰り返す。 またの名をジャックナイフ法ともいい、重複をしない分、計算効率がいいとか 悪いとか‥ なんかいまいちわからないので、 知ってる人、教えてください
  14. 14. 4、ブートストラップ法 再代入誤り率のバイアス補正に用いられる。 データ #1 データ #2 データ #3 ‥ データ #N-1 データ #N 復元抽出×N回 ブートストラップサンプル データ #3 データ #20 データ #1 ‥ データ #3 データ #5 N個 ブートストラップサンプルを最低50は生成し、それらによって得られる 誤認識率の差の平均値でバイアスを推定する!
  15. 15. 汎化能力の評価法とモデル選択 学習データでパラメータを調整して、テストデータで誤り率を評価しても 誤りが目標より小さくならないという場面ありますね。 この場合はどうしようもないので、識別関数を変えましょう。
  16. 16. モデル選択 変えると言っても、方法はたくさんあります! ・線形識別関数→非線形識別関数に変える ・多項式のパラメータの数(次数)を変える etc‥ パラメータの数を変え、テストデータに対する誤り率が最も小さくなる パラメータを選択する方法をモデル選択と言います このように‥
  17. 17. 具体例:多項式回帰で あるノイズが乗った多項式から等間隔にサンプルされたデータに多項式近似を 行います。 f(x)=0.5+0.4sin(2πx)+ε=h(x)+ε  N~(ε|0,0.05) 11個の学習データから信号成分h(x)を取り出す! 信号成分h(x)との近似の良さは平均2乗誤差(MSE)で表す テキストでは、1次、3次、6次、10次多項式で近似している
  18. 18. 多項式近似の例 データから大きく外れている(バイアスが大きい) ノイズに惑わされず信号成分をよく近似 バイアスも小さく、分散も小さい 6次になると、ノイズを追うようになる 10次は完全にノイズを追ってしまう
  19. 19. バイアス・分散トレードオフ 関数が複雑になるほど学習データに対する近似能力は向上する (学習データに対するバイアス小さいが、分散が大きい) このように バイアスを小さくすれば分散が大きくなり、逆に分散を小さく すれば、バイアスが大きくなる現象をバイアス・分散トレードオフ という 汎化能力を決める大きな要因となる!
  20. 20. 過学習(オーバーフィッティング) 先の事例のように、多項式の次数を大きくすると個々のノイズ成分を追従する ようになるので、学習誤差が単調に減少します。 このような事象を過学習と言います。 ※深堀したい人はぜひPRML上巻1章の多項式フィッティングを読もう!
  21. 21. 識別関数の最適選択 多項式の最適次数選択は先ほどの説明の通りです。 同様に、識別関数でも同様に考えることができます。 識別関数y=f(x;w)のf()の形やwの要素数を変化させ、交差確認法やブートスト ラップ法によって汎化誤差を推定します。 データの分布に統計モデルを仮定する場合 AIC(赤池情報量基準)やBIC(ベイズ情報量基準)、MDL(最小距離基準) などを使って解析的に汎化誤差を評価し、モデル選択をします。 詳細は自分で調べてね!
  22. 22. 章末問題は省略するね
  23. 23. 最後に大事なので もう1回言います あっ!
  24. 24. データサイエンティスト、エンジニア大募集中です! 一緒にデータサイエンスしませんか?
  25. 25. おわり ご清聴ありがとうございました!

×