Первоклассная библиотека Python для анализа временных рядов

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

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

1、Скайтайм

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

Sktime предоставляет расширения для API scikit-learn. Он включает в себя все необходимые методы и инструменты для эффективного решения задач, связанных с регрессией временных рядов, прогнозированием и классификацией. Библиотека содержит специализированные алгоритмы машинного обучения и методы преобразования временных рядов. Эти функции недоступны ни в одной другой библиотеке инструментов.

sktime также предоставляет интерфейсы для связанных библиотек, таких как scikit-learn, statsmodels, tsfresh, PyOD, fbprophet и т. д.

пример:

from sktime.datasets import load_airline
from sktime.forecasting.model_selection import temporal_train_test_split
# from sktime.utils.plotting.forecasting import plot_ys
y = load_airline()
y_train, y_test = temporal_train_test_split(y)
plt.title('Airline Data with Train and Test')
y_train.plot(label = 'train')
y_test.plot(label = 'test')
plt.legend()

2, пмдарима

pmdarima — это библиотека Python для статистического анализа данных временных рядов. Он основан на моделях ARIMA и предоставляет множество инструментов для анализа, прогнозирования и визуализации данных временных рядов. Pmdarima также предоставляет множество инструментов для работы с сезонными данными, включая инструменты сезонного тестирования и сезонной декомпозиции.

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

pmdarima является оболочкой для моделей ARIMA и поставляется с автоматической функцией для автоматического поиска лучших гиперпараметров (p, d, q) для модели arima. Библиотека включает в себя и включает следующее:

  • Эквивалент функции R auto.arima

  • Сборник статистических тестов на стационарность и сезонность

  • Утилиты временных рядов, такие как разность и обратная разность

  • Многие эндогенные и экзогенные преобразователи и функции, включая преобразования Бокса-Кокса и Фурье.

  • Декомпозиция сезонных временных рядов

  • Утилита перекрестной проверки

  • Богатые встроенные наборы данных временных рядов для прототипирования и примеров

Чтобы узнать больше об этой библиотеке, перейдите по этой ссылке:https://github.com/alkaline-ml/pmdarima

3, цфреш

tsfresh — это пакет Python, который автоматизирует процесс извлечения признаков из временных рядов. Он основан на идее, что информацию во временном ряду можно разложить на набор значимых признаков, называемых признаками. tsfresh берет на себя утомительную работу по ручному извлечению этих признаков и предоставляет инструменты для автоматического выбора и классификации признаков. Этот пакет предназначен для использования с пандами DataFrames и предоставляет широкий спектр функций для работы с данными временных рядов, в том числе:

  • Автоматическое извлечение признаков из временных рядов

  • автоматический выбор функций

  • декомпозиция временного ряда

  • Снижение размерности

  • Обнаружение выбросов

  • Поддерживает несколько форматов временных рядов

  • Поддержка пропущенных значений

  • Поддержка нескольких языков

Чтобы узнать больше об этой библиотеке, перейдите по этой ссылке:https://github.com/blue-yonder/tsfresh

4, Пророк

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

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

Чтобы узнать больше об этой библиотеке, перейдите по этой ссылке:https://github.com/facebook/prophet

5、Государственный прогноз

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

  • Самый быстрый и точный в .AutoARIMAPythonR

  • Самый быстрый и точный в .ETSPythonR

  • Замените FB-Prophet двумя строками кода, улучшите скорость и точность.

  • Совместимость с интерфейсом sklearn.

  • Включить и для интервалов прогнозирования ARIMA.exogenous переменных

  • Компилировать в высокопроизводительный машинный код через .numba

6、PyCaret

PyCaret — это библиотека машинного обучения с низким кодом с открытым исходным кодом на Python, которая автоматизирует рабочие процессы машинного обучения. Это комплексный инструмент машинного обучения и управления моделями, который экспоненциально ускоряет циклы экспериментов и повышает вашу производительность.

По сравнению с другими библиотеками машинного обучения с открытым исходным кодом, PyCaret — это альтернативная библиотека с низким кодом, которую можно использовать для замены сотен строк кода всего несколькими строками кода. Это делает эксперименты экспоненциально быстрее и эффективнее. PyCaret — это, по сути, оболочка Python для нескольких библиотек и фреймворков машинного обучения, таких как scikit-learn, XGBoost, LightGBM, CatBoost, spaCy, Optuna, Hyperopt, Ray и многих других.

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

Модуль временных рядов PyCaret совместим с существующим API и полностью функционален. Статистическое тестирование, обучение и выбор модели (более 30 алгоритмов), анализ модели, автоматическая настройка гиперпараметров, запись эксперимента, развертывание в облаке и т. д. Все это с помощью всего нескольких строк кода.

pip install --pre pycaret

Чтобы узнать больше об этой библиотеке, перейдите по этой ссылке:https://github.com/pycaret/pycaret

в заключение

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

 

Supongo que te gusta

Origin blog.csdn.net/veratata/article/details/128648356
Recomendado
Clasificación