Comment calculer SMAPE en Python



L’ erreur de pourcentage absolue moyenne symétrique (SMAPE) est utilisée pour mesurer la précision prédictive des modèles. Il est calculé comme suit :

SMAPE = (1/n) * Σ(|prévision – réel| / ((|réel| + |prévision|)/2) * 100

où:

  • Σ – un symbole qui signifie « somme »
  • n – taille de l’échantillon
  • réel – la valeur réelle des données
  • prévision – la valeur des données prévue

Ce tutoriel explique comment calculer SMAPE en Python.

Comment calculer SMAPE en Python

Il n’existe pas de fonction Python intégrée pour calculer SMAPE, mais nous pouvons créer une fonction simple pour le faire :

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)

Nous pouvons ensuite utiliser cette fonction pour calculer le SMAPE pour deux tableaux : un qui contient les valeurs de données réelles et un qui contient les valeurs de données prévues.

#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

D’après les résultats, nous pouvons voir que l’erreur absolue moyenne symétrique en pourcentage pour ce modèle est de 12,45302 % .

Ressources additionnelles

Entrée Wikipédia pour SMAPE
Les réflexions de Rob J. Hyndman sur SMAPE
Comment calculer MAPE en Python
Comment calculer MAPE dans R
Comment calculer MAPE dans Excel

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *