Как работают модели прогнозирования временных рядов

Инструменты Временные ряды ИИ в наборе инструментов GeoAI используют модели прогнозирования временных рядов на основе глубокого обучения для прогнозирования будущих значений в каждом месте куба пространство-время. Эти модели обучаются с помощью инструмента Обучение модели прогнозирования временных рядов на существующих данных временных рядов, а обученные модели можно использовать для прогнозирования с помощью инструмента Прогнозирование с использованием модели временных рядов. Основным результатом является карта с итоговым временным шагом прогноза, а также информативные сообщения и всплывающие диаграммы. Другие независимые переменные могут быть указаны для повышения точности прогноза переменной анализа.

Инструменты используют различные типы глубоких нейронных сетей для прогнозирования временных рядов. Поддерживаемые сетевые архитектуры включают полностью подключенные сети, а также сверточные нейронные сети и LSTM (долговременная краткосрочная память) для прогнозирования временных рядов. Детали архитектур моделей описаны ниже.

Обучающие данные, используемые для обучения моделей, строятся с использованием временных окон для каждой переменной входных данных временного ряда. Данные временных рядов могут следовать сложным тенденциям и иметь несколько уровней сезонности. Модели, основанные на глубоком обучении, обладают высокой способностью к обучению и могут изучать эти закономерности в различных временных рядах и местах при условии, что имеется достаточно обучающих данных. Инструмент обучения обучает единую глобальную модель прогноза, которая использует обучающие данные из каждого местоположения. Эта глобальная модель используется для прогнозирования будущих значений в каждом местоположении с помощью инструмента прогнозирования.

Возможное применение

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

Например, вы можете использовать набор инструментов Временные ряды в следующих приложениях:

  • Менеджер розничного магазина может прогнозировать спрос на потребительские товары на основе исторических данных о продажах и соответствующим образом поддерживать запасы.
  • Эпидемиолог может смоделировать рост инфекционных заболеваний и предсказать количество пациентов, которым потребуется госпитализация в течение следующей недели.
  • Ветроэнергетическая установка может прогнозировать, сколько энергии ветра будет произведено на основе исторических тенденций и данных о погоде.
  • Инвестор в недвижимость может оценить тенденции цен на жилье на основе исторических данных и их связи с такими факторами, как кредитная ставка, цена на золото и индикаторы фондового рынка.
  • Управленцы могут прогнозировать спрос на жилье, электричество и воду в городских районах.
  • Метеорологи могут прогнозировать южную осцилляцию Эль-Ниньо (ЮОЭН) на основе климатических переменных и индексов, таких как ветра и температура поверхности моря над тропической восточной частью Тихого океана.

Обучение и прогнозирование модели

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

Ошибка (также известная как потеря) в прогнозировании используется для управления обучением модели с использованием градиентного спуска. Модель постепенно улучшается в течение нескольких проходов обучения по всем данным (эпохам), а вычисленная ошибка (разница между прогнозом и значением истинности на следующем временном шаге) уменьшается по мере обучения. По умолчанию обучение модели останавливается, когда потеря проверочных данных не регистрирует никаких улучшений после пяти последовательных эпох, за исключением случаев, когда параметр Остановить обучение, когда модель больше не улучшается, не установлен. Обученная модель сохраняется как файл пакета глубокого обучения (.dlpk) и может быть использована для прогнозирования неизвестных данных временных рядов с помощью инструмента Прогнозирование с использованием модели временных рядов.

Архитектуры моделей

Поддерживаемые архитектуры моделей описаны ниже.

LSTM (долговременная краткосрочная память)

Данные временных рядов носят временной или последовательный характер и могут обрабатываться рекуррентной нейронной сетью (RNN). RNN запоминают прошлую информацию и передают ее в текущее состояние ввода. Однако обычные RNN не способны запоминать долгосрочные зависимости из-за исчезающих градиентов. LSTM — это модернизированный тип RNN, решающий эту проблему. LSTM состоит из блоков, каждый из которых состоит из четырех нейронных сетей, они используются для обновления состояния своей ячейки с использованием информации из новых входных данных и прошлых выходных данных.

