Як розрахувати smape в python
Симетрична середня абсолютна відсоткова помилка (SMAPE) використовується для вимірювання точності прогнозування моделей. Він розраховується таким чином:
SMAPE = (1/n) * Σ(|прогноз – фактичний| / ((|фактичний| + |прогноз|)/2) * 100
золото:
- Σ – символ, що означає «сума»
- n – розмір вибірки
- real – фактичне значення даних
- прогноз – очікуване значення даних
Цей підручник пояснює, як обчислити SMAPE у Python.
Як розрахувати SMAPE в Python
Немає вбудованої функції Python для обчислення 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
Думки Роба Дж. Хайндмана про SMAPE
Як розрахувати MAPE в Python
Як розрахувати MAPE в R
Як розрахувати MAPE в Excel