Newsletter · kurs „ML w 10 dni” · dzień 9 z 10 · ok. 2 min czytania
Dwadzieścia pytań i mądrość tłumu
W skrócie
Dzień 9 kursu mailowego „ML w 10 dni”: drzewa decyzyjne i lasy losowe, czyli model z pytań tak albo nie i dlaczego głosowanie wielu drzew bije jedno.
Pojęcie: Drzewa i lasy ·
1. Haczyk
Grając w dwadzieścia pytań, zgadujesz postać, pytając tylko o rzeczy, na które odpowiedź brzmi „tak” albo „nie”. Drzewo decyzyjne działa tak samo. A gdy każesz zgadywać wielu osobom naraz i weźmiesz najczęstszą odpowiedź, zwykle trafisz częściej niż pojedynczy zgadywacz.
2. Przewidź
Przewidujemy, kto przeżył katastrofę Titanica. Zwykłe drzewo jest wyhodowane do końca. Las losowy ma tylko jedno drzewo, uczone na losowej próbce pasażerów, z 2 losowymi cechami do wyboru przy każdym pytaniu. Które wypadnie lepiej na pasażerach testowych?
Zapamiętaj swoją odpowiedź. Rozwiązanie jest niżej.
3. Wyjaśnienie
Drzewo decyzyjne zadaje pytania o cechy, na przykład o płeć albo klasę biletu, i dzieli pasażerów na coraz mniejsze grupy. Głębokie drzewo potrafi jednak zapamiętać dane: przy głębokości 20 trafia w 98,7% pasażerów treningowych, ale tylko w 73,9% testowych.
Rozwiązanie: zwykłe drzewo. Las z jednym drzewem trafia w 70,9% pasażerów testowych, a zwykłe drzewo w 73,9%. Pojedyncze drzewo z losowaniem jest nawet słabsze. Pomaga dopiero głosowanie wielu drzew: 10 drzew daje 76,1%, a 100 drzew 76,9%.
To jest las losowy: wiele drzew, każde uczone na trochę innych danych i z trochę innymi cechami. Każde myli się inaczej, więc w głosowaniu część pomyłek się znosi.
Sprawdź sam. W lekcji o drzewach przesuwasz suwak głębokości, a w lekcji o zespołach suwak liczby drzew.
- Ćwiczenie w kursie: zespoły modeli
- Ćwiczenie w kursie: drzewa decyzyjne
- Hasło z ilustracją: las losowy
4. Częsty błąd
„Za dużo drzew przeuczy las.” Dodawanie drzew nie działa jak pogłębianie jednego drzewa. Wynik po prostu się stabilizuje: 20 drzew daje 76,9%, 50 drzew 76,5%, a 100 drzew znowu 76,9%. Więcej drzew kosztuje tylko czas.
5. Gdzie ta analogia się psuje
Tłum jest mądry, gdy ludzie zgadują niezależnie. Drzewa w lesie uczą się na tych samych danych, więc ich błędy są do siebie podobne. Losowanie próbek i cech tylko częściowo to rozbija, dlatego zysk z kolejnych drzew szybko maleje (mądrość tłumu).
6. Dlaczego to ważne w pracy
Lasy losowe i gradient boosting to najczęstszy wybór przy danych w tabelach, takich jak dane klientów czy transakcji. Na Kaggle to zwykle pierwszy mocny model. W scikit-learn: RandomForestClassifier.
7. Pytanie powtórkowe
Odpowiedź na pytanie z poprzedniego dnia
Na czułość, czyli na to, jaką część chorych model wykrywa. W lekcji „Ocena klasyfikatora: więcej niż trafność” przy progu 0,5 trafność wynosi 91,8%, a czułość tylko 82,8%.
Nowe pytanie
Wracamy do dnia 7. Błąd treningowy spada z każdym stopniem wielomianu. Dlaczego nie wybierasz stopnia z najmniejszym błędem treningowym?
Odpowiedź w następnym dniu kursu.