机器学习入门研究(十五)-模型保存与加载
程序员文章站
2022-03-06 21:21:22
...
目录
之前我们在使用模型进行预测的时候,都是需要重新训练,那经过一段时间模型训练的准确率已经可以达到一定的标准,那么我们可以通过保存模型和加载模型的方式来完成预测,不需要每次都去训练模型。
1.模型的保存和加载
在sklearn中提供了API来实现该功能。
(1)模型保存
#4)直接将模型保存
sklearn.externals.joblib.dump(value, filename, compress=0, protocol=None, cache_size=None)
其中参数如下表:
字段 | 含义 |
value | 已经训练好的预估器 |
filename | 要保存模型的名字,如果不采用压缩,直接以.pkl结尾,要是使用压缩的话,下面这些扩展名的压缩 (‘.z’, ‘.gz’, ‘.bz2’, ‘.xz’ or ‘.lzma’) 会自动调用压缩方法。 |
compress |
压缩级别。取值可以是整形0到9、bool型、二元元组 或者布尔型或者一个二元元组,可选.表示压缩级别。 0或者False表示不压缩,越高的值表示越高的压缩力度,同时意味着更加慢的读取和写入。通常3是一个比较好的压缩值。 第一个元素必须是与相应压缩方式表示的字符串,:‘zlib’, ‘gzip’, ‘bz2’, ‘lzma’ ‘xz’; 第二个就是一个0到9的整形,表示压缩级别。 |
protocol | 正整数。pickle协议 |
cache_size | 正整数,已废弃 |
(2) 模型加载
#4)直接加载模型即可
sklearn.externals.joblib.load(filename, mmap_mode=None)
字段 | 含义 |
filename | 保存的模型的名字包括路径 |
mmap_mode | None, 'r+', 'r', 'w+', 'c' |
2.实例
在机器学习入门研究(十二)-线性回归提到的可以通过正规方程求解的方式来预测波士顿的房价,当我们把模型训练好了之后,就可以将该模型保存下来了,通过调用API将模型保存在当前目录下,保存完之后,就可以在当前目录下看到生成一个linear.pkl的文件
#4)预估器
estimator = LinearRegression()
estimator.fit(x_train, y_train)
#4)直接将模型保存
joblib.dump(estimator,"linear.pkl")
当在使用该模型的时候,不需要训练,直接加载模型即可。
#4)预估器
#estimator = LinearRegression()
#estimator.fit(x_train, y_train)
#4)直接将模型保存
#joblib.dump(estimator,"linear.pkl")
#4)直接加载模型即可
estimator = joblib.load("linear.pkl")
我们通过该模型训练出来的得出的误差值仍为
正规方程的误差值: 20.627513763095408
上一篇: 机器学习入门(一)——数据理解
下一篇: 利用opencv读取图片,重命名。