Введение в временные ряды, а также основные концепции и методы моделирования, связанные с анализом и прогнозированием временных рядов.

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

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

Цель этой статьи - дать введение во временные ряды, а также основные концепции и методы моделирования, связанные с анализом и прогнозированием временных рядов.

Что такое временной ряд?

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

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

Для прогнозирования временных рядов используются 2 метода.

  1. Одномерное прогнозирование временных рядов: только две переменные, одна из которых - время, а другая - поле для прогноза.
  2. Многовариантное прогнозирование временных рядов: содержат несколько переменных, в которых одна переменная используется в качестве времени, а другие будут иметь несколько параметров.

Когда дело доходит до анализа временных рядов, необходимо учитывать некоторые особенности. Они есть,

1. Тенденция

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

2. Сезонность

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

Например, если мы подумаем о продажах мороженого через несколько лет, то летом будет много продаж, а зимой - низкие. Итак, эта закономерность повторяется в течение определенных лет. Итак, S будет 12.

3. Стационарный

Стационарность означает, что такие статистические свойства временного ряда, как среднее значение, дисперсия и ковариация, не меняются с течением времени.

  • На первом графике среднее значение изменяется (увеличивается) со временем, что приводит к восходящей тенденции.
  • На втором графике в ряду нет тенденции, но дисперсия ряда меняется во времени.
  • На третьем графике разброс становится ближе по мере увеличения времени, что означает, что ковариация меняется во времени.

На этой диаграмме все три свойства постоянны во времени, как выглядит стационарный временной ряд.

Мы можем использовать несколько методов, чтобы определить, является ли временной ряд стационарным или нет.

  1. Визуальный тест, который идентифицирует серию, просто просматривая каждый график.
  2. Тест ADF (расширенный тест Дики-Фуллера), который используется для определения наличия единичного корня в серии.
  3. KPSS (Kwiatkowski-Phillips-Schmidt-Shin) Тест

Делаем временной ряд стационарным с помощью разности

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

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

Сезонная разница - это разница между значением и значением с запаздыванием, кратным S.

Правильный порядок дифференцирования - это минимальная разница, необходимая для получения почти стационарного ряда, который имеет примерно постоянное среднее значение. И график АКФ максимально быстро достигает нуля.

4. Белый шум

Просто «белый» означает, что все частоты представлены одинаково, а «шум» означает, что нет никакого шаблона, только случайные вариации.

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

Затем давайте посмотрим, что это за графики ACF и PACF.

Функция автокорреляции

Это резюмирует силу взаимосвязи между двумя переменными. Для этой цели мы можем использовать коэффициент корреляции Пирсона.

Коэффициент корреляции Пирсона - это число от -1 до 1, которое описывает отрицательную или положительную корреляцию соответственно.

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

График автокорреляции временного ряда по запаздыванию называется функцией A uto C orrelation F (ACF), а также этот график называется коррелограмма или график автокорреляции.

Функция частичной автокорреляции

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

Автокорреляция для наблюдения и наблюдения на предыдущем временном шаге состоит из прямых и косвенных корреляций. Эти косвенные корреляции состоят из линейной функции корреляции наблюдений на промежуточных временных шагах. Функция частичной автокорреляции устраняет эти косвенные корреляции.

Теперь давайте обсудим некоторые модели, используемые при прогнозировании временных рядов.

Модель AR

Авторегрессивная (только AR) модель - это модель, в которой модель зависит только от собственных задержек.

Модель MA

Модель скользящего среднего - это модель, в которой модель зависит только от ошибок запаздывающего прогноза, которые являются ошибками моделей AR соответствующих запаздываний.

Модель ARMA

Процесс Авторегрессионно-скользящее среднее является базовой моделью для анализа стационарных временных рядов. Модель ARMA - это объединение моделей AR и MA.

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

Модель ARIMA

uto- R прогрессивный I интегрированный M овальный средний, также известный как ARIMA, класс моделей, основанных на собственных лагах и лагах ошибок прогноза. Любой несезонный временной ряд, который демонстрирует закономерности и не является случайным белым шумом, можно смоделировать с помощью моделей ARIMA.

Модель ARIMA характеризуется тремя терминами:

  • p - это порядок AR-члена, где количество запаздываний Y, которое будет использоваться в качестве предикторов.
  • q - это порядок члена скользящей средней, в который должно попадать количество запаздывающих ошибок прогноза.
  • d - минимальное количество разностей, необходимое для того, чтобы ряд стал стационарным.

Модель SARIMA

В сезонной модели ARIMA сезонные условия AR и MA предсказывают, используя значения данных и ошибки, временами с лагами, кратными m (диапазон сезонности).

Несезонные условия (p, d, q): для этого можно использовать графики ACF и PACF. Изучая пики ранних лагов, ACF указывает член скользящей средней (q). Точно так же PACF указывает член AR (p).

Сезонные условия (P, D, Q и m). Для этого необходимо изучить закономерности в лагах, кратных m. В большинстве случаев для этого достаточно первых двух или трех сезонных мультипликаторов. Таким же образом используйте ACF и PACF.

Помимо моделей, рассмотренных выше, есть еще несколько моделей, таких как векторная авторегрессия (VAR), модель ARCH / GARCH, LSTM и т. Д.

Заключение

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

Спасибо за чтение!

использованная литература

[1] Н. Тяги, Введение в анализ временных рядов: методы и модели машинного обучения прогнозирования временных рядов »(2020), Analyticssteps.com

[2] С. Прабхакаран, Модель ARIMA - Полное руководство по прогнозированию временных рядов в Python, machinelearningplus.com

[3] Дж. Браунли , Нежное введение в автокорреляцию и частичную автокорреляцию (2017 г.), Machine Learning Mastery

[4] Дж. Браунли, Временные ряды белого шума с Python (2017), Machine Learning Mastery

[5] Дж. Браунли, Как создать модель ARIMA для прогнозирования временных рядов в Python (2017 г.), Machine Learning Mastery

[6] Окуан, Анализ временных рядов финансовых данных IV - модели ARMA (2017), medium.com/auquan