我在 Python 中使用StackingCVClassifier
(来自mlxtend
包),我的一个分类器是一个XGBoostClassifier
实例,我试图通过StackingCVClassifier
对象的 fit 方法将参数(early_stopping_rounds 或简单的详细)传递给它的 fit 方法。fit 方法似乎不支持这一点。fit_transform 方法有一个 fit_params 参数。但是当我传递我的参数(例如**{'XGB_clf__early_stopping_rounds': 20}
)时,它会抛出以下错误:
fit() 得到一个意外的关键字参数 'XGB_clf__early_stopping_rounds。
这不支持吗?还是我错过了什么?
这是我正在尝试做的草图:
XGB_clf = XGBClassifier()
other_clf = LogisticRegression()
stacked_clf = StackingCVClassifier(classifiers = [XGB_clf, other_clf], meta_classifier = LogisticRegression(), cv=2)
# trying to pass early_stopping_rounds to XGB_clf.fit
stacked_clf.fit(X_train, y_train, **{XGB_clf__early_stopping_rounds = 50})