首页 > 代码库 > python--pickle序列化(持久化)
python--pickle序列化(持久化)
机器学习过程分为训练过程和预测过程。训练过程得到一个模型,预测过程得到预测结果。为了节省时间,最好能够在每次执行预测时,调用已经构造好的模型,而不是每次预测前都需要重新训练一次模型。
以“决策树”为例,最好能够在每次执行分类时调用已经构造好的决策树。可以使用Python中的pickle模块序列化对象。序列化对象可以在磁盘上保存对象pickle.dump(),并在需要的时候读取出来pickle.load()。任何对象都可以执行序列化操作,字典对象也不例外!!!
代码:
1 import pickle 2 #将决策树模型inputTree(字典对象)存储在文件filename中 3 def storeTree(inputTree,filename): 4 fw=open(filename,‘w‘) 5 pickle.dump(inputTree,fw) 6 fw.close() 7 #读取文件filename中的决策树 8 def grabTree(filename): 9 fr=open(filename) 10 return pickle.load(fr)
打开Dos客户端测试:
In [11]:用字典存储一颗决策树,myTree={‘no surfacing‘:{0:‘no‘,1:{‘flippers‘:{0:‘no‘,1:‘yes‘}}}}
In [12]: 得到文件"classifierStorage.txt",打开文件看看序列化后的样子:
In [13]: 读取“classifierStorage.txt”中的决策树
Out [13]: 输出“myTree”
python--pickle序列化(持久化)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。