Regresja logistyczna jest jednym z pierwszych algorytmów, z którymi mają do czynienia śmiałkowie zaczynający swoją przygodę z Data Science czy uczeniem maszynowym. W pierwszej części artykułu skupiającego się na tej metodzie, opiszę podstawy teoretyczne i ogólny zarys działania tego algorytmu. W dalszych częściach przybliżę tematy doboru parametrów tego modelu, interpretacji oraz obszarach zastosowania tego narzędzia. Enjoy!
Model logitowy jest najczęściej wykorzystywany w zadaniach modelowania binarnej zmiennej celu, choć można go stosować również w przypadku problemów wielo-klasowych. Przykładem takiego zadania może być predykcja na podstawie danego wektora obserwacji czy dany pacjent dostanie zawału serca, bądź nie dostanie. Nasza zmienna celu to zawał serca, która przyjmuje dwie wartości 0 (brak zawału) bądź 1 (zawał). Na podstawie innych wybranych cech, będziemy starali się określić prawdopodobieństwo przynależności do jednej z tych dwóch klas.
Regresja logistyczna opiera się na wykorzystaniu funkcji logistycznej:
Którą przedstawia wykres dla pewnej zmiennej z:
W powyższym przykładzie modelowane jest prawdopodobieństwo zdania egzaminu f(z) w zależności od ilości przestudiowanych godzin z.
Wartości f(z) niezależnie od wartości parametru z zawsze będą znajdowały się w przedziale pomiędzy 0 a 1. Właśnie ta charakterystyka sprawiła, że funkcja logistyczna stała się tak popularna. Ponieważ można ją wykorzystać w celu modelowania prawdopodobieństwa.
Kolejną ważną cechą tej funkcji, jest jej charakterystyczny kształt przypominający wydłużoną literę S (sigmoidalny). W przypadku bardzo niskich wartości z funkcja osiąga wartości bliskie 0. Wraz ze zwiększaniem się wartości z, coraz szybciej rosną również wartości funkcji, aż do tych bliskich 1. Krytycznym punktem jest punk przegięcia tej funkcji, który równy jest jej wartości 0.5. Wykorzystywany jest jako próg (treshold), czy dany wektor obserwacji przynależy do klasy 1 bądź 0.
Cofnijmy się do wyżej zamieszczonego wykresu. W tym przykładzie, student który uczył się około 3 godzin, na podstawie tej krzywej osiągnie wartość prawdopodobieństwa zdania egzaminu na poziomie okołu 0.60. Gdybyśmy próg 0.5 uznali jako wiążący w rozdzielaniu klas. Taki uczeń zostałby przyporządkowany do klasy 1, która oznacza, że student zdał egzamin.
Model logistyczny
To co powyżej rozważaliśmy to była jedynie funkcja logistyczna. Naszym celem jednakże https://italoptik.com/yelnac/index.html , jest otrzymanie modelu regresji logistycznej. Aby to osiągnąć, musimy zapisać „z” z równania (1) jako funkcję liniową:
gdzie: X_k , to nasze zmienne objaśniające zmienną celu \alpha oraz \beta_i , to pewne stałe, które reprezentują na razie nieznane nam parametry.
Podstawiając równanie (2) do równania (1) otrzymamy:
Ze względu na to, że w danym modelu liczymy prawdopodobieństwo wystąpienia zdarzenia, musimy je zdefiniować. W tym celu, wykorzystuje się prawdopodobieństwo warunkowe:
Wracając do przykładu z zawałem serca, jeżeli wystąpienie zawału uznamy jako wartość 1 to powyższy zapis, oznacza prawdopodobieństwo wystąpienie zawału pod warunkiem czynników X_k takich jak np. otyłość, poziom glukozy we krwi itd.
Zapisując to równanie prawdopodobieństwa w skróconej formie:
To model regresji logistycznej możemy zapisać jako:
Dobra ok, mamy matematyczny model, posiadamy jakieś nieznane parametry alfa oraz beta, ale jak mamy je oszacować?
Metoda największej wiarygodności
Metodą, która służy do uzyskania wartości tych parametrów to Metoda Największej Wiarygodności (maximum likelihood). Każdy słyszał, nie każdy zdaje sobie sprawę jak działa. Dokładny opis tej metody w przypadku regresji logistycznej pojawi się w drugiej części artykułu ze względu na dosyć szeroki zakres informacji. W bardzo dużym skrócie, należy najpierw skonstruować funkcję wiarygodności. Aby to zrobić dopasowuje się dany rozkład do obserwacji, poprzez dobieranie różnych wartości parametrów tego rozkładu. Wartość funkcji wiarygodności to „jakość” dopasowania tego rozkładu do danych. Np. jeżeli wartość oczekiwana rozkładu będzie znajdować się „daleko od danych” to otrzymana wartość funkcji wiarygodności będzie niska. Następnie, po skonstruowaniu funkcji wiarygodności, musimy znaleźć jej maksimum. Standardowo robi się to analitycznie poprzez liczenie pochodnych. Jednakże, funkcje bywają bardzo skomplikowane dlatego korzysta się z metod numerycznych, czyli algorytmów optymalizacyjnych. W przypadku MNW są one zazwyczaj oparte są na algorytmie gradient descent. Otrzymując maksimum funkcji wiarygodności, wiemy jakie wartości parametrów powinien mieć nasz rozkład.
Interpretacje wyników
Regresja logistyczna oprócz bycia klasyfikatorem, zapewnia dosyć rozbudowaną możliwość interpretacji wyników, czym również zawdzięcza swoją popularność. Rozważmy przykład:
Zakładamy, że dokonaliśmy estymacji MNW i naszym oczom ukazały się wartości parametrów \alpha = -3.90 ~ i~\beta_0 = 0.05 wtedy model regresji zapiszemy następująco:
Załóżmy również, że zmienna X reprezentuje BMI pacjenta i wciąż badamy czy pacjent będzie miał zawał serca. To co pozwala nam uzyskać równanie numer 4, to przewidywane ryzyko dla szczególnego przypadku (wektora obserwacji – pacjenta).
Przykładowo, mamy pacjenta nr 1 którego wartość BMI wynosi 35 jest to otyłość dosyć zaawansowana. Mamy również pacjenta nr 2, którego BMI = 20. W celu obliczenia ryzyka dostania zawału serca dla tych pacjentów, musimy podstawić w miejsce X otrzymane wartości BMI:
Otrzymamy:
W przypadku pacjenta, którego wartość BMI wynosiła 35 ryzyko dostania zawała wyniosło 12.45%, natomiast osoba, której wartość BMI wynosiła 20, miała ryzyko dostania zawału na poziomie 6.29%.
Inną stosowaną miarą może być Risk ratio czyli ryzyko relatywne. Służy ono do porównania ryzyka – w naszym przypadku dwóch pacjentów. Aby je otrzymać po prostu dzielimy otrzymane ryzyko pierwszego pacjenta przez ryzyko drugiego pacjenta.
Wartość tę interpretujemy następująco: „Osoba, która posiada BMI na poziomie 35 ma prawie 2 razy większe ryzyko dostania zawału serca niż osoba, która posiada BMI na poziomie 20”
Uwaga do RR!
Żeby móc szacować ryzyko względne bezpośrednio muszą być spełnione dwa warunki:
- przeprowadzane badanie jest o charakterze obserwacyjnym/kontrolnym (follow-up studies),
- dla porównywanych jednostek, muszą być określone wartości wszystkich zmiennych objaśniających (X)
Ryzyko względne (RR) możemy oszacować niebezpośrednio – poprzez odds ratio, bez spełeniania powyższych założeń. Czym jest Odds Ratio można przeczytać poniżej.
Pierwszy warunek wynika z faktu, że aby otrzymać oszacowane ryzyko \hat{P}(X) musimy otrzymać prawidłowo oszacowane parametry \alpha ~i~\beta. W przypadku badania typu strudium przypadku (case-control studies), parametr \hat{\alpha} nie może być poprawnie oszacowany, nie znając próby populacji. Próba, może po prostu nie być reprezentatywna. Warto wspomnieć, że parametr Beta nie jest wrażliwy na rodzaj badania.
Najważniejsze przekształcenie w modelu regresji logistycznej
Model logistyczny, nie jest modelem liniowym, jednakże istnieje pewna transformacja, która pozwala otrzymać właśnie model liniowy, jest to przekształcenie logit.
Mając model logistyczny:
Dokonujemy przekształcenia logit:
Otrzymując równanie liniowe:
Otrzymana funkcja liniowa przyjmuje wartości z zakresu od -∞ do +∞. Oś Y reprezentuje logarytm szans, również otrzymane wartości współczynników podczas estymacji regresji logistycznej są logarytmami szans
Szansa natomiast, to stosunek prawdopodobieństwa wystąpienia zdarzenia do prawdopodobieństwa nie wystąpienia tego zdarzenia. Która jest określona następującym wzorem:
Szanse w modelu liczymy następująco:
Jeżeli będziemy chcieli uzyskać szanse dla pojedynczego parametru to wystarczy, że umieścimy jego wartość jako argument funkcji eksponencjalnej.
Załóżmy, że prawdopodobieństwo wystąpienia zdarzenia wyniosło P = 0.25. Wiemy, że 1 – P = 0.75. Podstawiając do powyższego wzoru otrzymamy wartość 1/3. Z czego wartość w liczniku oznacza że zdarzenie wystąpiło, a wartość w mianowniku, że zdarzenie nie wystąpiło. Otrzymaną wartość odds możemy zinterpretować następująco: szansa, że zdarzenie nie wystąpi są jak 3 do 1.
Ważne – w modelu logitowym, jeżeli wszystkie parametry Beta są równe 0 to parametr alfa interpretujemy jako logarytm szans, wynika to z:
Należy pamiętać o zdrowym rozsądku, że czasami interpretacja parametru alfa nie ma sensu. Na przykład, gdy wektor obserwacji dotyczy pacjenta i mamy takie zmienne jak wiek czy waga, to nie istnieją ludzie, dla których te wartości są równe 0. Co powoduje, że nie istnieje również interpretacja wolnego parametru w takich przypadkach.
Odds ratio czyli ilorazy szans
Mając wartości szans, bardzo łatwo możemy uzyskać ich ilorazy. Wystarczy szanse wystąpienia zdarzenia dla jednego wektora obserwacji podzielić przez szanse wystąpienia zdarzenia dla drugiego wektora obserwacji. Jest to bardzo użyteczne narzędzie do porównywania grup.
Wracamy do przykładu z BMI gdzie mieliśmy dwóch pacjentów. Możemy policzyć iloraz szans tych pacjentów:
Z prostej algebry możemy dokonać przekształcenia aby uniknąć dzielenia:
Jeżeli OR = 1 to znaczy, że szanse w obu grupach są zbliżone. Jeżeli OR < 1 to szanse na wystąpienie zdarzenia są mniejsze w grupie pierwszej niż drugiej. Jeżeli OR >1 to na odwrót. W naszym przypadku interpretacja jest następująca:
„Osoby mające BMI na poziomie 35 mają prawie 4,5 raza większe szanse na dostanie zawału serca niż osoby, których BMI jest na poziomie 20”
Myślę, że po dokładnym przeanalizowaniu zawartych w tym artykule informacji, czytelnik będzie miał ogólny pogląd czym regresja logistyczna jest oraz dlaczego warto poświęcić trochę czasu na jej naukę mimo, że istnieją skuteczniejsze algorytmy do klasyfikacji. Artykuł ten stanowi podstawę do dalszych dociekań na temat tego algorytmu. W kolejnych tekstach, poruszę temat estymacji MNW w regresji logistycznej, doboru parametrów, oszacujemy sobie również regresję w Pythonie i R na rzeczywistych danych. Przedstawię również metody weryfikacji jakości modelu logistycznego zarówno przy pomocy testów statystycznych jak i miar stosowanych w uczeniu maszynowych. Stay tuned!
Artykuł napisano na podstawie:
- Kleinbaum, David G., et al. Logistic regression. New York: Springer-Verlag, 2002.
- Marek Gruszczyński i in., Mikroekonometria modele i metody analizy danych indywiudalnych, Warszawa, 2010.
[…] poprzednim artykule dotyczącym regresji logistycznej, który możecie znaleźć tutaj, przybliżyłem teoretyczne podstawy działania tego algorytmu. W niniejszym artykule skupię się […]
[…] interpretacji uzyskanych wyników. Jeżeli nie czytałeś poprzednich artykułów to zapraszam: część 1 oraz część […]