Понимание данных имеет первостепенное значение

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

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

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

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

1. Создайте скользящие средние.

Скользящее среднее - это среднее по определенному количеству наблюдений для рассматриваемой переменной.

Например, возьмем массив [1, 2, 3, 4, 5]. Предположим, это временной ряд. Мы хотим рассчитать трехпериодную скользящую среднюю для этого массива.

  • Среднее значение 1, 2, 3 = 2
  • Среднее значение 2, 3, 4 = 3
  • Среднее значение 3, 4, 5 = 4

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

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

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

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

Если бы мы наблюдали сам временной ряд (синяя линия), это падение было бы 1) не сразу, и 2) было бы неясно, было бы это падение потребления киловатт значительным в контексте более длительного периода. временной период.

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

2. Создайте графики автокорреляции.

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

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

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

Например, температура в январе 2020 года, вероятно, будет иметь самую сильную корреляцию с температурами с января 2019 года - и то же самое при сравнении июля 2020 года с июлем 2019 года и т. Д.

Понимая это, давайте на мгновение вернемся к примеру с потреблением электроэнергии. Вот график автокорреляции для ежедневных данных, как показано на предыдущем графике:

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

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

Преобразование журнала временного ряда в общих чертах приближает процентное изменение между значениями в этом временном ряду. Этим можно добиться двух вещей:

а) он может позволить визуальное сравнение двух временных рядов с существенно разными масштабами.

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

Например, возьмем два временных ряда: один имеет шкалу 0–100, а другой - 0–1000.

Для каждого генерируется массив из 100 случайных чисел:

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

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

Теперь мы видим, что эти два ряда более сопоставимы визуально (а также статистически), и это одна из причин, почему временные ряды по странам часто преобразуются логарифмически. например Сравнение показателей ВВП США с течением времени с такой страной, как Бельгия, напрямую не имело бы смысла - абсолютный размер ВВП сильно различается между двумя странами, и поэтому имеет смысл сравнивать скорость изменения.

Заключение

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

В этой статье вы увидели:

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

Большое спасибо за ваше время, и вы можете найти больше моих материалов по науке о данных на michael-grogan.com.

Заявление об ограничении ответственности: эта статья написана на условиях «как есть» без каких-либо гарантий. Он был написан с целью предоставить обзор концепций науки о данных и никоим образом не должен интерпретироваться как профессиональный совет.