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 regionais do CAGED no Python

Os dados regionais do CAGED permitem analisar o mercado de trabalho de forma detalhada, em termos de setores, educação, rendimento e características pessoais dos trabalhadores brasileiros. Neste exercício mostramos como acessar estas informações online via Python.

Coletando dados de Setores Censitários do Censo 2022 no Python

Dados sobre a demografia e o território são primordiais para definir e implementar políticas públicas, áreas de atuação comercial e/ou estratégias de marketing. Sendo assim, saber usar os dados do Censo 2022 pode trazer vantagens competitivas. Neste exercício mostramos como obter os dados da Malha de Setores Censitários no formato vetorial (GeoJson) usando o 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.