📜  保存和加载 sklearn 模型 PKL - Python (1)

📅  最后修改于: 2023-12-03 14:49:59.948000             🧑  作者: Mango

保存和加载 sklearn 模型 PKL - Python

在机器学习中,经过训练的模型是非常重要的。可以将模型保存到磁盘并在需要时进行加载非常有用。 在Python中,可以使用Pickle模块将模型序列化并保存到Pickle文件中。 序列化是一种将对象转换为字节流的进程,以便可以存储或传输它。 在本文中,我们将了解如何使用pkl文件保存和加载sklearn模型。

保存模型

要保存机器学习模型,可以将其保存为pickle文件。下面是一个示例,展示如何使用 Python 的 pickle 模块保存 sklearn 的回归模型:

import pickle
from sklearn.linear_model import LinearRegression

# create and fit model
model = LinearRegression()
model.fit(X_train, y_train)

# save the model to disk
filename = 'model.pkl'
pickle.dump(model, open(filename, 'wb'))

这将模型保存到 'model.pkl' 文件中。 参数wb指的是 以二进制读取和写入。

加载模型

要加载该模型并使用它对未知数据进行预测,可以使用 pickle.load() 方法从文件中读取模型。下面是一个例子,展示了如何加载保存的 LinearRegression 模型。假设您拥有一个名为'new_data.csv' 的数据集:

import pandas as pd

# load the model from disk
loaded_model = pickle.load(open(filename, 'rb'))

# load new data
new_data = pd.read_csv('new_data.csv')

# make a prediction 
result = loaded_model.predict(new_data)

在这里, 'new_data' 是csv文件,它包含与原始训练数据相同的列。结果是使用已加载的预测模型预测的新数据集中的结果。

结论

现在您已经知道了如何使用 Python 和 Pickle 序列化机器学习模型,可以在需要时轻松加载并使用这些模型。就是这么简单!