Описание
PatchTST — это официальная реализация статьи «A Time Series is Worth 64 Words: Long-term Forecasting with Transformers». Эта модель ИИ предназначена для долгосрочного прогнозирования временных рядов с использованием архитектур Transformer. Основное новшество заключается в механизме «патчинга», который сегментирует временные ряды на патчи на уровне подрядов, которые затем обрабатываются как входные токены для Transformer.
Читать далее
Ключевые принципы проектирования включают независимость каналов, где каждый канал представляет собой один унивариантный временной ряд. Эти ряды совместно используют одни и те же веса эмбеддинга и Transformer для всех входных данных, что способствует эффективному обучению. Проект состоит из двух основных папок: PatchTST_supervised и PatchTST_self_supervised, предназначенных для различных парадигм обучения.
Для обучения с учителем пользователи могут установить необходимые пакеты, загрузить наборы данных из таких источников, как Autoformer, и начать обучение, используя предоставленные скрипты. Можно настраивать гиперпараметры, такие как длина патча, окна просмотра и длина прогноза. Репозиторий также включает код для базовых моделей для сравнительного анализа.
В области самообучения PatchTST предлагает возможности предварительного обучения и дообучения. Скрипт предварительного обучения `patchtst_pretrain.py` обучает модель, используя указанный коэффициент маскирования. Полученные предварительно обученные модели сохраняются для последующих задач. Скрипт `patchtst_finetune.py` затем облегчает линейное зондирование или полное дообучение сети на этих предварительно обученных моделях.
Проект выражает благодарность за ценный вклад из нескольких репозиториев GitHub, включая LTSF-Linear, Informer2020, Autoformer, FEDformer, Pyraformer, RevIN и tsai, подчеркивая его интеграцию в более широкое сообщество исследователей временных рядов. Это делает PatchTST мощным инструментом для исследователей и практиков, занимающихся точным и масштабируемым долгосрочным прогнозированием временных рядов.
- КатегорияИИ-модели и LLM
- Модель ценообразованияОткрытый код
- РазвёртываниеОблако, На своём сервере
- ПлатформыВеб
Главное о PatchTST
Архитектура на основе Transformer для прогнозирования временных рядов
Сегментация временных рядов на патчи на уровне подрядов
Независимость каналов для эффективного совместного использования весов
Официальная реализация статьи PatchTST
Поддержка обучения с учителем
Поддержка самообучения (предварительное обучение и дообучение)
Настраиваемые гиперпараметры для длины патча, окон просмотра и прогнозирования
Включение базовых моделей для сравнения
Кодовая база доступна на GitHub
Веса модели сохраняются для последующих задач
Варианты линейного зондирования и полного дообучения сети
Начало работы с PatchTST
Интеграция: Получите доступ к репозиторию GitHub с кодом PatchTST.
Настройка среды: Установите необходимые пакеты Python, используя `pip install -r requirements.txt`.
Загрузка данных: Получите наборы данных временных рядов и поместите их в папку `./dataset`.
Обучение с учителем: Запустите скрипты обучения из каталога `./scripts/PatchTST`, например, `sh ./scripts/PatchTST/weather.sh`.
Предварительное обучение самообучения: Выполните `python patchtst_pretrain.py`, указав параметры набора данных и коэффициента маскирования.
Дообучение самообучения: Используйте `python patchtst_finetune.py`, указав имя предварительно обученной модели и набор данных.
Варианты использования PatchTST
- Долгосрочное прогнозирование
- Анализ временных рядов
- Прогнозирование с помощью Transformer
- Самообучение
- Обучение с учителем
- Многомерное прогнозирование













