Mittlerer absoluter Fehler ODER quadratischer Mittelfehler?


59

Warum Root Mean Squared Error (RMSE) anstelle von Mean Absolute Error (MAE) verwenden?

Hallo

Ich habe den in einer Berechnung generierten Fehler untersucht. Anfangs habe ich den Fehler als Root Mean Normalized Squared Error berechnet.

Wenn ich etwas genauer hinschaue, sehe ich, dass das Quadrieren des Fehlers größeren Fehlern mehr Gewicht verleiht als kleineren, wodurch die Fehlerschätzung in Richtung des ungeraden Ausreißers verschoben wird. Dies ist im Nachhinein ganz offensichtlich.

Meine Frage: In welchem ​​Fall wäre der mittlere quadratische Fehler ein geeigneteres Maß für den Fehler als der mittlere absolute Fehler? Letzteres scheint mir passender zu sein oder vermisse ich etwas?

Um dies zu veranschaulichen, habe ich unten ein Beispiel angehängt:

  • Das Streudiagramm zeigt zwei Variablen mit einer guten Korrelation.

  • Die beiden Histogramme rechts zeigen den Fehler zwischen Y (beobachtet) und Y (vorhergesagt) unter Verwendung von normalisiertem RMSE (oben) und MAE (unten).

Bildbeschreibung hier eingeben

In diesen Daten sind keine signifikanten Ausreißer enthalten, und MAE gibt einen geringeren Fehler als RMSE an. Gibt es irgendeinen Grund, außer dass MAE vorzuziehen ist, um ein Fehlermaß dem anderen vorzuziehen?


9
Da es sich bei RMSE und MAE um zwei verschiedene Fehlermaßstäbe handelt, erscheint ein numerischer Vergleich zwischen ihnen (der darauf abzielt, dass MAE "niedriger" als RMSE ist) nicht sinnvoll. Diese Linie muss nach einem gewissen Kriterium passen worden: dieses Kriterium, was auch immer es ist, muss die entsprechende Maß für Fehler.
Whuber

Die Linie wurde unter Verwendung der kleinsten Quadrate angepasst - das Bild ist jedoch nur ein Beispiel, um den Unterschied im gemessenen Fehler zu zeigen. Mein eigentliches Problem ist die Verwendung eines Optimierers zur Lösung von vier Funktionsparametern, um ein gewisses Maß an minimiertem Fehler, MAE oder RMSE, zu erreichen.
user1665220

Danke für die Abklärung. Aber für welchen Fehler interessieren Sie sich genau? Der Fehler in der Anpassung oder die Fehler in den Parameterschätzungen ?
Whuber

1
Der Fehler in der Passform. Ich habe einige Laborproben, die y ergeben, die ich mithilfe einer Funktion vorhersagen möchte. Ich optimiere die Funktion für 4 Exponenten, indem ich den Fehler für die Übereinstimmung zwischen den beobachteten und vorhergesagten Daten minimiere.
user1665220

In RMSE betrachten wir die Wurzel der Anzahl der Elemente (n). Das ist die Wurzel von MSE geteilt durch die Wurzel von n. Wurzel von MSE ist in Ordnung, aber anstatt durch n zu dividieren, wird es durch Wurzel von n dividiert, um RMSE zu erhalten. Ich fühle, dass es eine Politik sein würde. Die Realität wäre (Wurzel von MSE) / n. Auf diese Weise ist MAE besser.

Antworten:


58

Dies hängt von Ihrer Verlustfunktion ab. In vielen Fällen ist es sinnvoll, Punkten, die weiter vom Mittelwert entfernt sind, mehr Gewicht zu geben - das heißt, eine Abweichung von 10 ist mehr als doppelt so schlimm wie eine Abweichung von 5. In solchen Fällen ist RMSE ein geeigneteres Maß für Fehler.

Wenn es nur doppelt so schlimm ist, um zehn Uhr abzulehnen, wie um fünf Uhr abzulehnen, ist MAE angemessener.

In jedem Fall ist es nicht sinnvoll, RMSE und MAE wie in Ihrem vorletzten Satz miteinander zu vergleichen ("MAE gibt einen geringeren Fehler als RMSE"). MAE wird aufgrund der Art und Weise, wie sie berechnet werden, niemals höher als RMSE sein. Sie sind nur im Vergleich zum gleichen Fehlermaß sinnvoll: Sie können RMSE für Methode 1 mit RMSE für Methode 2 oder MAE für Methode 1 mit MAE für Methode 2 vergleichen, aber Sie können nicht sagen, dass MAE besser ist als RMSE für Methode 1 weil es kleiner ist.


