如何在Sklearn中保存StandardScaler()模型?我需要让一个模型运行起来,不想反复加载训练数据,让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)

推荐答案

您可以使用joblib dump函数来保存标准定标器模型.这里有一个完整的例子供参考.

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模型.

要在以后阅读模型,请使用load

sc=load('std_scaler.bin')

注:不推荐使用sklearn.externals.joblib.安装并使用pure joblib

Python-3.x相关问答推荐

是什么原因导致Pandas=2.1.4和Pandas=1.4.2之间Pandas DataFrame中从Float64到int32的连续列转换方式不同

Django 3.2/Django-cms 3.11:查找错误:型号帐户.客户用户未注册

使用 Fetch 提交表单到 Django 视图

合并两个数据帧并对某些总和进行求和

如何将值映射到具有上限和下限的新列

将值从函数传递到标签

它们是否同样存储在python3的内存中?

在 Python 中实现 COM 接口

Python:如何在Pandas 的 .agg 函数中使用 value_counts()?

Pandas matplotlib:条形图占总数的百分比

如何使用 django rest 框架在 self forienkey 中删除多达 n 种类型的数据?

如何将元组列表拆分为两个单独的列表?

导入在不同目录中定义的函数

在判断列表变量时如何判断特定列的值并分配加权整数值

python中是否有大于但小于函数?

为什么 Django South 1.0 使用 iteritems()?

sys.stdin.readline() 和 input():读取输入行时哪个更快,为什么?

python 内置的 __exit__ 参数类型是什么?

在python中,如果一个函数没有return语句,它会返回什么?

如何更改 tkinter 文本小部件中某些单词的 colored颜色 ?