Получить количество деревьев, используемых для GBP с ранней остановкой - PullRequest
0 голосов
/ 25 апреля 2018

Я тренировал GBM в H2O, используя раннюю остановку и настройку ntrees=10000. Я хочу получить количество деревьев на самом деле в модели. Но если я позвонил model.params['ntrees'] (где model - лучшая модель из gridsearch), я получу

{'default': 50, 'actual': 10000}

где 10000 - это параметр, который я установил во время тренировки, но не фактическое количество деревьев, попавших в модель.

Если я позвоню model.score_history(), тогда я увижу, что ранняя остановка наступила на 280 деревьях. Но, безусловно, есть более прямой способ узнать фактическое количество деревьев в модели, чем этот хак:

best_model.score_history()['number_of_trees'].max()

1 Ответ

0 голосов
/ 25 апреля 2018

Там в настоящее время нет чистого способа сделать это.Альтернативный метод, который не требует вычисления максимума, но все еще непонятный, это model.summary()['number_of_trees'][0], если вы хотите число, model.summary()['number_of_trees'], если вы хотите число в списке.Или просто model.summary(), если вы просто хотите увидеть номер.

...