Skip to content

Repository files navigation

Rockets

Исследование временного ряда космических запусков (1957–2020)

Описание набора данных и постановка задачи

Датасет: полный перечень космических миссий с 1957 г. по август 2020 г. (исходные данные). Каждая запись — отдельный запуск с указанием даты, компании, статуса ракеты и результата.

Целевая переменная: ежемесячное количество запусков.
Горизонт прогнозирования: 12 месяцев вперёд.
Режим: офлайн-прогнозирование на исторических данных.
Тип задачи: одномерное прогнозирование временного ряда.
Метрики оценки: MAE, RMSE, sMAPE.


Задача №1. Разведочный анализ (EDA)

Ключевые выводы EDA:

  • Среднемесячное число запусков — 5.7, медиана — 5.0. Зафиксировано 8 месяцев без единого запуска.
  • Ряд не содержит дубликатов и значимых пропусков; временная частота установлена как MS (начало месяца).
  • Ряд нестационарен: наблюдаются выраженный восходящий тренд и годовая сезонность.
  • Дополнительные внешние факторы в исходных данных отсутствуют, поэтому задача решается как одномерное прогнозирование.

Задача №2. Статистические методы прогнозирования

Сравнены 7 методов: бейзлайны (Naive, SeasonalNaive), ручная SARIMA, автоматические (AutoARIMA, AutoETS, AutoTheta) и Prophet.

1. Метрики на тестовом периоде (12 месяцев)

Модель MAE RMSE sMAPE
Naive 4.33 4.88 46.3%
SeasonalNaive 2.25 3.40 27.7%
Ручная SARIMA(2,0,0)(0,1,1)[12] 2.84 3.45 34.61%
AutoARIMA 2.91 3.47 34.02%
AutoETS 2.95 3.60 34.38%
AutoTheta 2.97 3.61 34.69%
Prophet 3.15 3.99 38.70%

2. Результаты бектестинга (5 окон, средние метрики)

Модель MAE RMSE sMAPE
Naive 2.77 3.38 21.3%
SeasonalNaive 2.87 3.42 23.6%
AutoARIMA 2.21 2.82 16.7%
AutoETS 2.24 2.78 16.7%
AutoTheta 2.21 2.77 16.5%

3. Анализ моделей

  • Naive / SeasonalNaive: учёт годовой сезонности кардинально улучшает качество (SeasonalNaive почти в два раза точнее Naive).
  • Ручная SARIMA(2,0,0)(0,1,1)[12]: параметры обоснованы ADF-тестами и анализом ACF/PACF. Качество совпало с автоматическими моделями, что подтверждает корректность ручного подбора.
  • Автоматические модели (AutoARIMA, AutoETS, AutoTheta): все три дали близкие результаты. AutoARIMA чуть лучше на тесте (MAE 2.91), AutoTheta — минимальный RMSE в бектестинге (2.77).
  • Prophet: корректно выделил тренд и сезонность, но показал наибольшие ошибки (MAE 3.15). Причина — вероятно, недостаточная длина ряда для надёжного обучения сложных паттернов.

4. Диагностика лучшей модели (AutoARIMA)

  • Остатки: не обнаруживают систематических паттернов; гистограмма близка к симметричной.
  • Тест Льюнга–Бокса для лагов 1–6: все p‑значения > 0.05 → автокорреляция отсутствует.
  • Вероятностный прогноз: прогнозные интервалы (80% и 95%) широки, но фактические точки часто выходят за их пределы. Это свидетельствует о недооценке неопределённости: истинная волатильность ряда выше, чем допускает модель с нормальными остатками.

5. Итог по задаче №2

AutoARIMA рекомендуется как надёжный точечный бейзлайн (MAE ~2.2 в бектестинге). Однако вероятностные интервалы использовать с осторожностью — они плохо калиброваны. Для ответственных решений требуется доработка вероятностной части.


Задача №3. ML и DL методы (Data‑driven)

ML-модели (LinearRegression, RandomForest, XGBoost) обучались с расширенным feature engineering (лаги, скользящие статистики, календарные признаки) через mlforecast.
DL-модели (LSTM, NBEATS, NHITS) обучались непосредственно на ряде через NeuralForecast.

1. Метрики на тестовом периоде (12 месяцев)

Модель MAE RMSE sMAPE
LinearRegression 11.48 12.16 195.5%
RandomForest 3.01 4.15 36.2%
XGBoost 2.84 3.76 33.0%
LSTM 2.81 3.44 33.0%
NBEATS 3.32 3.76 37.9%
NHITS 4.04 4.45 44.2%

Лучшие результаты — у LSTM (MAE 2.81) и XGBoost (MAE 2.84), они сопоставимы с AutoARIMA (MAE 2.91).

