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

Coletando dados para monitoramento climático com Python

As condições climatológicas influenciam desde a safra de grãos até a decisão de um vendedor ambulante levar seu carrinho para a praia ou não. Por sua importância e impactos na economia do país, neste exercício mostramos como coletar e elaborar análises de dados sobre o clima usando o Python.

Coletando dados de secas e queimadas no Brasil com Python

Neste artigo exploramos fontes públicas de dados sobre secas e queimadas no Brasil. Mostramos como acessar, coletar e preparar os dados para elaboração de análises. Usamos a linguagem Python para desenvolver uma rotina automatizada.

Como analisar demonstrações contábeis usando IA

Neste post, vamos explorar como utilizar o modelo de linguagem Gemini do Google para analisar demonstrações contábeis anuais da Eletrobras e extrair informações relevantes para tomada de decisão. Através de um código Python, vamos importar os dados direto da CVM, conectar com o Gemini e gerar resumos sobre as contas das demonstrações e perspectivas futuras sobre as finanças da empresa.

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.