Zrozumienie, które cechy były najważniejsze dla regresji logistycznej

17

Zbudowałem klasyfikator regresji logistycznej, który jest bardzo dokładny na moich danych. Teraz chcę lepiej zrozumieć, dlaczego tak dobrze działa. W szczególności chciałbym uszeregować, które funkcje mają największy udział (które cechy są najważniejsze) i, najlepiej, obliczyć, ile każda cecha przyczynia się do dokładności całego modelu (lub czegoś w tym stylu). Jak mam to zrobic?

Moją pierwszą myślą było uszeregowanie ich na podstawie ich współczynnika, ale podejrzewam, że to nie może być prawda. Jeśli mam dwie funkcje, które są równie przydatne, ale rozkład pierwszego jest dziesięć razy większy niż drugi, to spodziewałbym się, że pierwszy otrzyma niższy współczynnik niż drugi. Czy istnieje bardziej rozsądny sposób oceny ważności funkcji?

Zauważ, że nie próbuję zrozumieć, jak mała zmiana w funkcji wpływa na prawdopodobieństwo wyniku. Staram się raczej zrozumieć, jak cenna jest każda funkcja, jeśli chodzi o dokładność klasyfikatora. Poza tym moim celem jest nie tyle wybranie funkcji, albo skonstruowanie modelu z mniejszą liczbą funkcji, ale próba zapewnienia „wyjaśnienia” wyuczonego modelu, aby klasyfikator nie był tylko nieprzejrzystą czarną skrzynką.

DW
źródło
Wrzuciłbym, że Losowe lasy to także dobra technika. Możesz sprawdzić najwyższe podziały nad lasem, aby uzyskać intuicję, które cechy najbardziej wpływają na przewidywanie.

Odpowiedzi:

14

Pierwszą rzeczą do odnotowania jest to, że nie używasz regresji logistycznej jako klasyfikatora. Fakt, że jest binarny, nie ma absolutnie nic wspólnego z użyciem tej metody największego prawdopodobieństwa do faktycznej klasyfikacji obserwacji. Kiedy to miniesz, skoncentruj się na złotym standardzie informacji, który jest produktem ubocznym o maksymalnym prawdopodobieństwie: statystyce ilorazu prawdopodobieństwa . Możesz stworzyć wykres pokazujący częściowy wkład każdego predyktora pod względem jego częściowegoYχ2χ2Statystyczny. Te statystyki mają maksymalną informację / moc. Możesz użyć bootstrap, aby pokazać, jak trudno jest wybrać „zwycięzców” i „przegranych”, uzyskując przedziały ufności w szeregach informacji predykcyjnych dostarczanych przez każdy predyktor po uwzględnieniu innych predyktorów. Przykład znajduje się w sekcji 5.4 moich notatek z kursu - ponownie kliknij Materiały, a następnie Materiały ponownie.

Jeśli masz wysoce skorelowane funkcje, możesz wykonać „test fragmentu”, aby połączyć ich wpływ. Wykres, który to robi, jest przedstawiony na rysunku 15.11, gdzie sizeprzedstawia łączny udział 4 oddzielnych predyktorów.

Frank Harrell
źródło
6

Krótka odpowiedź jest taka, że ​​nie ma jednego „właściwego” sposobu na udzielenie odpowiedzi na to pytanie.

Aby zapoznać się z najlepszym przeglądem zagadnień, zobacz artykuły Ulrike Groemping, np. Estimators of Relative Sensance in Linear Regression Based on Decarianition Decomposition . Opcje, które omawia, obejmują zarówno proste heurystyki, jak i zaawansowane rozwiązania wielowymiarowe wymagające dużej mocy obliczeniowej.

http://prof.beuth-hochschule.de/fileadmin/prof/groemp/downloads/amstat07mayp139.pdf

Groemping proponuje własne podejście w pakiecie R o nazwie RELAIMPO, które również warto przeczytać.

https://cran.r-project.org/web/packages/relaimpo/relaimpo.pdf

Jedną szybką i nieprzyzwoitą heurystyką, której użyłem, jest zsumowanie kwadratów chi (wartości F, statystyki t) powiązanych z każdym parametrem, a następnie ponowne zredagowanie poszczególnych wartości tą sumą. Wynik byłby miarą względnego znaczenia możliwego do oszacowania.

To powiedziawszy, nigdy nie byłem fanem „standardowych współczynników beta”, chociaż są one często zalecane przez profesję i szeroko stosowane. Oto problem z nimi: standaryzacja jest jednoznaczna i zewnętrzna w stosunku do rozwiązania modelowego. Innymi słowy, to podejście nie odzwierciedla warunkowej natury wyników modelu.

