【Python学习系列二十】scikit-learn库模型持久化
生活随笔
收集整理的這篇文章主要介紹了
【Python学习系列二十】scikit-learn库模型持久化
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
場景:需要將模型保存到內存,或磁盤。
代碼:
# -*- coding: utf-8 -*-import pandas as pd import pickle as pkl from sklearn.externals import joblib from sklearn import svm #加載數據 label_ds=pd.read_csv(r"D:\\tmp\\sam_11.csv",sep=',',encoding='utf8',\names=['u_spu_num','u_brand_num','u_cat_num','u_cat_spu','u_brand_spu','u_spu_date','action_type']) print "訓練集,有", label_ds.shape[0], "行", label_ds.shape[1], "列" #模型訓練 label_X = label_ds[['u_spu_num','u_brand_num','u_cat_num','u_cat_spu','u_brand_spu','u_spu_date']] label_y = label_ds['action_type']#類別 model = svm.SVC() model.fit(label_X, label_y) print model #模型導出導入磁盤 joblib.dump(model, 'D:\\tmp\\model.pkl') model2 = joblib.load('D:\\tmp\\model.pkl') print model2 #模型保存 s = pkl.dumps(model) model3 = pkl.loads(s) print model3數據集: 0,0,6,6,0,0,1 0,0,2,2,0,0,1 0,0,3,3,0,0,1 0,0,2,2,0,0,1 0,0,0,0,0,0,1 0,0,1,1,0,0,0 0,0,9,9,0,0,0 0,0,1,1,0,0,0 0,0,3,3,0,0,0執行結果:
訓練集,有 9 行 7 列 SVC(C=1.0, cache_size=200, class_weight=None, coef0=0.0,decision_function_shape=None, degree=3, gamma='auto', kernel='rbf',max_iter=-1, probability=False, random_state=None, shrinking=True,tol=0.001, verbose=False) SVC(C=1.0, cache_size=200, class_weight=None, coef0=0.0,decision_function_shape=None, degree=3, gamma='auto', kernel='rbf',max_iter=-1, probability=False, random_state=None, shrinking=True,tol=0.001, verbose=False) SVC(C=1.0, cache_size=200, class_weight=None, coef0=0.0,decision_function_shape=None, degree=3, gamma='auto', kernel='rbf',max_iter=-1, probability=False, random_state=None, shrinking=True,tol=0.001, verbose=False)
2)用joblib(joblib.dump&joblib.load)保存到磁盤,文件形式;
總結
以上是生活随笔為你收集整理的【Python学习系列二十】scikit-learn库模型持久化的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【Python学习系列十九】基于scik
- 下一篇: 【正一专栏】梅西大婚——一辈子守候你都是