Successfully reported this slideshow.
Your SlideShare is downloading. ×

統計的学習の基礎輪読会資料 (7章後半 7.9〜)

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad

Check these out next

1 of 47 Ad
Advertisement

More Related Content

Recently uploaded (20)

Advertisement

統計的学習の基礎輪読会資料 (7章後半 7.9〜)

  1. 1. 統計的学習の基礎 7章後半(7.9~) @y__mattu
  2. 2. 自己紹介 • @y__mattu • 松村優哉 • 大学生 • 計量経済学、ベイズ統計、因果推論、マーケティング • SAS, R, Python • 近況: 春から慶應 • このスライドは後で公開します 2016/11/8 カステラ本輪読会 2
  3. 3. 目次 • 7.9 バプニック=チェルボネンキス次元 • 7.10 交差確認 • 7.11 ブートストラップ(まだ) • 7.12 条件付きテスト誤差か期待テスト誤差か(まだ) 2016/11/8 カステラ本輪読会 3
  4. 4. 7.9 バプニック=チェルボネンキス次元 • 訓練標本誤差の推定に複雑度𝑑の特定が必要 復習: 訓練標本内誤差(7.4節) 2016/11/8 カステラ本輪読会 4 (7.18)
  5. 5. 7.9 バプニック=チェルボネンキス次元 • 一般的な複雑度はバプニック=チェルボネンキス次元 (Vapnik-Chervonenkis dimension; VC次元)で与えられ る • 最善度の上界になる • 復習: 最善度(7.4章) 2016/11/8 カステラ本輪読会 5 (7.19) (7.17)
  6. 6. 7.9 バプニック=チェルボネンキス次元 • VC次元の定義 2016/11/8 カステラ本輪読会 6 クラス{𝒇(𝒙, 𝜶)}のVC次元は、 {𝒇(𝒙, 𝜶)}の元によって あらゆる組み合わせに細分(shatter)できるような、 (ある配置の)点の最大数として定義される
  7. 7. どういうことか? • 「各点にどのような二値ラベルを割り当てても、その関 数クラスに含まれる関数によって完全にそれらを細分で きる」 • 平面上の線形指示関数のVC次元は3 2016/11/8 カステラ本輪読会 7 図7.6
  8. 8. どういうことか? • 点が4つ以上だと、曲線じゃないと分けられないラベリン グが発生 2016/11/8 カステラ本輪読会 8
  9. 9. VC次元 • 一般に、𝑝次元の線形指示関数のVC次元は𝑝 + 1 • 関数族sin(𝛼𝑥)のVC次元は∞ 2016/11/8 カステラ本輪読会 9
  10. 10. VC次元の応用 • 指示関数の議論を実数値関数に拡張 →回帰へ応用可能 • 実数値関数のクラス 𝑔 𝑥, 𝛼 のVC次元は指示関数のクラ ス𝐼 𝑔 𝑥, 𝛼 − 𝛽 > 0 のVC次元 2016/11/8 カステラ本輪読会 10
  11. 11. VC次元の応用 • 応用例: ある関数クラスを用いるときの訓練誤差の最善度 に関する結果を証明 • VC次元ℎの関数クラス{𝑓(𝑥, 𝛼)}で𝑁個の訓練点へ当てはめ • 少なくとも1 − 𝜂の確率で 2016/11/8 カステラ本輪読会 11 (2クラス分類) (回帰) (7.46)
  12. 12. VC次元の応用 • このとき 2016/11/8 カステラ本輪読会 12
  13. 13. VC次元の応用 • バプニックの構造的リスク最小化 (Structural Risk Minimanization; SRM) 法 • VC次元を利用したモデル選択法 • 性質上SVM(サポートベクトルマシン)への布石? 2016/11/8 カステラ本輪読会 13
  14. 14. 7.9.1 例 (7.3.1小節の続き) • 復習: 7.3.1の例 • 20個の予測変数を持つ80個の観測値が、超立方体 0,1 20 内に一様に分布 • ここではモデルサイズの選択をAIC, BIC, SRMで 2016/11/8 カステラ本輪読会 14
  15. 15. 7.9.1 例 (7.3.1節の続き) • 𝛼の意味: KNN→近傍の大きさ, 回帰→部分集合の大きさ • 「最良のモデルに対する選択されたモデルの誤差」を計 算して箱ひげ図に • 大きさ80の訓練集合を100集合使用 • 大きさ10,000のテスト集合上で誤差を計算 2016/11/8 カステラ本輪読会 15
  16. 16. 7.9.1 例 (7.3.1節の続き) 2016/11/8 カステラ本輪読会 16 図7.7
  17. 17. 7.10 交差確認 • 交差確認 (Cross Validation; CV) • 期待訓練標本外誤差を直接推定 • 訓練集合𝜏を固定したときの条件付き誤差𝐸𝑟𝑟𝜏が推定でき るのでは? →できない!!(7.12節) 2016/11/8 カステラ本輪読会 17 (7.15)
  18. 18. 7.10.1 𝑲分割交差確認 2016/11/8 カステラ本輪読会 18 • 𝐾 = 5のとき 1 2 3 4 5 確認 訓練 訓練 訓練 訓練 訓練 確認 訓練 訓練 訓練 訓練 訓練 確認 訓練 訓練 訓練 訓練 訓練 確認 訓練 訓練 訓練 訓練 訓練 確認
  19. 19. 7.10.1 𝑲分割交差確認 2016/11/8 カステラ本輪読会 19 • 索引関数𝜅: 1, ⋯ , 𝑁 ↦ {1, ⋯ , 𝐾}: 𝑖番目の観測値が割り当 てられた区画を返す関数 • መ𝑓−𝑘 𝑥 : 𝑘番目の区画を除いたデータで当てはめた関数 • 予測誤差(の推定値)は • 𝐾 = 𝑁のとき、一つ抜き交差確認 (leave-one-out cross-validation; LOOCV) (7.48)
  20. 20. 7.10.1 𝑲分割交差確認 2016/11/8 カステラ本輪読会 20 • 𝑓(𝑥, 𝛼)が与えられたとき、 መ𝑓−𝑘 𝑥, 𝛼 を考え、予測誤差の (の推定値) (7.49)
  21. 21. 𝑲はいくつにすべきか? • 𝐾 = 𝑁なら交差確認推定量は近似的に真の(期待)予測誤差 の不偏推定量 • しかし分散が大(∵ 訓練データが似ている) • 計算負荷も大きい • 𝐾が小さいと? • 分散は小さいがバイアスが大きくなるかも 2016/11/8 カステラ本輪読会 21
  22. 22. 𝑲はいくつにすべきか? 2016/11/8 カステラ本輪読会 22 図7.8
  23. 23. 𝑲はいくつにすべきか? • 訓練曲線の傾きが大きければK=5-10だとバイアス大 • このバイアスが問題になるかは解析の目的による • LOOCVでは、分散が大 • 折衷案として𝐾 = 5 or 10 • 一方、@hoxo_m氏は… 2016/11/8 カステラ本輪読会 23
  24. 24. 𝑲はいくつにすべきか? 2016/11/8 カステラ本輪読会 24 図7.3 右下 図7.9 予測誤差 10-CV 期待予測誤差 バイアスの二乗 分散
  25. 25. 一般化交差確認(generalized cross-validation; GCV) • 2乗誤差損失の下で線形モデルに対するLOOCVの使いや すい近似 • 線形当てはめ法(7.6節) • 𝐒は入力𝑥𝑖には依存するが𝑦𝑖にはよらない𝑁 × 𝑁行列 2016/11/8 カステラ本輪読会 25 (7.50)
  26. 26. GCVによる近似 • 多くの線形当てはめ法に対して以下が成り立つ • 𝑆𝑖𝑖は𝑆の対角成分 2016/11/8 カステラ本輪読会 26 (7.51)
  27. 27. GCVによる近似 • GCVによる近似は以下で与えられる • 𝐒のトレースが個々の𝑆𝑖𝑖より簡単に計算できるか? できる→GCVに計算上の利点あり 2016/11/8 カステラ本輪読会 27 (7.52)
  28. 28. 7.10.2 交差確認を実行する正しい方法と間違った方法 • 以下のような解析を考える 1. 予測変数を減らす。クラスラベルとかなり強い(1変数の)相 関を持つような「良い」予測変数の部分集合を見つける 2. これを用いて多変量分類器を作る 3. 交差確認で未知の調整パラメータを推定し、最終的なモデル の予測誤差を推定 2016/11/8 カステラ本輪読会 28
  29. 29. 7.10.2 交差確認を実行する正しい方法と間違った方法 • 解析の設定 • 𝑁 = 50 • 𝑝 = 5000の量的予測変数はクラスラベルと独立 • 任意の分類器の真のテスト誤差率は50% 2016/11/8 カステラ本輪読会 29
  30. 30. 7.10.2 交差確認を実行する正しい方法と間違った方法 • この方法で解析すると、平均CV誤差率は3% • この解析の問題点は1段階目で全ての標本に基づいて変数 を減らしていること 1. 予測変数を減らす。クラスラベルとかなり強い(1変数の)相 関を持つような「良い」予測変数の部分集合を見つける 2. これを用いて多変量分類器を作る 3. 交差確認で未知の調整パラメータを推定し、最終的なモデル の予測誤差を推定 2016/11/8 カステラ本輪読会 30
  31. 31. 何がいけないのか • 変数が予測にとって不当に好都合 • 全ての標本を見て変数が選択された後で標本を抜いては いけない • なぜ? →完全な独立なテスト集合に対して分追記を作らなければ ならないから 2016/11/8 カステラ本輪読会 31
  32. 32. どうすればいいのか • 正しい解析の手続き 1. 交差確認のために標本をランダムに𝐾個のグループに分ける 2. 𝑘 = 1,2, ⋯ , 𝐾に対して a. 𝑘番目のグループ以外のすべての標本を用いて、「良い」予測変数 の集合を見つける b. この予測変数だけで𝑘番目のグループ以外のすべての標本を用いて 多変量分類器を作る c. 得られた分類器を使って、 𝑘番目のグループの標本に対するクラス ラベルを予測 2016/11/8 カステラ本輪読会 32
  33. 33. 方法の違いによる誤差の違い 2016/11/8 カステラ本輪読会 33 図7.10 選択された予測変数とクラスラベルの相関
  34. 34. 7.10.3 交差確認は本当に有効か • 問題設定 • 𝑁 = 20 • クラスラベルと独立な𝑝 = 500の量的予測変数 • 任意の分類器の真のテスト誤差率は50% • 1変数の分類器を考える 2016/11/8 カステラ本輪読会 34
  35. 35. 7.10.3 交差確認は本当に有効か • 以下の議論は正しいか? 2016/11/8 カステラ本輪読会 35 全ての集合に対し当てはめを行うと、 データをとてもよく分ける予測変数を一つ見つけるこ とになる。 もし5分割交差確認を行うなら、同じ予測変数は4/5 と1/5のサイズに分けたどのデータも良く分割する。 したがって、その交差確認誤差は小さくなるだろう (50%よりずっと小さい)。 よって、CVでは誤差の正確な推定値は得られない。
  36. 36. 検証 2016/11/8 カステラ本輪読会 36 図7.11
  37. 37. 検証 • 左上: 500個のモデルに対して誤りの数。誤差が最も小さ い6この予測変数に色 • 右上: 訓練標本とテスト標本の誤差分類数の関係 • 左下: 左上の青に対応する436番目のデータ。色付きは 1/5のほうのデータ • 右下: CVの訓練誤差 • 青い点の予測変数を用いたモデルの正解率は50% →無作為の場合と変わらない。 2016/11/8 カステラ本輪読会 37
  38. 38. 7.11 ブートストラップ法 • 復元抽出で訓練集合Zから標本集合をランダムに取り出す • B回繰り返しB個のブートストラップ標本の集合を生成 • ブートストラップ標本にモデルを当てはめ、挙動をみる ※「予測誤差」だけでなく、様々な値を計算してよい 例: 分散(𝑆(𝐙)の分散のモンテカルロ推定値と等価) 2016/11/8 カステラ本輪読会 38 (7.53)
  39. 39. 7.11 ブートストラップ法 2016/11/8 カステラ本輪読会 39
  40. 40. 予測誤差への応用 2016/11/8 カステラ本輪読会 40 • 𝑏番目のBS標本にモデルを当てはめた時の予測誤差 • BS標本は訓練集合とみなせる • 元の訓練集合と共通の観測値がある → は良い推定値にならない (7.54)
  41. 41. 例 問題設定 2クラス分類 真の誤差率: 0.5 𝑖番目の観測値が𝑏に含まれる確率 2016/11/8 カステラ本輪読会 41 (7.55)
  42. 42. 例 • = 0.5 × 0.632 = 0.184 2016/11/8 カステラ本輪読会 42
  43. 43. 解決法: 一つ抜きブートストラップ • その観測値を含まないBS標本のみから予測値を得る • 過学習の問題は解決するが、バイアスの問題は解決され ない(cf. 7.10節) 2016/11/8 カステラ本輪読会 43 (7.56)
  44. 44. 0.632推定量 • 無情報誤差率𝛾を用いてこれを改善 • 無情報誤差率・・・入力とクラスラベルが独立なときの 予測の誤差率 2016/11/8 カステラ本輪読会 44 (7.57) (7.58)
  45. 45. 7.11.1 例 2016/11/8 カステラ本輪読会 45
  46. 46. 7.12 条件付きテスト誤差か期待テスト誤差か 2016/11/8 カステラ本輪読会 46
  47. 47. 7.12 条件付きテスト誤差か期待テスト誤差か 2016/11/8 カステラ本輪読会 47

×