Ich habe einen logistischen Regressionsklassifikator erstellt, der für meine Daten sehr genau ist. Jetzt möchte ich besser verstehen, warum es so gut funktioniert. Im Einzelnen möchte ich klassifizieren, welche Features den größten Beitrag leisten (welche Features am wichtigsten sind) und im Idealfall quantifizieren, wie viel jedes Feature zur Genauigkeit des Gesamtmodells (oder etwas in diesem Sinne) beiträgt. Wie mache ich das?
Mein erster Gedanke war, sie nach ihrem Koeffizienten zu ordnen, aber ich vermute, das kann nicht richtig sein. Wenn ich zwei Features habe, die gleichermaßen nützlich sind, aber die Ausbreitung des ersten zehnmal so groß ist wie die des zweiten, würde ich erwarten, dass der erste einen niedrigeren Koeffizienten als der zweite erhält. Gibt es eine vernünftigere Möglichkeit, die Wichtigkeit von Features zu bewerten?
Beachten Sie, dass ich nicht zu verstehen versuche, wie sehr sich eine kleine Änderung des Features auf die Wahrscheinlichkeit des Ergebnisses auswirkt. Vielmehr versuche ich zu verstehen, wie wertvoll jedes Merkmal für die Genauigkeit des Klassifikators ist. Mein Ziel ist es auch nicht so sehr, eine Featureauswahl durchzuführen oder ein Modell mit weniger Features zu konstruieren, sondern zu versuchen, dem erlernten Modell eine gewisse "Erklärbarkeit" zu verleihen, damit der Klassifikator nicht nur eine undurchsichtige Blackbox ist.
Antworten:
Als erstes ist zu beachten, dass Sie keine logistische Regression als Klassifikator verwenden. Die Tatsache, dass binär ist, hat absolut nichts mit der Verwendung dieser Maximum-Likelihood-Methode zur Klassifizierung von Beobachtungen zu tun. Konzentrieren Sie sich danach auf das Goldstandard-Informationsmaß, das ein Nebenprodukt der maximalen Wahrscheinlichkeit ist: die Wahrscheinlichkeitsquote Statistik. Sie können ein Diagramm erstellen, das den Teilbeitrag jedes Prädiktors in Bezug auf seinen Teilbeitrag≤ 2 ≤ 2Y. χ2 χ2 Statistik. Diese Statistiken haben maximale Informationen / Leistung. Sie können den Bootstrap verwenden, um zu zeigen, wie schwierig es ist, "Gewinner" und "Verlierer" zu ermitteln, indem Sie Konfidenzintervalle für die von jedem Prädiktor bereitgestellten Vorhersageinformationen abrufen, sobald die anderen Prädiktoren berücksichtigt wurden. Ein Beispiel finden Sie in Abschnitt 5.4 meiner Kursnotizen - klicken Sie auf Handouts und dann erneut auf Handouts.
Wenn Sie stark korrelierte Features haben, können Sie einen "Chunk-Test" durchführen, um deren Einfluss zu kombinieren. Abbildung 15.11 zeigt ein Diagramm, in dem
size
der kombinierte Beitrag von 4 verschiedenen Prädiktoren dargestellt ist.quelle
Die kurze Antwort ist, dass es keinen "richtigen" Weg gibt, diese Frage zu beantworten.
Die beste Übersicht über die Themen finden Sie in den Arbeiten von Ulrike Groemping, z. B. Schätzer der relativen Bedeutung in der linearen Regression basierend auf der Varianzzerlegung . Die Optionen, über die sie spricht, reichen von einfachen Heuristiken bis hin zu anspruchsvollen, CPU-intensiven, multivariaten Lösungen.
http://prof.beuth-hochschule.de/fileadmin/prof/groemp/downloads/amstat07mayp139.pdf
Groemping schlägt ihren eigenen Ansatz in einem R-Paket mit dem Namen RELAIMPO vor, das ebenfalls eine Lektüre wert ist.
https://cran.r-project.org/web/packages/relaimpo/relaimpo.pdf
Eine schnelle und schmutzige Heuristik, die ich verwendet habe, besteht darin, die mit jedem Parameter verknüpften Chi-Quadrate (F-Werte, t-Statistiken) zu summieren und die einzelnen Werte mit dieser Summe erneut zu prozentualisieren. Das Ergebnis wäre eine Metrik von relativer Wichtigkeit.
Trotzdem war ich noch nie ein Fan von "standardisierten Beta-Koeffizienten", obwohl diese vom Beruf häufig empfohlen und weit verbreitet werden. Hier ist das Problem mit ihnen: Die Standardisierung ist univariat und außerhalb der Modelllösung. Mit anderen Worten, dieser Ansatz spiegelt nicht den bedingten Charakter der Ergebnisse des Modells wider.
quelle
Ein ziemlich robuster Weg, dies zu tun, wäre, zu versuchen, das Modell N-mal anzupassen, wobei N die Anzahl der Merkmale ist. Verwenden Sie jedes Mal N-1 der Funktionen und lassen Sie eine Funktion weg. Anschließend können Sie Ihre bevorzugte Validierungsmetrik verwenden, um zu messen, inwieweit sich das Einbeziehen oder Ausschließen der einzelnen Features auf die Leistung des Modells auswirkt. Abhängig von der Anzahl der Features kann dies rechenintensiv sein.
quelle
In Bezug auf Ihren letzten Punkt ist es natürlich möglich, dass eine Variable viel zu den geschätzten Log-Quoten beiträgt, während sie die "wahren" Log-Quoten nicht wesentlich beeinflusst, aber ich denke nicht, dass dies zu besorgniserregend sein muss, wenn wir Vertrauen in das Verfahren, mit dem die Schätzungen erstellt wurden.
quelle
Sie haben Recht, warum Sie die Koeffizienten nicht als Maß für die Relevanz verwenden sollten, aber Sie können es durchaus, wenn Sie sie durch ihren Standardfehler dividieren! Wenn Sie das Modell mit R geschätzt haben, dann ist es bereits für Sie erledigt! Sie können sogar die unwichtigsten Funktionen aus dem Modell entfernen und sehen, wie es funktioniert.
Ein heuristischerer Ansatz, um zu untersuchen, wie sich unterschiedliche Änderungen der Variablen auf das Ergebnis auswirken, ist genau das: Probieren Sie verschiedene Eingaben aus und untersuchen Sie deren geschätzte Wahrscheinlichkeiten. Da Ihr Modell jedoch recht einfach ist, würde ich dagegen sprechen
quelle