Interpretation der Ausgabe von R für die binomiale Regression


38

Ich bin ziemlich neu in diesem Bereich mit Binomialdatentests, musste aber einen durchführen, und jetzt bin ich nicht sicher, wie ich das Ergebnis interpretieren soll. Die y-Variable, die Antwortvariable, ist binomisch und die erklärenden Faktoren sind stetig. Folgendes habe ich bei der Zusammenfassung des Ergebnisses erhalten:

glm(formula = leaves.presence ~ Area, family = binomial, data = n)

Deviance Residuals: 
Min      1Q  Median      3Q     Max  
-1.213  -1.044  -1.023   1.312   1.344  

Coefficients:
                        Estimate Std. Error z value Pr(>|z|) 
(Intercept)           -0.3877697  0.0282178 -13.742  < 2e-16 ***
leaves.presence        0.0008166  0.0002472   3.303 0.000956 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1   1 
(Dispersion parameter for binomial family taken to be 1)

Null deviance: 16662  on 12237  degrees of freedom
Residual deviance: 16651  on 12236  degrees of freedom
(314 observations deleted due to missingness)
AIC: 16655
Number of Fisher Scoring iterations: 4

Es gibt eine Reihe von Dingen, die ich hier nicht verstehe. Was bedeutet das wirklich?

                        Estimate Std. Error z value Pr(>|z|) 
(Intercept)           -0.3877697  0.0282178 -13.742  < 2e-16 ***
leaves.presence        0.0008166  0.0002472   3.303 0.000956 ***

Und was bedeuten AIC und Anzahl der Fisher-Scoring-Iterationen?

> fit
Call:  glm(formula = Lövförekomst ~ Areal, family = binomial, data = n)

Coefficients:
(Intercept)        Areal  
-0.3877697    0.0008166  

Degrees of Freedom: 12237 Total (i.e. Null);  12236 Residual
(314 observations deleted due to missingness)
Null Deviance:      16660 
Residual Deviance: 16650        AIC: 16650

Und hier was bedeutet das:

Coefficients:
(Intercept)        Areal  
-0.3877697    0.0008166 

6
Da Ihre Frage sehr weit gefasst ist - "Wie interpretiert man eine binomische Regression?" - Ich würde vorschlagen, einen Einführungstext zum Thema aufzunehmen. Agrestis Einführung in die kategoriale Datenanalyse ist sehr zugänglich.
Setzen Sie Monica

2
Dies könnte zu weit gefasst sein, um hier zu antworten. Wie @ user777 sagte, könnte es angebracht sein, einen guten Text zu konsultieren. Agresti ist gut, da stimme ich zu. Hosmer & Lemeshow ist auch gut. Wenn Sie etwas Kurzes und Freies (Self-Plug-Alarm) möchten, lesen Sie meine Einführung in die logistische Regression, aber es ist möglicherweise zu einfach für Ihre Anforderungen.
Peter Flom - Wiedereinsetzung von Monica

Ok, danke für die schnellen Antworten, ich werde Agresti ausprobieren und sehen, ob es hilft :)
user40116

4
Ich denke nicht, dass diese Frage zu weit gefasst ist, um beantwortet zu werden. Es scheint mir im Wesentlichen die logistische Regressionsversion der Interpretation von rs-lm-Output zu sein , die konsequent thematisiert wurde.
gung - Wiedereinsetzung von Monica

1
Ich bin mit @gung in diesem Fall, wenn es um die Interpretation geht, was R auf den Bildschirm gespritzt hat. Wo es Unklarheiten gibt, ist was mit "gemein" gemeint? Wenn dem OP gerne mitgeteilt wird, dass die Koeffizienten die geschätzten Werte des Modells mit Werten auf der Skala der logarithmischen Quoten sind, ist dieses Q in Ordnung. Wenn das OP damit nicht zufrieden ist und eine Erklärung ihrer Bedeutung in Bezug auf die Daten, das Modell usw. benötigt, wäre dies eine zu weit gefasste Frage, da dies nur eine von mehreren gestellten Fragen ist.
Setzen Sie Monica - G. Simpson

