
Сквозной Python-фреймворк для интеллектуального анализа временных рядов, предлагающий обнаружение аномалий, прогнозирование, обнаружение точек изменения, AutoML, ансамбли и конвейеры бенчмаркинга.
Merlion — это библиотека Python для интеллектуального анализа временных рядов. Она предоставляет сквозной фреймворк машинного обучения, который включает загрузку и преобразование данных, создание и обучение моделей, постобработку выходных данных моделей и оценку качества моделей. Она поддерживает различные задачи обучения на временных рядах, включая прогнозирование, обнаружение аномалий и обнаружение точек изменения как для одномерных, так и для многомерных временных рядов. Библиотека призвана предоставить инженерам и исследователям комплексное решение для быстрой разработки моделей под их конкретные задачи с временными рядами и их сравнения на множестве наборов данных временных рядов.
Ключевые возможности Merlion:
DefaultDetector и DefaultForecaster, которые эффективны, стабильно показывают хорошие результаты
и служат отправной точкой для новых пользователей.В приведенной ниже таблице наглядно показано, как ключевые возможности Merlion соотносятся с другими библиотеками для обнаружения аномалий и/или прогнозирования временных рядов.
| Merlion | Prophet | Alibi Detect | Kats | darts | statsmodels | nixtla | GluonTS | RRCF | STUMPY | Greykite | pmdarima | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Прогнозирование одномерных рядов | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | |||
| Прогнозирование многомерных рядов | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ||||||
| Обнаружение аномалий в одномерных рядах | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | |||
| Обнаружение аномалий в многомерных рядах | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ||||||
| Предобработка | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ||||
| Постобработка | ✅ | ✅ | ||||||||||
| AutoML | ✅ | ✅ | ✅ | |||||||||
| Ансамбли | ✅ | ✅ | ✅ | ✅ | ||||||||
| Бенчмаркинг | ✅ | ✅ | ✅ | ✅ | ✅ | |||||||
| Визуализация | ✅ | ✅ | ✅ | ✅ | ✅ |
Следующие возможности появились в Merlion 2.0:
| Merlion | Prophet | Alibi Detect | Kats | darts | statsmodels | nixtla | GluonTS | RRCF | STUMPY | Greykite | pmdarima | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Экзогенные регрессоры | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ||||||
| Обнаружение точек изменения | ✅ | ✅ | ✅ | ✅ | ✅ | |||||||
| Интерактивный визуальный интерфейс | ✅ | |||||||||||
| Распределенный бэкенд | ✅ | ✅ |
Merlion состоит из двух подрепозиториев: merlion реализует основные функции библиотеки для интеллектуального анализа временных рядов,
а ts_datasets предоставляет стандартизированные загрузчики данных для нескольких наборов данных временных рядов. Эти загрузчики загружают
временные ряды как pandas.DataFrame s с сопутствующими метаданными.
Вы можете установить merlion из PyPI, выполнив pip install salesforce-merlion. Вы также можете установить из исходного кода,
клонировав этот репозиторий и выполнив pip install Merlion/, или pip install -e Merlion/ для установки в режиме редактирования.
Вы можете установить дополнительные зависимости через pip install salesforce-merlion[all] или, при установке из исходного кода,
выполнив pip install "Merlion/[all]".
В отдельности дополнительные зависимости включают dashboard для графической панели управления,
spark для распределенного вычислительного бэкенда с PySpark и deep-learning для всех моделей глубокого обучения.
Чтобы установить пакет загрузки данных ts_datasets, клонируйте этот репозиторий и выполните pip install -e Merlion/ts_datasets/.
Этот пакет необходимо устанавливать в режиме редактирования (то есть с флагом -e), если вы не хотите вручную указывать
корневой каталог каждого набора данных при инициализации его загрузчика.
Обратите внимание на следующие внешние зависимости:
conda, пожалуйста, выполните conda install -c conda-forge lightgbm
перед установкой нашего пакета. Это гарантирует, что OpenMP будет настроен для работы с пакетом lightgbm
(одной из наших зависимостей) в вашем окружении conda. Если вы используете Mac, установите Homebrew
и выполните brew install libomp, чтобы библиотека OpenMP была доступна для модели.