SKlearn - 模型保存

sklearn 中 模型保存有两种方式,版本不同,可查看官网,这里只做简单记录

 

方式一:序列化

序列化 的具体用法请自行研究

复制代码
>>> from sklearn import svm
>>> from sklearn import datasets
>>> clf = svm.SVC()
>>> X, y= datasets.load_iris(return_X_y=True)
>>> clf.fit(X, y)
SVC()

>>> import pickle
>>> s = pickle.dumps(clf)
>>> clf2 = pickle.loads(s)
>>> clf2.predict(X[0:1])
array([0])
>>> y[0]
0
 
复制代码

 

方式二:joblib  【推荐】

可以保存 机器学习 模型,也可以保存 数据标准化 等 方法;

复制代码
import numpy as np
from joblib import dump, load
# from sklearn.externals import joblib    # 不同版本的用法
from sklearn.preprocessing import StandardScaler

clf = 333
dump(clf, '3.joblib')       # 保存
clf = load('3.joblib')      # 加载
print(clf)


### 示例:保存 数据标准化 模型
x = np.array([[2, 4, 3]]).T
std = StandardScaler().fit(x)
x_std = std.transform(x)
print(x_std)
# [[-1.22474487]
#  [ 1.22474487]
#  [ 0.        ]]

dump(std, 'std.joblib')
std_store = load('std.joblib')

x2 = np.array([[4, 2, 3]]).T
print(std_store.transform(x2))
# [[ 1.22474487]
#  [-1.22474487]
#  [ 0.        ]]
 
复制代码

 

posted @   技术研究与问题解决  阅读(201)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】
历史上的今天:
2020-02-25 增值税专用发票联次
点击右上角即可分享
微信分享提示