Las losowy (ang. random forest) jest pojęciem, które zostało zaproponowane przez Leo Breimana. Stanowi jeden z najciekawszych oraz najbardziej użytecznych algorytmów uczenia maszynowego. Jest niezwykle popularny w badaniach genetycznych, przewidywaniu aktywności biologicznej cząsteczek czy analizie dokumentów tekstowych – po prostu tam, gdzie mamy do czynienia z dużą liczbą cech.
Jak uzyskać drzewa składające się na las losowy?
- Pierwszym krokiem jest losowanie ze zwracaniem podzbioru danych (przypadków) z dostępnej próby uczącej.
- Następnie, powinniśmy stworzyć drzewo dla wylosowanego wcześniej podzbioru. W tym punkcie trzeba sprawdzić, czy dzielony zbiór jest jednorodny oraz czy nie jest zbyt mały, by go podzielić. Należy wylosować pewną liczbę zmiennych objaśniających oraz znaleźć najlepszy podział z wykorzystaniem wylosowanego podzbioru zmiennych. Zbiór ten później dzielimy na dwie części.
- Jeżeli liczba drzew osiągnie zadane maksimum lub błąd w próbie testowej przestanie maleć, należy zakończyć uczenie. W przeciwnym przypadku, należy wrócić do pierwszego kroku. W ogólności: drzewa "głosują" nad rozwiązaniem, wybór następuje zwykłą większością głosów.
Najważniejszymi zaletami lasu losowego są:
- Odporność na rozmaite problemy związane z danymi. Mamy tutaj na myśli brak danych, zmienne objaśniające bez znaczenia, dużą liczbę zmiennych objaśniających czy wartości odstające.
- Możliwość dokładniejszego odtworzenia złożonych zależności niż byłyby to w stanie zrobić drzewa decyzyjne. Warto tutaj wspomnieć, że siła predykcyjna lasu losowego jest zazwyczaj nieco mniejsza, ale wciąż porównywalna z sieciami neuronowymi.
- Odporność na przeuczenie.
- Stabilność.
- Możliwość interakcji pomiędzy zmiennymi.
- Możliwość określenia różnych kosztów błędnych klasyfikacji.
Lasy losowe są niejako uogólnieniem idei drzew decyzyjnych oraz zaliczane są do tzw. procedur agregujących. Ich działanie polega na klasyfikacji za pomocą grupy drzew decyzyjnych a końcowe decyzje podejmowane są w wyniku głosowania większościowego nad klasami wskazanymi przez poszczególne drzewa decyzyjne. Minusem lasów losowych może być fakt, że czasami się przeuczają (mamy wówczas do czynienia z danymi zaszumionymi).
Las losowy Wasze opinie
Las losowy jest gigachadem, rozpoznaje pogodę w mojej implementacji z samych zdjęć, bez dodatkowych parametrów jak wilgotność, czy dane z czujnika opadów. 87,5% dokladnosci na dość dużej liczbie zdjęć wejściowych (1000zdjec)