K倍クロスバリデーション:StratifiedKFoldとKFold上の接触の違い

モデルは(高分散)の上にフィットであるには余りにも複雑であるため、どちらか、パフォーマンスが良くない場合は、モデルをモデルの汎化能力を評価するために、ニューラルネットワークのステップを訓練し、どちらかのモデルは(高い単純すぎる原因リードunderfittingあるキー偏差)。この問題を解決するために、我々は、モデルの汎化能力を評価するためのk倍クロスバリデーション--holdoutインターリーブクロスバリデーションと検証回数の両方に学ばなければなりません。

K分割交差検証結果は、パラメータ評価モデルの平均値として計算され、従って方法の最適なパラメータを見つけるためにK倍クロスバリデーションを使用ホールドアウトよりも安定です。我々は最適なパラメータを見つけたら、パラメータのこのセットは、最終的なモデルとして設定された元のデータにモデルをトレーニングするために使用されます。

1 KFold 

クラス sklearn.model_selection.KFold(n_splitsは= '警告'、シャッフル= Falseを、random_state =なし)

電車/テスト用のインデックスを提供

トレーニング/テスト・セットにデータを分割する訓練/テスト用のインデックスを提供します。(シャッフルなしデフォルトで)k個の連続折り畳み式のデータセットを分割するには。

 

電車/テスト・セット内のデータを分割するために、列車/テスト用のインデックスを提供します。k個の連続折り目に分割データセット(デフォルトでシャッフルなし)。

 

各検証のように折り畳まれ、K-1は、トレーニングセットを形成するように折り畳まれたまま。

 n_splits  :  int型、デフォルト= 3

数倍。あなたは、少なくとも2でなければなりません。

バージョン0.20での変更点:n_splits 3〜5デフォルトv0.22の変更。

シャッフル :  ブール値、オプション

データをバッチに分割する前にシャッフルされているかどうか。

random_state  :  int型、または全くRandomStateたとえば、オプション、デフォルト=なし

int型ならば、random_stateシード乱数ジェネレータが使用され、それ以外の場合はfalse。RandomStateインスタンス場合は、乱数ジェネレータをrandom_state; なし、乱数生成器はRandomStateインスタンスを使用しない場合np.randomときにshuffle真==を使用。

 

クラス sklearn.model_selection.StratifiedKFold(n_splitsは= '警告'、シャッフル= Falseを、random_state =なし)

 

 

 

 

まず、彼らはクロスバリデーション機能K.に適用されます

違いはKFold機能だけのために、あります

 

おすすめ

転載: www.cnblogs.com/gengyi/p/11628730.html