在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函数加载模型,并使用加载的模型进行预测和评估。