ISLR: Chapter 5 Resampling Methods
Resampling methodsは訓練データから何度もサンプルを取り出し,モデルにフィットさせる.これにより,一度だけのフィッティングでは得られない情報を得られる.
本章ではクロスバリデーションとブートストラップ法を扱う.クロスバリデーションはテストエラーの推定やモデルの適切な表現力を決める際に用いる.モデルの性能を評価するプロセスはモデル評価(model assessment)というのに対し,モデルの適切な柔軟性を決めるプロセスはモデル選択(model selection)という.ブートストラップ法は,一般に,与えられたモデルのパラメタ推定の正確さを測る際に用いる.
5.1 Cross-Validation
モデルを作ったら,test error rateを見てどの程度うまくいってるか確認したい.が,テストデータが少なければそんなことはできない.そういう時は訓練データの一部をバリデーションデータとし,それをテストデータとみなして扱う.
5.1.1 The Validation Set Approach
量的データを想定.量的データに対しては,二乗誤差の平均(Mean Squared Error, )を使うことが多い.
テストデータを十分に確保できない時に訓練データとバリデーションデータに分けてしまうこの方法の欠点は,
分割の仕方によってtest error rateがかなりばらつく
テストデータに充てた分,訓練データが少なくなり,性能が悪化する.結果,validation set error rateは真のtest error rateを過大評価してしまう.
5.1.2 Leave-One-Out Cross-Validation (LOOCV)
LOOCVもthe validation set approachと同様に訓練データとバリデーションデータに分ける.が,LOOCVではバリデーションデータは観測1つのみ.それ以外の観測は全て訓練データ.訓練データを用いてフィットさせたモデルにを入力し(この場合は)を求める.これはtest errorの不偏推定量の近似になってる.で,これを全てのデータについて繰り返す.そうすると,LOOCVによるtest の推定量は個のの平均になる.
LOOCVには,(1) バイアスが小さく,test error rateを過大評価しにくい,(2) 全てのデータについてを求めているため,分割のランダムネスに左右されるthe validation set approachのように分散が大きいという問題がない,という2つの利点がある.
欠点としては,観測の数だけモデルをフィットさせる必要があるので,観測が多い時もしくはフィッティングに時間がかかる時は計算コストが高いことが挙げられる.が,最小二乗法による線形回帰もしくは多項式回帰なら以下の式でを推定すると,1回のフィッティングで済むらしい. はleverage statistic.leverage statistic はの値を取り,フィッティングにおける番目の観測の影響力を表している.番目の残差をで割ることで,high-leverageなの残差を重視している.式は一般には成り立たない.
5.1.3 k-Fold Cross-Validation
LOOCVは観測の数だけフィット・予測を行うが,k-Fold Cross-Validationでは観測を個のグループに分割し,あるグループをバリデーションデータ,それ以外は訓練データとしてフィッティング・予測を行う.これを回繰り返す.
LOOCVと比べた時のメリットは計算量(LOOCV: , k-Fold Cross-Validation: .
5.1.4 Bias-Variance Trade-Off for k-Fold Cross-Validation
k-fold Cross-ValidationがLOOCVより優れている点として,計算量に加え,一般にtest error rateをLOOCVよりも正確に推定できる点が挙げられる.
LOOCVは個の観測を訓練データとして用いているのに対し,k-fold CVの訓練データに含まれる観測の数は個.つまり,k-fold CVの訓練データのサイズはLOOCVより小さく,the validation set approachより多い.したがってバイアス削減の観点から見たら,k-fold CVよりLOOCVの方が優れている.
だが,得られたtest errorのバリアンスについてはLOOCVよりk-fold CVの方が小さい.というのは,LOOCVは個の観測でモデルをフィッティングしているため,個のフィットされたモデルはほぼ変わらない.つまり,個のモデルには相関関係がある.一方,k-fold CVは観測を個に分割しているので,観測の重複が少なく,結果として,k-fold CVで構築したモデル群の相関は,LOOCVで構築されたモデル群よりも弱い.相関が強いと分散が大きくなるので,test errorの分散の観点から見たら,LOOCVよりk-fold CVの方が優れている.
5.1.5 Cross-Validation on Classification Problems
今度は質的データを分類したい時のCross-Validationの話.量的データの場合はを用いたが,質的データを扱う場合にはエラー率を用いる.エラー率を用いてLOOCVは以下のように書くことができ,k-fold CVもアナロジーで書ける.
5.2 The Bootstrap
ブートストラップ法は,線形回帰の係数の標準誤差など,推定量や学習手法の不確かさを評価することができる.色々な手法に対して適用可能という守備範囲の広さも魅力.
パラメタを推定したい時はサンプルを何度も生成して平均を取れば良いが,そもそもサンプル生成のためのパラメタが未知なのでそんなことはできない.ブートストラップ法なら母集団のパラメタが未知でも,手持ちのデータセットから繰り返しサンプルして異なるデータセットを作ることで,パラメタを推定する.
具体的な方法は以下の通り.まず,個の観測を含む手持ちのデータセットから個の観測を抽出し,取り出された個の観測をブートストラップデータセットとする.次にを用いてパラメタを推定し,推定されたパラメタをとする.これらの手順を回繰り返し,とを得る.そして,これらのパラメタの標準誤差を下式で求める. これは元のデータセットでを推定した時の標準誤差の推定量になっている.