在Scikit-learn中,可以使用joblib库来实现模型的持久化。joblib库提供了dump和load函数,可以方便地将模型保存到文件或者从文件中加载模型。
以下是一个示例代码,演示了如何使用joblib库来保存和加载一个训练好的模型:
from sklearn import datasets
from sklearn.ensemble import RandomForestClassifier
from sklearn.model_selection import train_test_split
from sklearn import metrics
from sklearn.externals import joblib
# 加载数据集
iris = datasets.load_iris()
X = iris.data
y = iris.target
# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3)
# 训练模型
model = RandomForestClassifier()
model.fit(X_train, y_train)
# 保存模型
joblib.dump(model, 'random_forest_model.pkl')
# 加载模型
loaded_model = joblib.load('random_forest_model.pkl')
# 使用加载的模型进行预测
y_pred = loaded_model.predict(X_test)
# 评估模型
print("Accuracy:", metrics.accuracy_score(y_test, y_pred))
在上面的代码中,我们首先训练了一个随机森林分类器模型,然后使用joblib库的dump函数将模型保存到文件’random_forest_model.pkl’中。接着使用load函数加载模型,并使用加载的模型进行预测和评估。