クロスバリデーションの目的を理解する上で、まだ何かが欠けていると思います。
いくつかの用語を明確にしましょう。一般に「モデル」と言う場合、入力データが予測しようとしているものにどのように関係するかを説明する特定の方法を指します。通常、そのメソッドの特定のインスタンスを異なるモデルとは呼びません。したがって、「私は線形回帰モデルを持っています」と言うかもしれませんが、トレーニング済み係数の2つの異なるセットを異なるモデルとは呼びません。少なくともモデル選択のコンテキストでは。
したがって、Kフォールドクロス検証を実行すると、モデルがデータによって訓練され、見られなかったデータを予測できるかどうかをテストしています。あなたが持っているすべてのデータを使用してトレーニングする場合、テストのために残っているものがないため、これにはクロス検証を使用します。たとえば、データの80%をトレーニングに使用し、20%をテストに使用すると、これを1回行うことができますが、テストに選択した20%に特に簡単な(または特に難しい)ポイントが含まれている場合予測する?モデルの学習および予測能力の可能な限り最良の推定値を思い付くことはありません。
すべてのデータを使用します。したがって、上記の80/20分割の例を続けるには、データの80%でモデルを5回トレーニングし、20%でテストすることにより、5倍の交差検証を行います。各データポイントが20%テストセットに1回だけ含まれるようにします。したがって、データから学習し、新しいデータを予測するというタスクをモデルがどれだけうまく実行できるかを理解するために、すべてのデータポイントを使用しました。
しかし、相互検証の目的は、最終モデルを思い付くことではありません。トレーニング済みモデルのこれら5つのインスタンスを使用して実際の予測を行うことはありません。そのために、可能な限り最良のモデルを考え出す必要があるすべてのデータを使用したいと思います。相互検証の目的は、モデルの構築ではなく、モデルのチェックです。
ここで、線形回帰モデルとニューラルネットワークの2つのモデルがあるとします。どのモデルが優れているかをどのように言えますか?K分割交差検証を行い、テストセットポイントの予測でどれがより良いかを確認できます。しかし、クロス検証を使用してパフォーマンスの良いモデルを選択したら、すべてのデータに対してそのモデル(線形回帰またはニューラルネットワーク)をトレーニングします。最終予測モデルの交差検証中にトレーニングした実際のモデルインスタンスは使用しません。
クロス検証に似た方法で作成されたモデルインスタンスを使用してアンサンブルモデルを構築するブートストラップ集約(通常は「バギング」と呼ばれる)と呼ばれる手法がありますが、それは範囲を超えた高度な手法です。ここであなたの質問の。