Middle+
19
Расскажите про Random Forest: механика обучения, как формируются деревья, как делается предсказание для задачи классификации?
Компании, где спрашивали
Ответ от нейросети
sobes.tech AI
Random Forest — это ансамблевый метод машинного обучения, основанный на построении множества решающих деревьев и объединении их результатов для повышения точности и устойчивости модели.
Механика обучения:
- Для каждого дерева из обучающей выборки создаётся бутстрэп-выборка (случайная выборка с возвращением).
- При построении каждого дерева на каждом узле выбирается случайный поднабор признаков (фич), из которых выбирается лучший сплит.
- Дерево растёт до максимальной глубины или пока не достигнет критерия остановки.
Формирование деревьев:
- Каждое дерево обучается на своей бутстрэп-выборке.
- Случайный выбор признаков на каждом сплите снижает корреляцию между деревьями, что улучшает обобщающую способность.
Предсказание для классификации:
- Для нового объекта каждый дерево даёт свой прогноз (класс).
- Итоговый класс определяется голосованием большинства деревьев (majority voting).
Пример на Python (sklearn):
from sklearn.ensemble import RandomForestClassifier
rf = RandomForestClassifier(n_estimators=100, max_features='sqrt')
rf.fit(X_train, y_train)
predictions = rf.predict(X_test)