機械学習に関する文献は、SVM ( scikit-learn でのデータの前処理) のデータの正規化を強く示唆しています。前に回答したように、同じStandardScalarをトレーニング データとテスト データの両方に適用する必要があります。
- 手動で平均を減算して標準偏差で割るよりも、StandardScalarを使用する利点は何ですか(パイプラインで使用できること以外に)?
- scikit-learn の LinearSVC は、複数のクラスに対してone-vs-the-restに依存します (larsmans が述べたように、SVC はマルチクラスに対して one-vs-one に依存します)。では、正規化を最初の推定量としてパイプラインでトレーニングした複数のクラスがあるとどうなるでしょうか? また、各クラスの平均および標準偏差を計算し、分類中に使用しますか?
- より具体的には、次の分類器は、パイプラインの svm ステージの前に、各クラスに異なる平均偏差と標準偏差を適用しますか?
estimators = [('normalize', StandardScaler()), ('svm', SVC(class_weight = 'auto'))]
clf = Pipeline(estimators)
# Training
clf.fit(X_train, y)
# Classification
clf.predict(X_test)