回读保存的 LGBMClassifier 模型

数据挖掘 机器学习 lightgbm
2022-02-18 08:08:19

我训练了一个 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 对象?

1个回答

改为使用clf_fs.predict

参考链接