Модуль LSTM

Когда вы выбираете LSTM в качестве значения параметра Тип модели, следующий аргумент модели может быть предоставлен для настройки модели, когда не используются значения по умолчанию:

ИмяЗначение по умолчаниюОписание

hidden_layer_size

100

Размер скрытого слоя

Полностью сверточная сеть (FCN)

Полностью сверточные сети (FCN) в основном использовались для изображений для семантической сегментации и других задач компьютерного зрения. Они берут изображение в качестве входных данных и пропускают его через ряд сверточных слоев для извлечения важных признаков. Такие нейронные сети также способны извлекать тенденции и сезонность в данных временных рядов и давать удивительно хорошие результаты для прогнозирования временных рядов. Учитывая входные данные временных рядов, одномерный фильтр скользит по ним в каждом сверточном слое для извлечения инвариантных во времени отличительных признаков с высокой прогностической способностью.

Сверточные слои эффективны в вычислительном отношении из-за уменьшенных параметров, поскольку между входным и выходным слоями обеспечивается локальная связь. Совместное использование параметров также значительно сокращает количество необходимых параметров за счет одинакового веса ядра для отдельных фильтров. Наиболее заметным преимуществом сверточных нейронных сетей является инвариантность к сдвигу, что делает сеть надежной при обнаружении важных объектов независимо от их местоположения в данных.

В модели временных рядов FCN используются три одномерных сверточных слоя без пошагового перемещения и объединения. Средний пул выполняется на последнем уровне архитектуры. После каждой свертки выполняется пакетная нормализация, и выпрямленные линейные единицы (ReLU) используются в качестве функций активации. Архитектура сети изображается следующим образом:

Архитектура FCN
Показана архитектура полностью сверточной сети для прогнозирования временных рядов.

InceptionTime

Эта CNN (сверточная нейронная сеть) основана на ранее предложенной начальной сети «Going Deeper with Convolutions» (2015) [1] для классификации изображений. До InceptionTime вычислительная мощность нейронных сетей основывалась на их глубине. Начальный модуль, предложенный в этой статье, использует различные свертки параллельно и объединяет их выходные данные, тем самым увеличивая как глубину, так и ширину сети, сохраняя при этом постоянный бюджет вычислений.

Модель InceptionTime применяет эту архитектуру для прогнозирования временных рядов. В этой модели конкатенация выполняется для одномерных сверточных слоев с размером ядра 10, 20 и 40 и максимальным объединяющим слоем размером 3. Кроме того, остаточное соединение вводится в каждом третьем начальном модуле, как показано на рисунке ниже. Начальная сеть также активно использует слои узких мест, где фильтры длины 1 и шага 1 используются для уменьшения размерности временных рядов, а также сложности модели, предотвращая при этом переобучение. Несколько таких начальных блоков используются в сети, за которыми следует глобальный средний уровень пула.

Архитектура InceptionTime
Показана архитектура InceptionTime для прогнозирования временных рядов.

ResNet

Общепринятое мнение о глубоких нейронных сетях заключается в том, что чем глубже сеть, тем лучше она должна работать, поскольку есть больше параметров для изучения сложных задач. Однако было замечено, что производительность модели на самом деле ухудшается с большей глубиной из-за проблемы исчезающих градиентов. Для решения этой проблемы в архитектуре ResNet был введен остаточный блок. Эта модель состоит из остаточных блоков, в которые добавляются пропущенные или сокращенные соединения. Эти прямые соединения позволяют градиенту беспрепятственно проходить к более ранним слоям сети вдоль них, чтобы лучше обучаться.

Для прогнозирования временных рядов архитектура адаптирована в статье "Time Series Classification from Scratch with Deep Neural Networks: A Strong Baseline" за авторством Wang и др. 2016. В сети используются три остаточных блока, как показано на следующем рисунке. Каждый блок содержит комбинацию трех сверток с пакетной нормализацией и использует ReLU в качестве функции активации. Пропускные соединения добавляются на входе и выходе. Используемые здесь размеры фильтров имеют длину 64, 128 и 128 соответственно, а последний слой использует глобальное усреднение.

