Методы анализа временных рядов: сглаживание

metody analiza vremennyh ryadov sglazhivanie1 1 - Методы анализа временных рядов: сглаживание

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

 

Ряды являются распространенной и важной формой описания данных, так как позволяют наблюдать всю историю изменения интересующего нас значения. Это даёт нам возможность судить о «типичном» поведении величины и об отклонениях от такого поведения.

 

Передо мной встала задача выбрать набор данных, на котором можно было бы наглядно продемонстрировать особенности временных рядов. Я решил воспользоваться статистикой пассажиропотока на международных авиалиниях, поскольку этот набор данных весьма нагляден и стал своего рода стандартным (http://robjhyndman.com/tsdldata/data/airpass.dat, источник Time Series Data Library, R. J. Hyndman). Ряд описывает количество пассажиров международных авиалиний в месяц (в тысячах) за период с 1949 по 1960 года.

 

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

ris. 1 - Методы анализа временных рядов: сглаживание

Временной ряд

Первое, что мы обычно делаем с временным рядом, это отображаем его на графике. Prognoz Platform позволяет построить график, просто «перетащив» ряд в рабочую книгу.

ris. 2 1024x653 - Методы анализа временных рядов: сглаживание

Временной ряд на графике

Символ ‘M’ в конце имени ряда означает, что ряд имеет месячную динамику (интервал между наблюдениями равен одному месяцу).

Уже из графика мы видим, что ряд демонстрирует две особенности:

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

Наш ряд достаточно «аккуратный», однако часто встречаются ряды, которые помимо двух описанных выше характеристик демонстрируют ещё одну – наличие «шума», т.е. случайных вариаций в той или иной форме. Пример такого ряда можно увидеть на графике ниже. Это синусоидальный сигнал, смешанный со случайной величиной.

ris. 3 1024x655 - Методы анализа временных рядов: сглаживание

Временной ряд с шумом

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

 

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

Скользящее среднее

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

formula11 - Методы анализа временных рядов: сглаживание

где xi – исходный ряд, si – сглаженный ряд.

 

Ниже можно увидеть результат применения данного алгоритма к двум нашим рядам. По умолчанию предлагаем использовать сглаживание с размером окна в 5 точек (k в нашей формуле выше будет равно 2). Обратите внимание, что сглаженный сигнал уже не так подвержен влиянию шума, однако вместе с шумом, естественно, пропадает и часть полезной информации о динамике ряда. Также видно, что у сглаженного ряда отсутствуют первые (и также последние) k точек. Это связано с тем, что сглаживание выполняется для центральной точки окна (в нашем случае для третьей точки), после чего окно сдвигается на одну точку, и вычисления повторяются. Для второго, случайного ряда, я использовал сглаживание с окном равным 30, чтобы лучше выявить структуру ряда, так как ряд «высокочастотный», точек очень много.

ris. 4 1024x651 - Методы анализа временных рядов: сглаживание
Сглаживание временного ряда с размером окна в 5 точек

 

ris. 5 1024x654 - Методы анализа временных рядов: сглаживание

Метод скользящего среднего

Метод скользящего среднего имеет определённые недостатки:

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

Узнайте о других решениях

Экспоненциальное сглаживание

Более продвинутый метод сглаживания, который также можно использовать для прогнозирования – экспоненциальное сглаживание, также иногда называемое методом Хольта-Уинтерса (Holt-Winters) в честь имён его создателей.

 

Существует насколько вариантов данного метода:

  • одинарное сглаживание для рядов, у которых нет тренда и сезонности;
  • двойное сглаживание для рядов, у которых есть тренд, но нет сезонности;
  • тройное сглаживание для рядов, у которых есть и тренд, и сезонность.

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

 

В простейшем варианте одинарного сглаживания соотношение такое:

formula2 - Методы анализа временных рядов: сглаживание

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

 

Чтобы понять, почему сглаживание называется экспоненциальным, нам нужно раскрыть соотношение рекурсивно:

formula3 - Методы анализа временных рядов: сглаживание

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

 

Однако, если в данных есть тренд, простое сглаживание будет «отставать» от него (либо придётся брать значения α близкими к 1, но тогда сглаживание будет недостаточным). Нужно использовать двойное экспоненциальное сглаживание.

 

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

 

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

 

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

ris. 6 - Методы анализа временных рядов: сглаживание

Параметры сезонности временного ряда

Как я вычислил период, мы рассмотрим в следующей статье о временных рядах.

 

Обычно в качестве первых приближений можно рассматривать значения между 0,2 и 0,4. Также использует модель с дополнительным параметром ɸ, который дэмпфирует тренд так, что он приближается к константе в будущем. Для ɸ я взял значение 1, что соответствует обычной модели.

 

Также я сделал прогноз значений ряда данным методом на последние 2 года. На рисунке ниже я пометил точку начала прогноза, проведя через неё черту. Как видно, исходный ряд и сглаженный весьма неплохо совпадают, в том числе и на периоде прогнозирования – неплохо для такого простого метода!

ris. 7 1024x652 - Методы анализа временных рядов: сглаживание

Прогноз значений временного ряда

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

 

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

Методы анализа

Напишите нам

и мы ответим в течении часа

support@asu-analitika.ru

19 66x66 - Методы анализа временных рядов: сглаживание
Используйте аналитику и обнаружение данных, чтобы определить, чего действительно хотят ваши клиенты

Загрузить программу ВІ Демонстрации решений Опросы клиентов и фокус-группы могут помочь руководителям лучше понять потребности …

sap 7 66x66 - Методы анализа временных рядов: сглаживание
Начало работы с Tibco Spotfire Desktop

Загрузить программу ВІ Демонстрации решений Для успешной работы с продуктами Tibco Spotfire, Вам потребуется 10 …

business analytics vs business intelligence 66x66 - Методы анализа временных рядов: сглаживание
Сравнение топ-4 популярных BI платформ. Какую выбрать?

Загрузить программу ВІ Демонстрации решений Сегодня существует огромное количество BI-платформ и инструментов визуализации данных, которые …

46009d452fee4dc89c8c9f4e396ed6cb 66x66 - Методы анализа временных рядов: сглаживание
Что такое Business Intelligence

Загрузить программу ВІ Демонстрации решений Существует огромное количество терминов: аналитика, data mining, анализ данных, business …

maxresdefault 66x66 - Методы анализа временных рядов: сглаживание
Зачем вообще нужны системы бизнес-аналитики

Загрузить программу ВІ Демонстрации решений Визуализация в бизнес-аналитике очень важна. Например, концепт этих графиков отрисован …

131 66x66 - Методы анализа временных рядов: сглаживание
Gartner BI Magic Quadrant 2019: обзор лидеров рынка

Загрузить программу ВІ Демонстрации решений В январе Gartner традиционно выпускает масштабное исследование рынка систем бизнес-аналитики, …

quienes somos 03 66x66 - Методы анализа временных рядов: сглаживание
Цены на продукты

Загрузите бесплатно Демонстрация Мы подготовили для Вас ориентировочные цены на различные продукты и пакеты программ, …

10 66x66 - Методы анализа временных рядов: сглаживание
Розничная торговля: анализ переменных кросс-продаж для увеличения доходов

Загрузить программу ВІ Демонстрации решений Легко и просто создавайте и разворачивайте статистический анализ данных многократного …

prodvizhenie 1200x350 66x66 - Методы анализа временных рядов: сглаживание
Что выбрать Spotfire,Tableau,Microsoft BI или Qlik Sense?

Конечно, Tableau и Spotfire предлагают унифицированное представление данных, но не настолько эффективно, как QlikSense. QlikSense …

tibco soft 1 66x66 - Методы анализа временных рядов: сглаживание
Основы предиктивной аналитики для менеджеров

Загрузить программу ВІ Демонстрации решений Компаниям, добывающим драгоценные камни бизнес-инсайтов из больших данных, просто необходимы исследователи …

active icon pdf - Методы анализа временных рядов: сглаживание
Финансовая аналитика
active icon pdf - Методы анализа временных рядов: сглаживание
Наша компания
active icon pdf - Методы анализа временных рядов: сглаживание
Tibco Spotfire

Несколько видео о наших продуктах

085 - Методы анализа временных рядов: сглаживание
Проиграть видео
Презентация аналитической платформы Tibco Spotfire
106 - Методы анализа временных рядов: сглаживание
Проиграть видео
Отличительные особенности Tibco Spotfire 10X
1 11 - Методы анализа временных рядов: сглаживание
Проиграть видео
Как аналитика данных помогает менеджерам компании
2019-08-06T00:36:01+00:00

This Is A Custom Widget

This Sliding Bar can be switched on or off in theme options, and can take any widget you throw at it or even fill it with your custom HTML Code. Its perfect for grabbing the attention of your viewers. Choose between 1, 2, 3 or 4 columns, set the background color, widget divider color, activate transparency, a top border or fully disable it on desktop and mobile.