Mike Hunter
źródło
Dzięki za odpowiedź i linki! Czy możesz opracować lub pomóc mi zrozumieć, co oznacza „zewnętrzny do modelu” i „warunkowa natura wyników modelu”? (Niestety nie jestem ekspertem w dziedzinie statystyki)
DW
1
Bez obaw. Pojęcie, w jaki sposób modele „kontrolują” lub warunek dla innych czynników w modelu, może być jedną z tych rzeczy, co do których wielu statystów może się zgodzić. Jest to także temat, który spotkał się z wieloma komentarzami na tej stronie. Oto link do jednego z takich wątków: stats.stackexchange.com/questions/17336/... Jednym z najlepszych komentarzy był @whuber, który powiedział: „Możesz myśleć o„ kontrolowaniu ”jak o rachunkowości (w najmniejszym sensie kwadratowym) ) za wkład / wpływ / efekt / powiązanie zmiennej na wszystkie pozostałe zmienne. ”
Mike Hunter
Dzięki! Znam pojęcie „kontrolowania” jakiegoś czynnika. W jaki sposób odnosi się to lub pomaga zrozumieć znaczenie „zewnętrznego dla rozwiązania modelowego” lub „warunkowej natury wyników modelu”?
DW
Standaryzacja predyktorów w celu utworzenia „znormalizowanej wersji beta” jest zwykle wykonywana przed zbudowaniem modelu, prawda? Dlatego transformacja ta jest „zewnętrzna” w stosunku do rozwiązania modelu. Jak dotąd ze mną?
Mike Hunter
DOBRZE. Rozumiem teraz, co rozumiesz przez „zewnętrzny” - dziękuję za wyjaśnienie. Czy możesz wyjaśnić, dlaczego jest to problem i co należy rozumieć przez „naturę warunkową ...”? (Może te dwa pytania są tym samym pytaniem z tą samą odpowiedzią ...) Przepraszam, że zadałem ci pytania! Chcę zrozumieć, co napisałeś.
DW
3

Dość solidnym sposobem na zrobienie tego byłoby spróbowanie dopasowania modelu N razy, gdzie N jest liczbą funkcji. Za każdym razem używaj N-1 funkcji i pomiń jedną z nich. Następnie możesz użyć swojej ulubionej miary sprawdzania poprawności, aby zmierzyć, w jakim stopniu włączenie lub wyłączenie każdej funkcji wpływa na wydajność modelu. W zależności od liczby posiadanych funkcji może to być kosztowne obliczeniowo.

Daniel Johnson
źródło
4
To nie obsługuje dobrze skorelowanych funkcji. Łatwo jest skonstruować sytuację, w której dwie cechy są wysoce skorelowane, tak że usunięcie jednej z nich wpływa minimalnie na moc predykcyjną, ale usunięcie obu wpływa poważnie. Zasadniczo jeden, w którym dwa predyktory niosą prawie identyczne, ale ważne informacje.
Matthew Drury
2
Zgadzam się. Jest to również niebezpieczne podczas badania współczynników.
Daniel Johnson
1
Całkiem prawdziwe. Całkiem prawdziwe.
Matthew Drury
2

|βj^||βj^|σ^jxj. Jednym z problemów jest to, że rozkłada się, gdy nie masz już do czynienia z predyktorami numerycznymi.

Jeśli chodzi o twój ostatni punkt, to oczywiście możliwe, że zmienna może znacznie przyczynić się do oszacowania prawdopodobieństwa logarytmu, nie wpływając w rzeczywistości na „prawdziwy” logarytm, ale nie sądzę, żeby to musiało być zbyt dużym problemem, jeśli mieć zaufanie do procedury, która doprowadziła do oszacowań.

dsaxton
źródło
0

Masz rację, dlaczego nie powinieneś używać współczynników jako miernika trafności, ale absolutnie możesz, jeśli podzielisz je przez ich standardowy błąd! Jeśli oszacowałeś model za pomocą R, jest to już zrobione dla Ciebie! Możesz nawet usunąć najmniej ważne funkcje z modelu i zobaczyć, jak to działa.

Bardziej heurystyczne podejście do badania, w jaki sposób różne zmiany zmiennych wpływają na wynik, robi dokładnie to: wypróbuj różne dane wejściowe i zbadaj ich szacunkowe prawdopodobieństwo. Ponieważ jednak twój model jest dość prosty, uzgadniałbym się z tym

David
źródło