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