Dlaczego regresja logistyczna staje się niestabilna, gdy klasy są dobrze rozdzielone? Co oznaczają dobrze oddzielone klasy? Byłbym bardzo wdzięczny, gdyby ktoś mógł wyjaśnić na przykładzie.
r
regression
logistic
separation
Jane Dow
źródło
źródło
Odpowiedzi:
Nieprawdą jest, że regresja logistyczna sama w sobie staje się niestabilna, gdy dochodzi do separacji. Separacja oznacza, że istnieją pewne zmienne, które są bardzo dobrymi predyktorami, co jest dobre, lub separacja może być artefaktem zbyt małej liczby obserwacji / zbyt wielu zmiennych. W takim przypadku rozwiązaniem może być uzyskanie większej ilości danych. Ale sama separacja jest jedynie objawem, a nie problemem samym w sobie.
Są więc naprawdę różne przypadki do leczenia. Po pierwsze, jaki jest cel analizy? Jeśli końcowym wynikiem analizy jest jakaś klasyfikacja przypadków, separacja wcale nie stanowi problemu, to naprawdę oznacza, że istnieją bardzo dobre zmienne dające bardzo dobrą klasyfikację. Ale jeśli celem jest oszacowanie ryzyka, potrzebujemy oszacowań parametrów, a przy rozdzieleniu zwykłe oszacowania mle (maksymalne prawdopodobieństwo) nie istnieją. Może więc musimy zmienić metodę szacowania. W literaturze jest kilka propozycji, wrócę do tego.
Następnie są (jak wspomniano powyżej) dwie różne możliwe przyczyny separacji. W pełnej populacji może wystąpić separacja lub separacja może wynikać z niewielu zaobserwowanych przypadków / zbyt wielu zmiennych.
Z separacją rozpada się procedura szacowania maksymalnego prawdopodobieństwa. Oszacowania parametru mle (lub przynajmniej niektóre z nich) stają się nieskończone. Powiedziałem w pierwszej wersji tej odpowiedzi, że można to łatwo rozwiązać, być może za pomocą ładowania początkowego, ale to nie działa, ponieważ w każdym ponownym próbkowaniu bootowania będzie separacja, przynajmniej przy zwykłej procedurze ładowania początkowego. Ale regresja logistyczna jest nadal prawidłowym modelem, ale potrzebujemy innej procedury szacowania. Niektóre propozycje to:
Jeśli używasz R, na CRAN znajduje się pakiet
SafeBinaryRegression
, który pomaga w diagnozowaniu problemów z separacją, za pomocą matematycznych metod optymalizacji, aby sprawdzić, czy istnieje separacja czy quasi-separacja! Poniżej podam symulowany przykład z wykorzystaniem tego pakietu ielrm
pakietu przybliżonej warunkowej regresji logistycznej.Po pierwsze, prosty przykład z
safeBinaryRegression
pakietem. Ten pakiet po prostu przedefiniowujeglm
funkcję, przeciążając ją testem separacji, stosując metody programowania liniowego. Jeśli wykryje separację, wychodzi z warunkiem błędu, deklarując, że mle nie istnieje. W przeciwnym razie po prostu uruchamia zwykłąglm
funkcję zstats
. Przykład pochodzi ze stron pomocy:Dane wyjściowe z jego uruchomienia:
Teraz symulujemy z modelu, który może być ściśle aproksymowany przez model logistyczny, z tym wyjątkiem, że powyżej pewnego poziomu odcięcia prawdopodobieństwo zdarzenia wynosi dokładnie 1,0. Pomyśl o problemie z testem biologicznym, ale ponad punktem odcięcia trucizna zawsze zabija:
Podczas uruchamiania tego kodu prawdopodobieństwo separacji szacujemy na 0,759. Uruchom kod sam, jest szybki!
Następnie rozszerzamy ten kod, aby wypróbować różne procedury szacowania, mle i przybliżoną warunkową regresję logistyczną z elrm. Uruchomienie tej symulacji na moim komputerze zajmuje około 40 minut.
Teraz chcemy wykreślić wyniki, ale wcześniej zauważmy, że WSZYSTKIE szacunki warunkowe są równe! To jest naprawdę dziwne i powinno wymagać wyjaśnienia ... Wspólna wartość to 0,9523975. Ale przynajmniej uzyskaliśmy oszacowania skończone, z przedziałami ufności, które zawierają prawdziwą wartość (nie pokazano tutaj). Pokażę więc histogram szacunków mle tylko w przypadkach bez separacji:
[
Godne uwagi jest to, że wszystkie szacunki są mniejsze niż wartość rzeczywista 1,5. Może to mieć związek z faktem, że symulowaliśmy na podstawie zmodyfikowanego modelu, wymaga zbadania.
źródło
Tutaj są dobre odpowiedzi od @ sean501 i @kjetilbhalvorsen. Poprosiłeś o przykład. Rozważ poniższy rysunek. Można natknąć się sytuacji, w której proces generujący dane są tak przedstawione w panelu A . Jeśli tak, to jest całkiem możliwe, że dane które rzeczywiście wyglądają jak te gromadzą się w panelu B . Teraz, gdy używasz danych do budowy modelu statystycznego, chodzi o odzyskanie prawdziwego procesu generowania danych lub przynajmniej uzyskanie przybliżenia, które jest dość zbliżone. Pytanie zatem brzmi: czy dopasowanie regresji logistycznej do danych w B da model zbliżony do niebieskiej linii w A ? Jeśli spojrzysz na panel C, widać, że szara linia lepiej przybliża dane niż prawdziwa funkcja, więc przy szukaniu najlepszego dopasowania regresja logistyczna „woli” zwrócić szarą linię zamiast niebieskiej. Na tym jednak się nie kończy. Patrząc na panel D, czarna linia aproksymuje dane lepiej niż szara - w rzeczywistości jest to najlepsze dopasowanie, jakie może wystąpić. To jest linia, którą realizuje model regresji logistycznej. Odpowiada to punktowi przechwytywania ujemnej nieskończoności i nachyleniu nieskończoności. Jest to oczywiście bardzo dalekie od prawdy, którą masz nadzieję odzyskać. Całkowite rozdzielenie może również powodować problemy z obliczaniem wartości p dla zmiennych, które są standardowo dostarczane z wyjściem regresji logistycznej (wyjaśnienie jest nieco inne i bardziej skomplikowane). Co więcej, próba połączenia dopasowania tutaj z innymi próbami, na przykład z metaanalizą, sprawi, że inne ustalenia będą mniej dokładne.
źródło
Oznacza to, że istnieje hiperpłaszczyzna taka, że po jednej stronie znajdują się wszystkie punkty dodatnie, a po drugiej wszystkie ujemne. Rozwiązanie największego prawdopodobieństwa to zatem płaska 1 z jednej strony i płaska 0 z drugiej strony, która jest „osiągana” za pomocą funkcji logistycznej poprzez posiadanie współczynników w nieskończoności.
źródło
To, co nazywacie „separacją” (a nie „oddzieleniem”), obejmuje dwie różne sytuacje, które w końcu powodują ten sam problem - którego nie nazwałbym jednak „niestabilnością”, jak to robicie.
Ilustracja: Przetrwanie na Titanicu
Tak by było, gdyby wszyscy pasażerowie pierwszej klasy na Titanicu przeżyli wrak, a żaden z pasażerów drugiej klasy nie przeżył.
Tak byłoby w przypadku niektórych pasażerów pierwszej klasy w InternecieS.V. D V.= 1 D V.= 0
Odwrotnie, jeśli tylko niektórzy pasażerowie drugiej klasy na Titanic zginęli we wraku, to klasa pasażerówS.V. D V.= 0 D V.= 1
Dlaczego regresja logistyczna jest w tych przypadkach „niestabilna”?
Jest to dobrze wyjaśnione w Rainey 2016 i Zorn 2005 .
W obu przypadkach funkcja wiarygodności twojego modelu nie będzie w stanie znaleźć oszacowania maksymalnego prawdopodobieństwa: znajdzie przybliżenie tej wartości tylko poprzez zbliżenie się do niej asymptotycznie.
To, co nazywacie „niestabilnością”, to fakt, że w przypadkach całkowitej lub quasi-pełnej separacji nie ma skończonego prawdopodobieństwa, że model logistyczny osiągnie. Nie użyłbym tego terminu: funkcja prawdopodobieństwa jest w rzeczywistości dość „stabilna” (monotoniczna) w przypisywaniu wartości współczynników do nieskończoności.
Uwaga: mój przykład jest fikcyjny. Przetrwanie na Titanicu nie sprowadzało się tylko do przynależności do klasy pasażerskiej. Patrz Hall (1986) .
źródło