Czy niezrównoważona próbka ma znaczenie podczas regresji logistycznej?

81

Ok, więc myślę, że mam wystarczająco przyzwoitą próbkę, biorąc pod uwagę ogólną zasadę 20: 1: dość dużą próbkę (N = 374) dla łącznie 7 potencjalnych zmiennych predykcyjnych.

Mój problem jest następujący: bez względu na to, jakiego zestawu zmiennych predykcyjnych używam, klasyfikacje nigdy nie są lepsze niż specyficzność 100% i czułość 0%. Jakkolwiek niezadowalający, może to być najlepszy możliwy wynik, biorąc pod uwagę zestaw zmiennych predykcyjnych kandydujących (od których nie mogę się odbiegać).

Ale nie mogłem przestać myśleć, że dam radę lepiej, więc zauważyłem, że kategorie zmiennej zależnej były dość nierównomiernie zrównoważone, prawie 4: 1. Czy bardziej zrównoważona podpróbka może poprawić klasyfikację?

Michiel
źródło
5
Trudno sobie wyobrazić, jak to może być. Być może obniżasz przewidywane prawdopodobieństwo na 0,5? Jeśli tak, spróbuj zmienić wartość graniczną.
Aniko,
4
Pole pod krzywą ROC wynosi 0,585, co jest raczej słabym wynikiem. Oznacza to, że tak naprawdę nie ma wartości odcięcia, w której warto zachować kompromis między specyficznością / wrażliwością. Błąkanie się przy granicy odcięcia nie poprawi klasyfikacji znacznie, ponieważ tylko zmniejszy swoistość o mniej więcej tyle, ile zwiększy czułość.
Michiel
3
Czy którykolwiek ze współczynników Zmiennych znacznie różni się od (powiedzmy więcej niż pięć standardowych błędów)? Jeśli nie, twoim problemem może być to, że po prostu nie masz dużo mocy wyjaśniającej ze swoim zestawem zmiennych. 0
probabilityislogic
2
Należy również zauważyć, że wielkość próby pod względem dobrych prognoz jest w rzeczywistości liczbą unikalnych wzorców w zmiennej predyktora, a nie liczbą osobników próbkowanych. Na przykład model z jedną kategoryczną zmienną predykcyjną z dwoma poziomami może pasować tylko do modelu regresji logistycznej z dwoma parametrami (po jednym dla każdej kategorii), nawet jeśli w próbie znajdują się miliony osób.
probabilityislogic

Odpowiedzi:

75

Równowaga w zestawie treningowym

W przypadku modeli regresji logistycznej niezrównoważone dane treningowe wpływają tylko na oszacowanie przechwytywania modelu (chociaż to oczywiście wypacza wszystkie przewidywane prawdopodobieństwa, co z kolei narusza twoje przewidywania). Na szczęście korekcja przechwytywania jest prosta: pod warunkiem, że znasz prawdziwą proporcję zer i jedynek i wiesz, jakie są proporcje w zestawie treningowym, możesz zastosować korekcję rzadkich zdarzeń do przechwytywania. Szczegóły znajdują się w King and Zeng (2001) [ PDF ].

Te „korekty rzadkich zdarzeń” zostały opracowane dla projektów badań kontroli przypadków, stosowanych głównie w epidemiologii, które wybierają przypadki, wybierając stałą, zwykle zrównoważoną liczbę 0 przypadków i 1 przypadków, a następnie muszą skorygować wynikające z tego odchylenie w doborze próby. Rzeczywiście, możesz szkolić klasyfikatora w ten sam sposób. Wybierz ładną, zrównoważoną próbkę, a następnie popraw przechwycenie, aby uwzględnić fakt, że wybrałeś zmienną zależną, aby dowiedzieć się więcej o rzadszych klasach, niż próba losowa byłaby w stanie ci powiedzieć.

Dokonywanie prognoz

Na pokrewny, ale odrębny temat: Nie zapominaj, że powinieneś być inteligentnym progiem, aby przewidywać. Nie zawsze najlepiej jest przewidzieć 1, gdy prawdopodobieństwo modelu jest większe 0,5. Kolejny próg może być lepszy. W tym celu należy przyjrzeć się krzywym charakterystyki odbiornika (ROC) klasyfikatora, a nie tylko jego przewidywalnemu sukcesowi z domyślnym progiem prawdopodobieństwa.

