• 模型持久化


    __author__ = 'Oscar_Yang'
    #-*- coding= utf-8 -*-
    from sklearn import datasets
    iris = datasets.load_iris()
    from sklearn.naive_bayes import GaussianNB
    from sklearn.externals import joblib
    import pickle
    from matplotlib import pyplot as plt
    gnb = GaussianNB()
    y_pred = gnb.fit(iris.data, iris.target).predict(iris.data)
    print("Number of mislabeled points out of a total {} points : {}".format(iris.data.shape[0],(iris.target != y_pred).sum()))
    
    #python提供两种模型持久化的方法,第一种是joblib,一种是pickle:如下:
    #第一种:比如gnb是我们想要保存的模型
    joblib.dump(gnb, 'GaussianNB.model') #模型保存到本地
    lr = joblib.load('GauaaianNB.model') #重新加载模型
    """
    重新加载模型,  需要注意的是,这里执行joblib.dump()之后,有可能还会生成若干个以rf.model_XX.npy为命名格式的文件,
    这有可能是用于保存模型中的系数等的二进制文件。
    其具体生成的文件的个数还会随调用到的分类器的不同,以及分类器中迭代次数的参数的不同而变,有时候会生成几个,有时候会生成几百个。
    """
    
    #或者第二种方式
    save = pickle.dumps(gnb) #模保存模型
    model = pickle.loads(save)#重新导入模型
  • 相关阅读:
    python之函数对象、函数嵌套、名称空间与作用域、装饰器
    python之函数
    python基础-小练习
    python基础之文件操作
    python基础之字符编码
    web开发-Django博客系统
    HotSpot的算法实现
    垃圾回收机制(GC)
    Java注意点...
    JVM内存区域及对象
  • 原文地址:https://www.cnblogs.com/coskaka/p/6066829.html
Copyright © 2020-2023  润新知