StandardScaler() モデルを Sklearn に保存するにはどうすればよいですか? モデルを操作可能にする必要があり、StandardScaler が学習して予測を行う新しいデータに適用するために、トレーニング データを再度ロードしたくありません。
from sklearn.preprocessing import StandardScaler
from sklearn.model_selection import train_test_split
#standardizing after splitting
X_train, X_test, y_train, y_test = train_test_split(data, target)
sc = StandardScaler()
X_train_std = sc.fit_transform(X_train)
X_test_std = sc.transform(X_test)
ベストアンサー1
joblibを使うこともできますごみ標準スケーラー モデルを保存する関数。参考までに完全な例を示します。
from sklearn.preprocessing import StandardScaler
from sklearn.model_selection import train_test_split
from sklearn.datasets import load_iris
data, target = load_iris(return_X_y=True)
X_train, X_test, y_train, y_test = train_test_split(data, target)
sc = StandardScaler()
X_train_std = sc.fit_transform(X_train)
保存したい場合はsc さんstandardscallerは以下を使用します
from sklearn.externals.joblib import dump, load
dump(sc, 'std_scaler.bin', compress=True)
これにより、std_scaler.bin ファイルが作成され、sklearn モデルが保存されます。
後でモデルを読むには負荷
sc=load('std_scaler.bin')
注意:は非推奨です。代わりにsklearn.externals.joblib
純粋なものをインストールして使用してください。joblib