回答:
まあ、あなたが言ったように、白黒の答えはありません。私は通常、データを2つの部分に分割しませんが、代わりにk分割交差検証などの方法を使用します。
k分割交差検証では、データをランダムにkパーツに分割し、モデルをk-1パーツに適合させ、左のパーツでエラーをテストします。このプロセスをk回繰り返し、各パーツを1つずつフィッティングしなくなります。k回の各反復からの平均誤差をモデル誤差の指標として使用できます。これは、さまざまなモデルの予測力を比較する場合に非常に役立ちます。
k分割交差検証の1つの極端な形式は、テスト用に1つのデータポイントを省略して、モデルを残りのすべてのポイントに近似する一般化交差検証です。次に、プロセスをn回繰り返し、各データポイントを1つずつ除外します。私は一般的に、一般化されたクロス検証よりもk分割クロス検証を好みます...個人的な選択です
実際のデータ量、メソッドの具体的なコスト、結果を正確にどのようにしたいかによって異なります。
いくつかの例:
データが少ない場合は、おそらく相互検証(k-fold、leave-one-outなど)を使用する必要があります。モデルはおそらく、とにかくトレーニングとテストに多くのリソースを必要としません。データを最大限に活用する良い方法です
多くのデータがあります。おそらくかなり大きなテストセットを使用して、奇妙なサンプルが結果に大きな変動を与える可能性がほとんどないことを確認します。どれくらいのデータを取るべきですか?データとモデルに完全に依存します。たとえば音声認識の場合、データ量が多すぎる(たとえば3000文とする)場合、7〜10のリアルタイム係数が一般的であるため、実験には数日かかります。少なすぎると、選択しているスピーカーに依存しすぎます(トレーニングセットでは許可されていません)。
また、多くの場合、検証/開発を設定しておくとよいでしょう。
1:10 test:train比率は、見た目が丸いため人気があり、1:9は10倍のCVがあるため人気があり、1:2も丸くてブートストラップを再構成するため人気があります。たとえば、昨年はテスト用に、何年か前はトレーニング用に、データ固有の基準からテストを受ける場合があります。
一般的なルールは次のとおりです。トレインは、精度が大幅に低下しないように十分な大きさである必要があり、テストは、ランダムな変動を抑制するために十分な大きさである必要があります。
それでもエラーの分布を与えるので、私はまだCVを好みます。
k倍の回答の拡張として、kの「通常の」選択は5または10のいずれかです。1つの要素を残す方法は、保守的すぎるモデルを生成する傾向があります。参考までに、ここにその事実のリファレンスがあります:
Shao、J.(1993)、クロス検証による線形モデルの選択、Journal of the American Statistical Association、Vol。88、422号、486-494ページ