機械学習における相互検証:4種類の相互検証

公開: 2020-11-30

目次

序章

モデル開発は、データサイエンスプロジェクトのライフサイクルにおける重要なステップであり、ビジネス上の問題に基づいて、教師ありまたは教師なしアルゴリズムのいずれかのさまざまなタイプの機械学習モデルを使用してデータセットをトレーニングしようとします。

ビジネス上の問題を解決するために使用できるモデルがたくさんあることを認識しているため、このフェーズの最後に選択したモデルが、見えないデータで適切に機能することを確認する必要があります。 したがって、最高のパフォーマンスを発揮するモデルを選択するために、評価指標だけを使用することはできません。

本番環境にデプロイできる最終的な機械学習モデルを決定するのに役立つ、メトリックとは別の何かが必要です。

変数間の関係を計算する数学的結果がデータの記述として受け入れられるかどうかを判断するプロセスは、検証として知られています。 通常、モデルの誤差推定は、残差の評価としてよく知られている、トレインデータセットでモデルをトレーニングした後に行われます。

このプロセスでは、予測された応答と元の応答の差を計算することによりトレーニングエラーを測定します。 ただし、このメトリックはトレーニングデータでのみ適切に機能するため、信頼できません。 モデルがデータを過適合または過剰適合している可能性あります

したがって、この評価手法またはその他の評価指標の問題は、モデルが見えないデータセットに対してどれだけうまく機能するかを示していないことです。 モデルについてこれを知るのに役立つ手法は、相互検証として知られています。

この記事では、さまざまなタイプの相互検証手法、各手法の長所と短所について詳しく説明します。 相互検証の定義から始めましょう。

相互検証

相互検証は、モデルが見えないデータの効率と精度を確認するのに役立つリサンプリング手法です。 これは、利用可能な入力データセットのサブセットで他のいくつかの機械学習モデルをトレーニングし、データセットのサブセットでそれらを評価することにより、機械学習モデルを評価する方法です。

さまざまなタイプの相互検証手法がありますが、相互検証の基本的な機能を見てみましょう。最初のステップは、クリーンアップされたデータセットを同じサイズのK個のパーティションに分割することです。

  1. 次に、Fold-1をテストフォールドとして扱い、他のK-1をトレインフォールドとして扱い、テストフォールドのスコアを計算する必要があります。
  2. 列車として残りながら、テストとして別の折り目を取り、すべての折り目に対して手順2を繰り返す必要があります。
  3. 最後のステップは、すべてのフォールドのスコアの平均を取ることです。

読む:初心者向けの機械学習プロジェクト

相互検証の種類

1.ホールドアウト方式

この手法は、トレーニングデータセットの一部を削除し、それを残りのデータセットでトレーニングされたモデルに送信して予測を取得するために機能します。 次に、モデルが見えないデータセットでどのように動作しているかを示す誤差推定を計算します。 これは、ホールドアウト方式として知られています。

長所

  1. この方法は、データから完全に独立しています。
  2. このメソッドは1回だけ実行する必要があるため、計算コストが低くなります。

短所

  1. データのサイズが小さいため、パフォーマンスは変動が大きくなる可能性があります。

2.K分割交差検定

データ駆動型の世界では、モデルをトレーニングするのに十分なデータがないことに加えて、検証のためにモデルの一部を削除すると、適合不足の大きな問題が発生し、データセットの重要なパターンと傾向が失われるリスクがあります。バイアスが増加します。 したがって、理想的には、モデルをトレーニングするために十分な量のデータを提供し、検証セットのために十分な量のデータを残す方法が必要です。

K-Fold交差検定では、データをk個のサブセットに分割するか、k回繰り返されるホールドアウト方法と見なすことができます。そのたびに、k個のサブセットの1つが検証セットとして使用され、もう1つはk-1として使用されます。トレーニングセットとしてのサブセット。 モデルの全体的な効率を得るために、エラーはk回の試行すべてにわたって平均化されます。

