計算能力に関する考慮事項は別として、交差検証での折り畳みの数を増やすと、モデルの選択/検証が向上する(つまり、折り畳みの数が多いほど良い)と考えられる理由はありますか?
極端に議論すると、leave-one-out交差検定は必然的に倍交差検定よりも優れたモデルになりますか?
この質問の背景:私は非常に少数のインスタンス(たとえば、10個の陽性と10個の陰性)で問題に取り組んでおり、私のモデルが一般化できないか、非常に少ないデータで過剰適合することを恐れています。
計算能力に関する考慮事項は別として、交差検証での折り畳みの数を増やすと、モデルの選択/検証が向上する(つまり、折り畳みの数が多いほど良い)と考えられる理由はありますか?
極端に議論すると、leave-one-out交差検定は必然的に倍交差検定よりも優れたモデルになりますか?
この質問の背景:私は非常に少数のインスタンス(たとえば、10個の陽性と10個の陰性)で問題に取り組んでおり、私のモデルが一般化できないか、非常に少ないデータで過剰適合することを恐れています。
回答:
リーブワンアウトクロスバリデーションは、一般的にK倍よりも高いパフォーマンスにつながり、そしてより多くの可能性が高いとされていません悪化し、それが比較的高い分散を持っているとして、(すなわち、その値は値よりもデータの異なるサンプルのためのより多くの変更しますk-fold cross-validation)。これは、モデル選択基準において悪いことです。これは、パフォーマンスを真に改善するのではなく、特定のデータサンプルのランダムな変動を利用する方法でモデル選択基準を最適化できることを意味します。モデル選択基準。leave-one-out交差検証が実際に使用される理由は、多くのモデルで、モデルの適合の副産物として非常に安価に評価できるためです。
計算コストが主に問題でない場合、より良いアプローチは、k倍交差検証手順を繰り返し実行することです。この場合、k倍交差検証手順は、異なるランダムパーティションで毎回k個の互いに素なサブセットに繰り返されます。これにより、分散が減少します。
パターンが20個しかない場合、モデル選択基準の過剰適合が発生する可能性が非常に高くなります。これは、統計と機械学習の落とし穴です(恥知らずなプラグイン:トピックに関する私の論文を参照)。比較的単純なモデルを選択して非常に積極的に最適化しないようにするか、妥当性によって重み付けされたすべてのモデル選択に対してベイジアンアプローチと平均化を採用する方が良い場合があります。IMHO最適化は統計上のあらゆる悪の根源です。そのため、必要がない場合は最適化しないようにし、実行するときには常に注意して最適化することをお勧めします。
また、モデル選択を実行する場合、パフォーマンス推定も必要な場合は、ネストされた交差検証のようなものを使用する必要があります(つまり、モデル選択手順の不可欠な部分としてモデル選択を検討し、それを交差検証する必要があります)同じように)。
要約すると、与えられたトレーニングセットサイズで学習曲線にかなりの勾配がある場合、5倍または10倍の交差検証は真の予測誤差を過大評価します。このバイアスが実際に欠点であるかどうかは、目的に依存します。一方、leave-one-out相互検証のバイアスは低くなりますが、分散が大きくなる可能性があります。
この議論を視覚的に理解するために、次のおもちゃの例を考えてみましょう。ここでは、次数4の多項式をノイズの多い正弦曲線に当てはめています。
モデルのパフォーマンスは、トレーニングサイズが50観測値に増加するにつれて大幅に向上します。たとえば、数をさらに200に増やしても、わずかな利点しかありません。次の2つのケースを考慮してください。
あなたは、このシミュレーション用のコードを見つけることができるここに。アプローチは次のとおりです。
別のアプローチは、各反復で新しいデータセットをリサンプリングせず、代わりに毎回同じデータセットをシャッフルすることです。これは同様の結果をもたらすようです。