Ich versuche, die Random Forest-Regression zu verwenden. Ich habe eine Antwortvariable:
y = rnorm(10000, mean=0, sd=3)
Und ein paar Prädiktorvariablen (die nur die Antwort mit zusätzlichem Rauschen sind):
x = data.frame(v1=y + rnorm(10000, mean=0, sd=3), v2=y + rnorm(10000, mean=0, sd=3), v3=y + rnorm(10000, mean=0, sd=3))
Ich baue den zufälligen Wald:
r = randomForest(x, y)
Das Modell ist gut und erklärt ~ 73% der Varianz. Wenn ich mir jedoch die Residuen ansehe:
plot(y, y - r$predicted)
Anstatt um Null zentriert zu sein, werden sie mit der Antwortvariablen korreliert. Es scheint, dass das Modell dies korrigieren sollte. Vielleicht ist dieses Verhalten, da jede OOB-Vorhersage ein Durchschnitt ist, eine Art "Regression zum Mittelwert"? Weiß jemand warum das passiert? Kann ich etwas dagegen tun?
Ich versuche ein Modell zu erstellen und die Residuen zu verwenden, um etwas abzuschätzen. Im Moment sind sie nutzlos, weil sie nur den Wert widerspiegeln, den ich vorhersagen möchte. Wenn jemand helfen kann, würde ich es wirklich schätzen!
Antworten:
Genau das sollten Sie erwarten.
Sie sehen genau dasselbe mit einem gewöhnlichen Regressionsmodell. wenn das Modell hatR.2 höher als 0 werden Residuen mit der Antwort korreliert. Es sind die angepassten Werte, mit denen die Residuen nicht korreliert sind.
Insbesondere erfasst jede Regression alle Variationen iny Das erklären die Prädiktoren. Das zu tun bedeutet dasy^ ist nicht mit dem Residuum korreliert - denn wenn es nicht unkorreliert wäre, würde es eine nicht erfasste Variation geben, die die x könnte erfassen. Als Ergebnis der Erfassung alles, was diex Wenn im Regressionsmodell erfasst werden kann, muss eine Korrelation der Residuen mit dem tatsächlichen vorhanden sein y Werte:
- Da diese Kovarianz positiv ist, wird die Korrelation sein.
Die Regularisierung ändert die Dinge etwas, aber die gleiche Korrelation erscheint.
[Die Komponente vony Das, was das Modell nicht erfasst, auch wenn es nur reines Rauschen ist, korreliert offensichtlich mit sich selbst . Das ist wirklich alles was wir hier sehen]
Eine solche Korrelation wird in jeder der Regressionen vorhanden sein, und so wird die Korrelation auf den zufälligen Wald als Ganzes übertragen.
Hier gibt es nichts zu reparieren, das soll es eigentlich tun. Sie sehen es auch dann, wenn Sie genau zu dem Modell passen, das Ihre Daten generiert hat.
In diesem Beispiel wird eine Korrelation in der Nähe von 70% angezeigt.
Wenn Sie die Varianz des Rauschausdrucks erhöhen (andere Dinge sind gleich), ist die Korrelation sogar stärker . Versuchen Sie das Obige mit mehr Lärm:
und sehen was passiert!
Es kann sein, dass Sie eine weitere Frage stellen möchten, die das ursprüngliche Problem erklärt, das Sie lösen wollten, da Ihre Entscheidung, wie Sie vorgehen möchten, möglicherweise nicht ideal war (es ist schwer zu sagen, was hier ist).
quelle