Antworten:


74

Was Sie getan haben, ist die logistische Regression . Dies kann grundsätzlich in jeder statistischen Software erfolgen, und die Ausgabe ist ähnlich (zumindest inhaltlich, auch wenn die Darstellung unterschiedlich sein kann). Es gibt einen Leitfaden zur logistischen Regression mit R auf der Hilfe-Website der UCLA für exzellente Statistiken. Wenn Sie damit nicht vertraut sind, kann meine Antwort hier: Unterschied zwischen logit- und probit-Modellen Ihnen helfen, zu verstehen, worum es bei LR geht (obwohl es in einem anderen Kontext geschrieben ist).

Sie scheinen zwei Modelle vorgestellt zu haben, ich werde mich in erster Linie auf das oberste konzentrieren. Darüber hinaus scheint es ein Fehler beim Kopieren und Einfügen des Modells oder ausgegeben zu haben, so dass ich tauschen werde leaves.presencemit Areain der Ausgabe mit dem Modell konsistent zu machen. Hier ist das Modell, auf das ich mich beziehe (beachten Sie, dass ich hinzugefügt habe (link="logit"), was impliziert wird family=binomial; siehe ? Glm und ? Family ):

glm(formula = leaves.presence ~ Area, family = binomial(link="logit"), data = n)

Lassen Sie uns diese Ausgabe durchgehen (beachten Sie, dass ich den Namen der Variablen in der zweiten Zeile darunter geändert habe Coefficients):

Deviance Residuals: 
   Min      1Q  Median      3Q     Max  
-1.213  -1.044  -1.023   1.312   1.344  

Coefficients:
                        Estimate Std. Error z value Pr(>|z|) 
(Intercept)           -0.3877697  0.0282178 -13.742  < 2e-16 ***
Area                   0.0008166  0.0002472   3.303 0.000956 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1   1 
(Dispersion parameter for binomial family taken to be 1)

    Null deviance: 16662  on 12237  degrees of freedom
Residual deviance: 16651  on 12236  degrees of freedom
(314 observations deleted due to missingness)
AIC: 16655
Number of Fisher Scoring iterations: 4

Ebenso wie es Residuen in der linearen (OLS) Regression gibt, kann es auch Residuen in der logistischen Regression und anderen verallgemeinerten linearen Modellen geben. Sie sind jedoch komplizierter, wenn die Antwortvariable nicht kontinuierlich ist. GLiMs können fünf verschiedene Arten von Residuen haben, aber was als Standard aufgeführt wird, sind die Abweichungs-Residuen. ( Abweichungen und Abweichungsreste sind weiter fortgeschritten, daher werde ich mich hier kurz fassen. Wenn diese Diskussion etwas schwierig zu verfolgen ist, würde ich mir keine Sorgen machen. Sie können sie überspringen.)

Deviance Residuals: 
   Min      1Q  Median      3Q     Max  
-1.213  -1.044  -1.023   1.312   1.344  

Für jeden in Ihrem Modell verwendeten Datenpunkt wird die mit diesem Punkt verknüpfte Abweichung berechnet. Nachdem Sie dies für jeden Punkt getan haben, haben Sie eine Reihe solcher Residuen, und die obige Ausgabe ist einfach eine nicht parametrische Beschreibung ihrer Verteilung.


Als nächstes sehen wir die Informationen über die Kovariaten, woran die Leute normalerweise hauptsächlich interessiert sind:

Coefficients:
                        Estimate Std. Error z value Pr(>|z|) 
(Intercept)           -0.3877697  0.0282178 -13.742  < 2e-16 ***
Area                   0.0008166  0.0002472   3.303 0.000956 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1   1 

