XGBoost допускает раннюю остановку на основе метрики оценки, которая может быть полезна для определения наилучшего числа циклов n_estimators.Мой вопрос заключается в том, что если я использую раннюю остановку для определения хороших n_estimators, а затем захочу переучиться на полном наборе данных, включая как набор поездов, так и раздел проверки, поддерживающий метрику оценки, было бы полезно увеличить n_estimators от числаопределяется на меньшем наборе данных?
Поскольку последующее обучение на полном наборе без проверочного набора затрудняет проведение экспериментов.(Я имею в виду, я полагаю, я мог бы отделить набор проверки от набора проверки, но вы знаете, краудсорсинг, это то, где он находится.)
#scenario one, used to derive a good n_estimators
fit_params = {'early_stopping_rounds':55,
'eval_metric' : 'auc',
'eval_set' : [[val_trainset, val_labelset]],
'verbose' : True
}
xgb_model = xgb.XGBClassifier(n_estimators = 9999)
xgb_model.fit(trainset, labelset, **fit_params)
#this derives a good n_estimators
derived_value = # derived from fit
#scenario two, now retrain on the full data set
fit_params = {'verbose' : True
}
xgb_model = xgb.XGBClassifier(n_estimators = derived_value)
xgb_model.fit(full_trainset, full_labelset, **fit_params)
#Should the derived n_estimators be increased now that
#we are fitting using a larger data set?