Hoe smape in python te berekenen


Symmetric Mean Absolute Percentage Error (SMAPE) wordt gebruikt om de voorspellende nauwkeurigheid van modellen te meten. Het wordt als volgt berekend:

SMAPE = (1/n) * Σ(|voorspelling – actueel| / ((|actueel| + |voorspelling|)/2) * 100

Goud:

  • Σ – een symbool dat “som” betekent
  • n – steekproefomvang
  • real – de werkelijke waarde van de gegevens
  • voorspelling – de verwachte waarde van de gegevens

In deze tutorial wordt uitgelegd hoe u SMAPE in Python berekent.

Hoe SMAPE in Python te berekenen

Er is geen ingebouwde Python-functie om SMAPE te berekenen, maar we kunnen er wel een eenvoudige functie voor maken:

 import numpy as np

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

We kunnen deze functie vervolgens gebruiken om de SMAPE voor twee tabellen te berekenen: één die de werkelijke gegevenswaarden bevat en één die de voorspelde gegevenswaarden bevat.

 #define arrays of actual and forecasted data values
actual = np.array([12, 13, 14, 15, 15,22, 27])
forecast = np.array([11, 13, 14, 14, 15, 16, 18])

#calculate SMAPE
smape(actual, forecast)

12.45302

Uit de resultaten kunnen we zien dat de gemiddelde symmetrische absolute procentuele fout voor dit model 12,45302% bedraagt.

Aanvullende bronnen

Wikipedia-artikel voor SMAPE
Rob J. Hyndmans gedachten over SMAPE
Hoe MAPE in Python te berekenen
Hoe MAPE in R te berekenen
Hoe MAPE in Excel te berekenen

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert