11 · Prawa i prawdy · 3 min czytania · Interaktywne · aktualizacja
Dlaczego głosowanie wielu przeciętnych modeli daje lepszy wynik niż jeden model?
W skrócie
Większość niezależnych głosujących, z których każdy ma rację częściej niż w połowie przypadków, myli się coraz rzadziej. Na tym opierają się zespoły modeli.
Co to jest
Jeśli każdy z n niezależnych głosujących ma rację z prawdopodobieństwem p > 0,5, to prawdopodobieństwo, że większość ma rację, rośnie do 1, gdy n rośnie. Twierdzenie sformułował markiz de Condorcet w 1785 roku; jego statystyczną wersję — trafność średniej z wielu ocen — spopularyzował Francis Galton opisem konkursu na wagę wołu z 1907 roku.
W uczeniu maszynowym „głosującymi” są modele. Bagging, lasy losowe i inne metody zespołowe (ensembles) to inżynieryjne zastosowanie tej idei: wiele słabszych, ale różnorodnych modeli razem przewiduje lepiej niż którykolwiek z nich osobno.
Twierdzenie ma jednak dwa warunki, które łatwo przeoczyć: każdy głos musi być choć trochę lepszy od losowego oraz — przede wszystkim — błędy głosujących muszą być niezależne. Bez tego tłum nie jest mądry, tylko liczny.
Mechanizm — dlaczego tak działa
Liczba trafnych głosów wśród n niezależnych głosujących ma rozkład dwumianowy ze średnią n·p. Gdy p > 0,5, średnia leży powyżej połowy, a względny rozrzut maleje jak 1/√n. Dla dużego n prawie cała masa rozkładu znajduje się po „dobrej” stronie progu większości. To prawo wielkich liczb zastosowane do głosowania.
Ta sama logika działa w drugą stronę: jeśli p < 0,5, większość myli się coraz pewniej. Tłum wzmacnia sygnał, który już jest — także zły.
Kluczowa jest niezależność. Dla regresji widać to we wzorze na wariancję średniej z n modeli o wariancji σ² i wzajemnej korelacji ρ: ρσ² + (1 − ρ)σ²/n. Drugi składnik znika przy dużym n, pierwszy — nigdy. Uśrednianie usuwa tylko tę część błędu, której modele nie dzielą. Dlatego las losowy losuje nie tylko próbki (bagging), lecz także podzbiory cech przy każdym podziale: celowo psuje pojedyncze drzewa, żeby obniżyć korelację między nimi.
Galton zebrał 787 kartek z szacunkami wagi wołu; mediana wyniosła 1207 funtów przy prawdziwej wadze 1198 funtów, czyli pomyłka poniżej 1%. To działa, bo indywidualne błędy w różne strony się znoszą. W tłumie, który słyszał tę samą błędną plotkę, by się nie zniosły.
Na przykładzie
Głosowanie większościowe przy p = 0,6 dla każdego głosującego (rozkład dwumianowy): 1 głosujący — 0,600; 3 — 0,648; 5 — 0,683; 11 — 0,754; 51 — 0,927; 101 — 0,979; 1001 — praktycznie 1 (błąd poniżej jednej dziesięciomiliardowej). Dla p = 0,45 kierunek jest odwrotny: 11 głosujących ma rację w 0,367 przypadków, 101 — w 0,156.
Teraz zależność. Symulowaliśmy 101 głosujących z p = 0,6, z których każdy z prawdopodobieństwem ρ kopiuje wspólną opinię zamiast myśleć samodzielnie. Przy ρ = 0 większość ma rację w 0,979 przypadków, przy ρ = 0,3 — tylko w 0,619, przy ρ = 0,6 — w 0,599, czyli tyle co jeden głosujący. Na Breast Cancer pojedyncze drzewo decyzyjne ma w walidacji krzyżowej 0,93, a las 300 zdekorelowanych drzew — 0,96.
Dane: Breast Cancer Wisconsin (diagnostyka raka piersi)
W praktyce
- Zespoły:
RandomForestClassifier,BaggingClassifier,VotingClassifier(voting='soft'),StackingClassifier. - Różnorodność ważniejsza niż liczba: łącz modele o różnych założeniach (drzewa, modele liniowe, kNN) lub uczone na różnych cechach.
- Sprawdź korelację prognoz OOF między modelami; dokładanie modelu skorelowanego w 0,99 z istniejącym nic nie wnosi.
- Głosowanie miękkie (uśrednianie prawdopodobieństw) zwykle bije twarde, jeśli modele są skalibrowane.
- Model słabszy od losowego w zespole szkodzi — usuń go albo odwróć jego decyzje.
Najczęstsze pytania
- Ile modeli trzeba w zespole?
- Zysk maleje szybko po kilkudziesięciu niezależnych modelach, a przy skorelowanych zatrzymuje się dużo wcześniej. W lasach losowych typowo używa się 100–1000 drzew, bo są tanie, a więcej drzew nie szkodzi.
- Dlaczego tłum ludzi tak często się myli, skoro twierdzenie jest prawdziwe?
- Bo ludzie nie są niezależni: czytają te same źródła, wpływają na siebie i dzielą te same uprzedzenia. Wtedy wspólny błąd się nie uśrednia, tylko utrwala.
- Czy boosting też korzysta z mądrości tłumu?
- Częściowo. Boosting łączy wiele modeli, ale nie zakłada ich niezależności — każdy kolejny celowo poprawia błędy poprzednich. To inny mechanizm: redukcja obciążenia przez sekwencyjne dopasowanie.
Źródła
- Condorcet M. J. A. N. de (1785). Essai sur l’application de l’analyse à la probabilité des décisions rendues à la pluralité des voix. Paryż: Imprimerie Royale.
- Galton F. (1907). Vox Populi. Nature, 75, 450–451.
- Breiman L. (1996). Bagging Predictors. Machine Learning, 24(2), 123–140.
- Breiman L. (2001). Random Forests. Machine Learning, 45(1), 5–32.
- Hastie T., Tibshirani R., Friedman J. (2009). The Elements of Statistical Learning, 2nd ed. Springer, rozdz. 15.