Bemind
NeuralProphet
NeuralProphet
  • NeuralProphet 1.0.0rc8 документация
  • Инструкция по началу работы
  • Новые уроки
    • Урок 1: Основы
    • Урок 2: Тренды
    • Урок 3: Сезонность
    • Урок 4: Авторегрессия
    • Урок 5: Регрессоры с запаздыванием
    • Урок 6: Будущие регрессоры
    • Урок 7: События и праздники
    • Урок 8: Неопределенность
    • Урок 9: Глобальная модель
    • Урок 10: Валидация и воспроизводимость
    • Следующие шаги
  • Руководства по функциям
    • Коллекция предсказаний
    • Тестирование и кросс-валидация
    • Визуализация прогнозов NeuralProphet
    • Глобальное локальное моделирование
    • Количественная оценка неопределенности
    • Условная сезонность
    • Мультипликативная Сезонность
    • Разреженная авторегрессия
    • Субдневные данные
    • Выбор гиперпараметров
    • Интеграция MLflow
    • Прямая визуализация во время обучения
    • Визуализация архитектуры сети
    • Прогнозирование потребности в энергии: Прогноз нагрузки для больницы в Сан-Франциско
    • Возобновляемая Энергия: Прогнозирование Солнечной Энергии
    • Прогнозирование нагрузки на энергосистему с визуализацией
  • Code Documentation
    • NeuralProphet Class
Powered by GitBook
On this page
  1. Новые уроки

Урок 7: События и праздники

В NeuralProphet существует два способа добавления специальных событий: через пользовательские события и через предопределенные праздники страны. Оба метода могут использоваться для моделирования особых случаев и событий, которые не учитываются другими компонентами. Эти специальные события могут помочь улучшить эффективность модели и ее интерпретируемость.

Сначала мы рассмотрим государственные праздники, а позже исследуем индивидуальные события.

import pandas as pd
from neuralprophet import NeuralProphet, set_log_level

# Загрузка набора данных для учебного пособия 4 с дополнительным столбцом температуры
df = pd.read_csv("https://github.com/ourownstory/neuralprophet-data/raw/main/kaggle-energy/datasets/tutorial01.csv")
df.head()

# Отключение сообщений журнала, кроме случаев ошибок
set_log_level("ERROR")

# Модель по умолчанию
m = NeuralProphet()
m.set_plotting_backend("plotly-static")

# Продолжение обучения модели и создание прогноза
metrics = m.fit(df)
forecast = m.predict(df)
m.plot(forecast)

Страновые праздники можно легко добавить с функцией add_country_holidays

m = NeuralProphet()
m.set_plotting_backend("plotly-static")

m = m.add_country_holidays("US")

metrics = m.fit(df)
forecast = m.predict(df)
m.plot(forecast)

Эффекты от особых событий или праздников могут возникать спорадически. Такие события моделируются аналогично будущим регрессорам, при этом каждое событие e представляется как бинарная переменная e ∈ [0, 1], указывающая, происходит ли данное событие в конкретный день или нет.

Пользовательские события

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

# https://eswd.eu/cgi-bin/eswd.cgi

df_events = pd.DataFrame(
    {
        "event": "extreme_weather",
        "ds": pd.to_datetime(
            [
                "2018-11-23",
                "2018-11-17",
                "2018-10-28",
                "2018-10-18",
                "2018-10-14",
            ]
        ),
    }
)

m = NeuralProphet()
m.set_plotting_backend("plotly-static")

m.add_events("extreme_weather")

df_all = m.create_df_with_events(df, df_events)

metrics = m.fit(df_all)
forecast = m.predict(df_all)
m.plot(forecast)
m.plot_components(forecast)
m.plot_parameters()

Last updated 1 year ago

NeuralProphet поддерживает широкий спектр стран и регионов. Полный список доступен в , которая используется внутри для поддержки национальных праздников стран.

документации pyholidays