Pular para o conteúdo principal
ToolPotion

N-BEATS

N-BEATS é um modelo baseado em rede neural para previsão de séries temporais univariadas. Desenvolvido pela ServiceNow Research, implementa o algoritmo N-BEATS para resultados experimentais reproduzíveis. Este repositório fornece a implementação em PyTorch, carregadores de dataset e configurações de experimentos para análise avançada de séries temporais.

Visitar URL

Descrição

N-BEATS é um modelo sofisticado baseado em rede neural, projetado especificamente para previsão de séries temporais univariadas. Representa uma contribuição significativa da ServiceNow Research, com origens que remontam à Element AI. O projeto visa fornecer uma implementação robusta do algoritmo N-BEATS, permitindo que pesquisadores e praticantes reproduzam os resultados experimentais apresentados no artigo associado.

O repositório é estruturado para facilitar o acesso e o uso. A implementação principal do modelo N-BEATS em PyTorch pode ser encontrada no arquivo `models/nbeats.py`. Para o manuseio de dados, os carregadores de dataset para vários datasets utilizados no artigo estão localizados no diretório `datasets/*.py`. O diretório `experiments/*` abriga as configurações experimentais necessárias para replicar os resultados do artigo, cada um contendo um script `main.py` para a lógica de treinamento e previsão, juntamente com arquivos de configuração para variantes de modelo genéricas e interpretáveis.

Resultados e métricas de desempenho são documentados no diretório `notebooks`, com um notebook dedicado para cada experimento. Esses notebooks exibem pontuações finais e insights sobre a eficácia de diferentes tamanhos de ensemble, observando que ensembles menores frequentemente produzem resultados comparáveis aos maiores. Esta implementação é descrita como uma versão 'mais leve' do N-BEATS original, oferecendo desempenho que geralmente está no mesmo nível de ponta, com variações ocasionais nos resultados.

O projeto enfatiza a reprodutibilidade através do Docker, tornando-o acessível para usuários com ou sem GPUs NVIDIA. O `Makefile` fornece comandos para inicializar a imagem Docker, baixar datasets, executar testes, construir experimentos e executar previsões tanto em CPU quanto em GPU. Instruções detalhadas são fornecidas para configurar o ambiente, construir a imagem Docker, baixar datasets e executar experimentos com parâmetros personalizáveis, como repetições e períodos de lookback. A saída dos experimentos, incluindo logs, perdas, snapshots e previsões finais, é armazenada no diretório `storage/experiments`.

N-BEATS é particularmente valioso para cientistas de dados, engenheiros de machine learning e pesquisadores envolvidos em análise de séries temporais, previsão e modelagem preditiva. Sua natureza interpretável e desempenho de ponta o tornam uma ferramenta poderosa para entender e prever tendências futuras em dados univariados em vários domínios.

Destaques de N-BEATS

  • Modelo baseado em rede neural para previsão de séries temporais univariadas

  • Implementação do algoritmo N-BEATS

  • Resultados experimentais reproduzíveis

  • Implementação em PyTorch disponível

  • Carregadores de dataset para vários datasets

  • Arquivos de configuração para modelos genéricos e interpretáveis

  • Suporte Docker para configuração de ambiente

  • Suporte para execução em CPU e GPU

  • Instruções detalhadas para reprodução

  • Armazenamento para logs de experimentos, perdas e previsões

Primeiros passos com N-BEATS

  1. Configurar ambiente: Certifique-se de que o Docker está instalado e ajuste o Makefile para o seu ambiente.

  2. Construir imagem Docker: Execute `make init` para construir a imagem Docker.

  3. Baixar datasets: Execute `make dataset` para baixar os datasets necessários.

  4. Construir um experimento: Use `make build config=<caminho_para_config.gin>` para gerar configurações de experimento.

  5. Executar experimentos: Utilize `make run command=<caminho_para_comando>` para CPU ou `make run command=<caminho_para_comando> gpu=<id_gpu>` para GPU.

  6. Obter estatísticas do experimento: Execute um notebook JupyterLab via `make notebook port=<porta>` para analisar o desempenho.

Casos de uso de N-BEATS

  • Previsão de séries temporais
  • Análise preditiva
  • Previsão de demanda
  • Previsão financeira
  • Planejamento de recursos

Perguntas frequentes de N-BEATS

Avaliações de N-BEATS

Carregando...

Ferramentas de IA populares como N-BEATS

GluonTS é um pacote Python para modelagem probabilística de séries temporais, utilizando modelos de deep learning construídos sobre PyTorch e MXNet. Ele facilita previsões…

Modelos de IA e LLMs

Modelos de IA

PatchTST é uma implementação oficial de um modelo baseado em Transformer para previsão de séries temporais de longo prazo. Ele segmenta séries temporais em patches e os processa…

Modelos de IA e LLMs

Modelos de IA

LSTNet é um modelo de deep learning projetado para previsão de séries temporais. Ele modela eficazmente padrões temporais de longo e curto prazo usando uma combinação de redes…

Modelos de IA e LLMs

Modelos de IA

FEDformer é um Transformer Decomposto com Frequência Aprimorada, projetado para previsão eficiente de séries temporais de longo prazo. Ele atinge complexidade linear com o…

Modelos de IA e LLMs

Modelos de IA

Autoformer é um modelo de IA para previsão de séries temporais de longo prazo, aproveitando transformadores de decomposição e mecanismos de autocorrelação. Ele alcança resultados…

Modelos de IA e LLMs

Modelos de IA

LTSF-Linear é uma implementação oficial em PyTorch para "Are Transformers Effective for Time Series Forecasting?". Introduz uma família de modelos lineares (Linear, DLinear,…

Modelos de IA e LLMs

Prophet é um procedimento de previsão de código aberto implementado em R e Python. Ele automatiza a previsão de séries temporais com modelos rápidos e ajustáveis. Projetado para…

Previsão e análise preditiva

Este repositório fornece uma implementação em PyTorch do modelo "Simple and Deep Graph Convolutional Networks" (GCNII). Inclui código para replicar resultados semi-supervisionados…

Modelos de IA e LLMs