各データポイントが検証セットに1回だけ含まれ、トレーニングセットにk-1回含まれることがわかります。 これにより、ほとんどのデータをフィッティングに使用しているためバイアスを減らし、ほとんどのデータを検証セットでも使用しているため分散を減らすことができます。

長所

  1. これは、計算能力の問題を克服するのに役立ちます。
  2. データに外れ値が存在する場合、モデルはそれほど影響を受けない可能性があります。
  3. それは私たちが変動性の問題を克服するのに役立ちます。

短所

  1. 不均衡なデータセットは、モデルに影響を与えます。

3.層化Kフォールド交差検定

Kフォールドクロス検証手法は、不均衡なデータセットでは期待どおりに機能しません。 データセットのバランスが崩れている場合は、K分割交差検定手法を少し変更して、各分割に各出力クラスのサンプルの層が完全なものとほぼ同じになるようにする必要があります。 K Fold Cross Validationで層を使用するこのバリエーションは、Stratified K FoldCrossValidationとして知られています。

長所

  1. ハイパーパラメータ調整を使用して、さまざまなモデルを改善できます。
  2. モデルの比較に役立ちます。
  3. バイアスと分散の両方を減らすのに役立ちます。

4.ひさし-P-Out相互検証

このアプローチでは、合計n個のデータポイントのうちトレーニングデータからp個のデータポイントを除外し、np個のサンプルを使用してモデルをトレーニングし、p個のポイントを検証セットとして使用します。 これがすべての組み合わせに対して繰り返され、エラーが平均化されます。

長所

  1. ランダム性はゼロです
  2. バイアスは低くなります

短所

  1. この方法は網羅的であり、計算上実行不可能です。

また読む:機械学習のキャリア

結論

この記事では、データサイエンスプロジェクトのライフサイクルにおける機械学習モデルの検証の重要性について学び、検証と相互検証とは何かを理解し、さまざまなタイプの相互検証手法を探求し、いくつかを理解しました。これらの手法の長所と短所。

機械学習について詳しく知りたい場合は、IIIT-BとupGradの機械学習とAIのPGディプロマをご覧ください。これは、働く専門家向けに設計されており、450時間以上の厳格なトレーニング、30以上のケーススタディと課題、IIIT-を提供します。 B卒業生のステータス、5つ以上の実践的なキャップストーンプロジェクト、トップ企業との仕事の支援。

機械学習における相互検証の必要性は何ですか?

相互検証は、トレーニングデータをトレーニングセットとテストセットの2つの部分に分割する機械学習手法です。 トレーニングセットはモデルの構築に使用され、テストセットは本番環境でのモデルのパフォーマンスを評価するために使用されます。 これを行う理由は、作成したモデルが現実の世界でうまく機能しないリスクがあるためです。 モデルを相互検証しないと、トレーニングデータではうまく機能するが、実際のデータではうまく機能しないモデルを作成した可能性があります。

k分割交差検定とは何ですか?

機械学習とデータマイニングでは、k-fold cross validationは、leave-one-out cross-validationと呼ばれることもあり、トレーニングデータがk個のほぼ等しいサブセットに分割されるクロス検証の形式です。 1つのサブセットが順番にテストデータとして使用され、残りのサブセットがトレーニングデータとして使用されます。 Kは多くの場合10または5です。K分割交差検定は、汎化誤差の推定値の分散を減らすため、モデルの選択に特に役立ちます。

相互検証の利点は何ですか?

相互検証は、データセットがトレーニングセットとテストセット(または相互検証セット)に分割される検証の形式です。 このセットは、モデルの精度をテストするために使用されます。 つまり、データのサンプルに基づいてモデルがどの程度優れているかを測定する方法を提供します。 たとえば、トレーニング入力とテスト入力の間の不一致によって引き起こされるモデルの誤差を推定するために使用されます。