Warum unterscheiden sich rlm () - Regressionskoeffizientenschätzungen von lm () in R?


15

Ich benutze rlm im R MASS-Paket, um ein multivariates lineares Modell zu regressieren. Es funktioniert gut für eine Reihe von Samples, aber ich erhalte Quasi-Null-Koeffizienten für ein bestimmtes Modell:

Call: rlm(formula = Y ~ X1 + X2 + X3 + X4, data = mymodel, maxit = 50, na.action = na.omit)
Residuals:
       Min         1Q     Median         3Q        Max 
-7.981e+01 -6.022e-03 -1.696e-04  8.458e-03  7.706e+01 

Coefficients:
             Value    Std. Error t value 
(Intercept)    0.0002   0.0001     1.8418
X1             0.0004   0.0000    13.4478
X2            -0.0004   0.0000   -23.1100
X3            -0.0001   0.0002    -0.5511
X4             0.0006   0.0001     8.1489

Residual standard error: 0.01086 on 49052 degrees of freedom
  (83 observations deleted due to missingness)

Zum Vergleich sind dies die mit lm () berechneten Koeffizienten:

Call:
lm(formula = Y ~ X1 + X2 + X3 + X4, data = mymodel, na.action = na.omit)

Residuals:
    Min      1Q  Median      3Q     Max 
-76.784  -0.459   0.017   0.538  78.665 

Coefficients:
              Estimate Std. Error t value Pr(>|t|)    
(Intercept)  -0.016633   0.011622  -1.431    0.152    
X1            0.046897   0.004172  11.240  < 2e-16 ***
X2           -0.054944   0.002184 -25.155  < 2e-16 ***
X3            0.022627   0.019496   1.161    0.246    
X4            0.051336   0.009952   5.159  2.5e-07 ***
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 

Residual standard error: 2.574 on 49052 degrees of freedom
  (83 observations deleted due to missingness)
Multiple R-squared: 0.0182, Adjusted R-squared: 0.01812 
F-statistic: 227.3 on 4 and 49052 DF,  p-value: < 2.2e-16 

Das lm-Diagramm zeigt keinen besonders hohen Ausreißer, gemessen an Cooks Entfernung:

Ich bin diagnostisch

BEARBEITEN

Als Referenz und nach Bestätigung der Ergebnisse basierend auf der Antwort von Macro klautet der R-Befehl zum Einstellen des Abstimmungsparameters im Huber-Schätzer ( k=100in diesem Fall):

rlm(y ~ x, psi = psi.huber, k = 100)

Die verbleibenden Standardfehler in Kombination mit den anderen Informationen lassen es so aussehen, als ob die rlmGewichtsfunktion fast alle Beobachtungen verwirft. Sind Sie sicher, dass es in den beiden Regressionen dasselbe Y ist? (Nur überprüfen ...) Versuchen Sie es method="MM"mit Ihrem rlmAnruf und versuchen Sie es dann (falls dies fehlschlägt) psi=psi.huber(k=2.5)(2,5 ist willkürlich, nur größer als der Standardwert von 1,345), der den lmähnlichen Bereich der Gewichtsfunktion aufteilt .
Bogenschütze

@ jbowman Y ist richtig. MM-Methode hinzugefügt. Meine Intuition ist die gleiche, die Sie erwähnt haben. Diese Modellreste sind im Vergleich zu den anderen, die ich ausprobiert habe, relativ kompakt. Es sieht so aus, als würde die Methodik die meisten Beobachtungen verwerfen.
Robert Kubrick

1
@RobertKubrick du verstehst was das Setzen von k auf 100 bedeutet , oder?
user603

Basierend darauf: Mehrfaches R-Quadrat: 0,0182, Angepasstes R-Quadrat: 0,01812 Sie sollten Ihr Modell noch einmal untersuchen. Ausreißer, Transformation der Antwort oder Prädiktoren. Oder Sie sollten ein nichtlineares Modell in Betracht ziehen. Prädiktor X3 ist nicht signifikant. Was Sie gemacht haben, ist kein gutes lineares Modell.
Marija Milojevic

Antworten:


15

rlm()Mlm()

M

ich=1nρ(Y.ich-Xichβσ)

