MSE als Proxy für Pearsons Korrelation bei Regressionsproblemen

8

TL; DR (zu lang, nicht gelesen):

Ich arbeite an einem Zeitreihen-Vorhersageproblem, das ich mit Deep Learning (Keras) als Regressionsproblem formuliere. Ich möchte die Pearson-Korrelation zwischen meiner Vorhersage und den wahren Bezeichnungen optimieren. Ich bin verwirrt über die Tatsache, dass die Verwendung von MSE als Proxy tatsächlich zu besseren Ergebnissen (in Bezug auf die Korrelation) führt als die direkte Verwendung von Pearson als Verlustfunktion. Wird es als schlechte Praxis angesehen, Korrelationsmetriken als Verlustfunktionen für tiefes Lernen zu verwenden? Wenn ja warum?

Längere Version:

Ich habe eine Aufgabe zur Vorhersage von Zeitreihen: Ich beobachte Werte für aufeinanderfolgende Zeitschritte und muss den Wert im Zeitschritt vorhersagen . Da die Werte normalerweise in , ich dies als Regressionsproblem, das ich mit Deep Learning (Keras) löse.TT+1[200,200]

Meine Frage betrifft die Wahl von Verlust und Metriken.

Meine Daten haben echte Bezeichnungen, meistens um mit einigen Extremwerten. Viele der Extremwerte sind falsch und ich möchte mein Lernen nicht verschieben, um mich darauf zu konzentrieren, sie richtig zu machen. Mit anderen Worten, ich möchte in der Lage sein, den allgemeinen Trend zu erfassen (Zeitraum der positiven und negativen Werte korrekt zu klassifizieren), und ich kann beispielsweise mit der Vorhersage von 100 statt 200 "leben".[10,10]

Aus diesem Grund denke ich, dass meine Bewertungsmetrik die Pearson-Korrelation zwischen den vorhergesagten und den wahren Werten sein sollte.

Nun zur Verlustfunktion: Idealerweise wäre es sinnvoll, diese als Verlustfunktion zu verwenden, wenn ich sie für eine hohe Pearson-Korrelation optimieren möchte, oder? Ich habe eine einfache Architektur, die mein "Basismodell" ist, zweimal getestet: Einmal mit Pearson (berechnet auf einem Mini-Batch) direkt als Verlustfunktion und einmal mit der gemeinsamen MSE als Proxy. In beiden Fällen verfolge ich sowohl MSE als auch Pearson für verschiedene Epochen und mache "Early Stop" basierend auf einem Validierungssatz.

Meine Ergebnisse:

  • MSE als Verlust: MSE 160, Pearson 0,7
  • Pearson als Verlust: MSE 250, Pearson 0,6

Ich verstehe, dass die höhere MSE für den Pearson-Verlust das Ergebnis der Tatsache ist, dass die Optimierung für die Korrelation keine Skala hat, so dass die gesamte Vorhersage um einen Faktor in einer Weise "aus" sein kann, die die MSE erhöht. Aber wie kommt es, dass die Verwendung von MSE als Proxy in Bezug auf die Pearson-Korrelation selbst besser ist? Gibt es einen optimierungsbedingten Grund, warum die Pearson-Korrelation nicht als Verlustfunktion verwendet werden sollte? In der Tat sehe ich, dass es in der Praxis kaum verwendet wird, aber ich möchte den Grund dafür verstehen.

galoosh33
quelle

Antworten:

2

Dies ist eine gute Frage, die leider lange Zeit nicht beantwortet wurde. Es scheint, dass nur wenige Monate, nachdem Sie diese Frage hier gestellt haben , eine teilweise Antwort gegeben wurde , die im Grunde nur argumentiert, dass die Korrelation nützlich ist, wenn die Ausgaben sehr verrauscht sind und ansonsten möglicherweise MSE . Ich denke, zuerst sollten wir uns die Formeln für beide ansehen.

MSE(y,y^)=1ni=1n(yiyi^)2
R(y,y^)=i=1n(yiy¯)(yi^y¯^)i=1n(yiy¯)2i=1n(yi^y¯^)2

Einige wenige Dinge zu beachten, im Fall der linearen Regression wissen wir, dass wegen der Unparteilichkeit des Regressors, so dass das Modell ein wenig vereinfachen wird, aber im Allgemeinen wir kann diese Annahme über ML-Algorithmen nicht machen. Im weiteren Sinne ist es vielleicht interessant, an das Streudiagramm in von zu denken, das zeigt , wie stark die lineare Beziehung zwischen den beiden in diesem Diagramm und MSE ist sagt uns, wie weit sie voneinander entfernt sind. Wenn Sie sich die Gegenbeispiele auf der Wikipedia-Seite ansehen, sehen Sie, dass es viele Beziehungen zwischen den beiden gibt, die nicht dargestellt werden. y¯^=y¯R2{yi,yi^}

Ich denke, dass die Korrelation im Allgemeinen ähnliche Dinge wie sagt, aber mit Richtwirkung, so dass die Korrelation in diesem Fall etwas aussagekräftiger ist. In einer anderen Interpretation beruht nicht auf der Linearitätsannahme und gibt lediglich den Prozentsatz der Variation in , der durch unser Modell erklärt wird. Mit anderen Worten, es vergleicht die Vorhersage des Modells mit der naiven Vorhersage, den Mittelwert für jeden Punkt zu erraten. Die Formel für lautet:R2R2yR2

R2(y,y^)=1i=1n(yiy^)2i=1n(yiy¯)2


Wie funktioniert Vergleich zu ? Nun, es stellt sich heraus, dass immuner gegen das Skalieren eines der Eingänge ist. Dies hat damit zu tun, dass nur in beiden Eingängen homogen vom Grad 0 ist , wobei in beiden Eingängen homogen vom Grad 0 ist. Es ist etwas weniger klar, was dies für das maschinelle Lernen bedeuten könnte, aber es könnte bedeuten, dass die Modellklasse von unter Korrelation etwas flexibler sein kann. Dieser sagte, unter bestimmten zusätzlichen Voraussetzungen sind jedoch die beiden Maßnahmen gleich, und Sie können mehr darüber lesen Sie hier .RR2RR2Ry^

JoeTheShmoe
quelle