Modelos que usam o Google Trends vs. modelos que usam outras variáveis exógenas: como comparar?

O pessoal do NEOC e o Vítor tocaram, recentemente, no assunto sobre a possibilidade de usar informação do Google Trends na previsão de variáveis macroeconômicas. Em particular, a taxa de desemprego. Neste post, o pessoal do NEOC chegou à conclusão de que sim, existe uma melhora na previsão quando se utiliza o número de buscas (no Brasil) pelo termo "emprego". Aqui, procuramos aprofundar um pouco o assunto, tentando levar em consideração um detalhe importante. A grande vantagem de se utilizar estas variáveis do Google Trends é que elas estão contínuamente disponíveis. Isso implica no fato de que para comparar modelos que usam o gtrends com modelos que utilizam outras variáveis exógenas, é preciso torná-los "comparáveis".  Vejamos por quê.

Como as variáveis do gtrends estão continuamente disponíveis, não precisamos esperar o final do mês ou trimestre para "rodarmos" mais um modelo. Isto é, podemos estimar modelos como

    \[ y_t = \alpha + \beta y_{t-1} + \gamma x_t + \epsilon_t, \]

onde a variável x já é conhecida no instante t. Isso implica que é preciso levar em consideração a defasagem entre o gtrends e outras variáveis exógenas que você possa colocar para tentar prever y_t. Para comparar um modelo que usa o gtrends com modelos que utilizam outras variáveis exógenas, é preciso tornar esses modelos "comparáveis".  É basicamente isso que fazemos nesse exercício.

grafico01
Buscas no GTrends pelo termo "emprego".

Nesse contexto, geramos dois conjuntos de previsões. Um primeiro conjunto assume que todas as variáveis são conhecidas no instante t, isto é, tanto a população ocupada, a população economicamente ativa e o gtrends estão disponíveis em t, quando queremos prever Desemprego_{t}. No segundo conjunto, por outro lado, assumimos que as variáveis população ocupada e população economicamente ativa estão disponíveis em t-1 e o gtrends está disponível em t, para prever Desemprego_{t}. Ao invés de palavras, equações:

Conjunto 1

    \[ Desemprego_{t} = \alpha_i + \beta_i Desemprego_{t-1} + \gamma_i Trends_t + \epsilon_{i,t}, \]

    \[ Desemprego_{t} = \alpha_j + \beta_j Desemprego_{t-1} + \gamma_j PO_{t} + \epsilon_{j,t}, \]

    \[ Desemprego_{t} = \alpha_k + \beta_k Desemprego_{t-1} + \gamma_k PEA_{t} + \epsilon_{k,t}. \]

Conjunto 2

    \[ Desemprego_{t} = \alpha_i + \beta_i Desemprego_{t-1} + \gamma_i Trends_t + \epsilon_{i,t}, \]

    \[ Desemprego_{t} = \alpha_j + \beta_j Desemprego_{t-1} + \gamma_j PO_{t-1} + \epsilon_{j,t}, \]

    \[ Desemprego_{t} = \alpha_k + \beta_k Desemprego_{t-1} + \gamma_k PEA_{t-1} + \epsilon_{k,t}. \]

Onde Trends_t é a quantidade de vezes que a palavra "emprego" foi utilizada como termo de busca no Brasil no mês t.  Dada a diferença entre a disponibilidade de dados do gtrends e das demais variáveis exógenas, é preciso fazer alguns ajustes. Para isso devemos não só escolher uma medida, que neste caso foi o RMSE, de comparação entre modelos, mas também ter certeza de que a construção dessas medidas leva em consideração as diferenças entre os modelos estimados. Ou seja, devemos saber se estas medidas são efetivamente comparáveis (mais sobre as diferentes medidas você encontra aqui). Portanto, a construção deste exercício se deu da seguinte maneira:

i) Normalizar a amostra de forma que as estimações do conjunto 1 e do conjunto 2 utilizam o mesmo número de observações. Assim, modelos que somente usam variáveis defasadas usam o mesmo número de observações que modelos que usam variáveis em t e t-1. No \mathbf{R} isto pode ser feito de maneira bem simples utilizando a função embed.

ii) Dividir a amostra em duas partes, uma para estimação e outra para avaliação de previsão, isto é, uma parte para construção da medida escolhida. Assim tentamos garantir um número mínimo de observações para construir a estatística.

As figuras a seguir ilustram os resultados das previsões para o primeiro e para o segundo conjunto de previsões, respectivamente.

Usando informações em t e t-1.

Como era de se esperar, se usarmos as informações da população ocupada e da população economicamente ativa em t as previsões são melhores e, consequentemente, mais centradas nos valores observados. Caso contrário, se considerarmos a defasagem existente entre o gtrends e as demais variáveis exógenas, as previsões ficam mais "espalhadas". Note que, por causa disso, se assumirmos o modelo errado estaríamos construindo medidas erradas de avaliação. Dito isto, podemos construir as nossas medidas com base no segundo conjunto de previsões [aquele que considera a diferença entre o gtrends e as demais variáveis exógenas] e finalmente comparar o poder de previsão das diferentes variáveis.

RMSE

Como podemos ver, a variável do Google Trends, mesmo nos dando informação, de certa maneira, "privilegiada", não nos ajuda tanto assim individualmente (pelo menos quando a medida escolhida de acurácia é o RMSE).

Finalmente, é interessante notar que os modelos utilizados neste post vêm se mostrando cada vez piores na hora de fazer previsões, como pode ser visto no gráfico a seguir. Estaria isso indicando alguma possível mudança na dinâmica do mercado de trabalho?

RMSE ao longo do tempo.

_______________________________________

Gostou do post? Quer aprender a fazer o mesmo? Dê uma olhada no nosso curso de Introdução ao R com aplicações em Análise de Conjuntura. Faça no Rio de Janeiro ou leve para sua empresa ou universidade!

Curso04

________________________________________

Compartilhe esse artigo

Facebook
Twitter
LinkedIn
WhatsApp
Telegram
Email
Print

Comente o que achou desse artigo

Outros artigos relacionados

Como automatizar tarefas repetitivas usando Python? Um exemplo para largar o Excel

Manter relatórios diários com dados e análises atualizados é um desafio, pois envolve várias etapas: coleta de dados, tratamento de informações, produção de análises e atualização de relatório. Para superar este desafio algumas ferramentas como Python + Quarto + GitHub podem ser usadas para automatizar tudo que for automatizável. Neste artigo mostramos um exemplo com dados do mercado financeiro.

Criando um Dashboard de análise de Ações no Python

Um Dashboard é um painel de controle que consolida uma variedade de informações sobre um determinado objeto de estudo em um ou mais painéis. Ele simplifica significativamente o processo de análise de dados, oferecendo uma visão global e fácil de entender. Uma maneira simples de construir um Dashboard para acompanhar uma ação específica é utilizando duas ferramentas: Quarto e Python. Neste post, mostramos o resultado da criação de um Dashboard de Ação.

Analisando séries temporais no Python e esquecendo de vez o Excel

Séries temporais representam uma disciplina extremamente importante em diversas áreas, principalmente na economia e na ciência de dados. Mas, afinal, como lidar com esses dados que se apresentam ao longo do tempo? Neste exercício, demonstraremos como compreender uma série temporal e como o Python se destaca como uma das melhores ferramentas para analisar esse tipo de dado.

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.