ModelScope开发者社区 > 正文

【机器学习技巧】机器学习模型的两种存储方式:pickle与joblib模块

简介: 【机器学习技巧】机器学习模型的两种存储方式:pickle与joblib模块
+关注继续查看

本文主要介绍了两种机器学习模型的存储与读取方式,方便我们将训练好的模型直接存储起来,方便下次直接使用该模型进行预测。


1. 构建待存储的示例模型–鸢尾花数据集


# 导入sklearn的官方数据库
from sklearn import datasets
from sklearn.model_selection import train_test_split
from sklearn.model_selection import cross_val_score
# 导入相关的算法
from sklearn.neighbors import KNeighborsClassifier

iris = datasets.load_iris()
# 提取出特征数据
data = iris.data
# 提取标签数据
target = iris.target
# 切分数据:将数据分为训练集和测试集,使用train_test_split方法

# rain_test_split方法首先会把data和target随机打乱,提取出给出比例的数据(包括特征和标签)作为测试数据,下面使用的10%数据作为测试集
x_train, x_test, y_train, y_test = train_test_split(data,target,test_size=0.1)

# 创建模型
knn = KNeighborsClassifier(n_neighbors=5)

# 训练
knn.fit(x_train,y_train)


# 求的值n次交叉验证后的准确率均值
cross_val_score(knn,x_test,y_test,cv=3).mean()  


0.8111111111111112


2. 模型存储


2.1 使用sklearn中的joblib存储


sklearn中提供了高效的模型持久化模块joblib,将模型保存至硬盘


from sklearn.externals import joblib
# 使用joblib.dump保存模型
joblib.dump(knn, 'knn.model')

# 使用joblib.load读取模型
knn_1 = joblib.load('knn.model')

# 使用模型进行预测
y_pre = knn_1.predict(x_test)
print(y_pre)
[1 1 2 1 2 0 1 2 1 2 2 1 2 1 0]


2.2 使用python自带的pickle模块存储模型


import pickle
# pickle.dump保存模型
with open('./knn.pickle', 'wb') as f:
    pickle.dump(knn, f)
    

# pickle.load读取模型
with open('./knn.pickle', 'rb') as f:
    knn2 = pickle.load(f)

    # 使用模型进行预测
y_pre2 = knn2.predict(x_test)
print(y_pre2)


[1 1 2 1 2 0 1 2 1 2 2 1 2 1 0]

版权声明:本文内容由便宜云服务器实名注册用户自发贡献,版权归原作者所有,便宜云服务器开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《便宜云服务器开发者社区用户服务协议》和《便宜云服务器开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
一种用于入侵检测的自适应集成机器学习模型
一种用于入侵检测的自适应集成机器学习模型
19 0
横向对比 11 种算法,多伦多大学推出机器学习模型,加速长效注射剂新药研发
横向对比 11 种算法,多伦多大学推出机器学习模型,加速长效注射剂新药研发
8 0
机器学习模型的生命周期
机器学习模型的生命周期
11 0
瞎聊机器学习——从词袋模型到word2vec
瞎聊机器学习——从词袋模型到word2vec
9 0
Gradio机器学习模型快速部署工具【接口状态】翻译5
Gradio机器学习模型快速部署工具【接口状态】翻译5
18 0
Gradio机器学习模型快速部署工具【应用分享】翻译4
Gradio机器学习模型快速部署工具【应用分享】翻译4
19 0
Gradio机器学习模型快速部署工具【应用分享】翻译3
Gradio机器学习模型快速部署工具【应用分享】翻译3
16 0
Gradio机器学习模型快速部署工具【quickstart】翻译2
Gradio机器学习模型快速部署工具【quickstart】翻译2
22 0
Gradio机器学习模型快速部署工具【quickstart】翻译1
Gradio机器学习模型快速部署工具【quickstart】翻译1
20 0
【机器学习】分类模型评价指标(混淆矩阵、ROC)(已修改,放心看)
【机器学习】分类模型评价指标(混淆矩阵、ROC)(已修改,放心看)
26 0
ModelScope旨在打造下一代开源的模型即服务共享平台,为泛AI开发者提供灵活、易用、低成本的一站式模型服务产品,让模型应用更简单!
+关注
阿旭算法与机器学习
专注于python、算法、机器学习及深度学习等相关技术分享,欢迎关注,共同学习交流。
文章
问答
视频
相关电子书
更多
PAI分布式机器学习平台
立即下载
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
相关实验场景
更多


http://www.vxiaotou.com