Amarengo

Articles and news

Regularisierungsansätze für die logistische Regression mit Ridge- und Lasso-Regression mit ICU-Daten für WiDS Datathon 2020

Die Daten sind Teil des WIDS Datathon 2020.

Ich werde die Daten lesen und dann ihre Dimensionen betrachten und dann auch zusammenfassende Statistiken betrachten, wie viele Werte für die Variablen null sind.

Es gibt 186 Spalten und 91713 Zeilen. Wir werden eine logistische Regressionsanalyse der Daten durchführen, aber zuerst werden wir einige Zusammenfassungsstatistiken ausführen und sehen, wie die Daten aussehen und wie viele Zeilen Nullen sind und

Einige der Spalten haben so viele Nullzeilen, also werden wir diese aus der Analyse entfernen, da viele Zeilen fast mehr als 70.000 Zeilen als Nullen haben.

Wir werden jedoch eine vereinfachte Methode verwenden und in das logistische Regressionsmodell aufnehmen, in das wir nur die Daten in das Modell aufnehmen, wenn weniger als 3000 Nullwerte vorhanden sind. Dieser Ansatz ist naiv und simpel, aber für unsere erste Analyse werden wir diesen Ansatz verwenden, spät in den Beispielen werde ich auch zeigen, wie man Regularisierungsansätze wie Ridge Regression, Lasso Regression und Elastic Net auch für die Regularisierung verwenden kann, um die Anzahl der Variablen oder deren Auswirkungen zu reduzieren.

Wir werden das Modell mit den Variablen ausführen, die nicht mehr als 3000 Nullwerte haben, daher werden wir diese Variablen in unserem ersten Modelllauf verwenden.

Wenn Sie dieses Modell ausführen, erhalten Sie diese Ergebnisse, und wenn Sie nur einen ersten Blick darauf werfen, können Sie feststellen, dass es ziemlich viele Variablen gibt, die auf 0.001-Ebene nicht signifikant sind und kein Signifikanzzeichen enthalten, wie unten gezeigt. Fisher Iteration Scores ist auch ziemlich hoch und ist 11, dieser Kern sollte im Bereich von 6-8 liegen und zeigt, dass das Modell nicht gültig ist. Wir werden auch das Mcfadden R2 Quadrat für das logistische Modell berechnen und es zeigt einen Wert von 0.5478738 kann ein solcher Wert jedoch nicht isoliert genommen werden, da das Modell ziemlich viele Werte enthält, die nicht signifikant sind, und wir wissen auch, dass das R-Quadrat umso höher ist, je mehr Werte sich im Modell befinden, unabhängig davon, ob das Modell robust oder gültig ist oder nicht.

Mcfaddens R-Quadrat-Berechnung

Als nächstes werden wir das Modell erneut ausführen, aber die Variablen entfernen, die bei p-Wert in einigen der unteren Bereiche nicht signifikant sind, und wir werden das Modell dann erneut mit den verbleibenden Variablen ausführen und das vorhersagen wirksamkeit des Modells. Dies sind die Variablen, die aus dem Modell entfernt wurden, und wir haben das Modell mit den verbleibenden Funktionen erneut ausgeführt. Dieser Ansatz ist manueller Natur und vereinfacht, wir können auch die Entfernung von Schritten vorwärts oder rückwärts verwenden.

Die Variablen, die aufgrund sehr niedriger oder keiner signifikanten p-Wert-Werte aus dem Modell entfernt wurden, waren wie folgt:-

ethnizität, Geschlecht, Größe, icu_id, apache_2_diagnosis, apache_3j_diagnosis, apache_post_operative, gcs_verbal_apache,readmission_status
heart_rate_apache, temp_apache d1_diasbp, max -d1_diasbp_min
intubierter Schmerz, d1_mbp_max, d1_mbp_min, d1_mbp_noninvasive_max
d1_mbp_noninvasive_min, d1_resprate_max, d1_resprate_min
d1_sysbp_max, d1_sysbp_min, d1_sysbp_noninvasive_max, d1_sysbp_noninvasive_min, h1_sysbp_max, h1_sysbp_min, aids, lymphom

Die neue modell ist wie folgt:-

Im neuen Fall können wir sehen, dass unsere Modell-p-Werte für viele der Variablen ziemlich stark gestiegen sind, jedoch sind die Fisher-Iterationen immer noch 11, was etwas hoch ist und sehr hohe Werte mehr als der ideale Bereich zwischen 6 und 8 bedeutet, dass das Modell möglicherweise nicht konvergiert hat. A1C ist das gleiche wie das letzte Modell, also zwischen diesem und dem vorherigen Modell, werden wir dieses Modell über das andere Modell aufgrund der p-Werte wählen, aber keineswegs ist dies ein ideales Modell, wir müssen ziemlich mehr Arbeit mit Regularisierung machen, um dieses Modell zu einem effektiveren Modell zu machen. Thee Mcfadden R squared ist immer noch fast im gleichen Bereich und zeigt den Wert von 0.5359914.

Als nächstes werden wir die Gratregression für die Variablen ausführen. Wir werden einige zusätzliche Bibliotheken verwenden, wie unten glmnet , glmUtils , wrapr , und wir werden auch die unabhängigen und abhängigen Variablen behalten, wie vom letzten Modell.

Hier werden wir die Formel einrichten und dann die Gratregression ausführen.

Dies sind die Ergebnisse der Gratregression, die wir erhalten haben.

Die Ridge-Regression gibt uns keine Interpretation wie das reguläre logistische Regressionsmodell mit p-Werten, dies zeigt jedoch, wie hoch die Werte der Koeffizienten sein werden, und die Ridge-Regression reduziert die Werte für die Variablen, die nicht signifikant sind, näher an 0, nimmt es jedoch nicht bis 0 oder entfernt auch die Variablen. Dies kann auch unten gezeigt werden, wenn wir die Liste der Koeffizienten im Modell sehen.

Hier können wir sehen, dass die Werte der Koeffizienten, die der Grat Regression, fast machte es näher an 0. Dies ist aus der Grafik wie unten gezeigt ersichtlich:-

Als nächstes werden wir die Lasso-Regression ausführen, die einige Variablen auf Null setzt, die keine starke Vorhersagefähigkeit mit der abhängigen Variablen haben. Wir werden den gleichen Code wie zuvor verwenden und nur den Wert von alpha von 0 auf 1 ändern.

Die Ergebnisse, die wir erhalten, sind wie folgt:-

Hier können wir sehen, dass es in der Lasso-Regression viele Werte auf 0 gesetzt hat, und dort zeigen Koeffizienten a.

Die gleichen Daten können in der Diagrammform wie folgt dargestellt werden, was zeigt, dass viele Variablen, deren Werte auf 0 gesetzt wurden.

Dies ist eine sehr grundlegende Einführung in einige der Ansätze, die bei der Reduzierung der Anzahl der Variablen im Modell angewendet werden könnten. Man kann sich PCA (Principal Component Analysis) sowie den Elastic Net-Ansatz ansehen, um das Modell weiter voranzutreiben. Auch der wahre Wert des Modells wird nur angezeigt, wenn wir das Modell auf den Testdaten laufen sehen können, die wir nicht gesehen haben und durchgehalten haben.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.