Comment calculer MAPE en Python



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

MAPE = (1/n) * Σ(|réel – prédiction| / |réel|) * 100

où:

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

MAPE est couramment utilisé car il est facile à interpréter et à expliquer. Par exemple, une valeur MAPE de 11,5 % signifie que la différence moyenne entre la valeur prédite et la valeur réelle est de 11,5 %.

Plus la valeur de MAPE est faible, plus un modèle est capable de prédire les valeurs. Par exemple, un modèle avec un MAPE de 5 % est plus précis qu’un modèle avec un MAPE de 10 %.

Comment calculer MAPE en Python

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

import numpy as np

def mape(actual, pred): 
    actual, pred = np.array(actual), np.array(pred)
    return np.mean(np.abs((actual - pred) / actual)) * 100

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

actual = [12, 13, 14, 15, 15,22, 27]
pred = [11, 13, 14, 14, 15, 16, 18]

mape(actual, pred)

10.8009

D’après les résultats, nous pouvons voir que le pourcentage d’erreur absolu moyen pour ce modèle est de 10,8009 % . En d’autres termes, la différence moyenne entre la valeur prédite et la valeur réelle est de 10,8009 %.

Précautions concernant l’utilisation de MAPE

Bien que MAPE soit facile à calculer et à interpréter, son utilisation présente deux inconvénients potentiels :

1. Puisque la formule pour calculer le pourcentage d’erreur absolu est |prédiction réelle| / |réel| cela signifie que MAPE ne sera pas défini si l’une des valeurs réelles est nulle.

2. MAPE ne doit pas être utilisé avec des données à faible volume. Par exemple, si la demande réelle pour un article est de 2 et que la prévision est de 1, la valeur du pourcentage d’erreur absolu sera |2-1| / |2| = 50 %, ce qui donne l’impression que l’erreur de prévision est assez élevée, même si la prévision n’est décalée que d’une unité.

Ajouter un commentaire

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