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".
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.