Für ein einfaches logistisches Regressionsmodell wie dieses gibt es nur eine Kovariate ( Areahier) und den Achsenabschnitt (manchmal auch als "Konstante" bezeichnet). Wenn Sie eine mehrfache logistische Regression hätten, würden unter diesen zusätzliche Kovariaten aufgeführt, aber die Interpretation der Ausgabe wäre dieselbe. Unter Estimatein der zweiten Zeile steht der Koeffizient, der der links aufgelisteten Variablen zugeordnet ist. Dies ist der geschätzte Betrag, um den sich die Log-Quote leaves.presenceerhöhen würde, wenn Areaeine Einheit höher wäre. Die Log-Quote von leaves.presencewann Areaist ist knapp über der ersten Zeile. (Wenn Sie mit Log Odds nicht ausreichend vertraut sind, können Sie meine Antwort hier lesen: Interpretation einfacher Vorhersagen zu Odds Ratios in der logistischen Regression0.) In der nächsten Spalte sehen wir den mit diesen Schätzungen verbundenen Standardfehler . Das heißt, sie sind eine Schätzung, wie viel diese Schätzungen im Durchschnitt herumspringen würden, wenn die Studie identisch, aber mit immer neuen Daten wiederholt würde. (Wenn Sie mit der Idee eines Standardfehlers nicht sehr vertraut sind, kann es hilfreich sein, hier meine Antwort zu lesen: Wie interpretiere ich Koeffizienten-Standardfehler in linearer Regression? ) Wenn wir die Schätzung durch den Standardfehler dividieren würden, würden wir erhalten Sie einen Quotienten, von dem angenommen wird, dass er normal mit ausreichend großen Stichproben verteilt ist. Dieser Wert ist unter aufgeführt z value. Nachfolgend Pr(>|z|)sind die zweiseitigen p-Werte aufgeführtdie diesen z-Werten in einer Standardnormalverteilung entsprechen. Schließlich gibt es die traditionellen Bedeutungssterne (und beachten Sie den Schlüssel unter der Koeffiziententabelle).


Die DispersionZeile wird standardmäßig mit GLiMs gedruckt, fügt hier jedoch nicht viele Informationen hinzu (dies ist bei Zählmodellen wichtiger). Das können wir ignorieren.


Zuletzt erhalten wir Informationen über das Modell und seine Passgenauigkeit:

    Null deviance: 16662  on 12237  degrees of freedom
Residual deviance: 16651  on 12236  degrees of freedom
(314 observations deleted due to missingness)
AIC: 16655
Number of Fisher Scoring iterations: 4

Die Zeile über missingnessfehlt oft. Es zeigt sich hier, weil Sie für die entweder 314 Beobachtungen hatte leaves.presence, Areaoder beide fehlten. Diese Teilbeobachtungen wurden nicht zur Anpassung des Modells herangezogen.

Dies Residual devianceist ein Maß für die Nichtanpassung Ihres Modells als Ganzes, wohingegen dies Null devianceein Maß für ein reduziertes Modell ist, das nur den Achsenabschnitt enthält. Beachten Sie, dass sich die mit diesen beiden verbundenen Freiheitsgrade nur um einen unterscheiden. Da Ihr Modell nur eine Kovariate hat, wurde nur ein zusätzlicher Parameter geschätzt (der Estimatefür Area), und daher wurde nur ein zusätzlicher Freiheitsgrad verbraucht. Diese beiden Werte können verwendet werden, um einen Test des gesamten Modells durchzuführen, der analog zum globalen Test ist, der mit einem multiplen linearen Regressionsmodell geliefert wird. Da Sie nur eine Kovariate haben, wäre ein solcher Test in diesem Fall uninteressant. F

