8種類の相互検証の詳細な説明と視覚的な紹介

クロスバリデーション(「オーバーサンプリング」手法とも呼ばれます)は、データサイエンスプロジェクトの重要な要素です。これは、機械学習モデルを評価し、独立したテストデータセットでのモデルのパフォーマンスにアクセスするために使用されるリサンプリングプロセスです。

この記事では、8つの異なるクロス検証手法について説明します。それぞれに長所と短所があります。

  1. pの交差検証を省略
  2. 相互検証を1つ残します
  3. ホールドアウト相互検証
  4. 繰り返しランダムサブサンプリング検証
  5. k分割交差検証
  6. 層別k分割交差検証
  7. 時系列の相互検証
  8. 入れ子の交差検証

交差検証手法を紹介する前に、交差検証をデータサイエンスプロジェクトで使用する理由を教えてください。

なぜ相互検証が重要なのですか?

機械学習モデルを開発するために、データセットをトレーニングデータとテストデータにランダムに分割することがよくあります。トレーニングデータはMLモデルをトレーニングするために使用され、モデルのパフォーマンスを評価するために、同じモデルが独立したテストデータでテストされます。

分割されたランダムな状態が変化すると、モデルの精度も変化するため、モデルの固定精度を取得できません。データの漏洩を防ぐため、テストデータはトレーニングデータから独立している必要があります。トレーニングデータを使用してMLモデルを開発するプロセスでは、モデルのパフォーマンスを評価する必要があります。これが相互検証データの重要性です。

データは以下に分割する必要があります。

  • トレーニングデータ:モデル開発用
  • 検証データ:同じモデルのパフォーマンスを検証するために使用されます

簡単に言うと、相互検証により、データをより有効に活用できます。

1. p-out相互検証を残す

LpOCVは、検証データとしてp観測値を使用することを含む網羅的な相互検証手法であり、残りのデータはモデルのトレーニングに使用されます。この手順をすべての方法で繰り返し、p観測の検証セットとトレーニングセットで元のサンプルを切り取ります。

バイナリ分類器のROC曲線の下の面積を推定するためのほとんど不偏な方法として、p = 2のLpOCVバリアント(休暇のペアの相互検証として知られている)が推奨されています。

2. Leave-one-out相互検証

Leave-one-outクロス検証(LOOCV)は、詳細かつ徹底的な検証手法です。p = 1の場合は、LpOCVのカテゴリです。

n行のデータセットの場合、最初の行が検証用に選択され、残りの(n-1)行がモデルのトレーニングに使用されます。次の反復では、検証のために行2を選択し、リセットしてモデルをトレーニングします。同様に、このプロセスは、nステップまたは必要な操作数に達するまで繰り返されます。

上記の2つの相互検証手法は、詳細な相互検証の一種です。徹底的な相互検証方法は、すべての可能な方法で学習およびテストされる相互検証方法です。以下に説明するのと同じ利点と欠点があります。

利点:シンプルで理解しやすく、実装

短所:このモデルは、偏差が少なくなり、計算時間が長くなる可能性があります

3.ホールドアウト相互検証

保持手法は、データ分析に基づいてデータセットをトレーニングデータとテストデータにランダムに分割する詳細な相互検証方法です。

相互検証を保持する場合、データセットはランダムにトレーニングデータと検証データに分割されます。通常、トレーニングデータの分割は単なるテストデータではありません。トレーニングデータはモデルの導出に使用され、検証データはモデルのパフォーマンスの評価に使用されます。

モデルのトレーニングに使用するデータが多ければ多いほど、モデルの品質が向上します。保持の相互検証方法では、トレーニングから大量のデータを分離する必要があります。

利点:以前と同じ、シンプルで理解しやすく、実装が容易

短所:不均衡なデータセットには適していません。多くのデータがトレーニングモデルから分離されています

4. k分割交差検証

k分割交差検証では、元のデータセットがk個のサブパートまたは分割に均等に分割されます。k分割またはグループから、反復ごとに1つのグループが検証データとして選択され、残りの(k-1)グループがトレーニングデータとして選択されます。

このプロセスは、各グループが検証と見なされ、トレーニングデータとして保持されるまでk回繰り返されます。

モデルの最終的な精度は、kモデル検証データの平均精度を取得することによって計算されます。

LOOCVはk分割交差検証の変形で、k = nです。

利点:

  • モデルのバイアスが低い
  • 短い時間の複雑さ
  • データセット全体をトレーニングと検証に使用できます

欠点:不均衡なデータセットには適していません。

5.ランダムサブサンプリング検証の繰り返し

繰り返されるランダムなサブサンプリング検証(モンテカルロクロス検証とも呼ばれます)は、データセットをトレーニングと検証にランダムに分割します。データセットのk分割交差検証は、グループやペアではなく、いくつかのカテゴリに分割される可能性は低く、この場合はランダムにグループに分割されます。

反復回数は固定されていませんが、分析によって決定されます。次に、結果を平均します。

繰り返しランダムサブサンプリング検証

利点:トレーニングと検証の分割の比率は、反復またはパーティションの数に依存しません

短所:一部のサンプルはトレーニングまたは検証のために選択されない場合があり、不均衡なデータセットには適していません

6.層別k分割交差検証

上記のすべての交差検証手法では、不均衡なデータセットには適さない場合があります。階層k分割交差検証は、データセットの不均衡の問題を解決します。

階層k分割交差検証では、検証データに同じ数のターゲットクラスラベルインスタンスが含まれるように、データセットがkグループまたは分割に分割されます。これにより、特にデータセットのバランスが取れていない場合に、特定のクラスが検証またはトレーニングデータに表示されなくなります。

階層k分割交差検証、各分割には同じターゲットクラスインスタンスがあります

最終スコアは、各割引スコアの平均を取って計算されます

利点:不均衡なデータセットに適しています。

短所:時系列データセットに適しています。

7.時系列の相互検証

データの順序は、時系列に関連する問題にとって非常に重要です。時間に関連するデータセットの場合、データをランダムに分割するか、kフォールディングをトレーニングと検証に分割しても、良い結果が得られない場合があります。

時系列データセットの場合、データは、時間に基づくトレーニングと検証に分割されます。これは、フォワードリンク法またはローリング相互検証とも呼ばれます。特定の反復では、トレーニングデータの次のインスタンスを検証データと見なすことができます。

上の図で述べたように、最初の反復では、最初の3行はトレーニングデータと見なされ、次のインスタンスT4は検証データです。トレーニングおよび検証データを選択する機会はさらに繰り返されます。

8.ネストされた相互検証

k分割および階層k分割の相互検証の場合、トレーニングデータとテストデータの誤差を推定します。ハイパーパラメータ調整は、以前の方法で個別に行われました。クロス検証を使用してハイパーパラメーターと汎化誤差推定を同時に調整する場合は、入れ子のクロス検証が必要です。

入れ子の交差検証は、kフォールドと階層kフォールドの両方のバリアントに適用できます。

結論として

交差検証は、MLモデルのパフォーマンスを比較および評価するために使用されます。この記事では、8つの交差検証手法とその利点と欠点を紹介しました。Kフォールドと階層kフォールドの相互検証は、最も一般的に使用される手法です。時系列相互検証は、時系列に関連する問題に最適です。

これらの相互検証の実装は、sklearnパッケージにあります。興味のある読者は、詳細な情報についてsklearnのドキュメントを読むことができます。

https://scikit-learn.org/stable/modules/cross_validation.html

作成者:Satyam Kumar

ディープハブ翻訳チーム

おすすめ

転載: blog.csdn.net/m0_46510245/article/details/108723395