als eine Funktion von , wobei die -te Antwort ist und die Prädiktoren für einzelne . Kleinste Quadrate sind ein Sonderfall, bei dem Die Standardeinstellung, für die Sie scheinbar verwenden, ist jedoch der Huber Schätzer, der verwendet wirdY i i X i i ρ ( x ) = x 2 MβY.ichichXichich

ρ(x)=x2
rlm()M

ρ(x)={12x2wenn |x|kk|x|-12k2wenn |x|>k.

Wobei eine Konstante ist. Der Standardwert in ist . Diese beiden Schätzer minimieren unterschiedliche Kriterien, so dass es keine Überraschung ist, dass die Schätzungen unterschiedlich sind.k = 1,345krlm()k=1,345

Bearbeiten: Aus dem oben gezeigten QQ-Diagramm geht hervor, dass Sie eine sehr lange Fehlerverteilung haben. Dies ist die Art von Situation, für die der Huber M-Estimator ausgelegt ist und in dieser Situation ganz andere Schätzungen liefern kann:

Wenn die Fehler normalverteilt sind, sind die Schätzungen ziemlich ähnlich, da bei der Normalverteilung der größte Teil der Huber -Funktion unter die Situation fällt, die den kleinsten Quadraten entspricht. In der langschwänzigen Situation, die Sie haben, fallen viele in die Situation , die eine Abweichung von OLS darstellt, was die Diskrepanz erklären würde. | x | < kρ|x|<k|x|>k


Ich habe mehrere andere Modelle ausprobiert (gleiche Anzahl von Beobachtungen, gleiche IVs) und die Koeffizienten sind zwischen rlm und lm ziemlich ähnlich. In diesem bestimmten Datensatz muss sich etwas befinden, das den großen Unterschied in den Koeffizienten hervorruft.
Robert Kubrick

1
Nein, es gibt keine standardisierten Methoden für die Auswahl von - es handelt sich um Optimierungsparameter, die normalerweise ad hoc ausgewählt werden. In der bahnbrechenden Veröffentlichung (Huber, 1964) stellt er fest, dass zwischen 1,0 und 2,0 akzeptable Ergebnisse erzielt werden und dass die Wahl keine große Rolle spielt. In diesem Artikel ( education.wayne.edu/jmasm/sawilowsky_lre.pdf ) verwenden die Autoren ein Konzept namens 'Location Relative Efficiency', um eine Indexierung vorzunehmen. Auf keinen Fall empfehle ich, die Schätzungen der kleinsten Quadrate als Schätzungen der maximalen Wahrscheinlichkeit in Ihren Daten zu behandeln - die Fehler sind sehr lang. k
Makro

1
Eine Möglichkeit, dies zu validieren, besteht darin, in der Funktion zu versuchen und festzustellen, wie sich die Schätzungen für den verbleibenden Standardfehler und die Parameter ändern. Wenn größer wird, sollte es eine Annäherung an die Schätzungen geben. Es ist auch möglich, dass die anfängliche Schätzung der Streuung (MAD) mit diesem Datensatz sehr, sehr klein ist, was Sie überprüfen können, indem Sie MAD für die Residuen aus der ; In diesem Fall wird alles in beliebiger Größenordnung verworfen, da die Schätzung der Streuung zu gering ist und das Variieren von k einigen keinen Unterschied macht. kk=1.5,2,2.5,3,3.5,4psi.huberklmrlm
jbowman

1
Das ist für die hinzugefügte Info, @jbowman - das sind nützliche Kommentare. In Bezug auf Ihren letzten Kommentar werden diese großen Beobachtungen nicht gerade verworfen - ihr Einfluss wird nur herabgesetzt (wie es scheint, sollte es so sein), oder?
Makro

1
@RobertKubrick, Huber (1964) hat gezeigt, dass diese Schätzgleichung statistische Schlussfolgerungen liefert, die angesichts von Fehlern, die eine Mischung aus normalen und Long-tailed-Fehlern darstellen, korrekt sind . Betreff: Dein letzter Kommentar - das stimmt nicht. Beachten Sie, dass wir nach skalieren - ein schlecht angepasstes Modell kann normale Fehler aufweisen. Sobald wir durch skalieren, werden diese Fehler nicht länger "groß" sein. In gewisser Weise werden dabei Beobachtungen mit Residuen, die nicht der Normalität entsprechen, abgewogen, obwohl die Methode, wie gesagt, nicht so abgeleitet wurde. σσσ
Makro
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.