私は、LinearSVCを使用してデータセットに対してk折りたたみ検証を実行したいとしましょう。データの標準化はどのように行いますか?sklearnのcross_val_score()でデータを標準化する方法
私が読んだベストプラクティスは、トレーニングデータに標準化モデルを作成し、このモデルをテストデータに適用することです。 1は、簡単なtrain_test_splitを(使用しています
)我々だけで行うことができますように、これは簡単です:
X_train, X_test, y_train, y_test = train_test_split(X, y, stratify=y)
clf = svm.LinearSVC()
scalar = StandardScaler()
X_train = scalar.fit_transform(X_train)
X_test = scalar.transform(X_test)
clf.fit(X_train, y_train)
predicted = clf.predict(X_test)
はどのように1がk倍クロスバリデーションをしながら、データの標準化については行くだろうか?この問題は、すべてのデータポイントがトレーニング/テスト用であるため、cross_val_score()の前にすべてを標準化することができないという問題が原因です。クロスバリデーションごとに異なる標準化が必要なのではないでしょうか?
文書では、関数内で標準化が行われているとは言いません。私はSOLですか?
EDIT:この投稿は、超便利です:Python - What is exactly sklearn.pipeline.Pipeline?