我正在创建一种机器学习算法并希望导出它。假设我正在使用Scikit学习库和随机森林算法。
modelC=RandomForestClassifier(n_estimators=30)
m=modelC.fit(trainvec,yvec)
modelc.model
如何导出它或有任何功能?
如果您按照模型持久性的Scikit文档
In [1]: from sklearn.ensemble import RandomForestClassifier
In [2]: from sklearn import datasets
In [3]: from sklearn.externals import joblib
In [4]: iris = datasets.load_iris()
In [5]: X, y = iris.data, iris.target
In [6]: m = RandomForestClassifier(2).fit(X, y)
In [7]: m
Out[7]:
RandomForestClassifier(bootstrap=True, class_weight=None, criterion='gini',
max_depth=None, max_features='auto', max_leaf_nodes=None,
min_samples_leaf=1, min_samples_split=2,
min_weight_fraction_leaf=0.0, n_estimators=2, n_jobs=1,
oob_score=False, random_state=None, verbose=0,
warm_start=False)
In [8]: joblib.dump(m, "filename.cls")
实际上,您可以使用pickle.dump
而不是joblib
,但是joblib
在压缩分类器内的numpy
数组方面做得很好。