كيفية حساب smape في r
يتم استخدام خطأ النسبة المئوية المطلقة للمتوسط المتماثل (SMAPE) لقياس الدقة التنبؤية للنماذج. يتم حسابه على النحو التالي:
SMAPE = (1/n) * Σ(|توقعات – فعلية| / ((|فعلية| + |توقعات|)/2) * 100
ذهب:
- Σ – رمز يعني “المجموع”
- ن – حجم العينة
- حقيقي – القيمة الفعلية للبيانات
- التنبؤ – القيمة المتوقعة للبيانات
كلما كانت قيمة SMAPE أصغر، كانت الدقة التنبؤية لنموذج معين أفضل.
يشرح هذا البرنامج التعليمي طريقتين مختلفتين يمكنك استخدامهما لحساب SMAPE في R.
الطريقة الأولى: استخدم smape() من حزمة المقاييس
إحدى الطرق لحساب SMAPE في R هي استخدام الدالة smape() من حزمة القياسات :
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
يمكننا أن نرى أن المتوسط المتماثل لنسبة الخطأ المطلقة لهذا النموذج هو 12.45% .
الطريقة الثانية: اكتب وظيفتك الخاصة
هناك طريقة أخرى لحساب SMAPE وهي إنشاء دالتنا الخاصة كما يلي:
find_smape <- function (a, f) { return ( 1 /length(a) * sum( 2 *abs(fa) / (abs(a)+abs(f))* 100 )) }
يمكننا بعد ذلك استخدام هذه الوظيفة لحساب SMAPE بين متجه القيم الفعلية والقيم المتوقعة:
#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 يساوي 12.45% ، وهو ما يطابق نتائج المثال السابق.
مصادر إضافية
كيفية حساب MAPE في R
كيفية حساب MAD في R
كيفية حساب MAE في R
كيفية حساب RMSE في R
كيفية حساب MSE في R