Random Forest Classifier

Klasyfikator losowych lasów (ang. Random Forest Classifier) to metoda uczenia maszynowego stosowana do klasyfikacji danych. Polega ona na wytrenowaniu wielu drzew decyzyjnych na losowych podzbiorach danych i etykiet, a następnie uśrednieniu ich prognoz.

Klasyfikator losowych lasów jest popularnym narzędziem ze względu na swoją prostotę implementacji, dobrą skalowalność w przypadku dużych zbiorów danych oraz zdolność do zapobiegania przetrenowywaniu. Jego główną zaletą jest to, że zapewnia dobre rezultaty dla większości problemów klasyfikacyjnych bez konieczności dostosowywania hiperparametrów.

Aby skonstruować klasyfikator losowych lasów, należy wybrać liczbę drzew, które mają zostać wytrenowane oraz liczbę cech, które mają być brane pod uwagę podczas podziału węzła. Im więcej drzew zostanie wytrenowanych, tym dokładniejsze będą prognozy, ale też wolniej będzie działać klasyfikator. Z kolei im więcej cech będzie brane pod uwagę, tym bardziej skomplikowane będą drzewa, co może prowadzić do przetrenowywania.

from sklearn.ensemble import RandomForestClassifier

# Przygotowanie danych - załóżmy, że mamy zbiór treningowy zawierający cechy oraz etykiety
X = [[1, 2], [2, 4], [3, 6], [4, 8]]  # cechy
y = [0, 0, 1, 1]  # etykiety

# Utworzenie klasyfikatora losowych lasów z 10 drzewami
clf = RandomForestClassifier(n_estimators=10)

# Trenowanie klasyfikatora na danych treningowych
clf.fit(X, y)

# Przewidywanie etykiet dla nowych danych
predictions = clf.predict([[5, 10], [1, 3]])

# Wynik: predictions zawiera [1, 0] - czyli przewiduje, że pierwszy obiekt należy do klasy 1, a drugi do klasy 0

W tym przykładzie został utworzony klasyfikator losowych lasów z 10 drzewami i wytrenowany na danych treningowych (X i y).