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

Como Medir o Ciclo das Concessões de Crédito usando Python

Este artigo apresenta uma análise quantitativa da relação entre o ciclo de concessões de crédito, a atividade econômica e a política monetária no Brasil. Utilizando a linguagem Python, o estudo aplica técnicas de decomposição de séries temporais (X13-ARIMA e Filtro HP) para isolar os componentes cíclicos dos dados. Os resultados da modelagem econométrica confirmam a pro-ciclicidade do crédito em relação ao hiato do produto e sua sensibilidade às variações no hiato da taxa de juros real.

Choque de juros e renda em bens duráveis e não duráveis usando Python

Este artigo analisa a dinâmica do consumo no Brasil utilizando Python e modelos de Vetores Autorregressivos (VAR). Ao segregar bens duráveis e não duráveis, o estudo quantifica a sensibilidade a choques de juros e renda. Criamos todo o processo através do ciclo de dados: coleta, tratamento, análise de dados, modelagem e apresentação dos resultados, tudo automatizado usando a linguagem Python.

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.