Ich verstehe, dass MAE niemals höher als RMSE sein wird. Ich habe sowohl Fehlerschätzungen als auch die Differenz zwischen den Werten verwendet, um einen Hinweis auf die Auswirkung von Ausreißern zu geben. Dh wenn sie nahe beieinander sind, wenn sie weiter voneinander entfernt sind, untersuche ich, was los ist. Letztendlich möchte ich Parameter vorhersagen, die am besten zu den Daten passen, und z. B. 9% Fehler klingen besser als 12% - ich wollte nur sicherstellen, dass ich aus dem richtigen Grund den richtigen auswähle. Cheers for your advice
user1665220

Der Hauptunterschied zwischen RMSE (folglich MSE) und MAE besteht nicht darin, wie sie Fehler gewichten. Bei Bedarf können Sie eine Gewichtsfunktion verwenden. Der Hauptunterschied besteht darin, dass MSE mit dem L2-Raum verwandt ist (MAE hat so etwas nicht). So könnte MSE zum Beispiel die für eine Regelung benötigte Energiemenge messen, wenn E das Rückkopplungssignal ist (das mittlere Quadrat eines Signals merken, Fehler in diesem Fall ist proportional zu seiner Energie). Auch so viel Mathematik und folglich Algorithmen wie Marquardt-Levenberg arbeiten in diesem Raum. Einfach ausgedrückt, verwenden sie MSE als ihre Zielfunktion.
Eulerleibniz

17

Hier ist eine andere Situation, in der Sie (R) MSE anstelle von MAE verwenden möchten: Wenn die bedingte Verteilung Ihrer Beobachtungen asymmetrisch ist und Sie eine unvoreingenommene Anpassung wünschen. Die (R) MSE wird durch das bedingte Mittel , die MAE durch den bedingten Median minimiert . Wenn Sie also die MAE minimieren, liegt die Anpassung näher am Median und ist voreingenommen.

Natürlich hängt das alles wirklich von Ihrer Verlustfunktion ab.

Das gleiche Problem tritt auf, wenn Sie die MAE oder (R) MSE verwenden, um Vorhersagen oder Prognosen auszuwerten . Beispielsweise weisen Verkaufsdaten mit geringem Volumen typischerweise eine asymmetrische Verteilung auf. Wenn Sie die MAE optimieren, werden Sie möglicherweise überrascht sein, dass es sich bei der für die MAE optimalen Prognose um eine flache Nullprognose handelt.

Hier ist eine kleine Präsentation darüber , und hier ist ein kürzlich eingeladener Kommentar zum M4-Prognosewettbewerb, in dem ich diesen Effekt erklärt habe .


+1. Die Idee, Verteilungen zu vergleichen, ist großartig, aber ... würde eine Metrik wie die, die Sie präsentieren, in so etwas nicht kläglich versagen N = 1e3; set.seed(1); y = rpois(N, lambda=1); yhat = c(y[2:N],0)? Die "Differenz" der prädiktiven Dichten wäre minimal, aber die tatsächliche yhatwäre nutzlos. Zugegeben, das ist ein extremer Fall. (Ich könnte etwas Offensichtliches vermissen, entschuldige mich dafür im Voraus - ich habe keinen Zugriff auf das Papier, nur auf die Präsentation.)
usεr11852 sagt Reinstate Monic

y^=1

Vielen Dank für die Klarstellungen; Ich kann mir die Präsentation jetzt besser vorstellen. (Hmm ... ich muss doch noch deine Zeitung haben. :))
usεr11852 sagt Reinstate Monic

@ usεr11852: Zögern Sie nicht, mich per E-Mail zu kontaktieren ( Adresse finden Sie hier ) - wenn Ihre E-Mail nicht in meinem Spam-Filter landet, sende ich Ihnen das Papier gerne zu.
S. Kolassa - Wiedereinsetzung von Monica

@ usεr11852 ich hab dich komplett verloren nach "wie N =" was ist das?
Sak

5

Bildbeschreibung hier eingeben

RMSE ist eine natürlichere Methode zur Beschreibung des Verlusts in der euklidischen Distanz. Wenn Sie es also in 3D grafisch darstellen, hat der Verlust eine Kegelform, wie Sie oben in Grün sehen können. Dies gilt auch für höhere Dimensionen, obwohl es schwieriger ist, diese zu visualisieren.

MAE kann als Blockdistanz betrachtet werden. Es ist nicht ganz so selbstverständlich, Verluste zu messen, wie Sie in der blauen Grafik sehen können.

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.