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