НачатьНачать бесплатно

SES и наивный метод

В этом упражнении вы применяете знания об обучающей и тестовой выборках, функции subset() и функции accuracy() — всё это вы изучили во второй главе — чтобы сравнить прогнозы SES и наивного метода для данных marathon.

Нечто похожее вы уже делали, когда сравнивали наивный прогноз и прогноз по среднему в упражнении «Оценка точности прогнозов для несезонных методов».

Давайте вспомним порядок действий:

  1. Загрузите данные. Решите, какую долю данных выделить на обучение, а какую — на тестирование; выборки не должны пересекаться.
  2. Используйте подмножество данных для создания обучающей выборки — она будет аргументом в функциях прогнозирования. При необходимости можно отдельно создать и тестовую выборку.
  3. Постройте прогнозы на основе обучающей выборки с помощью выбранных функций прогнозирования; установите h равным количеству значений, которые нужно спрогнозировать (это также длина тестовой выборки).
  4. Чтобы оценить результаты, используйте функцию accuracy(): первый аргумент — прогноз, второй — исходные данные (или тестовая выборка).
  5. Выберите метрику из вывода, например RMSE или MAE, для оценки прогнозов: чем меньше ошибка, тем выше точность.

Данные marathon уже загружены в вашу рабочую среду.

Это упражнение является частью курса

Прогнозирование в R

Посмотреть курс

Инструкции к упражнению

  • С помощью subset() создайте обучающую выборку для marathon, включающую все данные, кроме последних 20 лет, которые вы зарезервируете для тестирования.
  • Вычислите прогнозы SES и наивного метода для этой обучающей выборки и сохраните их в fcses и fcnaive соответственно.
  • Оцените точность обоих наборов прогнозов с помощью функции accuracy() в консоли.
  • Запишите в fcbest лучший прогноз (либо fcses, либо fcnaive) по критерию RMSE.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# Create a training set using subset()
train <- ___(___, end = length(marathon) - ___)

# Compute SES and naive forecasts, save to fcses and fcnaive
fcses <- ses(___, h = ___)
fcnaive <- naive(___, h = ___)

# Calculate forecast accuracy measures
accuracy(___, ___)
accuracy(___, ___)

# Save the best forecasts as fcbest
fcbest <- ___
Редактировать и запускать код