Sobre o projeto
PyTorch Forecasting é um pacote de código aberto, licenciado sob MIT, para previsão de séries temporais usando arquiteturas de aprendizado profundo de última geração. É construído sobre PyTorch e PyTorch Lightning, portanto o treinamento pode ser executado em CPU, uma única GPU ou múltiplas GPUs com registro automático.
O projeto atende tanto a aplicações do mundo real quanto à pesquisa. Seu objetivo declarado é uma API de alto nível com máxima flexibilidade para profissionais e padrões sensatos para iniciantes.
Componentes principais descritos no README:
- Uma classe de conjunto de dados de séries temporais que abstrai transformações de variáveis, valores ausentes, subamostragem aleatória e múltiplos comprimentos de histórico.
- Uma classe de modelo base que fornece treinamento básico de modelos de séries temporais, registro no TensorBoard e visualizações genéricas, como valores reais versus previsões e gráficos de dependência.
- Múltiplas arquiteturas de redes neurais aprimoradas para implantação no mundo real, com capacidades de interpretação integradas.
- Métricas de séries temporais multi-horizonte.
- Ajuste de hiperparâmetros com optuna.
Os modelos disponíveis incluem Temporal Fusion Transformer, N-BEATS, N-HiTS, DeepAR e PatchTST, além de linhas de base simples como LSTM, GRU, um decodificador MLP e um preditor ingênuo do último valor. A documentação fornece uma comparação dos modelos. Um tutorial explica como implementar novos modelos e componentes personalizados.
A instalação é feita via pip (`pip install pytorch-forecasting`) ou conda a partir do conda-forge. No Windows, o PyTorch deve ser instalado primeiro. Um extra opcional instala a perda quantílica multivariada MQF2.
O uso se concentra na conversão de DataFrames do pandas em um TimeSeriesDataSet, que requer colunas para o alvo, um ID de série temporal e um índice de tempo monotonicamente crescente. O conjunto de dados define comprimentos de codificador e de previsão e covariáveis estáticas, conhecidas e desconhecidas. Conjuntos de dados de validação podem ser criados a partir do conjunto de dados de treinamento para reutilizar a normalização. Os conjuntos de dados são convertidos em dataloaders, e os modelos são treinados com o Trainer do PyTorch Lightning, incluindo parada antecipada, monitoramento da taxa de aprendizado e descoberta da taxa de aprendizado por meio do Lightning Tuner.
O README contém links para documentação, tutoriais, notas de versão, uma comunidade no Discord e um artigo do Towards Data Science. O projeto é descrito como um projeto patrocinado pela GC.OS.
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.