内部対外部の交差検証とモデル選択


26

私の理解では、相互検証とモデル選択により、次の2つのことに対処しようとしています。

P1。サンプルでトレーニングする際の母集団の予想損失を推定する

P2。この推定の不確実性(分散、信頼区間、バイアスなど)を測定して報告する

標準的な方法では、反復検証を繰り返します。これにより、推定量の分散が減少するためです。

ただし、レポートと分析に関しては、次の理由により、内部検証の方が外部検証よりも優れていると理解しています。

報告することをお勧めします:

  • 推定器の統計。たとえば、完全なサンプル(この場合はCVサンプル)の信頼区間、分散、平均など。

報告よりも:

  • 次の理由により、元のサンプルのホールドアウトサブセットでの推定量の損失:

    (i)これは単一の測定値になりますCVで推定量を選択した場合でも

    (ii)この単一の測定の推定量は、ホールドアウトセット用のスペースを確保する必要があるため、最初のサンプルよりも小さいセット(CVセットなど)でトレーニングされていました。これにより、P1のより偏った(悲観的な)推定になります。

これは正しいです?そうでない場合はなぜですか?

バックグラウンド:

サンプルを2つのセットに分割することを推奨する教科書は簡単に見つかります。

  • CVのその後繰り返しに分けて設定し、電車バリデーションセット。
  • ホールドアウトのみ推定性能を報告するために端部に使用される(テスト)セット、

私の目標は、この投稿の冒頭で問題P1P2に実際に対処することだと考えて、この教科書アプローチのメリットと利点を理解する試みです。CVサンプルの分析はより有益であるため、ホールドアウトテストセットのレポートは悪い習慣であるように思えます。

ネストされたKフォールドと繰り返しKフォールド:

