Visão Geral
Este Curso PyTorch para Séries Temporais, aborda o uso do PyTorch para análise e previsão de séries temporais, um tipo de dado que aparece frequentemente em domínios como finanças, saúde, redes sociais, e controle de sistemas. Os participantes aprenderão como modelar, treinar e avaliar modelos de redes neurais para lidar com dados temporais, utilizando técnicas como redes recorrentes (RNNs), LSTMs, GRUs, e abordagens mais avançadas como Transformers para séries temporais.
Conteúdo Programatico
Introdução às Séries Temporais
- O que são séries temporais?
- Estruturas de dados temporais: Tendências, sazonalidades e ruído.
- Pré-processamento de séries temporais (normalização, diferenciação).
- Visualização de séries temporais com Python.
Fundamentos de Redes Neurais para Séries Temporais
- Introdução às redes neurais aplicadas a dados temporais.
- Diferenças entre redes neurais convencionais e modelos para séries temporais.
- Visão geral das RNNs, LSTMs e GRUs.
- Projeto prático: Construção de um modelo básico de RNN no PyTorch para séries temporais simples.
Implementação de Redes Recorrentes (RNN) no PyTorch
- Estrutura e funcionamento de redes recorrentes (RNN).
- Passo a passo de implementação de uma RNN no PyTorch.
- Treinamento de uma RNN com séries temporais.
- Projeto prático: Previsão de séries temporais usando uma RNN.
Modelos LSTM (Long Short-Term Memory)
- Problemas de longa dependência e o surgimento das LSTMs.
- Arquitetura de uma LSTM.
- Implementação de LSTM no PyTorch para séries temporais.
- Projeto prático: Usando LSTMs para previsão de séries temporais financeiras.
Modelos GRU (Gated Recurrent Units)
- Diferenças entre LSTMs e GRUs.
- Quando utilizar GRUs para séries temporais.
- Implementação de GRUs no PyTorch.
- Projeto prático: Prevendo vendas com redes GRU.
Modelos Seq2Seq para Séries Temporais
- Introdução aos modelos sequência-a-sequência (Seq2Seq).
- Usos e vantagens de modelos Seq2Seq em séries temporais.
- Implementação de Seq2Seq no PyTorch.
- Projeto prático: Previsão multi-step com Seq2Seq.
Transformers para Séries Temporais
- Introdução ao Transformer: Por que usá-lo em séries temporais?
- Arquitetura Transformer para lidar com dependências de longo prazo.
- Implementação de Transformers no PyTorch para séries temporais.
- Projeto prático: Aplicando Transformers para previsão de tendências complexas.
Modelos Autorregressivos e Híbridos
- Integração de modelos autorregressivos (ARIMA, SARIMA) com redes neurais.
- Abordagens híbridas combinando modelos estatísticos e deep learning.
- Projeto prático: Integração de ARIMA com LSTMs para previsão de demanda de estoque.
Regularização e Overfitting em Séries Temporais
- Problemas de overfitting em séries temporais.
- Métodos de regularização e dropout para RNNs, LSTMs e GRUs.
- Ajuste de hiperparâmetros e validação cruzada.
- Projeto prático: Prevenção de overfitting em previsões de séries temporais.
Modelagem de Séries Temporais Multivariadas
- Diferença entre séries temporais univariadas e multivariadas.
- Implementação de redes neurais para séries temporais multivariadas no PyTorch.
- Projeto prático: Previsão de múltiplas variáveis usando LSTMs e GRUs.
Análise de Desempenho e Avaliação de Modelos
- Métricas de avaliação para séries temporais: MAE, RMSE, MAPE.
- Uso de validação cruzada para séries temporais (Time Series Split).
- Técnicas de visualização de previsões e erros.
- Projeto prático: Avaliação de performance de um modelo de previsão de séries temporais.
Técnicas de Previsão Avançadas e Horizon Forecasting
- Previsão de curto prazo vs. longo prazo.
- Horizon forecasting: Estratégias e implementações.
- Projeto prático: Implementação de uma solução para horizon forecasting com PyTorch.
Exploração de Bibliotecas e Ferramentas Complementares
- Visão geral de bibliotecas complementares:
TorchTS
, GluonTS
.
- Integração de bibliotecas de séries temporais com PyTorch.
- Projeto prático: Previsão de séries temporais com uso combinado de bibliotecas.
Projeto Final
- Desenvolvimento de um projeto completo de previsão de séries temporais.
- Escolha de um domínio de aplicação (financeiro, saúde, etc.).
- Treinamento, avaliação e ajuste de um modelo avançado.
- Documentação e apresentação dos resultados.