Der AIC ist ein weiteres Maß für die Anpassungsgüte, das die Fähigkeit des Modells berücksichtigt, die Daten anzupassen. Dies ist sehr nützlich, wenn zwei Modelle verglichen werden, bei denen eines möglicherweise besser passt, aber möglicherweise nur, weil sie flexibler sind und daher besser in der Lage sind, Daten aufzunehmen. Da Sie nur ein Modell haben, ist dies nicht aussagekräftig.

Der Verweis auf Fisher scoring iterationshat damit zu tun, wie das Modell geschätzt wurde. Ein lineares Modell kann durch Lösen geschlossener Formgleichungen angepasst werden. Leider ist dies mit den meisten GLiMs einschließlich logistischer Regression nicht möglich. Stattdessen wird ein iterativer Ansatz ( standardmäßig der Newton-Raphson-Algorithmus ) verwendet. Das Modell ist locker passend, basierend auf einer Schätzung, wie hoch die Schätzungen sein könnten. Der Algorithmus prüft dann, ob sich die Anpassung verbessern lässt, indem stattdessen andere Schätzungen verwendet werden. In diesem Fall bewegt es sich in diese Richtung (z. B. mit einem höheren Wert für die Schätzung) und passt das Modell dann erneut an. Der Algorithmus stoppt, wenn er nicht wahrnimmt, dass eine erneute Bewegung zu einer weiteren Verbesserung führen würde. Diese Zeile gibt an, wie viele Iterationen vor dem Anhalten des Prozesses stattgefunden haben, und gibt die Ergebnisse aus.



In Bezug auf das zweite Modell und die Ausgabe, die Sie auflisten, ist dies nur eine andere Art der Anzeige von Ergebnissen. Insbesondere diese

Coefficients:
(Intercept)       Areal  
-0.3877697    0.0008166

Es handelt sich um die gleiche Art von Schätzungen, die oben erörtert wurden (allerdings aus einem anderen Modell und mit weniger ergänzenden Informationen).


1

Anruf : Dies ist nur der Anruf, den Sie an die Funktion getätigt haben. Es ist genau der gleiche Code, den Sie in R eingegeben haben. Dies kann hilfreich sein, um festzustellen, ob Sie Tippfehler gemacht haben.

(Abweichungs-) Residuen: Sie können diese für die logistische Regression so gut wie ignorieren. Für Poisson oder lineare Regression möchten Sie, dass diese mehr oder weniger normalverteilt sind (was dasselbe ist, was die beiden oberen Diagnosediagramme überprüfen). Sie können dies überprüfen, indem Sie prüfen, ob der Absolutwert von 1Q und 3Q nahe beieinander (ish) liegt und der Median nahe bei 0 liegt. Der Mittelwert wird nicht angezeigt, weil er immer 0 ist Sie haben wahrscheinlich einige seltsame Verzerrungen in Ihren Daten. (Dies wird auch in Ihren Diagnoseplots angezeigt!)

