2015-07-08 2 views
6

Если вы правильно понимаете, когда вычисляются оценки случайных лесов, обычно применяется самонастраивание, что означает, что дерево (i) построено только с использованием данных из образца (i), выбранного с заменой. Я хочу знать, каков размер образца, который использует sklearn RandomForestRegressor.Размер выборки в случайной лесной регрессии

Единственное, что я вижу, что близко:

bootstrap : boolean, optional (default=True) 
    Whether bootstrap samples are used when building trees. 

Но нет никакого способа, чтобы указать размер или пропорции размера выборки, и не говорите мне о размере выборки по умолчанию.

Я чувствую, что должен быть способ хотя бы знать, каков размер выборки по умолчанию, что мне не хватает?

ответ

3

Размер выборки для бутстрапа - это всегда количество образцов.

Вы ничего не хватает, тот же вопрос был задан на mailing list для RandomForestClassifier:

Бутстраповское размер выборки всегда совпадает с размером входного образца. Если вы это догадаетесь, запрос на обновление, требующий обновления, вероятно, будет весьма приветствуем.

4

Uhh, я согласен с вами, довольно странно, что мы не можем указать размер подвыборки/бутстрапа в RandomForestRegressor algo. Возможно, потенциальным обходным путем является использование BaggingRegressor. http://scikit-learn.org/stable/modules/generated/sklearn.ensemble.BaggingRegressor.html#sklearn.ensemble.BaggingRegressor

RandomForestRegressor это просто частный случай BaggingRegressor (бутстрэпы использовать, чтобы уменьшить дисперсию набора низкого смещения высокой дисперсии оценок). В RandomForestRegressor базовая оценка должна быть DeceisionTree, тогда как в BaggingRegressor у вас есть свобода выбора base_estimator. Что еще более важно, вы можете установить свой индивидуальный размер подвыборки, например, max_samples=0.5 будет рисовать случайные подвыборки с размером, равным половине всего набора тренировок. Кроме того, вы можете выбрать только часть функций, установив max_features и bootstrap_features.

Смежные вопросы