Я хотел бы сделать выбор функции для модели xgboost
с включенной ранней остановкой (с использованием SequentialFeatureSelector
из библиотеки mlxtend
, но открытой для других вариантов)
как early_stopping
является параметром для функции fit()
, а не параметром модели, как я могу сделать выбор функции с перекрестной проверкой, если мне также нужно передать параметр eval_set
.
следующий код не будет работать, потому что мне нужно передать параметр eval_set, но перекрестная проверка будет выбрана SequentialFeatureSelector
на основе индексаторов cv
SequentialFeatureSelector(xgboostmodel,k_features=2,forward=False,floating=False,scoring='balanced_accuracy',cv=cv).fit(X,y,early_stopping_rounds=5,eval_set = [(Xtest, ytest)])
Xtest
и ytest
должны быть cv
наборами, выбранными с помощью cv
Другая проблема заключается в том, что селектор функций будет удалять функции из обучающего набора одну за другой, но eval_set
поддерживается постоянным с полным набором начальных функций.