В математике временной ряд — это ряд точек данных, проиндексированных (или перечисленных, или представленных на графике) во временном порядке. Чаще всего временной ряд представляет собой последовательность , полученную в последовательные равноотстоящие друг от друга моменты времени. Таким образом, это последовательность данных дискретного времени . Примерами временных рядов являются высота океанских приливов , количество солнечных пятен и дневное значение промышленного индекса Доу-Джонса .
Временной ряд очень часто строится с помощью диаграммы прогона (которая представляет собой временную линейную диаграмму ). Временные ряды используются в статистике , обработке сигналов , распознавании образов , эконометрике , математических финансах , прогнозировании погоды , предсказании землетрясений , электроэнцефалографии , технике управления , астрономии , технике связи и, в основном, в любой области прикладной науки и техники , которая включает временные измерения.
Анализ временных рядов включает методы анализа данных временных рядов с целью извлечения значимой статистики и других характеристик данных. Прогнозирование временных рядов — это использование модели для прогнозирования будущих значений на основе ранее наблюдаемых значений. Хотя регрессионный анализ часто используется для проверки взаимосвязей между одним или несколькими различными временными рядами, этот тип анализа обычно не называют «анализом временных рядов», который относится, в частности, к взаимосвязям между различными моментами времени в пределах одного ряд.
Данные временных рядов имеют естественный временной порядок. Это отличает анализ временных рядов от перекрестных исследований , в которых нет естественного порядка наблюдений (например, объяснение заработной платы людей со ссылкой на их соответствующие уровни образования, где данные отдельных лиц могут быть введены в любом порядке). Анализ временных рядов также отличается от анализа пространственных данных , где наблюдения обычно относятся к географическим местоположениям (например, учет цен на жилье по местоположению, а также внутренним характеристикам домов). Стохастическая модель временного ряда обычно отражает тот факт, что наблюдения, расположенные близко друг к другу во времени, будут более тесно связаны, чем наблюдения, расположенные дальше друг от друга . Кроме того, модели временных рядов часто используют естественное одностороннее упорядочение времени, так что значения за данный период будут выражены как вытекающие каким-то образом из прошлых значений, а не из будущих значений (см. обратимость времени ).
Анализ временных рядов может применяться к действительным , непрерывным данным, дискретным числовым данным или дискретным символьным данным (т. е. последовательностям символов, таких как буквы и слова в английском языке [1] ).
Методы анализа временных рядов можно разделить на два класса: методы частотной области и методы временной области . Первые включают спектральный анализ и вейвлет-анализ ; последние включают автокорреляционный и кросскорреляционный анализ. Во временной области корреляция и анализ могут выполняться подобно фильтру с использованием масштабированной корреляции , тем самым уменьшая необходимость работы в частотной области.
Кроме того, методы анализа временных рядов можно разделить на параметрические и непараметрические методы. Параметрические подходы предполагают, что лежащий в основе стационарный случайный процесс имеет определенную структуру, которую можно описать с помощью небольшого числа параметров (например, с помощью модели авторегрессии или модели скользящего среднего ). В этих подходах задачей является оценка параметров модели, описывающей случайный процесс. Напротив, непараметрические подходы явно оценивают ковариацию или спектр процесса, не предполагая, что процесс имеет какую-либо конкретную структуру.
Методы анализа временных рядов также можно разделить на линейные и нелинейные , одномерные и многомерные .
Временной ряд — это один из типов панельных данных . Панельные данные — это общий класс, многомерный набор данных, тогда как набор данных временных рядов представляет собой одномерную панель (как и набор поперечных данных ). Набор данных может демонстрировать характеристики как панельных данных, так и данных временных рядов. Один из способов узнать это — спросить, что делает одну запись данных уникальной среди других записей. Если ответом является поле временных данных, то это кандидат на набор данных временных рядов. Если для определения уникальной записи требуется поле данных времени и дополнительный идентификатор, не связанный со временем (например, идентификатор студента, биржевой символ, код страны), тогда она является кандидатом на панельные данные. Если дифференциация основана на невременном идентификаторе, то набор данных является кандидатом на набор перекрестных данных.
Существует несколько типов мотивации и анализа данных для временных рядов, которые подходят для разных целей.
В контексте статистики , эконометрики , количественных финансов , сейсмологии , метеорологии и геофизики основной целью анализа временных рядов является прогнозирование . В контексте обработки сигналов , техники управления и связи он используется для обнаружения сигналов. Другие приложения относятся к интеллектуальному анализу данных , распознаванию образов и машинному обучению , где анализ временных рядов может использоваться для кластеризации , [2] [3] классификации , [4] запроса по содержимому, [5] обнаружения аномалий , а также прогнозирования . [6]
Самый простой способ изучить регулярный временной ряд — вручную с помощью линейного графика . Справа показан пример диаграммы заболеваемости туберкулезом в США, составленной с помощью программы электронных таблиц. Число случаев было стандартизировано по показателю на 100 000 и рассчитано процентное изменение этого показателя за год. Почти устойчиво нисходящая линия показывает, что заболеваемость туберкулезом снижалась в большинстве лет, но процентное изменение этого показателя варьировалось в пределах +/- 10%, с «всплесками» в 1975 году и примерно в начале 1990-х годов. Использование обеих вертикальных осей позволяет сравнивать два временных ряда на одном графике.
Исследование, проведенное аналитиками корпоративных данных, обнаружило две проблемы при исследовательском анализе временных рядов: обнаружение формы интересных закономерностей и поиск объяснения этих закономерностей. [7] Визуальные инструменты, представляющие данные временных рядов в виде матриц тепловых карт , могут помочь преодолеть эти проблемы.
Другие методы включают в себя:
Подбор кривой [10] [11] — это процесс построения кривой или математической функции , которая наилучшим образом соответствует ряду точек данных [12] , возможно, с учетом ограничений. [13] [14] Аппроксимация кривой может включать либо интерполяцию , [15] [16] , где требуется точное соответствие данным, либо сглаживание , [17] [18] , при котором строится «гладкая» функция, которая приблизительно соответствует данные. Связанной темой является регрессионный анализ [19] [20] , который больше фокусируется на вопросах статистического вывода , таких как степень неопределенности, присутствующая в кривой, которая соответствует данным, наблюдаемым со случайными ошибками. Подогнанные кривые можно использовать в качестве вспомогательного средства для визуализации данных, [21] [22] для вывода значений функции при отсутствии данных [23] и для суммирования взаимосвязей между двумя или более переменными. [24] Экстраполяция подразумевает использование подобранной кривой за пределами диапазона наблюдаемых данных, [25] и подвержена определенной степени неопределенности [26] , поскольку она может отражать метод, использованный для построения кривой, в той же степени, в какой она отражает наблюдаемые данные.
Для процессов, масштабы которых, как ожидается, обычно будут расти, одну из кривых на графике справа (и многих других) можно подобрать путем оценки их параметров.
Построение экономических временных рядов предполагает оценку некоторых компонентов на некоторые даты путем интерполяции между значениями («бенчмарками») на более ранние и более поздние даты. Интерполяция — это оценка неизвестной величины между двумя известными величинами (историческими данными) или получение выводов об недостающей информации на основе имеющейся информации («чтение между строк»). [27] Интерполяция полезна, когда доступны данные, относящиеся к отсутствующим данным, и известны их тенденции, сезонность и долгосрочные циклы. Это часто делается с использованием связанного ряда, известного по всем соответствующим датам. [28] В качестве альтернативы используется полиномиальная интерполяция или сплайн-интерполяция , когда кусочно- полиномиальные функции вписываются во временные интервалы так, что они плавно совмещаются друг с другом. Другая проблема, тесно связанная с интерполяцией, — это аппроксимация сложной функции простой функцией (также называемой регрессией ). Основное различие между регрессией и интерполяцией заключается в том, что полиномиальная регрессия дает один полином, который моделирует весь набор данных. Однако сплайн-интерполяция дает кусочно-непрерывную функцию, состоящую из множества полиномов, для моделирования набора данных.
Экстраполяция — это процесс оценки значения переменной за пределами исходного диапазона наблюдения на основе ее связи с другой переменной. Это похоже на интерполяцию , которая дает оценки между известными наблюдениями, но экстраполяция подвержена большей неопределенности и более высокому риску получения бессмысленных результатов.
В общем, задача аппроксимации функции требует от нас выбрать функцию среди четко определенного класса, которая точно соответствует («приближает») целевой функции способом, специфичным для конкретной задачи. Можно выделить два основных класса задач аппроксимации функций: во-первых, для известных целевых функций теория аппроксимации — это раздел численного анализа , который исследует, как определенные известные функции (например, специальные функции ) могут быть аппроксимированы определенным классом функций (для например, полиномы или рациональные функции ), которые часто обладают желаемыми свойствами (недорогие вычисления, непрерывность, целые и предельные значения и т. д.).
Во-вторых, целевая функция, назовем ее g , может быть неизвестна; вместо явной формулы предоставляется только набор точек (временной ряд) вида ( x , g ( x )) В зависимости от структуры домена и кодомена g могут быть применимы несколько методов аппроксимации g . Например, если g — операция над действительными числами , можно использовать методы интерполяции , экстраполяции , регрессионного анализа и подбора кривой . Если кодомен (диапазон или целевой набор) g является конечным множеством, вместо этого приходится иметь дело с проблемой классификации . Связанная с этим проблема онлайн- аппроксимации временных рядов [29] заключается в суммировании данных за один проход и построении приблизительного представления, которое может поддерживать различные запросы временных рядов с границами ошибки в худшем случае.
В некоторой степени различные проблемы ( регрессия , классификация , аппроксимация приспособленности ) получили единое рассмотрение в статистической теории обучения , где они рассматриваются как проблемы обучения с учителем .
В статистике предсказание является частью статистического вывода . Один конкретный подход к такому выводу известен как прогнозирующий вывод , но прогноз может быть выполнен в рамках любого из нескольких подходов к статистическому выводу. Действительно, одно из описаний статистики заключается в том, что она обеспечивает средство передачи знаний об выборке совокупности всей совокупности и другим связанным популяциям, что не обязательно совпадает с прогнозированием с течением времени. Когда информация передается во времени, часто в определенные моменты времени, этот процесс известен как прогнозирование .
Присвоение шаблона временного ряда определенной категории, например, определение слова на основе серии движений рук на языке жестов .
Этот подход основан на гармоническом анализе и фильтрации сигналов в частотной области с использованием преобразования Фурье и оценке спектральной плотности , развитие которых было значительно ускорено во время Второй мировой войны математиком Норбертом Винером , инженерами-электриками Рудольфом Э. Кальманом , Деннисом Габором. и другие для фильтрации сигналов от шума и прогнозирования значений сигналов в определенный момент времени. См. Фильтр Калмана , Теорию оценки и Цифровую обработку сигналов.
Разбиение временного ряда на последовательность сегментов. Часто временной ряд можно представить как последовательность отдельных сегментов, каждый из которых имеет свои характерные свойства. Например, аудиосигнал конференц-связи можно разделить на части, соответствующие времени, в течение которого говорил каждый человек. Цель сегментации временных рядов состоит в том, чтобы идентифицировать граничные точки сегментов во временных рядах и охарактеризовать динамические свойства, связанные с каждым сегментом. К этой проблеме можно подойти, используя обнаружение точки изменения или моделируя временной ряд как более сложную систему, такую как линейная система с марковским скачком.
Данные временных рядов могут быть кластеризованы, однако при рассмотрении кластеризации подпоследовательностей необходимо проявлять особую осторожность. [31] Кластеризацию временных рядов можно разделить на
Кластеризация временных рядов подпоследовательностей привела к образованию нестабильных (случайных) кластеров , вызванных выделением признаков с использованием фрагментации со скользящими окнами. [32] Было обнаружено, что центры кластеров (среднее значение временного ряда в кластере — также временной ряд) следуют произвольно сдвинутой синусоидальной схеме (независимо от набора данных, даже при реализации случайного блуждания ) . Это означает, что найденные центры кластеров не являются описательными для набора данных, поскольку центры кластеров всегда представляют собой нерепрезентативные синусоидальные волны.
Модели данных временных рядов могут иметь множество форм и представлять различные случайные процессы . При моделировании изменений на уровне процесса практическое значение имеют три широких класса: модели авторегрессии (AR), интегрированные модели (I) и модели скользящего среднего (MA). Эти три класса линейно зависят от предыдущих точек данных. [33] Комбинация этих идей приводит к созданию моделей авторегрессионного скользящего среднего (ARMA) и авторегрессионного интегрированного скользящего среднего (ARIMA). Модель авторегрессионного дробно-интегрированного скользящего среднего (ARFIMA) обобщает первые три. Расширения этих классов для работы с векторными данными доступны под заголовком многомерных моделей временных рядов, а иногда предыдущие аббревиатуры расширяются за счет включения начальной буквы «V» для «вектора», как в VAR для векторной авторегрессии . Дополнительный набор расширений этих моделей доступен для использования там, где наблюдаемый временной ряд определяется некоторыми «вынуждающими» временными рядами (которые могут не оказывать причинного влияния на наблюдаемый ряд): отличие от многомерного случая состоит в том, что ряд воздействия может быть детерминированным или находиться под контролем экспериментатора. Для этих моделей аббревиатуры дополняются последней буквой «X», обозначающей «экзогенный».
Нелинейная зависимость уровня ряда от предыдущих точек данных представляет интерес, отчасти из-за возможности создания хаотического временного ряда. Однако, что еще более важно, эмпирические исследования могут указать на преимущество использования прогнозов, полученных на основе нелинейных моделей, по сравнению с прогнозами, полученными на основе линейных моделей, как, например, в нелинейных авторегрессионных экзогенных моделях . Дополнительные ссылки по нелинейному анализу временных рядов: (Канц и Шрайбер), [34] и (Абарбанель) [35].
Среди других типов моделей нелинейных временных рядов есть модели, представляющие изменения дисперсии во времени ( гетерскедастичность ). Эти модели представляют собой авторегрессионную условную гетероскедастичность (ARCH), и коллекция включает в себя широкий спектр представлений ( GARCH , TARCH, EGARCH, FigARCH, CGARCH и т. д.). Здесь изменения изменчивости связаны с недавними прошлыми значениями наблюдаемого ряда или предсказываются ими. Это контрастирует с другими возможными представлениями локально изменяющейся изменчивости, где изменчивость может быть смоделирована как обусловленная отдельным изменяющимся во времени процессом, как в дважды стохастической модели .
В недавних работах по безмодельному анализу популярность получили методы, основанные на вейвлет-преобразовании (например, локально стационарные вейвлеты и нейронные сети с вейвлет-разложением). Методы мультимасштаба (часто называемые мультиразрешением) разлагают заданный временной ряд, пытаясь проиллюстрировать временную зависимость в нескольких масштабах. См. также методы мультифрактального переключения Маркова (MSMF) для моделирования эволюции волатильности.
Скрытая марковская модель (СММ) — статистическая марковская модель, в которой моделируемая система рассматривается как марковский процесс с ненаблюдаемыми (скрытыми) состояниями. HMM можно рассматривать как простейшую динамическую байесовскую сеть . Модели HMM широко используются в распознавании речи для перевода временного ряда произнесенных слов в текст.
Многие из этих моделей собраны в пакете Python sktime.
Для анализа временных рядов используется ряд различных обозначений. Обычное обозначение, определяющее временной ряд X , индексируемый натуральными числами , записывается:
Другое распространенное обозначение
где T — набор индексов .
Есть два набора условий, при которых строится большая часть теории:
Эргодичность подразумевает стационарность, но обратное не обязательно так. Стационарность обычно подразделяют на строгую стационарность и стационарность в широком смысле или стационарность второго порядка . При каждом из этих условий могут быть разработаны как модели, так и приложения, хотя в последнем случае модели можно считать лишь частично уточненными.
Кроме того, анализ временных рядов может применяться в тех случаях, когда ряды являются сезонно стационарными или нестационарными. Ситуации, когда амплитуды частотных составляющих изменяются со временем, можно рассматривать с помощью частотно-временного анализа , который использует частотно-временное представление временного ряда или сигнала. [36]
Инструменты для исследования данных временных рядов включают в себя:
Метрики или функции временных рядов , которые можно использовать для классификации временных рядов или регрессионного анализа : [39]
Временные ряды можно визуализировать с помощью диаграмм двух категорий: перекрывающиеся диаграммы и отдельные диаграммы. На перекрывающихся диаграммах все временные ряды отображаются в одном и том же макете, тогда как на отдельных диаграммах они представлены в разных макетах (но выровнены для целей сравнения) [43]
Функции выполняются, если у нас есть хорошее или умеренное соответствие наблюдаемым данным.