R'de smape nasıl hesaplanır


Modellerin tahmin doğruluğunu ölçmek için Simetrik Ortalama Mutlak Yüzde Hatası (SMAPE) kullanılır. Aşağıdaki şekilde hesaplanır:

SMAPE = (1/n) * Σ(|tahmin – gerçek| / ((|gerçek| + |tahmin|)/2) * 100

Altın:

  • Σ – “toplam” anlamına gelen bir sembol
  • n – örneklem büyüklüğü
  • gerçek – verilerin gerçek değeri
  • tahmin – verilerin beklenen değeri

SMAPE değeri ne kadar küçük olursa, belirli bir modelin tahmin doğruluğu o kadar iyi olur.

Bu eğitimde R’de SMAPE’yi hesaplamak için kullanabileceğiniz iki farklı yöntem açıklanmaktadır.

Yöntem 1: Metrics paketindeki smape() işlevini kullanın

R’de SMAPE’yi hesaplamanın bir yolu Metrics paketindeki smape() işlevini kullanmaktır:

 library (Metrics)

#define actual values
actual <- c(12, 13, 14, 15, 15, 22, 27)

#define forecasted values
forecast <- c(11, 13, 14, 14, 15, 16, 18)

#calculate SMAPE
smape(actual, forecast)

[1] 0.1245302

Bu model için simetrik ortalama mutlak yüzde hatasının %12,45 olduğunu görebiliriz.

Yöntem 2: Kendi işlevinizi yazın

SMAPE’yi hesaplamanın başka bir yolu da kendi fonksiyonumuzu aşağıdaki gibi oluşturmaktır:

 find_smape <- function (a, f) {
  return ( 1 /length(a) * sum( 2 *abs(fa) / (abs(a)+abs(f))* 100 ))
}

Daha sonra bu işlevi, gerçek değerlerin bir vektörü ile tahmin edilen değerlerin bir vektörü arasındaki SMAPE’yi hesaplamak için kullanabiliriz:

 #define actual values
actual <- c(12, 13, 14, 15, 15,22, 27)

#define forecasted values
forecast <- c(11, 13, 14, 14, 15, 16, 18)

#calculate SMAPE
find_smape(actual, forecast)

[1] 12.45302

SMAPE bir kez daha %12,45 olarak ortaya çıkıyor ve bu da önceki örneğin sonuçlarıyla eşleşiyor.

Ek kaynaklar

R’de MAPE nasıl hesaplanır
R’de MAD nasıl hesaplanır
R’de MAE nasıl hesaplanır
R’de RMSE nasıl hesaplanır
R’de MSE nasıl hesaplanır

Yorum ekle

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir