Як розрахувати wmape в r (з прикладом)


Одним із найбільш часто використовуваних показників для вимірювання точності прогнозу моделі є WMAPE , що означає середньозважену абсолютну відсоткову помилку .

Формула для розрахунку WMAPE така:

WMAPE = (Σ|y i – ŷ i |*w i ) / (Σy i *w i ) * 100

золото:

  • Σ – символ, що означає «сума»
  • y i – реальне значення i-го спостереження
  • ŷ i – прогнозоване значення i- го спостереження
  • w i – вага i- го спостереження

Ми можемо визначити таку функцію для обчислення WMAPE в R:

 find_WMAPE <- function (y, yhat, w){
  return (sum(abs(y-yhat)*w)/sum(y*w)*100)
}

У наступному прикладі показано, як використовувати цю функцію на практиці.

Приклад: обчислення WMAPE в R

Припустімо, що ми маємо наступний кадр даних у R, який містить інформацію про фактичні та прогнозовані продажі для роздрібного магазину:

 #create dataset
data <- data. frame (actual=c(23, 37, 44, 47, 48, 48, 46, 43, 32, 27, 26, 24),
                   forecast=c(37, 40, 46, 44, 46, 50, 45, 44, 34, 30, 22, 23))

#view dataset
data

   current forecast
1 23 37
2 37 40
3 44 46
4 47 44
5 48 46
6 48 50
7 46 45
8 43 44
9 32 34
10 27 30
11 26 22
12 24 23

Щоб обчислити WMAPE для різниці між фактичними та прогнозованими продажами, ми можемо визначити вектор вагових коефіцієнтів для використання, а потім використати функцію WMAPE, яку ми визначили раніше:

 #define function to calculate WMAPE
find_WMAPE <- function (y, yhat, w){
  return (sum(abs(y-yhat)*w)/sum(y*w)*100)
}

#define weights for each month
weights <- c(20, 20, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6)

#calculate WMAPE
find_WMAPE(df$actual, df$predicted, weights)

[1] 13.27635

WMAPE для цієї моделі виявляється 13,27635% .

Тобто середньозважена абсолютна відсоткова похибка між прогнозованими значеннями продажів і фактичними значеннями продажів становить 13,27635%.

Зауважте, що в цьому прикладі значенням січня та лютого ми призначили набагато більші ваги.

Залежно від конкретної проблеми ви можете призначити більшу або меншу вагу різним спостереженням на основі важливості кожної помилки у вашій моделі.

Додаткові ресурси

У наступних посібниках пояснюється, як виконувати інші типові завдання в R:

Як розрахувати MAPE в R
Як розрахувати SMAPE в R
Як розрахувати RMSE в R

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *