Cómo calcular SMAPE en R

SMAPE significa error porcentual absoluto medio simétrico. Es una medida de precisión y se utiliza para determinar la precisión predictiva de los modelos que se basan en errores relativos. El error relativo se calcula como:

error relativo = x / y 
Donde x es el error absoluto e y es la magnitud del valor exacto 

SMAPE tiene valores tanto de límite inferior como de límite superior (en contraste con el error porcentual absoluto medio). SMAPE se puede calcular fácilmente usando la siguiente fórmula:

SMAPE = (1 / n) * Σ(|valor_pronóstico – valor_real| / ((|valor_actual| + |valor_pronóstico|) / 2) * 100

Aquí,

Σ : un símbolo que significa “suma”

|| : representa el valor absoluto

n : Representa el tamaño de la muestra

valor_actual: Representa el valor real de los datos

Forecast_value : Representa el valor de los datos pronosticados

Este artículo se centra en cómo podemos calcular el SMAPE en R:

Cálculo de SMAPE en R:

Hay dos formas en que podemos calcular SMAPE en R. Estos métodos se describen a continuación en detalle:

Método 1: uso del paquete de métricas

R nos proporciona la función smape() definida en el paquete Metrics mediante el cual podemos calcular SMAPE. La función tiene la siguiente sintaxis:

Sintaxis:

smape(actual, pronosticado)

Parámetros:

  • real: Representa un vector que contiene valores reales.
  • pronosticado: Representa un vector que contiene valores pronosticados

Tipo de devolución:

Devuelve el error SMAPE entre los valores reales y predichos.

Ejemplo:

En este programa, hemos creado dos vectores; reales y pronosticados para el modelo. Luego, usando la función smape() estamos calculando el error porcentual absoluto medio simétrico.

R

# Importing library
library(Metrics)
 
# Defining a vector containing actual values
actual <- c(10, 33, 42, 18, 19, 21, 22)
 
# Defining a vector containing forecasted
# values
forecast <- c(16, 19, 24, 27, 25, 36, 48)
 
# Determine SMAPE
smape(actual, forecast)

Producción:

 

Por lo tanto, el error porcentual absoluto medio simétrico para este modelo resulta ser igual a 49.819%.

Método 2: usar una función personalizada

Otro método es crear nuestra propia función que calcule el error porcentual absoluto medio simétrico utilizando la fórmula que se describió anteriormente.

Ejemplo:

En este programa, hemos creado una función personalizada computeSmape() que toma vectores reales y forestales como entrada. Usando la fórmula, estamos calculando smape. Por último, hemos llamado a esta función pasando vectores como parámetros. 

R

# Custom function to calculate SMAPE
# for the provided model
computeSmape <- function(actual, forecast) {
  return (1 / length(actual) * sum(2 * abs(forecast - actual) / (abs(actual)  + abs(forecast)) * 100))
}
 
# Defining a vector containing actual values
actual <- c(10, 33, 42, 18, 19, 21, 22)
 
# Defining a vector containing forecasted values
forecast <- c(16, 19, 24, 27, 25, 36, 48)
 
# Determine SMAPE
computeSmape(actual, forecast)

Producción:

 

Por lo tanto, el error porcentual absoluto medio simétrico para este modelo resulta ser igual a 49.819%.

Publicación traducida automáticamente

Artículo escrito por bhuwanesh y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *