كيفية حساب smape في بايثون
يتم استخدام خطأ النسبة المئوية المطلقة للمتوسط المتماثل (SMAPE) لقياس الدقة التنبؤية للنماذج. يتم حسابه على النحو التالي:
SMAPE = (1/n) * Σ(|توقعات – فعلية| / ((|فعلية| + |توقعات|)/2) * 100
ذهب:
- Σ – رمز يعني “المجموع”
- ن – حجم العينة
- حقيقي – القيمة الفعلية للبيانات
- التنبؤ – القيمة المتوقعة للبيانات
يشرح هذا البرنامج التعليمي كيفية حساب SMAPE في بايثون.
كيفية حساب SMAPE في بايثون
لا توجد دالة بايثون مدمجة لحساب SMAPE، لكن يمكننا إنشاء دالة بسيطة للقيام بذلك:
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)
يمكننا بعد ذلك استخدام هذه الوظيفة لحساب SMAPE لجدولين: أحدهما يحتوي على قيم البيانات الفعلية والآخر يحتوي على قيم البيانات المتوقعة.
#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
ومن النتائج يمكننا أن نرى أن متوسط نسبة الخطأ المطلق المتماثل لهذا النموذج هو 12.45302% .
مصادر إضافية
دخول ويكيبيديا لـ SMAPE
أفكار Rob J. Hyndman حول SMAPE
كيفية حساب MAPE في بايثون
كيفية حساب MAPE في R
كيفية حساب MAPE في إكسل