#python #h2o
#питон #h2o
Вопрос:
Я создаю модель случайного леса, используя поиск по сетке с помощью H2O Python API. Я разделяю данные на train и validation и использую k-кратную перекрестную проверку, чтобы выбрать лучшую модель при поиске по сетке.
Я могу получить модель с лучшим MSE
результатом из обучающего набора, но я хочу получить модель с самым высоким AUC
результатом из набора данных проверки.
Я мог бы закодировать все на Python, но мне было интересно, существует ли подход H2O для решения этой проблемы. Есть какие-нибудь предложения о том, как я мог бы это сделать?
Ответ №1:
Если g
это ваш объект grid, то:
g.sort_by('auc', False);
предоставит вам модели, упорядоченные по AUC. 2-й параметр False означает, что наибольший AUC будет первым. Он возвращает H2OTwoDimTable
объект, так что вы можете выбрать первую модель (лучшую модель по AUC) таким образом.
Я считаю, что это должна быть сортировка на основе оценок в наборе проверки, а не в обучающем наборе. Однако вы можете указать это явно с помощью:
g.sort_by('auc(valid=True)', False);
Комментарии:
1. Это больше не работает в H2O-3. Новая версия: g.get_grid(sort_by=’auc’, уменьшение = True)