So berechnen Sie SMAPE in Python

Von Fabian
Kategorie: Python
Tags: Zeitreihen
Lesezeit: 1 Minuten

Der symmetrische mittlere absolute prozentuale Fehler (SMAPE) wird verwendet, um die Vorhersagegenauigkeit von Modellen zu messen. Es wird berechnet als:

SMAPE = (1/n) * Σ(|Prognose – Ist| / ((|Ist| + |Prognose|)/2) * 100

wo:

  • Σ – ein Symbol, das „Summe“ bedeutet
  • n – Stichprobenumfang
  • aktuell – der aktuelle Datenwert
  • Prognose – der prognostizierte Datenwert

Dieses Tutorial erklärt, wie man SMAPE in Python berechnet.

So berechnen Sie SMAPE in Python

Es gibt keine eingebaute Python-Funktion zum Berechnen von SMAPE, aber wir können dafür eine einfache Funktion erstellen:

import numpy as np

def smape(a, f):
    return 1/len(a) * np.sum(2 * np.abs(f-a) / (np.abs(a) + np.abs(f))*100)

Wir können diese Funktion dann verwenden, um den SMAPE für zwei Arrays zu berechnen: eines, das die tatsächlichen Datenwerte enthält, und eines, das die prognostizierten Datenwerte enthält.

#Arrays von tatsächlichen und prognostizierten Datenwerten definieren
actual = np.array([12, 13, 14, 15, 15,22, 27])
forecast = np.array([11, 13, 14, 14, 15, 16, 18])

#SMAPE berechnen
smape(actual, forecast)

12.45302

Aus den Ergebnissen können wir ersehen, dass der symmetrische mittlere absolute prozentuale Fehler für dieses Modell 12,45302 % beträgt.

Zusätzliche Ressourcen

Wikipedia-Eintrag für SMAPE
Rob J. Hyndmans Gedanken zu SMAPE
So berechnen Sie MAPE in Python
So berechnen Sie MAPE in R
So berechnen Sie MAPE in Excel

Statistik: Der Weg zur Datenanalyse

* Amazon Affiliate Link


Das könnte Sie auch interessieren: