Встречается на собеседованиях • сегодня

Как оптимизируется случайный лес

Случайный лес можно оптимизировать несколькими способами:

  1. Количество деревьев (n_estimators) – больше деревьев улучшают качество, но увеличивают время обучения. Обычно 100-500 деревьев достаточно.

  2. Глубина деревьев (max_depth) – ограничение глубины предотвращает переобучение. Можно использовать None (без ограничений) или подбирать через кросс-валидацию.

  1. Минимальное число образцов для разделения (min_samples_split) – увеличение этого параметра уменьшает переобучение (по умолчанию 2).

  2. Минимальное число образцов в листе (min_samples_leaf) – аналогично, но для листьев (по умолчанию 1).

  3. Число признаков для разделения (max_features) – обычно sqrt(n_features) для классификации и n_features для регрессии.

Пример подбора параметров с GridSearchCV:

python
from sklearn.ensemble import RandomForestClassifier
from sklearn.model_selection import GridSearchCV

param_grid = {
    'n_estimators': [100, 200],
    'max_depth': [None, 10, 20],
    'min_samples_split': [2, 5]
}

rf = RandomForestClassifier()
grid_search = GridSearchCV(rf, param_grid, cv=5)
grid_search.fit(X_train, y_train)
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы