ML Atlas

02 · Dane · 4 min czytania · aktualizacja

Czym jest błąd doboru próby (sampling bias) i jak psuje modele?

W skrócie

Błąd doboru próby powstaje, gdy dane nie reprezentują populacji, na której model ma działać. Więcej takich danych nie pomoże — model uczy się złego świata.

Co to jest

Błąd doboru próby (ang. sampling bias, selection bias) to systematyczna różnica między danymi, które mamy, a populacją, o której chcemy wnioskować lub na której model będzie działał. Powstaje, gdy szansa trafienia do próby zależy od cech związanych z badanym zjawiskiem.

To błąd innego rodzaju niż losowy szum. Szum maleje, gdy zbieramy więcej danych; błąd doboru zostaje, bo każda nowa obserwacja jest wybierana tym samym skrzywionym mechanizmem. Milion skrzywionych przykładów daje bardzo precyzyjną odpowiedź na niewłaściwe pytanie.

Intuicja: badając, jak długo żyją restauracje, na podstawie tych, które dziś działają, pominiesz wszystkie, które upadły. Wyjdzie, że restauracje są bardzo trwałe.

Mechanizm — dlaczego tak działa

Model uczy się rozkładu, który widzi w danych treningowych: częstości klas, zależności między cechami a celem, typowych zakresów wartości. Jeśli proces zbierania danych faworyzuje pewne obserwacje, model uczy się rozkładu po selekcji, a nie rzeczywistego. Gdy potem trafi na pełną populację, jego przewidywania są przesunięte — i nic w danych treningowych tego nie zdradza, bo walidacja krzyżowa na skrzywionej próbie też jest skrzywiona.

Typowe postacie: błąd przeżywalności (widzimy tylko te obiekty, które przetrwały selekcję — firmy, pacjentów, samoloty), samoselekcja (ankiety, na które odpowiadają tylko zainteresowani), błąd pokrycia (dane z jednego szpitala, kraju, grupy wiekowej, pory roku), selekcja przez model (dane o spłacie kredytu mamy tylko dla osób, którym kredyt przyznano — odrzuconych nie obserwujemy nigdy). Klasyczny przykład z historii to sondaż Literary Digest z 1936 roku: ogromna próba z list abonentów telefonów i właścicieli samochodów przewidziała wygraną Landona, a wybory wygrał Roosevelt.

Selekcja potrafi też tworzyć fałszywe zależności. Jeśli do próby trafiają obserwacje spełniające warunek zależny od dwóch zmiennych, w próbie pojawia się między nimi korelacja, której w populacji nie ma (paradoks Berksona). W statystyce problem formalizuje model selekcji Heckmana (1979), który pozwala korygować oszacowania, gdy mechanizm selekcji da się modelować.

Co można zrobić? Najpierw zrozumieć proces powstania danych: kto trafił do zbioru i dlaczego. Gdy znamy prawdopodobieństwo selekcji, można ważyć obserwacje odwrotnością tego prawdopodobieństwa. Gdy rozkład populacji docelowej jest znany choć dla kilku zmiennych (np. wiek i płeć ze spisu), można przeważyć próbę, by go odtworzyła. Ale części błędu doboru nie da się naprawić danymi, które mamy — trzeba zebrać brakującą część populacji.

Na przykładzie

W zbiorze Titanic (891 pasażerów) przeżyło 38,4% osób. Załóżmy, że badacz analizuje tylko pasażerów z zapisanym pokładem, „bo mają pełne dane” — 203 osoby. W tej próbie przeżywalność wynosi 67,0%, prawie dwa razy więcej. Powód: pokład zapisywano głównie w pierwszej klasie. W pełnym zbiorze pierwsza klasa to 24% pasażerów, w próbie z pokładem — 86%; kobiet jest 48% zamiast 35%, a średnia opłata wynosi 76,3 zamiast 32,2.

Model wytrenowany na tej próbie nauczyłby się świata, w którym większość pasażerów przeżywa, a przewidywane prawdopodobieństwa byłyby systematycznie za wysokie dla pasażerów trzeciej klasy. Walidacja krzyżowa na tych 203 osobach niczego by nie zasygnalizowała, bo oceniałaby model na tej samej skrzywionej populacji. Selekcja „kompletnych przypadków” to jedna z najczęstszych, niezauważanych form błędu doboru.

Dane: Titanic

W praktyce

  • Porównaj rozkłady kluczowych zmiennych w próbie z tym, co wiadomo o populacji docelowej (spis, dane rejestrowe, ruch produkcyjny).
  • Sprawdzaj, kogo odfiltrowuje każdy krok czyszczenia: dropna(), filtry jakości, łączenie tabel (merge z how='inner').
  • Ważenie obserwacji: parametr sample_weight w metodzie fit większości estymatorów scikit-learn.
  • Po wdrożeniu monitoruj rozkład danych wejściowych — różnica między treningiem a produkcją to sygnał niedopasowania populacji.
  • W systemach decyzyjnych (kredyty, rekrutacja) zachowaj część losowych decyzji lub dane o odrzuconych, jeśli to możliwe i etyczne.
  • Typowy błąd: przekonanie, że duża liczba obserwacji chroni przed błędem doboru.

Najczęstsze pytania

Czy więcej danych zmniejsza błąd doboru próby?
Nie. Więcej danych zmniejsza błąd losowy, ale jeśli są zbierane tym samym mechanizmem, odchylenie zostaje, a fałszywa precyzja rośnie. Pomaga tylko zmiana sposobu zbierania lub korekta znanego mechanizmu selekcji.
Czym różni się błąd doboru od dryfu danych?
Błąd doboru to różnica między próbą a populacją już w chwili zbierania danych. Dryf to zmiana populacji w czasie — dane były reprezentatywne, ale świat się zmienił. Skutki są podobne: model działa na innym rozkładzie niż ten, na którym się uczył.
Jak wykryć błąd doboru, skoro brakuje danych o pominiętych?
Przez porównanie z zewnętrznymi źródłami o populacji, analizę procesu zbierania danych i sprawdzenie, czy wyniki zmieniają się w podgrupach o różnej szansie selekcji. Pewności zwykle nie ma, dlatego tak ważna jest wiedza o tym, skąd dane pochodzą.

Źródła

  • Heckman J. J. (1979). „Sample Selection Bias as a Specification Error”. Econometrica, 47(1), 153–161.
  • Torralba A., Efros A. A. (2011). „Unbiased look at dataset bias”. IEEE Conference on Computer Vision and Pattern Recognition (CVPR).
  • Mehrabi N., Morstatter F., Saxena N., Lerman K., Galstyan A. (2021). „A Survey on Bias and Fairness in Machine Learning”. ACM Computing Surveys, 54(6).
  • Kish L. „Survey Sampling”. Wiley, 1965.

Zobacz też