sprzężonyprior
źródło
8
Jeśli nie znasz częstotliwości klas operacyjnych, można je oszacować metodą EM bez znajomości etykiet próbek testowych / operacyjnych. Szczegóły znajdują się w Saerens i in. „Dostosowywanie wyników klasyfikatora do nowych prawdopodobieństw Priori: prosta procedura”, Neural Computation, vol. 14, nr 1, s. 21–41, 2002 ( dx.doi.org/10.1162/089976602753284446 ). Użyłem tego kilka razy i byłem pod wrażeniem, jak dobrze to działało. Należy jednak pamiętać, że korekta teoretyczna zwykle nie jest optymalna, a ustawienie jej np. Poprzez walidację krzyżową jest często lepsze.
Dikran Torbacz
Tak, powinienem wspomnieć, że wyniki z krzywej ROC również nie były przekonujące. W tym przypadku myślę, że nie ma progu, który dałby zadowalające wyniki.
Michiel
Odnośnie robienia prognoz: jak mogę wziąć pod uwagę rozmiar mojego zestawu treningowego dla wyników 0 i 1? Rzeczywiście nie chcę używać progu 0,5, ale nie jestem pewien, jak to zrobić w R.
Perlnika
1
@Perlnika Szczegóły znajdują się w papierowym łączu (w najprostszym przypadku zmienisz szacunkowy punkt przecięcia). Aby przekroczyć próg nie na poziomie 0,5, wystarczy pobrać przewidywane prawdopodobieństwa za pomocą predicti obliczyć dla każdego, czy jest ono wyższe niż nowy próg.
conjugateprior
1
@SassaNF Prawdą jest, że przesunięcie przechwytywania można zrównoważyć zmianą progu. To jednak łączy twoje oszacowanie prawdopodobieństwa (wnioskowanie) ze względną kosztownością błędów (funkcja straty), podczas gdy ta ostatnia może różnić się w zastosowaniach. Na przykład, gdy koszt pomylenia 1 z 0 jest C razy większy od kosztu pomylenia 0 z 1, to warto przekroczyć swoje szacunkowe prawdopodobieństwo na poziomie 1 / (1 + C).
conjugateprior
41

Problemem nie jest to, że klasy same w sobie są niezrównoważone, chodzi o to, że klasy mniejszości mogą nie mieć wystarczających wzorców, aby odpowiednio reprezentować ich rozkład. Oznacza to, że problem może powstać dla dowolnego klasyfikatora (nawet jeśli masz problem syntetyczny i wiesz, że masz prawdziwy model), a nie tylko regresję logistyczną. Dobrą rzeczą jest to, że gdy dostępnych jest coraz więcej danych, problem „nierównowagi klas” zwykle ustępuje. Powiedziawszy to, 4: 1 nie jest wcale tak niezrównoważone.

Jeśli używasz zbalansowanego zestawu danych, ważne jest, aby pamiętać, że dane wyjściowe modelu są teraz szacunkiem prawdopodobieństwa a-posteriori, przy założeniu, że klasy są równie powszechne, więc może to spowodować zbyt duże odchylenie modelu. Ważę wzorce należące do każdej klasy inaczej i wybieram wagi, minimalizując entropię krzyżową na zestawie testowym z prawidłowymi częstotliwościami klasy operacyjnej.

Dikran Torbacz
źródło
6
+1If you use a balanced dataset, the important thing is to remember that the output of the model is now an estimate of the a-posteriori probability
Zhubarb
2

Pomyśl o podstawowych rozkładach dwóch próbek. Czy masz wystarczającą próbkę, aby zmierzyć obie subpopulacje bez ogromnej ilości błędu w mniejszej próbce?

Zobacz tutaj, aby uzyskać dłuższe wyjaśnienie.

https://statistichorizons.com/logistic-regression-for-rare-events

Paul Tulloch
źródło
5
To nie wydaje się odpowiadać na pytanie.
Michael Chernick
Jest tak, ponieważ nie ma jednoznacznej odpowiedzi! Chodzi o to, jak go zastosujesz i ile stronniczości jesteś skłonny pozwolić na proces szacowania.
Paul Tulloch
1
Myślę, że to świetna odpowiedź. O ile rozumiem, wszelkie próby skorygowania nierównowagi polegają na pewnej wiedzy zewnętrznej, która nie została uwzględniona w eksperymencie. W szczególności znajomość podstawowej dystrybucji pomogłaby w korektach.
user1700890