返回介绍

保存模型

发布于 2025-05-02 13:36:27 字数 1654 浏览 0 评论 0 收藏

作者: Bhan 编辑: Morvan

总算到了最后一次的课程了,我们训练好了一个 Model 以后总需要保存和再次预测,所以保存和读取我们的 sklearn model 也是同样重要的一步。这次主要介绍两种保存 Model 的模块 picklejoblib

本节内容包括:

方法 1 - pickle

首先简单建立与训练一个 SVC Model。

from sklearn import svm
from sklearn import datasets

clf = svm.SVC()
iris = datasets.load_iris()
X, y = iris.data, iris.target
clf.fit(X,y)

使用 pickle保存读取 训练好的 Model。 (若忘记什么是 pickle ,可以回顾 13.8 pickle 保存数据 视频。)

import pickle #pickle 模块

#保存 Model(注:save 文件夹要预先建立,否则会报错)
with open('save/clf.pickle', 'wb') as f:
    pickle.dump(clf, f)

#读取 Model
with open('save/clf.pickle', 'rb') as f:
    clf2 = pickle.load(f)
    #测试读取后的 Model
    print(clf2.predict(X[0:1]))

# [0]

方法 2 - joblib

joblibsklearn 的外部模块。

from sklearn.externals import joblib #jbolib 模块

#保存 Model(注:save 文件夹要预先建立,否则会报错)
joblib.dump(clf, 'save/clf.pkl')

#读取 Model
clf3 = joblib.load('save/clf.pkl')

#测试读取后的 Model
print(clf3.predict(X[0:1]))

# [0]

最后可以知道 joblib 在使用上比较容易,读取速度也相对 pickle 快。

如果你觉得这篇文章或视频对你的学习很有帮助,请你也分享它,让它能再次帮助到更多的需要学习的人。

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。