2. Анализ остатков лучших моделей

  • XGBoost: остатки знакочередуются (модель запаздывает); распределение асимметрично (систематическая недооценка пиков).
  • LSTM: аналогичная знакопеременная структура, асимметрия выражена сильнее — частые, но небольшие ошибки.
    Общая проблема: обе модели сглаживают резкие изменения и плохо улавливают моменты смены тенденции.

3. Важность признаков (XGBoost)

Признак Вклад
year 25.0%
lag12 18.9%
lag6 8.6%
lag2 8.6%
month 7.9%

Модель опирается на логичные временные зависимости (тренд, годовая/полугодовая сезонность, инерция). Однако отсутствие нелинейных взаимодействий не позволяет устранить знакочередование остатков.

4. Выводы по задаче №3

  1. XGBoost на правильно сконструированных признаках конкурирует с глубокими моделями, но качество остатков хуже, чем у AutoARIMA.
  2. LSTM лишь незначительно опережает XGBoost по MAE, но её остатки нестабильны. NBEATS и NHITS работают хуже.
  3. По сравнению со статистическими методами из задачи №2, data‑driven подходы не дали кардинального улучшения точности. Для рядов с явной сезонностью и трендом классические статистические модели остаются сильным бейзлайном.

Задача №4. Итоговый пайплайн

Архитектура пайплайна

  1. Загрузка данных → агрегация в месячный ряд.
  2. Feature engineering: лаги, скользящие статистики, календарные признаки.
  3. Обучение трёх разнородных моделей: AutoARIMA (статистическая), XGBoost (ML), LSTM (DL).
  4. Оценка метрик на тесте (12 месяцев).
  5. Тест Диеболда–Мариано для проверки значимости различий.
  6. Замер вычислительной эффективности.

Результаты работы пайплайна

Модель MAE RMSE sMAPE Время обучения Время инференса
AutoARIMA 2.91 3.47 34.02% 42.44 с 18.2951 с
XGBoost 2.84 3.76 32.97% 0.25 с 0.006197 с
LSTM 2.81 3.44 33.02% 21.87 с 0.1297 с

Тест Диеболда–Мариано (p‑значения)

  • AutoARIMA vs XGBoost: p = 0.565 → различия незначимы.
  • AutoARIMA vs LSTM: p = 0.772 → различия незначимы.
  • XGBoost vs LSTM: p = 0.451 → различия незначимы.

Интерпретация: на уровне значимости 0.05 все три модели статистически неразличимы по точности. Выбор модели можно делать по вторичным критериям (скорость, интерпретируемость, возможность добавления внешних переменных).

Выводы по пайплайну

  • AutoARIMA — надёжное базовое решение с возможностью строить калиброванные интервалы.
  • XGBoost — самый быстрый (обучение 0.25 с, инференс 6 мс) и интерпретируемый, но требует тщательного конструирования признаков.
  • LSTM показывает схожую точность, однако его остатки асимметричны; DL может быть оправдан при большем объёме данных или включении экзогенных факторов.

Общее заключение

В рамках работы выполнен полный цикл прогнозирования ежемесячного числа космических запусков на основе датасета, охватывающего период с 1957 по август 2020 года.

Цель — построить прогноз на 12 месяцев вперёд, сравнить статистические, ML и DL методы.
Основные результаты:

  • EDA выявил нестационарность, выраженный тренд и годовую сезонность. Ряд пригоден для одномерного прогнозирования.
  • Статистические методы: лучшим оказался AutoARIMA (MAE на тесте 2.91, бектестинг MAE 2.21). Остатки модели белые, но вероятностные интервалы плохо калиброваны.
  • ML/DL методы: XGBoost и LSTM показали точечную точность, близкую к AutoARIMA (MAE 2.84 и 2.81 соответственно), однако их остатки хуже (знакочередование, асимметрия). NBEATS и NHITS уступили.
  • Итоговый пайплайн объединил все три подхода. Тест Диеболда–Мариано подтвердил статистическую неразличимость моделей по точности. XGBoost лидирует по скорости.

Численные оценки (на тестовом периоде 12 месяцев):

  • AutoARIMA: MAE=2.91, RMSE=3.47, sMAPE=34.0%
  • XGBoost: MAE=2.84, RMSE=3.76, sMAPE=33.0%
  • LSTM: MAE=2.81, RMSE=3.44, sMAPE=33.0%

Рекомендация: для данного ряда оптимальным выбором является AutoARIMA как статистически обоснованный и надёжный бейзлайн. Если критична скорость инференса или требуется интерпретируемость — XGBoost не уступает в точности. Глубокие модели не дают преимуществ при текущем объёме данных.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages