Descripción
PatchTST es una implementación oficial del artículo "A Time Series is Worth 64 Words: Long-term Forecasting with Transformers". Este modelo de IA está diseñado para la predicción a largo plazo de series temporales, aprovechando el poder de las arquitecturas Transformer. La innovación principal reside en su mecanismo de "patching" (segmentación en parches), que divide las series temporales en parches a nivel de subserie que luego se tratan como tokens de entrada para el Transformer.
Leer más
Los principios clave de diseño incluyen la independencia de canales, donde cada canal representa una única serie temporal univariada. Estas series comparten la misma incrustación (embedding) y los mismos pesos del Transformer en todas las entradas, promoviendo un aprendizaje eficiente. El proyecto se estructura en dos carpetas principales: PatchTST_supervised y PatchTST_self_supervised, atendiendo a diferentes paradigmas de aprendizaje.
Para el aprendizaje supervisado, los usuarios pueden instalar los requisitos, descargar conjuntos de datos de fuentes como Autoformer e iniciar el entrenamiento utilizando los scripts proporcionados. Se pueden ajustar hiperparámetros como la longitud del parche, las ventanas de retroceso (look-back) y las longitudes de predicción. El repositorio también incluye códigos para modelos de referencia para análisis comparativo.
En el dominio del aprendizaje autosupervisado, PatchTST ofrece capacidades de pre-entrenamiento y ajuste fino (fine-tuning). El script de pre-entrenamiento, `patchtst_pretrain.py`, entrena el modelo utilizando una relación de máscara (mask ratio) especificada. Los modelos pre-entrenados resultantes se guardan para tareas posteriores (downstream tasks). El script `patchtst_finetune.py` facilita el ajuste fino lineal (linear probing) o el ajuste fino de la red completa (full network fine-tuning) en estos modelos pre-entrenados.
El proyecto reconoce valiosas contribuciones de varios repositorios de GitHub, incluyendo LTSF-Linear, Informer2020, Autoformer, FEDformer, Pyraformer, RevIN y tsai, destacando su integración dentro de la comunidad de investigación de series temporales en general. Esto convierte a PatchTST en una herramienta potente para investigadores y profesionales centrados en la predicción a largo plazo de series temporales precisa y escalable.
- CategoríaModelos de IA y LLM
- Modelo de preciosCódigo abierto
- ImplementaciónNube, Autoalojado
- PlataformasWeb
Aspectos destacados de PatchTST
Arquitectura basada en Transformer para predicción de series temporales
Segmentación de series temporales en parches a nivel de subserie
Independencia de canales para compartir pesos de forma eficiente
Implementación oficial del artículo PatchTST
Soporte para aprendizaje supervisado
Soporte para aprendizaje autosupervisado (pre-entrenamiento y ajuste fino)
Hiperparámetros ajustables para longitud de parche, retroceso y ventanas de predicción
Inclusión de modelos de referencia para comparación
Código base disponible en GitHub
Pesos del modelo guardados para tareas posteriores
Opciones de ajuste fino lineal y ajuste fino de red completa
Primeros pasos con PatchTST
Integrar: Acceda al repositorio de GitHub para obtener el código de PatchTST.
Configurar entorno: Instale los paquetes de Python necesarios usando `pip install -r requirements.txt`.
Descargar datos: Obtenga conjuntos de datos de series temporales y colóquelos en una carpeta `./dataset`.
Entrenamiento Supervisado: Ejecute los scripts de entrenamiento desde el directorio `./scripts/PatchTST`, por ejemplo, `sh ./scripts/PatchTST/weather.sh`.
Pre-entrenamiento Autosupervisado: Ejecute `python patchtst_pretrain.py` con los parámetros de conjunto de datos y relación de máscara.
Ajuste Fino Autosupervisado: Use `python patchtst_finetune.py` con el nombre del modelo pre-entrenado y el conjunto de datos.
Casos de uso de PatchTST
- Predicción a largo plazo
- Análisis de series temporales
- Predicción con Transformers
- Aprendizaje autosupervisado
- Aprendizaje supervisado
- Predicción multivariada