原則として、ホールドアウトと通常のK-foldを組み合わせネストされたK-foldを取得でき ます。これは、私たちは私たちの推定量の変動を測定できるようになるが、それは訓練された合計モデルの同じ数(折り目の合計#)のためのものである推定もたらすであろうK倍を繰り返すように私には見え少ないバイアスより正確なネストされたK-よりを折ります。これを見るには:

  • 繰り返しKフォールドは、同じKのネストされたKフォールドよりもサンプル全体の大部分を使用します(つまり、バイアスが低くなります)
  • 100回の反復では、ネストされたKフォールド(K = 10)で推定器の10個の測定値しか得られませんが、Kフォールドで100個の測定値が得られます(測定値を増やすとP2の分散が低くなります)

この推論の何が問題になっていますか?


1
あなたが知りたいと思うものに私が集めたものにより具体的になるように、私はあなたのタイトルを調整しました。この方法で必要な情報を取得する可能性が高いと思います。同意しない場合は、お気軽に元に戻してください。また、編集の数が多いため、このスレッドは自動的にCWになっていることに注意してください。CWにしたくない場合は、モデレーターの注意を引くためにフラグを立てます。それを逆にすることができるはずです(私は思う)。
GUNG -復活モニカ

1
ありがとう@gung。私の唯一の懸念は、一部の人々は、ホールドアウトと混同していることである2倍のCVをこれと、私は思うの外部CV対内部 Steyerberg03のように明確である
アメリオバスケス・レイナ

回答:


20

すでにここにある素敵な答えにいくつかのポイントを追加しましょう:

ネストされたKフォールドと繰り返しKフォールド:ネストされたKフォールドと繰り返されるKフォールドはまったく異なるものであり、さまざまな目的に使用されます。

  • 既にご存知のように、モデルの選択に内部cvを使用する場合は、nestedが適しています。
  • 繰り返し:私見では、常にk-fold cvを繰り返す必要があります[以下を参照]。

したがって、ネストされたk分割交差検証繰り返すことをお勧めします。

より良いレポート「推定値の統計。たとえば、サンプル全体(この場合はCVサンプル)の信頼区間、分散、平均など。」

はい。ただし、相互検証の結果だけでは信頼区間を(簡単に)推定できないという事実に注意する必要があります。その理由は、どのようにリサンプリングしても、実際に見るケースの数は有限であるためです(通常はかなり少ないです。そうでなければ、これらの区別について気にしません)。
たとえば、Bengio、Y.およびGrandvalet、Y .: K-Fold Cross-Validation Journal of Machine Learning Research、2004、5、1089-1105の分散の不偏推定量を参照してください。

n

nσ2p^=1np1ppp^np=0.5
C. Beleites、R。Salzer、およびV. Sergo:部分クラスメンバーシップを使用したソフト分類モデルの検証:Astrocytoma Tissues、Chemomのグレーディングに適用されるSensitivity&Co.の拡張コンセプト。Intell。ラボ システム、122(2013)、12-22。

だから、これは私があなたの主張に反対することを可能にします:

  • また、リサンプリングだけでは(必ずしも)分散の適切な推定値が得られないため、
  • OTOH、相互検証の推定値の有限テストサンプルサイズの分散について推論できる場合、それは差し控えることも可能です。

この単一の測定の推定器は、ホールドアウトセット用のスペースを確保する必要があるため、最初のサンプルよりも小さいセット(CVセットなど)でトレーニングされていました。これにより、P1のより偏った(悲観的な)推定になります。

1k

CVサンプルの分析はより有益であるため、ホールドアウトテストセットの報告は悪い習慣であるように思えます。

通常、はい。ただし、リサンプリング検証では測定/検出できない重要な種類のエラー(ドリフトなど)があることに注意してください。
例えば、Esbensen、KH and Geladi、P. Principles of Proper Validation:use and abuse for re-sampling for validation、Journal of Chemometrics、2010、24、168-187

しかし、同じ数のトレーニングされた合計モデル(合計折り畳み数)に対して、K折り畳みを繰り返すと、ネストされたK折り畳みよりも偏りが少なく、より正確な推定量が得られるように見えます。これを見るには:

繰り返しKフォールドは、同じKのネストされたKフォールドよりもサンプル全体の大部分を使用します(つまり、バイアスが低くなります)

私はこれにノーと言うだろう:それはモデルのトレーニングがその使用する方法は関係ありませんk1kn
k

100回の反復では、ネストされたKフォールド(K = 10)で推定器の10個の測定値のみが得られますが、Kフォールドで100個の測定値(より多くの測定値はP2の分散の低下につながります)

これが違いを生むかどうかは、(代理)モデルの不安定性に依存します。上記を参照してください。安定したモデルの場合は関係ありません。1000回または100回の外側の繰り返し/反復を行うかどうかも同様です。


そして、この論文は間違いなくこのトピックのリーディングリストに属しています 。Cawley、GC、Talbot、NLC On Over-fitting in Model Selection and Subsequent Selection Bias in Performance Evaluation、Journal of Machine Learning Research、2010、11、2079-2107


6

これを説明する重要なリファレンスは次のとおりです。

@ARTICLE{pic90,
  author = {Picard, R. R. and Berk, K. N.},
  year = 1990,
  title = {Data splitting},
  journal = The American Statistician,
  volume = 44,
  pages = {140-147}
}

こちらもご覧ください:

@Article{mic05pre,
  author =       {Michiels, Stefan and Koscielny, Serge and Hill, Catherine},
  title =        {Prediction of cancer outcome with microarrays: a
multiple random validation strategy},
  journal =      {Lancet},
  year =         2005,
  volume =       365,
  pages =        {488-492},
  annote =       {comment on
p. 454; validation;microarray;bioinformatics;machine learning;nearest
centroid;severe problems with data splitting;high variability of list
of genes;problems with published studies;nice results for effect of
training sample size on misclassification error;nice use of confidence
intervals on accuracy estimates;unstable molecular signatures;high
instability due to dependence on selection of training sample}
}

私自身の仕事では、データを分割するには十分に機能するために10,000に近いトレーニングとテストサンプルサイズが必要であることがわかりました。


フランク-これらは素晴らしいリソースです。この情報は、@ Danが彼の答えで提供したものとどのように関係するのだろうか。おそらく私はこれを誤解しているかもしれませんが、コミュニティはこの問題に関して分裂しているようです。
アメリオバスケスレイナ

最初の記事を読む時間はありませんでしたが、2番目の記事については、一目見ただけで、私の論文が述べていることをそのまま反映しているようです。「統計分析」セクションをよく見ると、上記のリンクで投稿したDikranの説明と同じ機能選択プロセスが説明されていることがわかります。彼らが研究した人々はそうはしなかったと思うので、「検証が不十分なため、私たちの選んだ研究は私たち自身の分析からの結果と比較して過度に楽観的な結果を出しました」。意見の相違はないと思います。
ダンL

4

モデルの構築プロセスに大きく依存しますが、このペーパーは参考になりました。

http://www.biomedcentral.com/content/pdf/1471-2105-7-91.pdf

ここで説明することの核心は、パフォーマンスを推定するために使用しているものと同じものに基づいてモデルを選択する場合に発生する重大なリベラルバイアス(モデルパフォーマンスを実際よりも良く推定すること)です。そのため、クロス検証エラーを見ることによって可能なモデルのセットからモデルを選択する場合、クロス検証エラー(またはその他の内部推定方法)を使用してモデルのパフォーマンスを推定しないでください。

別の有用なリソースは

/stats//a/27751/26589

この投稿では、すべてのデータが「表示」されたときにフィーチャを選択すると、モデルのパフォーマンスに寛大なバイアスが生じる(モデルのパフォーマンスが実際よりも優れていると言う)方法を明確に示しています。

あなたがすることにより具体的な例をレイアウトしたい場合は、おそらくあなたが構築しているモデルの種類の一般的な説明(あなたが持っているデータの量、選択する機能の数、実際のモデルなど)。


ダンありがとう これはすべて興味深いです。簡単にするために、バイナリ分類(<〜10パラメーター)のSVM(RBFカーネルなど)のカーネルパラメーターを推定しようとしていること、および大規模な母集団からの100サンプル(20陽性など)で作業していると仮定できます。
アメリオバスケスレイナ

いくつかの簡単な質問。1)SVMを作成するとき、10個のパラメーターのサブセットを自分で選択できるようにしますか、それとも常に渡されたパラメーターをすべて使用しますか?2)異なるカーネルまたはモデル(ロジスティック、ランダムフォレストなど)を検討したことがありますか?3)使用しているソフトウェア/パッケージは何ですか?組み込みの相互検証の実装はさまざまであるため、どちらを使用するかを知りたい。
ダンL

