Передача параметров в метод соответствия базовых классификаторов через StackingCVClassifier в пакете mlxtend
Я использую StackingCVClassifier
(от mlxtend
пакет) в Python, и один из моих классификаторов является XGBoostClassifier
экземпляр, и я пытаюсь передать параметр (early_stopping_rounds или просто многословный) в его метод fit через метод fit из StackingCVClassifier
объект. Метод подгонки, кажется, не поддерживает это. Метод 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})
1 ответ
Разработчик mlxtend
указано (ссылка ниже), что по состоянию на сентябрь 2018 года это пока невозможно.