Sobes.tech
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.