ML Atlas

11 · Prawa i prawdy · 3 min czytania · aktualizacja

Dlaczego korelacja nie oznacza przyczynowości?

W skrócie

Dwie zmienne mogą iść w parze, bo łączy je wspólna przyczyna, odwrotny kierunek wpływu, selekcja albo przypadek. Jak to rozpoznać i co z tym zrobić.

Co to jest

To, że dwie zmienne zmieniają się razem, nie oznacza, że jedna powoduje drugą. Zasada jest stara jak statystyka, ale jej nowoczesne ujęcie — kiedy i jak z danych można jednak wnioskować o przyczynach — dał Judea Pearl, m.in. w książce „Causality” (2000, wyd. 2 2009). Wcześniej Hans Reichenbach (1956) sformułował zasadę wspólnej przyczyny: jeśli A i B są skorelowane, to albo A wpływa na B, albo B na A, albo obie mają wspólną przyczynę.

Klasyczny przykład: w miesiącach, gdy sprzedaje się więcej lodów, jest więcej utonięć. Lody nie topią ludzi — obie liczby rosną latem. W 2012 roku w „New England Journal of Medicine” ukazała się żartobliwa notka pokazująca korelację między spożyciem czekolady w kraju a liczbą noblistów na mieszkańca.

Modele uczenia maszynowego są maszynami do znajdowania korelacji. To ich siła przy przewidywaniu i słabość, gdy ktoś chce na ich podstawie decydować, co zmienić w świecie.

Mechanizm — dlaczego tak działa

Korelacja między A i B może powstać na kilka sposobów, a tylko jeden z nich to „A powoduje B”:

  1. Wspólna przyczyna (zmienna zakłócająca): C wpływa na A i na B. Pogoda na lody i kąpiele, zamożność kraju na czekoladę i naukę.
  2. Odwrotny kierunek: B powoduje A. Szpitale mają wysoki odsetek zgonów nie dlatego, że zabijają, tylko dlatego, że trafiają tam ciężko chorzy.
  3. Selekcja: patrzymy tylko na próbkę wybraną na podstawie A i B (paradoks Berksona, błąd przeżywalności).
  4. Przypadek: przy tysiącach przeszukanych par zmiennych część będzie skorelowana przez czysty traf.

Korelacja jest symetryczna: corr(A, B) = corr(B, A). Przyczynowość nie. Dlatego sama tabela danych obserwacyjnych nie wystarcza — potrzebna jest dodatkowa wiedza o tym, jak dane powstały. Pearl ujmuje to jako różnicę między P(B | widzę A) a P(B | ustawiam A), zapisywaną jako P(B | do(A)).

Najprostszy sposób na przyczynowość to eksperyment z losowym przydziałem (np. test A/B): losowanie przerywa wszystkie wspólne przyczyny, bo nic poza monetą nie decyduje o tym, kto dostaje interwencję. Bez eksperymentu można próbować kontrolować zmienne zakłócające, ale tylko te, o których wiesz i które zmierzyłeś.

Na przykładzie

Titanic: pasażerowie podróżujący samotnie przeżyli w 30,4% przypadków, a podróżujący z rodziną — w 50,6% (korelacja −0,20). Kusi wniosek: „rodzina ratuje życie”. Ale samotnie podróżowało 76,4% dorosłych mężczyzn i tylko 35,9% kobiet i dzieci, a o przeżyciu decydowała przede wszystkim zasada „kobiety i dzieci najpierw”. To płeć i wiek wpływały na oba: kto podróżował sam i kto dostał miejsce w łodzi.

Po podziale na grupy obraz się zmienia. Wśród kobiet i dzieci samotni przeżyli w 78,0%, a ci z rodziną w 68,3% — odwrotnie niż w całości. Wśród dorosłych mężczyzn: 15,6% wobec 18,9%, różnica niewielka. „Efekt samotności” był w dużej mierze efektem tego, kim byli samotni pasażerowie.

Dane: Titanic

W praktyce

  • Ważność cechy w modelu (feature_importances_, permutation_importance, SHAP) mówi, co pomaga przewidywać, nie co warto zmienić.
  • Gdy pytasz „co się stanie, jeśli zmienię X?”, planuj eksperyment z losowaniem (test A/B) zamiast analizy korelacji.
  • W danych obserwacyjnych rozbijaj wyniki po potencjalnych zmiennych zakłócających: df.groupby(['grupa', 'x'])['y'].mean().
  • Narysuj graf przyczynowy; do formalnej analizy służą biblioteki takie jak DoWhy.
  • Uważaj na wnioski z przeszukiwania wielu par cech — część korelacji to przypadek (problem wielokrotnych porównań).

Najczęstsze pytania

Czy z korelacji nigdy nie wynika przyczynowość?
Sama korelacja nie wystarcza, ale bywa wskazówką. Razem z eksperymentem, wiedzą o mechanizmie albo metodami wnioskowania przyczynowego (kontrola zmiennych zakłócających, zmienne instrumentalne) można ustalić związek przyczynowy.
Czy model ML może odkryć przyczyny?
Zwykły model predykcyjny nie. Uczy się każdej użytecznej korelacji, również tej wynikającej ze wspólnej przyczyny lub odwrotnego kierunku. Do pytań przyczynowych potrzebne są eksperymenty lub metody wnioskowania przyczynowego.
Co to jest zmienna zakłócająca?
To zmienna, która wpływa jednocześnie na badaną przyczynę i na skutek, tworząc między nimi korelację. W przykładzie z Titanica były to płeć i wiek.

Źródła

  • Judea Pearl, „Causality: Models, Reasoning, and Inference”, 2nd ed., Cambridge University Press, 2009.
  • Hans Reichenbach, „The Direction of Time”, University of California Press, 1956.
  • Miguel A. Hernán, James M. Robins, „Causal Inference: What If”, Chapman & Hall/CRC, 2020.
  • Franz H. Messerli, „Chocolate Consumption, Cognitive Function, and Nobel Laureates”, New England Journal of Medicine 367(16), 2012, s. 1562–1564.

Zobacz też