网站首页 > 技术文章 正文
一篇文章写清楚一个问题,关注我,自学python!
今天用一个实例给大家写写在机器学习中如何将训练好的模型储存起来方便下次调用。
模型储存的必要性
当我们训练好一个机器学习模型后,如果下次还想用这个模型,我们就需要把这个模型保存下来,尤其是在大数据中训练模型很耗时间的情况下,一定要保存模型,然后下次直接导入就好了,不然每次都跑一遍,训练时间短还好说,要是一次跑好几天的那种模型,不保存就会很悲催。
今天给大家介绍两种保存机器学习模型的方法:
- 一种就是使用python自带的pickle
- 另一种使用sklearn中的模块joblib
pickle储存模型实际操练
首先我们看pickle怎么用,要储存的模型还是我上一篇文章训练好的多元线性回归模型,见python机器学习:多元线性回归模型实战,现在我们将模型储存起来,代码如下
import pickle
with open('reg_pickle','wb') as f:
pickle.dump(reg,f)
导入pickle后,用写入模式打开一个reg_pickle文件,然后将我们的模型reg存入到f中。
运行代码就可以看到我们的工作目录中出现了一个新的文件,这个新文件就是我们储存的模型
pickle调用模型
调用模型代码如下:
with open('reg_pickle','rb') as f:
mp = pickle.load(f)
用只读模式打开我们刚刚储存的reg_pickle文件,然后用.load方法就可以载入模型再次使用啦
joblib储存模型
现在来看joblib的用法,要储存的模型还是我上一篇文章训练好的多元线性回归模型,见python机器学习:多元线性回归模型实战,现在我们将模型储存起来,代码如下:
from sklearn.externals import joblib
joblib.dump(reg, 'reg_joblib')
首先载入joblib库,然后直接用.dump方法就可以实现对模型的储存,比第一种方法要简单得多。
运行代码就可以看见工作目录中出现了reg_joblib文件:
joblib调用模型
调用模型很简单,只需要用.load方法就行
mj = joblib.load('reg_joblib')
可以看到模型系数和原来模型一模一样。
小结
今天给大家介绍了两种储存机器学习模型的方法,相比pickle,我更加推荐大家使用joblib,因为更简洁,还有根据官方文档介绍joblib效率也更高。感谢大家耐心看完。发表这些东西的主要目的就是督促自己,希望大家关注评论指出不足,一起进步。内容我都会写的很细,用到的数据集也会在原文中给出链接,你只要按照文章中的代码自己也可以做出一样的结果,一个目的就是零基础也能懂,因为自己就是什么基础没有从零学Python的,加油。
(站外链接发不了,请关注后私信回复“数据链接”获取本头条号所有使用数据)
往期内容:
猜你喜欢
- 2024-12-16 人工智能应用的模型训练和评估 人工智能模型的主要技术指标
- 2024-12-16 二年级数学计算专项练习题,检测孩子计算能力
- 2024-12-16 DBnet检测加分类,提取身份证要素
- 2024-12-16 [图像处理] 基于CleanVision库清洗图像数据集
- 2024-12-16 灵智互动|训练数据你不得不知道的问题
- 2024-12-16 机器学习基础:超参数和验证集 超参数是指
- 2024-12-16 中安表单识别AI训练平台的识别准确率是否可以通过测试来验证?
- 2024-12-16 天池伪造图像的篡改检测比赛TOP2/3方案分享
- 2024-12-16 【AI 和机器学习】PyTorch BASIC 基础知识(节2):数据集数据加载器
- 2024-12-16 Python实战——Iris数据集实战 iris数据集分析
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- oraclesql优化 (66)
- 类的加载机制 (75)
- feignclient (62)
- 一致性hash算法 (71)
- dockfile (66)
- 锁机制 (57)
- javaresponse (60)
- 查看hive版本 (59)
- phpworkerman (57)
- spark算子 (58)
- vue双向绑定的原理 (68)
- springbootget请求 (58)
- docker网络三种模式 (67)
- spring控制反转 (71)
- data:image/jpeg (69)
- base64 (69)
- java分页 (64)
- kibanadocker (60)
- qabstracttablemodel (62)
- java生成pdf文件 (69)
- deletelater (62)
- com.aspose.words (58)
- android.mk (62)
- qopengl (73)
- epoch_millis (61)
本文暂时没有评论,来添加一个吧(●'◡'●)