Modelagem preditiva de séries temporais hierárquicas no Python usando TimeGPT

A previsão de séries temporais hierárquicas é uma técnica para analisar e prever dados que se estruturam em diferentes níveis de granularidade. Neste artigo, vamos realizar a previsão de séries temporais hierárquicas usando a IA TimeGPT.

Introdução

Frequentemente, séries temporais podem ser desagregadas em vários atributos de interesse. Por exemplo1, o número total de veículos produzidos no país ao longo do tempo pode ser dividido em veículos comerciais leves, caminhões, ônibus, etc. Cada uma dessas categorias pode ainda ser desagregada em outros níveis, por regiões, por fabricante, etc., caracterizando o que pode ser chamado de "séries temporais hierárquicas".

Essa riqueza de informação e dados possibilita (e pode ser de interesse) gerar previsões desagregadas das séries, de modo que os pontos de previsão das séries desagregadas possam ser analisados individualmente e que, quando agregados de alguma forma, sejam coerentes com os valores agregados da série.

Esse exercício é uma continuação das postagem Modelagem preditiva de séries temporais hierárquicas no Python, para saber mais sobre o tema, veja o post aqui, ou veja Forecasting: principles and practice de Hyndman, R.J., & Athanasopoulos, G. (2021), que apresenta detalhes sobre as abordagens disponíveis.

TimeGPT

TimeGPT é uma ferramenta avançada de previsão de séries temporais, capaz de identificar padrões e tendências relevantes, capacitando-o a realizar previsões precisas sobre o futuro. Sua flexibilidade permite adaptar-se a uma variedade de séries temporais, independentemente de sua complexidade ou características específicas.

Em contraste com modelos de linguagem, como o LLM, o TimeGPT é otimizado exclusivamente para tarefas de previsão, o que significa que é treinado especificamente para minimizar erros nesse contexto. Já abordamos na Análise Macro como usar o TimeGPT no Python, para mais detalhes, acesse esse exercício ou veja mais sobre a biblioteca em seu site.

Exemplo: dados de produção da ANFAVEA

Mensalmente a ANFAVEA disponibiliza séries temporais da produção, licenciamento, exportação, etc. de veículos. Os dados são desagregados pelas categorias citadas acima e neste exemplo iremos explorar alguns métodos de gerar modelos de previsão para as séries de produção de veículos.Os dados são coletados via SGS do BCB usando a biblioteca python-bcb, no período de jan/1993 até jul/2024. A separação de treino/teste ocorre nos doze últimos meses da série.

Bibliotecas

Para a análise, vamos utilizar as seguintes bibliotecas Python:

  • python-bcb: Para acessar os dados do SGS.
  • hierarchicalforecast: Para realizar previsões hierárquicas.
  • statsforecast: Para utilizar modelos de séries temporais.
  • pandas: Para manipulação de dados.
  • plotnine: Para gerar gráficos.
  • nixtla Para acessar o TimeGPT.

Resultados

No Gráfico abaixo podemos verificar o resultado da previsão gerada pelo TimeGPT, comparando-as com os dados de teste. As previsões são realizadas, e depois reconciliadas, em diferentes métodos (Bottom, TopDown e MinTrace). Para esse exemplo em questão, podemos afirmar que a performance não foi tão interessante (apesar de não haver um outro método de forecast base para comparação), ao avaliar o tamanho do erro das previsões.

Conclusões

A modelagem preditiva de séries temporais hierárquicas é uma ferramenta poderosa para analisar e prever dados que se estruturam em diferentes níveis de granularidade. Com a utilização da biblioteca TimeGPT, podemos facilitar o trabalho de previsão automática, entretanto, é necessário avaliar minuciosamente os resultados gerados, afim de saber se a IA pode ser útil ou não na previsão dos valores.

Quer aprender mais?

Clique aqui para fazer seu cadastro no Boletim AM e baixar o código que produziu este exercício, além de receber novos exercícios com exemplos reais de análise de dados envolvendo as áreas de Data Science, Econometria, Machine Learning, Macroeconomia Aplicada, Finanças Quantitativas e Políticas Públicas diretamente em seu e-mail.

Compartilhe esse artigo

Facebook
Twitter
LinkedIn
WhatsApp
Telegram
Email
Print

Comente o que achou desse artigo

Outros artigos relacionados

Análise exploratória para modelagem preditiva no Python

Antes de desenvolver bons modelos preditivos é necessário organizar e conhecer muito bem os dados. Neste artigo, damos algumas dicas de recursos, como gráficos, análises e estatísticas, que podem ser usados para melhorar o entendimento sobre os dados usando Python.

Como usar modelos do Sklearn para previsão? Uma introdução ao Skforecast

Prever séries temporais é uma tarefa frequente em diversas áreas, porém exige conhecimento e ferramentas específicas. Os modelos de machine learning do Sklearn são populadores, porém são difíceis de aplicar em estruturas temporais de dados. Neste sentido, introduzimos a biblioteca Skforecast, que integra os modelos do Sklearn e a previsão de séries temporais de forma simples.

Boletim AM

Receba diretamente em seu e-mail gratuitamente nossas promoções especiais e conteúdos exclusivos sobre Análise de Dados!

Boletim AM

Receba diretamente em seu e-mail gratuitamente nossas promoções especiais e conteúdos exclusivos sobre Análise de Dados!

como podemos ajudar?

Preencha os seus dados abaixo e fale conosco no WhatsApp

Boletim AM

Preencha o formulário abaixo para receber nossos boletins semanais diretamente em seu e-mail.