Junior — Middle
Opowiedz o RandomForest: jak jest zbudowany, czym różni się od zwykłego baggingu drzew.
sobes.tech AI
Odpowiedź od AI
RandomForest to metoda uczenia maszynowego zespołowego, która buduje wiele drzew decyzyjnych i łączy ich prognozy w celu poprawy jakości i stabilności modelu.
Główne cechy RandomForest:
- Każde drzewo jest trenowane na losowej próbce danych źródłowych z powrotem (bagging).
- Podczas budowy każdego drzewa, na każdym węźle wybierany jest losowy podzbiór cech, spośród których wybierana jest najlepsza do podziału.
Różnice w stosunku do klasycznego baggingu drzew:
- W klasycznym baggingu drzewa są budowane na losowych podpróbkach danych, ale przy wyborze cechy do podziału używa się pełnego zestawu cech.
- W RandomForest wprowadza się dodatkową losowość przy wyborze cech na każdym węźle, co zmniejsza korelację między drzewami i zwiększa zdolność generalizacji.
Przykład w Pythonie z użyciem sklearn:
from sklearn.ensemble import RandomForestClassifier
model = RandomForestClassifier(n_estimators=100, max_features='sqrt')
model.fit(X_train, y_train)
predictions = model.predict(X_test)
Tutaj parametr max_features='sqrt' ustawia losowy podzbiór cech dla każdego podziału.