Python'da 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

Bu eğitimde Python’da SMAPE’nin nasıl hesaplanacağı açıklanmaktadır.

Python’da SMAPE nasıl hesaplanır

SMAPE’yi hesaplamak için yerleşik bir Python işlevi yoktur, ancak bunu yapmak için basit bir işlev oluşturabiliriz:

 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)

Daha sonra bu işlevi iki tablo için SMAPE’yi hesaplamak için kullanabiliriz: biri gerçek veri değerlerini içeren, diğeri ise tahmin edilen veri değerlerini içeren.

 #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

Sonuçlardan bu model için ortalama simetrik mutlak yüzde hatasının %12,45302 olduğunu görebiliriz.

Ek kaynaklar

SMAPE için Vikipedi girişi
Rob J. Hyndman’ın SMAPE hakkındaki düşünceleri
Python’da MAPE nasıl hesaplanır
R’de MAPE nasıl hesaplanır
Excel’de MAPE Nasıl Hesaplanır?

Yorum ekle

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