Koeffizienten : Dies ist das Fleisch der Ausgabe.

  • Intercept : Für Poisson- und lineare Regression ist dies die vorhergesagte Ausgabe, wenn alle unsere Eingaben 0 sind. Für logistische Regression ist dieser Wert umso weiter von 0 entfernt, je größer die Differenz zwischen der Anzahl der Beobachtungen in jeder Klasse ist. Der Standardfehler ist wie unsicher wir darüber sind (niedriger ist besser). In diesem Fall können wir ziemlich sicher sein, dass eine unserer Klassen (fehlgeschlagen oder nicht fehlgeschlagen) viel mehr Beobachtungen enthält, da unser Achsenabschnitt weit von 0 entfernt ist und unser Standardfehler viel kleiner als der Achsenabschnitt ist. (In diesem Fall ist es zum Glück "nicht fehlgeschlagen"!)

  • Verschiedene Eingaben (jede Eingabe befindet sich in einer anderen Zeile): Diese Schätzung gibt an, wie stark sich die Ausgabe unseres Erachtens jedes Mal ändert, wenn wir diese Eingabe um 1 erhöhen. Je größer die Schätzung, desto größer die Auswirkung dieser Eingabevariable auf die Ausgabe. Der Standardfehler ist, wie sicher wir sind. Normalerweise können wir ziemlich sicher sein, dass eine Eingabe informativ ist, wenn der Standardfehler 1/10 der Schätzung beträgt. In diesem Fall sind wir uns ziemlich sicher, dass das Abfangen wichtig ist.

  • Signif. Codes : Dies ist ein Schlüssel für die Bedeutung der einzelnen: Eingabe und des Abfangens. Diese sind nur korrekt, wenn Sie Ihren Daten immer nur ein Modell zuordnen. (Mit anderen Worten, sie eignen sich hervorragend für experimentelle Daten, wenn Sie von Anfang an wissen, an welchen Variablen Sie interessiert sind, und sind nicht so aussagekräftig für die Datenanalyse oder die Variablenauswahl.)

    Warten Sie, warum können wir keine statistische Signifikanz verwenden? Sie können, ich würde es nur generell nicht empfehlen. In der Datenwissenschaft werden Sie häufig mehrere Modelle mit demselben Datensatz anpassen, um das beste Modell auszuwählen. Wenn Sie jemals mehr als einen Test auf statistische Signifikanz mit demselben Datensatz durchgeführt haben, müssen Sie Ihren p-Wert anpassen, um dies auszugleichen. Sie können sich das so vorstellen: Wenn Sie entscheiden, dass Sie Ergebnisse akzeptieren, die unter p = 0,05 liegen, sagen Sie im Grunde genommen, dass es in Ordnung ist, dass Sie sich zwanzig Mal geirrt haben. Wenn Sie dann jedoch fünf Tests durchführen und für jeden eine 1/20-Wahrscheinlichkeit besteht, dass Sie sich irren, haben Sie jetzt eine 1/4-Chance, bei mindestens einem dieser Tests falsch gelegen zu haben ... aber Sie Ich weiß nicht welches. Sie können es korrigieren (Durch Multiplizieren des p-Wertes, den Sie als signifikant akzeptieren, mit der Anzahl der Tests, die Sie durchführen werden. In der Praxis finde ich es jedoch im Allgemeinen einfacher, die Verwendung von p-Werten insgesamt zu vermeiden.

(Dispersionsparameter für Binomialfamilie als 1 angenommen): Dies wird nur für Poisson- und Binomial- (logistische) Regression angezeigt. Sie werden lediglich darüber informiert, dass ein zusätzlicher Skalierungsparameter hinzugefügt wurde, der die Anpassung an das Modell erleichtert. Sie können es ignorieren.

Nullabweichung: Die Nullabweichung gibt an, wie gut wir unsere Ausgabe nur unter Verwendung des Abschnitts vorhersagen können. Kleiner ist besser.

Restabweichung : Die Restabweichung gibt an, wie gut wir unsere Ausgabe anhand des Abschnitts und unserer Eingaben vorhersagen können. Kleiner ist besser. Je größer der Unterschied zwischen der Nullabweichung und der Restabweichung ist, desto hilfreicher waren unsere Eingabevariablen für die Vorhersage der Ausgabevariablen.

AIC: Der AIC ist das "Akaike-Informationskriterium" und eine Schätzung, wie gut Ihr Modell die Muster in Ihren Daten beschreibt. Es wird hauptsächlich zum Vergleichen von Modellen verwendet, die mit demselben Datensatz trainiert wurden. Wenn Sie zwischen Modellen wählen müssen, kann das Modell mit dem niedrigeren AIC die Varianz in den Daten besser beschreiben.

Anzahl der Fisher-Scoring-Iterationen: Dies ist nur ein Maß dafür, wie lange es gedauert hat, bis Ihr Modell passt. Sie können es ignorieren.

Ich schlage dieses Toturial vor, um mehr zu erfahren. https://www.kaggle.com/rtatman/regression-challenge-day-5

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.