我训练了一个 LGBMClassifier 模型并以这种方式保存在一个文件中:
clf = lgb.LGBMClassifier( ... )
clf.fit(X_train, y_train, **fit_params)
clf.booster_.save_model("model1.txt")
##Predictions
y_pred = clf.predict_proba(X_data, num_iteration=clf.best_iteration_)[:, 1]
现在我想要的是使用保存的模型进行另一个预测。但如果我这样做:
## 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(),但是如何从保存的 booster 文件及其所有特定属性中取回 LGBMClassifier 对象?