Визуализация архитектуры сети
Last updated
Last updated
Понимание архитектуры модели может быть очень полезным как для отладки вашей сети, так и для понимания её поведения.
В этом документе мы построим глобальную модель, используя данные о часовой нагрузке региона ERCOT. В качестве референса мы используем записную книжку ./global_modeling.ipynb
Наконец, мы визуализируем архитектуру сети.
Сначала мы установим Graphviz. Для Windows перейдите по ссылке . Для Mac/Linux выполните команду ниже.
Сначала загружаем данные:
0
2004-01-01 01:00:00
7225.09
877.79
1044.89
745.79
7124.21
1660.45
3639.12
654.61
1
2004-01-01 02:00:00
6994.25
850.75
1032.04
721.34
6854.58
1603.52
3495.16
639.88
2
2004-01-01 03:00:00
6717.42
831.63
1021.10
699.70
6639.48
1527.99
3322.70
623.42
Извлекаем названия регионов, которые впоследствии будут использоваться при создании модели.
Глобальные модели могут быть активированы, когда входные данные df
функции содержат дополнительную колонку ID
, которая идентифицирует различные временные ряды (помимо типичной колонки ds
, содержащей временные метки, и колонки y
, содержащей наблюдаемые значения временного ряда). В нашем примере мы выбираем данные за трехлетний интервал (с 2004 по 2007 год).
0
2004-01-01 01:00:00
7225.09
COAST
1
2004-01-01 02:00:00
6994.25
COAST
2
2004-01-01 03:00:00
6717.42
COAST
Когда входными данными для функции split_df
является pd.DataFrame с колонкой ‘ID’, обучающие и валидационные данные предоставляются в аналогичном формате. Для глобальных моделей входные данные обычно разделяются в соответствии с долей времени, охватывающей все временные ряды (по умолчанию, когда есть более одного ‘ID’ и когда local_split=False
). Если пользователь хочет разделить каждый временной ряд локально, параметр local_split
должен быть установлен в значение True. В этом примере мы разделим наши данные на обучающую и тестовую выборки (с долей теста 33% - 2 года обучения и 1 год теста).
Глобальное моделирование позволяет нам тренировать нашу модель, основываясь либо на глобальной, либо на локальной нормализации. В последнем случае каждый временной ряд нормализуется локально (у каждого временного ряда есть свои соответствующие параметры данных). В первом случае у нас есть уникальные параметры данных, которые будут использоваться во всех рассматриваемых временных рядах.
Процесс стандартной подгонки глобальных моделей основан на локализованной нормализации данных. Каждый временной ряд будет иметь параметры нормализации данных, связанные с каждым предоставленным идентификатором ('ID'). Мы собираемся определить модель, которая прогнозирует следующий час на основе данных последних 24 часов.
После создания объекта NeuralProphet
, модель можно создать, вызвав функцию fit
1
0.025526
0.033126
0.000416
0.0
1
Torch-summary предоставляет информацию, дополняющую то, что предоставляет print(your_model)
в PyTorch, аналогично API model.summary()
в Tensorflow для визуализации модели, что помогает при отладке вашей сети. В этом проекте мы реализуем аналогичный функционал в PyTorch и создаем чистый, простой интерфейс для использования в ваших проектах.
Небольшой пакет для создания визуализаций графиков и трассировок выполнения PyTorch.
От :
От :