我训练了一个LGBMClassifier
模型,并将其保存到一个文件中,因此:
clf = lgb.LGBMClassifier( ... )
clf.fit(X_train, y_train, **fit_params)
clf.booster_.save_model("model1.txt")
现在我想要的是重新使用保存的模型进行概率预测。但如果我尝试:
## new predictions:
clf_fs = lgb.Booster(model_file='model1.txt')
y_pred2 = clf_fs.predict_proba(X_data2, num_iteration=clf_fs.best_iteration_)[:, 1]
我得到这个错误:
AttributeError: 'Booster' object has no attribute 'predict_proba'
我知道cls_fs
是类Booster
的对象,而不是类LGBMClassifier
的对象,并且我可以使用clf_fs.predict()
,但不能使用predict_proba
。那么,我如何从保存的模型文件中获取LGBMClassifier
对象并生成概率预测呢?
在Github的#1217期中,LightGBM核心开发人员之一柯国林表示:
booster.predict()
实际上将返回概率
所以您不应该需要predict_proba
。