web-dev-qa-db-ja.com

トレーニングデータとテストデータを分割する前後にデータを正規化しますか?

データをトレインセットとテストセットに分離したいのですが、分割の前後にデータに正規化を適用する必要がありますか?予測モデルの構築中に違いはありますか?前もって感謝します。

15
hemant

最初に、データをトレーニングセットとテストセットに分割する必要があります(検証セットも必要になる場合があります)。

テストデータポイントが実際のデータを表していることを忘れないでください。説明変数(または予測変数)の特徴の正規化(またはデータの標準化)は、平均値を減算し、分散で除算することにより、データを中央揃えおよび正規化するために使用される手法です。データセット全体の平均と分散を取得する場合、将来の情報をトレーニング説明変数に導入します(つまり、平均と分散)。

したがって、トレーニングデータに対して機能の正規化を実行する必要があります。次に、テストインスタンスでも正規化を実行しますが、今回はトレーニングの説明変数の平均と分散を使用します。このようにして、モデルが新しい未表示のデータポイントにうまく一般化できるかどうかをテストおよび評価できます。

37

fitを使用してからlearnを変換できます

normalizer = preprocessing.Normalizer().fit(xtrain)

変換する

xtrainnorm = normalizer.transform(xtrain) 
xtestnorm = normalizer.transform(Xtest) 
1
user3452134