ML Atlas

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.

Ta ilustracja działa w przeglądarce z włączonym JavaScriptem: każdy z 11 głosujących trafia w 60%, a większość w 75,3%; gdy błędy są skorelowane (ρ = 0,3), nawet nieskończony tłum utknie na 67,8%.

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.

Zobacz też