Архитектура ResNet
Показана архитектура ResNet для прогнозирования временных рядов.

ResCNN

Эта сеть представляет собой комбинацию ResNet и сверточных нейронных сетей. В сеть добавляется одиночное пропускное соединение для лучшей передачи информации. Чтобы устранить переобучение из-за пропуска соединений во всех остаточных блоках, в этой архитектуре используется пропуск соединения только в первом блоке, как показано на следующем рисунке. Разнообразные функции активации, включая ReLU, LReLU, PReLU и ELU, используются на разных уровнях для достижения достойной абстракции [2].

Архитектура ResCNN

Прогнозирование и проверка

Чтобы определить, насколько хорошо работает модель, инструмент опирается на две метрики. Первая — это метрика прогноза, а вторая — метрика проверки. Метрика прогноза позволяет определить, насколько хорошо прогноз соответствует существующим данным, а метрика проверки предоставляет информацию о том, насколько хорошо модель прогнозирует данные проверки, которые отложены на время обучения модели.

  • Метрика прогноза

    Инструмент обучает единую модель, комбинируя данные из разных мест куба пространство-время, и модель изучает характерные особенности данных в каждом месте. Затем обученная модель используется для прогнозирования будущих временных интервалов. Соответствие модели существующим обучающим данным измеряется с использованием среднеквадратичной ошибки прогноза (RMSE), которая равна квадратному корню из средней квадратичной разницы между значениями, полученными моделью, и фактическими значениями временного ряда.

    RMSE прогноза

    Где T — количество временных шагов, ct — значение, полученное моделью, а rt — необработанное значение временного ряда в момент времени t.

    На следующем изображении показаны необработанные значения временного ряда вместе со значениями, полученными с помощью модели временного ряда. RMSE прогноза измеряет, насколько различаются эти два временных ряда.

    Модель прогноза

    RMSE прогноза только измеряет, насколько хорошо модель подгонки кривой соответствует необработанным значениям временного ряда. Она не измеряет, насколько хорошо обученная модель прогнозирует будущие значения. Обычно модель точно соответствует временному ряду, но не дает точных прогнозов при экстраполяции, и, следовательно, среднеквадратическая ошибка проверки является более надежной метрикой.

  • Метрика проверки

    Модель проверки используется для определения, насколько хорошо модель прогноза может предсказывать будущие значения для каждого временного ряда. Она строится путем исключения некоторых последних временных рядов из каждого временного ряда и обучения модели с данными, которые не были исключены. Затем эта модель используется для прогнозирования значений скрытых данных, и прогнозируемые значения сравниваются с необработанными значениями, которые были скрыты. По умолчанию, 10 процентов временных шагов удерживаются для проверки, но это число можно изменить, используя параметр Число временных шагов, исключаемых для проверки. Число исключаемых временных шагов не может превышать 25 процентов от общего числа временных шагов, и проверка не выполняется, если указано значение 0. Точность прогнозов измеряется путем вычисления статистики Проверяемое значение ошибки RMSE, которая равна квадратному корню из средней квадратной разницы между прогнозом и сырыми значениям для исключенных временных шагов.

    RMSE проверки

    Где T — количество временных рядов, m — количество временных рядов, удерживаемых для проверки, ct — значение, прогнозируемое на основе первых временных рядов T-m, а rt — исходное значение временного ряда, удерживаемое для проверки в момент времени t.

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

    Модель проверки

Выходные данные инструмента

Основным результатом этого инструмента является класс 2D-объектов, отображающий каждое местоположение во Входном кубе пространства-времени, использующий символы из последнего спрогнозированного временного шага с помощью прогнозов всех остальных временных шагов, использованных в качестве полей. Несмотря на то, что каждая локация предсказывается независимо от других, а пространственные отношения во внимание не берутся, карта все равно может показывать пространственные закономерности для областей со сходными временными рядами.

Всплывающие диаграммы

