4
На самом деле есть много вопросов о сохранении, но я много пробовал, используя pickle
или joblib.dumps
. но когда я использую его для сохранения своего случайного леса, я получил это:Как сохранить случайный лес в scikit-learn?
ValueError: ("Buffer dtype mismatch, expected 'SIZE_t' but got 'long'", <type 'sklearn.tree._tree.ClassificationCriterion'>, (1, array([10])))
Может ли кто-нибудь сказать мне, почему?
некоторый код для обзора
forest = RandomForestClassifier()
forest.fit(data[:n_samples], target[:n_samples ])
import cPickle
with open('rf.pkl', 'wb') as f:
cPickle.dump(forest, f)
with open('rf.pkl', 'rb') as f:
forest = cPickle.load(f)
или
from sklearn.externals import joblib
joblib.dump(forest,'rf.pkl')
from sklearn.externals import joblib
forest = joblib.load('rf.pkl')
отправьте пример код. – elyase
Оба решения дают такую же ошибку? – xgdgsc
Вы используете один и тот же 32-битный питон для сохранения/загрузки? http://stackoverflow.com/questions/21033038/scikits-learn-randomforrest-trained-on-64bit-python-wont-open-on-32bit-python – xgdgsc