Wahl zwischen verschiedenen robusten Regressionen in R.

8

Ich schreibe ein Programm zur Bewertung von Immobilien und verstehe die Unterschiede zwischen einigen robusten Regressionsmodellen nicht wirklich. Deshalb weiß ich nicht, welches ich wählen soll.

Ich habe versucht lmrob, ltsRegund rlm. Für denselben Datensatz ergaben alle drei Methoden unterschiedliche Werte für die Koeffizienten.

Ich dachte, dass es am besten ist, ltsRegweil es summary(ltsReg())Informationen über R-squaredund liefert p-valuesund dies hilft mir zu entscheiden, ob ich das Modell akzeptiere oder ablehne.

Halten Sie das ltsRegfür eine gute Wahl?

BEARBEITEN: Ich habe gerade in der Statistik der Anpassungsgüte gelesen, dass das angepasste R-Quadrat im Allgemeinen der beste Indikator für die Qualitätsanpassung ist

Paul
quelle
4
Sowohl p-Werte als auch können irreführend sein, daher ist die Auswahl eines Pakets aufgrund der Tatsache, dass es sie ausgibt, kein wirklich gutes Kriterium für eine solche Auswahl ...R2
Tim
Wie kann ich dann entscheiden, ob das Modell gültig ist, ohne es zu zeichnen?
Paul
2
Berücksichtigen Sie auch die ordinale Regression, da diese möglicherweise robuster, interpretierbarer und leistungsfähiger ist.
Frank Harrell
@ user603: Ich bestätige es. Für die Bewertung einer Immobilie erstelle ich mehrere Modelle, die unterschiedliche Merkmale enthalten (zB: 1. Preis ~ Wohnfläche + Bodennummer + Alter + ...).
Paul
2
Jemand möchte diese Frage schließen! Ich denke nicht, dass das richtig ist, auch wenn es an der Oberfläche um die Auswahl von R-Funktionen geht, es geht wirklich darum, wie und warum robuste Regressionsmethoden gewählt werden, dh ontopisch.
kjetil b halvorsen

Antworten:

10

In der von mir verwendeten Notation ist die Anzahl der Entwurfsvariablen (einschließlich des konstanten Terms), n die Anzahl der Beobachtungen mit n 2 p + 1 (wenn diese letzte Bedingung nicht erfüllt wäre, hätte das Paket a nicht zurückgegeben passen aber ein Fehler, also gehe ich davon aus, dass er erfüllt ist). Ich werde mit den von FLTS ( ) geschätzten Koeffizientenvektor und mit die von MM ( ) geschätzten Koeffizienten bezeichnen . Ich werde auch schreiben:pnn2p+1 β MMβ^FLTSltsRegβ^MMlmrob

ri2(β^)=(yixiβ^)2

(Dies sind die quadratischen Residuen, nicht die standardisierten!)

Die rlmFunktion passt zu einer M-Schätzung der Regression und ist, wie der Vorschlag von @Frank Harrell in den Kommentaren zu Ihrer Frage, für Ausreißer im Entwurfsbereich nicht robust. Die ordinale Regression hat einen Aufschlüsselungspunkt (der Anteil Ihrer Daten, der durch Ausreißer ersetzt werden muss, um die angepassten Koeffizienten auf beliebige Werte zu bringen) von im Wesentlichen was bedeutet, dass ein einzelner Ausreißer (unabhängig von !) Ausreicht, um die Anpassung bedeutungslos zu machen . Für Regressions-M-Schätzungen (z. B. Huber-M-Regression) beträgt der Aufschlüsselungspunkt im Wesentlichen . Dies ist etwas höher, aber in der Praxis immer noch unangenehm nahe bei 0 (weil oft groß ist). Die einzige Schlussfolgerung, aus der gezogen werden kannn 1 / ( p + 1 ) p p + 11/nn1/(p+1)prlmEine andere Anpassung als die beiden anderen Methoden zu finden, besteht darin, dass sie von Design-Ausreißern beeinflusst wurde und dass mehr als davon in Ihrem Datensatz enthalten sein müssen.p+1

Im Gegensatz dazu sind die beiden anderen Algorithmen viel robuster: Ihr Durchschlagspunkt liegt knapp unter und, was noch wichtiger ist, schrumpft nicht, wenn groß wird. Wenn Sie ein lineares Modell mit einer robusten Methode anpassen, gehen Sie davon aus, dass mindestens Beobachtungen in Ihren Daten nicht kontaminiert sind. Die Aufgabe dieser beiden Algorithmen ist es, diese Beobachtungen zu finden und sie so gut wie möglich anzupassen. Genauer gesagt, wenn wir bezeichnen:p h = ( n + p + 1 ) / 2 + 11/2ph=(n+p+1)/2+1

HFLTS={i:ri2(β^FLTS)qh/n(ri2(β^FLTS))}HMM={i:ri2(β^MM)qh/n(ri2(β^MM))}

(wobei das Quantil des Vektors )h / n r 2 i ( β M M )qh/n(ri2(β^MM))h/nri2(β^MM)

dann versucht ( ), die Beobachtungen mit Indizes in ( ) . β FLTSHMMHFLTSβ^MMβ^FLTSHMMHFLTS

Die Tatsache, dass es große Unterschiede zwischen und gibt, zeigt, dass die beiden Algorithmen nicht die gleichen Beobachtungen wie Ausreißer identifizieren. Dies bedeutet, dass mindestens einer von ihnen von den Ausreißern beeinflusst wird. In diesem Fall ist es eine schreckliche Idee , die (angepasste) oder eine beliebige Statistik aus einer der beiden Anpassungen zu verwenden, um zu entscheiden, welche verwendet werden soll, obwohl sie intuitiv ist : Kontaminierte Anpassungen haben normalerweise kleinere Residuen als saubere (aber seit Kenntnis von Dies ist der Grund, warum man in erster Linie robuste Statistiken verwendet. Ich gehe davon aus, dass das OP sich dieser Tatsache bewusst ist und dass ich darauf nicht näher eingehen muss. β MMR2β^FLTSβ^MMR2

Die beiden robusten Anpassungen ergeben widersprüchliche Ergebnisse und die Frage ist, welche richtig ist. Eine Möglichkeit, dies zu lösen, besteht darin, die Menge zu betrachten:

H+=HMMHFLTS

weil , . Wenn entweder oder frei von Ausreißern ist, ist dies auch . Die von mir vorgeschlagene Lösung nutzt diese Tatsache aus. Berechnen:# { H + } p H M M H F L T S H +h[n/2]#{H+}pHMMHFLTSH+

D(H+,β^FLTS,β^MM)=iH+(ri2(β^FLTS)ri2(β^MM))

Wenn beispielsweise , dann ist passt besser zu den guten Beobachtungen als und daher würde ich mehr . Und umgekehrt.β F L T S β M M β F L T SD(H+,β^FLTS,β^MM)<0β^FLTSβ^MMβ^FLTS

user603
quelle
1
+1. Ich denke, Sie verwenden , um auf Ganzzahl oder Bodenfunktion . Ich finde die letztere Notation expliziter. Für Leser, die neu in dieser Notation für die Ganzzahlrundung sind, ist es leicht anzunehmen, dass eckige Klammern nur Klammern sind. [  ]  
Nick Cox