Если щелкнуть любой объект на карте с помощью инструмента навигации Исследовать, во Всплывающем окне отобразится диаграмма, показывающая значения куба пространство-время вместе с подобранными и прогнозируемыми значениями. Значения куба пространства-времени отображаются синим цветом и соединяются синей линией. Подходящие значения отображаются оранжевым цветом и соединяются пунктирной оранжевой линией. Спрогнозированные значения отображаются оранжевым цветом и соединяются сплошной оранжевой линией, представляющей прогноз модели леса. Вы можете задержать курсор над любой точкой диаграммы, чтобы просмотреть дату и значение в этой точке.

Метод прогнозирования

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

Сообщения геообработки

Инструмент предоставляет ряд сообщений с информацией о запуске инструмента. Сообщения содержат три основных раздела.

Раздел Информация о входном кубе пространства-времени отображает свойства входного куба пространства-времени, а также информацию о временных шагах, количестве местоположений и число пространственно-временных бинов. Свойства, отображаемые в этом первом разделе, зависят от первоначального метода создания куба, поэтому информация может отличаться от куба к кубу. В разделе Детали анализа отображаются свойства результатов прогноза, включая количество прогнозируемых временных шагов, количество временных шагов, исключенных для проверки и информацию о прогнозируемых временных шагах.

Раздел Обзор точности среди Местоположений отображает суммарную статистику для Прогнозного значения ошибки RMSE и Проверяемого значения ошибки RMSE среди всех местоположений Для каждого значения отображаются минимальное, максимальное и среднее значения, медиана и стандартное отклонение.

Примечание:

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

Выходные поля

Дополнительно к полю Object ID, полям геометрии и полю, содержащему всплывающие диаграммы, Выходные объекты будут иметь следующие поля:

  • Location ID (LOCATION) - идентификатор (Location ID) соответствующего местоположения в кубе пространство-время.
  • Прогноз для (Переменная анализа) в (Временной ряд) (FCAST_1, FCAST_2 и т.п.)—предсказанное значение в каждом будущем временном ряду. Псевдоним поля отображает имя Переменной анализа и дату прогноза. Поле данного типа создается для каждого прогнозируемого временного шага.
  • Среднеквадратичная ошибка прогноза (F_RMSE) - значение RMSE прогноза.
  • Среднеквадратическая ошибка проверки (V_RMSE) — RMSE проверки. Если для проверки не были исключены никакие временные шаги, это поле не создается.
  • Метод прогнозирования (METHOD) — текстовое поле, отображающее тип используемой модели Временных рядов ИИ и длину последовательности.

Список литературы

Дополнительные сведения о моделях прогнозирования временных рядов на основе глубокого обучения см. в следующих источниках:

  1. Szegedy, Christian, Wei Liu, Yangqing Jia, Pierre Sermanet, Scott Reed, Dragomir Anguelov, Dumitru Erhan, Vincent Vanhoucke, and Andrew Rabinovich. "Going deeper with convolutions." В Proceedings of the IEEE conference on computer vision and pattern recognition, pp. 1-9. 2015.
  2. Ismail Fawaz, Hassan, Benjamin Lucas, Germain Forestier, Charlotte Pelletier, Daniel F. Schmidt, Jonathan Weber, Geoffrey I. Webb, Lhassane Idoumghar, Pierre-Alain Muller, and François Petitjean. "Inceptiontime: Finding alexnet for time series classification." Data Mining and Knowledge Discovery 34, no. 6 (2020): 1936-1962.
  3. Wang, Zhiguang, Weizhong Yan, and Tim Oates. "Time series classification from scratch with deep neural networks: A strong baseline." В 2017 International joint conference on neural networks (IJCNN), pp. 1578-1585. IEEE, 2017.
  4. Zou, Xiaowu, Zidong Wang, Qi Li, and Weiguo Sheng. "Integration of residual network and convolutional neural network along with various activation functions and global pooling for time series classification." Neurocomputing 367 (2019): 39-45.
  5. Hochreiter, Sepp, and Jürgen Schmidhuber. "Long short-term memory." Neural computation 9, no. 8 (1997): 1735-1780.

Связанные разделы