🔁 Bootstrap — przedziały ufności
Losuj ze zwracaniem tysiące prób z jednego zbioru danych, zbuduj rozkład z próby i odczytaj z niego percentylowe przedziały ufności.
O metodzie bootstrap resampling
Bootstrap resampling to potężna nieparametryczna technika szacowania niepewności dowolnej statystyki — średniej, mediany, korelacji, współczynnika regresji — bez przyjmowania założeń o leżącym u podstaw rozkładzie prawdopodobieństwa. Pomysł, wprowadzony przez Bradleya Efrona w 1979 roku, jest elegancko prosty: potraktuj zaobserwowaną próbę jako zastępstwo populacji, a następnie wielokrotnie losuj z niej nowe próby tej samej wielkości ze zwracaniem (tak, że ta sama obserwacja może pojawić się wielokrotnie). Obliczanie statystyki dla każdej z tych „prób bootstrapowych” buduje empiryczny rozkład z próby, z którego bezpośrednio wynikają przedziały ufności.
W tym symulatorze wybierasz rozkład populacji (normalny, skośny, bimodalny, jednostajny lub o ciężkich ogonach), liczebność próby n, liczbę prób bootstrapowych B, poziom ufności oraz interesującą Cię statystykę (średnia, mediana, odchylenie standardowe, kwartyle lub IQR). Po kliknięciu Run płótno pokazuje próbę pierwotną, rozkład bootstrapowy statystyki oraz wynikowy percentylowy przedział ufności, pozwalając zbadać, jak liczebność próby, B i kształt rozkładu wpływają na szerokość i pokrycie przedziału.
Najczęściej zadawane pytania
Co oznacza „losowanie ze zwracaniem”?
Podczas losowania próby bootstrapowej o rozmiarze n z pierwotnych n obserwacji każde losowanie jest niezależne: obserwacja jest wybierana losowo, zapisywana, a następnie zwracana do puli przed kolejnym losowaniem. Oznacza to, że dowolna obserwacja może pojawić się w jednej próbie 0, 1, 2 lub więcej razy. Średnio każda próba bootstrapowa zawiera około 63,2% unikalnych obserwacji (1 − 1/e), a reszta to duplikaty. Ta powtarzalność naśladuje zmienność, jaką zaobserwowałbyś, zbierając nową próbę z tej samej populacji.
Ile prób bootstrapowych B potrzeba do dokładnych przedziałów ufności?
Dla bootstrapu percentylowego B = 1000 zwykle wystarcza dla 95% przedziałów ufności; B = 10 000 jest zalecane dla przedziałów 99% lub przy badaniu kwantyli w ogonach rozkładu. Błąd standardowy końca przedziału ufności bootstrapowego skaluje się jak 1/√B, więc zwiększenie liczby prób z 1000 do 10 000 zmniejsza szum na końcach przedziału około √10 ≈ 3,2 razy. Dla wyników na poziomie publikacyjnym z ekstremalnymi percentylami wskazane jest B = 100 000.
Czym jest metoda percentylowego przedziału ufności bootstrap?
Po obliczeniu statystyki θ̂* dla każdej z B prób, sortuje się B wartości. Percentylowy przedział ufności na poziomie 1 − α przyjmuje kwantyl α/2 jako dolną granicę, a kwantyl 1 − α/2 jako górną granicę. Dla 95% przedziału ufności z B = 1000 prób granicami są 25. i 975. posortowana wartość. Metoda jest uzasadniona, ponieważ rozkład bootstrapowy (θ̂* − θ̂) przybliża prawdziwy rozkład z próby (θ̂ − θ).
Kiedy powinienem użyć bootstrapu zamiast standardowych parametrycznych przedziałów ufności?
Przedział ufności bootstrap jest preferowany, gdy: (1) statystyka nie ma prostego błędu standardowego w postaci zamkniętej (np. mediana, IQR lub R² regresji); (2) rozkład populacji jest wyraźnie nienormalny lub ma ciężkie ogony; (3) liczebność próby jest mała, co czyni asymptotyczną normalność wątpliwą; lub (4) chcesz „sprawdzić rozsądek” wyników parametrycznych. Standardowy przedział t dla średniej jest wiarygodny dla n ≥ 30 przy umiarkowanych odstępstwach od normalności, ale bootstrap jest zawsze ważny przy słabszych założeniach.
Jaka jest różnica między bootstrapem percentylowym a bootstrapem BCa?
Bootstrap percentylowy może być obciążony lub mieć niepoprawne pokrycie, jeśli rozkład z próby θ̂ jest skośny lub jeśli θ̂ jest obciążonym estymatorem θ. Metoda skorygowana o obciążenie i przyspieszenie (BCa), również autorstwa Efrona, dostosowuje poziomy kwantyli używane do wyznaczenia granic przedziału ufności za pomocą korekty obciążenia z₀ (opartej na tym, jak często θ̂* < θ̂) i stałej przyspieszenia a (opartej na wartościach wpływu jackknife). Przedziały BCa mają lepsze teoretyczne pokrycie i są zalecane dla statystyk skośnych.
Czy bootstrap działa dla szeregów czasowych lub danych skorelowanych?
Standardowy bootstrap i.i.d. zawodzi dla szeregów czasowych, ponieważ niszczy korelację czasową. Zamiast tego metody bootstrapu blokowego losują kolejne bloki obserwacji (np. bloki po 20 punktów danych), aby zachować strukturę autokorelacji. Popularne warianty to ruchomy bootstrap blokowy, cykliczny bootstrap blokowy oraz bootstrap stacjonarny (losowe długości bloków z rozkładu geometrycznego). Dla danych przestrzennych potrzebne są procedury bootstrapu przestrzennego lub podpróbkowania.
Czym jest jackknife i jak odnosi się do bootstrapu?
Jackknife (Quenouille, 1949; Tukey, 1958) szacuje obciążenie i wariancję, sekwencyjnie pomijając po jednej obserwacji, obliczając statystykę na pozostałych n−1 wartościach i uśredniając lub różnicując wyniki. Jest obliczeniowo tańszy niż bootstrap (tylko n prób zamiast B), ale ogranicza się do statystyk gładkich: zawodzi dla mediany i kwantyli, ponieważ małe zaburzenia nie zmieniają statystyki opartej na rangach. Bootstrap obejmuje jackknife jako przypadek szczególny.
Jak liczebność próby n wpływa na szerokość przedziału ufności bootstrap?
Szerokość przedziału ufności bootstrap skaluje się w przybliżeniu jak 1/√n dla statystyk o skończonej wariancji (jak średnia). Podwojenie liczebności próby z 30 do 120 zmniejsza szerokość przedziału o połowę. Dla rozkładów o ciężkich ogonach (rozkład Cauchy'ego nie ma skończonej wariancji) to skalowanie 1/√n załamuje się i przedziały ufności bootstrap mogą być niespójne. Symulator pozwala to bezpośrednio zaobserwować: wypróbuj n = 10 w porównaniu z n = 100 dla rozkładu przypominającego Cauchy'ego („heavy”) i porównaj, jak zmienia się szerokość przedziału.
Czy bootstrap może oszacować niepewność dokładności modelu uczenia maszynowego?
Tak — to jedno z najpopularniejszych współczesnych zastosowań bootstrapu. Aby oszacować wariancję dokładności walidacji krzyżowej, bootstrap .632 ocenia każdy model bootstrapowy na obserwacjach out-of-bag (nielosowanych ~37%), łącząc to z dokładnością na zbiorze treningowym: błąd = 0,368 × błąd_treningowy + 0,632 × błąd_out-of-bag. Metoda .632+ dodatkowo koryguje przeuczenie. Scikit-learn i pakiet caret w R oferują ocenę modeli opartą na bootstrapie.
Jakie są ograniczenia bootstrapu?
Bootstrap jest niespójny dla statystyk zależnych od skrajnych statystyk porządkowych (np. maksimum lub minimum próby), ponieważ maksimum próby bootstrapowej nigdy nie może przekroczyć maksimum próby pierwotnej. Wymaga też, aby próba pierwotna była reprezentatywna dla populacji — jeśli próba ma obciążenie selekcyjne, przedział ufności bootstrap dziedziczy to obciążenie. Wreszcie koszt obliczeniowy skaluje się z B i n, co może być zaporowe dla wolnego dopasowywania modeli lub bardzo dużych zbiorów danych bez podpróbkowania.
Czym jest „zasada podstawienia” uzasadniająca bootstrap?
Zasada podstawienia mówi: szacuj dowolną wielkość populacyjną, podstawiając empiryczną dystrybuantę F̂(x) — funkcję schodkową przypisującą masę 1/n każdej zaobserwowanej wartości — w miejsce prawdziwego rozkładu F(x). Losowanie bootstrapowe z danych pierwotnych jest równoważne losowaniu z F̂. Dowolną wielkość populacyjną — średnią, kwantyl czy złożony funkcjonał — można wtedy oszacować, obliczając tę samą wielkość dla F̂, z niepewnością charakteryzowaną przez zmienność w próbach bootstrapowych.
O tej symulacji
Bootstrap resampling szacuje, jak bardzo statystyka — średnia, mediana czy IQR — zmieniałaby się przy powtarzanym zbieraniu danych, wykorzystując wyłącznie próbę, którą już posiadasz. Zamiast zakładać populację o rozkładzie dzwonowym, losuje wiele nowych prób ze zwracaniem z Twoich danych i za każdym razem przelicza statystykę, budując empiryczny rozkład, z którego bezpośrednio odczytuje się przedział ufności. Metodę opracował Bradley Efron w 1979 roku.
🔬 Co pokazuje
Każde uruchomienie losuje n punktów z wybranego kształtu populacji — normalnego, skośnego, bimodalnego, jednostajnego lub o ciężkich ogonach — a następnie resampluje je B razy, budując histogram statystyki. Zacieniowany przedział percentylowy jest porównywany z prawdziwą wartością populacji, aby pokazać, czy ją obejmuje.
🎮 Jak korzystać
Wybierz rozkład populacji i statystykę (średnia, mediana, odchylenie standardowe, kwartyle lub IQR), a następnie ustaw liczebność próby n, liczbę prób bootstrapowych B i poziom ufności. Naciśnij ▶ Run Bootstrap, aby odbudować rozkład, lub 🔀 New Sample, aby wylosować nową próbę pierwotną.
💡 Czy wiesz, że...?
Efron nazwał metodę na cześć powiedzenia „pulling yourself up by your bootstraps” (podciąganie się za własne sznurowadła) — wykorzystywania wyłącznie dostępnych danych, aby poznać niepewność własnego oszacowania, bez żadnych założeń o kształcie leżącej u podstaw populacji.
Najczęściej zadawane pytania
Co właściwie oznacza losowanie „ze zwracaniem”?
Każda próba bootstrapowa losuje n wartości z próby pierwotnej pojedynczo, zwracając każdą wartość przed kolejnym losowaniem, więc obserwacja może pojawić się raz, wiele razy albo wcale — naśladując zmienność nowej próby.
Dlaczego przedział ufności czasem nie obejmuje prawdziwej wartości?
Oczekuje się, że 95% przedział nie obejmie prawdziwej wartości mniej więcej w jednym uruchomieniu na dwadzieścia; naciśnij wielokrotnie New Sample, aby to zaobserwować — sporadyczne pominięcia są oczekiwane, a nie wadą metody.
Ile prób bootstrapowych B potrzebuję?
Kilka tysięcy prób zwykle daje stabilny przedział percentylowy. Zbyt mało prób sprawia, że krawędzie są zaszumione; wyższe poziomy ufności lub statystyki takie jak IQR korzystają z większego B dla gładszego histogramu.
Czy wybór statystyki zmienia zachowanie bootstrapu?
Gładkie statystyki, takie jak średnia, zbiegają szybko. Mediana, kwartyle i IQR zależą od uporządkowanych wartości i często pokazują bardziej „schodkowe” histogramy oraz szersze przedziały, zwłaszcza przy małych próbach.
Dlaczego liczebność próby n ma tak duże znaczenie?
Większe próby wierniej reprezentują populację, więc rozkład bootstrapowy zwęża się, a przedział kurczy się wraz ze wzrostem n. Przy opcji Heavy-tailed to zwężanie jest znacznie słabsze, ponieważ wartości ekstremalne dominują nad statystyką.
Losuj tysiące razy ze zwracaniem z jednego zbioru danych, buduj rozkład z próby i odczytuj z niego percentylowe przedziały ufności.
3D · Three.js / WebGL renderer · 60 FPS target · runs fully client-side, no install