@Danに感謝します-モデルとパラメーター全体でグリッド検索を行います(つまり、グリッド検索ではカーネルとパラメーターが異なります)。グリッド検索の各実験では、CV(繰り返しKフォールド交差検証)を行います。scikit-learnを使用しています。
アメリオバスケスレイナ

1
ありがとう@ダン。ネストされた交差検証に関する私の唯一の疑問は、モデルを選択する方法です(外側のループの各フォールドで異なるモデルを取得するため)。各フォールドで勝ったモデルはデータセットの異なる部分に対して測定されるため、この外側のループで最高のスコアを持つモデルを選択することは合理的ではないようです。
アメリオバスケスレイナ

1
3つの外側の折り目があるとします。これは、モデル構築プロセス全体を3回実行し、3つの異なるモデルを提供することを意味します。最終的にこれらのモデルは使用しません。最終モデルを取得するには、すべてのデータに対してモデル構築プロセス全体を実行します(独立した評価セットを除く)。これは過剰適合につながるように思われますが、モデル構築戦略が過剰適合した場合、外側の交差検証にも適合し、適切に高いエラー推定値につながります。
ダンL

2

あなたの理解は正しいと思います。単一のホールドアウトテストセットを使用して得られる損失の推定量は、通常、大きな分散を持っています。Kフォールドのクロス検証のようなものを実行することにより、損失のより正確なアイデアと損失の分布の感覚が得られます。

通常、トレードオフがあります。CVをより多く折りたたむと推定値は向上しますが、計算時間が長くなります。


ありがとう。質問をさらに明確にするために、OPに背景部分を追加しました。
アメリオバスケスレイナ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.