Métodos de Reamostragem

Introdução

Métodos de reamostragem são ferramentas indispensáveis na estatística moderna. Eles envolvem, basicamente, extrair de forma repetida amostras de um conjunto de treino de modo a reestimar o modelo de interesse em cada uma das amostras, obtendo assim informação adicional sobre o modelo ajustado. Vamos conhecer dois métodos úteis aplicáveis a dados de séries temporais de forma a auxiliar previsões: cross-validation e bootstrap.

Nessa seção, vamos estudar dois métodos bastantes utilizados na literatura:

  • cross validation: método largamente utilizado para estimar o *erro de teste* associado a um dado método de aprendizado de modo a avaliar sua performance ou selecionar o grau de flexibilidade;
  • bootstrap: método utilizado em diferentes contextos, mas comumente para prover uma medida de acurácia para um parâmetro estimado.

Cross Validation é uma versão mais sofisticada da ideia que adotamos até aqui de dividir a nossa amostra em dois conjuntos estáticos de treino e de teste, de modo a computar o erro de teste, isto é, a diferença entre a variável prevista e a variável efetivamente observada.

A abordagem de conjunto de validação: Treino e Teste

Antes de fazer referência ao método de cross validation de forma específica, vamos apresentar a abordagem de conjunto de validação de forma geral, isto é, a abordagem de separar os dados em treino e teste.

Quando avaliamos um modelo de série temporal, a dimensão dos resíduos não é uma indicação confiável da dimensão provável dos erros de previsão verdadeiros.

A precisão das previsões só pode ser determinada considerando o desempenho de um modelo com novos dados que não foram utilizados no ajuste do modelo.

A prática comum é separar os dados disponíveis em duas partes, dados de treinamento e dados de teste (training and test), onde os dados de treinamento são usados para estimar quaisquer parâmetros de um método de previsão e os dados de teste são usados para avaliar sua precisão.

Fonte: Hyndman e Athanasopoulos (2021).

Como os dados de teste não são usados na determinação das previsões, eles devem fornecer uma indicação confiável de quão bem o modelo provavelmente fará previsões com base em novos dados.

O tamanho do conjunto de teste é normalmente cerca de 20% da amostra total, embora esse valor dependa do tamanho da amostra e do quão adiante você deseja prever. Idealmente, o conjunto de testes deve ser pelo menos tão grande quanto o horizonte máximo de previsão exigido. Os seguintes pontos devem ser observados.

  • Um modelo que se ajusta bem aos dados de treinamento não fará necessariamente uma boa previsão.
  • Um ajuste perfeito sempre pode ser obtido usando um modelo com parâmetros suficientes.
  • Ajustar excessivamente um modelo aos dados é tão ruim quanto não conseguir identificar um padrão sistemático nos dados.

Outras referências chamam o conjunto de treinamento de “dados dentro da amostra” (in-sample) e o conjunto de teste de “dados fora da amostra” (out-of-sample).

Time Series Cross Validation

Uma versão mais sofisticada de conjuntos de treinamento/teste é a validação cruzada de séries temporais.

Neste procedimento, há uma série de conjuntos de testes, cada um consistindo em uma única observação. O conjunto de treinamento correspondente consiste apenas em observações que ocorreram antes da observação que forma o conjunto de teste.

Assim, nenhuma observação futura pode ser usada na construção da previsão. Como não é possível obter uma previsão confiável com base em um pequeno conjunto de treinamento, as primeiras observações não são consideradas conjuntos de teste.

O diagrama a seguir ilustra um esquema de validação cruzada de séries temporais, com uma série de amostras de treino e de teste, para quando se deseja avaliar a performance preditiva do modelo em h = 1 períodos à frente, onde as observações azuis formam as amostras de treino e as observações laranja formam as amostras de teste.

Fonte: Hyndman e Athanasopoulos (2021).

A precisão da previsão é calculada pela média dos conjuntos de teste. Este procedimento é por vezes conhecido como “avaliação na origem de previsão contínua (rolling forecast)” porque a “origem” na qual a previsão se baseia avança no tempo.

Com a previsão de séries temporais, as previsões em uma etapa podem não ser tão relevantes quanto as previsões em várias etapas. Neste caso, o procedimento de validação cruzada baseado em uma origem de previsão contínua pode ser modificado para permitir a utilização de erros em múltiplas etapas.

Suponha que estamos interessados em modelos que produzam boas previsões em 4 passos à frente. Podemos usar o diagrama abaixo para ilustrar.

Fonte: Hyndman e Athanasopoulos (2021).

Operacionalização

Dado esse esquema de separação de uma série de amostras de treino e de teste de uma série temporal, o método de validação cruzada pode ser resumido como um procedimento recursivo:

1. Para cada amostra de treino estime o modelo;

2. Utilize o modelo estimado para gerar previsões h períodos à frente;

3. Calcule o erro de previsão com a amostra de teste e a saída da etapa 2.

Ao final, obtém-se a métrica de acurácia (ME, RMSE, MAE, etc.) do modelo pela média de cada iteração.

Bootstrap

Bootstrap é uma ferramenta estatística bastante útil para quantificar a incerteza associada a um dado estimador ou método de aprendizado estatístico.

Por exemplo, o método de bootstrap pode ser usado para estimar os erros padrão de um coeficiente em uma regressão linear.

Para ilustrar o método, vamos usar um exemplo fictício. Suponha que nós queremos investir uma soma fixa de dinheiro em dois ativos financeiros que possuem retornos de X e Y.

Nós iremos investir uma fração \alpha do nosso dinheiro em X e o restante 1 - \alpha em Y.

Dado que existe variabilidade associado aos retornos desses dois ativos, nós queremos escolher \alpha de modo a minimizar o risco total, ou variância, do nosso investimento. O valor de \alpha que minimiza o risco será dado então por

(1)   \begin{align*} \alpha = \frac{\sigma_{Y}^2 - \sigma_{XY}}{\sigma_{X}^2 + \sigma_{Y}^2 - 2 \sigma_{XY}}, \end{align*}

onde \sigma_{X}^2 = Var(X), \sigma_{Y}^2 = Var(Y) e \sigma_{XY} = Cov(X,Y).

Nós podemos obter estimativas para \alpha a partir de uma data set simulado.

Fonte: An Introduction to Statistical Learning with Applications in R

Utilizamos os retornos para então estimar \sigma_{X}^2, \sigma_{Y}^2 e \sigma_{XY}. Uma vez obtidas essas métricas, podemos obter \alpha entre 0.532 e 0.657.

Uma vez obtido \alpha, nós podemos nos perguntar sobre a *acurácia* dessa medida. Para isso, podemos estimar o desvio padrão de \hat{\alpha}, ao repetir o processo de simular 100 pares de X e Y e estimar \alpha 1000 vezes.

Fonte: An Introduction to Statistical Learning with Applications in R

A estimativa média para \alpha será

(2)   \begin{align*} \bar{\alpha} = \frac{1}{1000} \sum_{r=1}^{1000} \hat{\alpha} = 0.5996, \end{align*}

o que é muito próximo de \alpha = 0.6 e o desvio padrão será

(3)   \begin{align*} \sqrt{\frac{1}{1000 - 1} \sum_{r=1}^{1000} (\hat{\alpha} - \bar{\alpha})^2} = 0.083 \end{align*}

Para dados reais, contudo, o processo de estimar o desvio padrão não pode ser aplicado, dado que nós não podemos gerar novas amostras a partir da população original.

A abordagem de bootstrap*permite assim *emular* o processo de observar novas amostras, de modo a estimar a variabilidade de \hat{\alpha} sem gerar amostras adicionais. Nós iremos obter distintos data sets ao repetidamente amostrar observações a partir do data set original.

Fonte: An Introduction to Statistical Learning with Applications in R

Referências

James, Gareth; Witten, Daniela; Hastie, Trevor; Tibshirani, Robert. An Introduction to Statistical Learning with Applications in R. Second Edition. Springer

Hyndman, R. J., & Athanasopoulos, G. (2021) Forecasting: principles and practice, 3rd edition, OTexts: Melbourne, Australia. OTexts.com/fpp3. Accessed on 2023-09-04.

Quer aprender mais?

 -  Cadastre-se gratuitamente aqui no Boletim AM e receba toda terça-feira pela manhã nossa newsletter com um compilado dos nossos 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;

 - Quer ter acesso aos códigos, vídeos e scripts de R/Python desse exercício? Vire membro do Clube AM aqui e tenha acesso à nossa Comunidade de Análise de Dados;

 - Quer aprender a programar em R ou Python com Cursos Aplicados e diretos ao ponto em Data Science, Econometria, Machine Learning, Macroeconomia Aplicada, Finanças Quantitativas e Políticas Públicas? Veja nossos Cursos aqui.

Compartilhe esse artigo

Facebook
Twitter
LinkedIn
WhatsApp
Telegram
Email
Print

Comente o que achou desse artigo

Outros artigos relacionados

Onde encontrar dados e ferramentas para text mining?

A aplicação das técnicas de mineração de texto pode trazer análises quantitativas informativas sobre a emoção, tom, categoria e outros padrões de interesse em documentos textuais. O primeiro passo é identificar, coletar e preparar estes dados brutos. Neste artigo, apresentamos bases de dados públicas de Economia e Finanças que podem ser exploradas, assim como ferramentas de programação úteis.

O que é mineração de textos e sua relação com IA?

Com uma matéria prima em comum, a mineração de textos e a inteligência artificial generativa usam grandes volumes de dados não estruturados para fins distintos e com aplicações em Economia, Finanças, Marketing e outras áreas. Mas quando devemos usar uma técnica e não a outra? O que é possível fazer e o que é mineração de textos? Neste artigo introduzimos estes tópicos e fornecemos alguns exemplos de aplicações.

Avaliando a evolução do Funcionalismo Público nos Estados Brasileiros usando Controle Sintético no R

O objetivo deste exercício é introduzir o uso do método de Controle Sintético na linguagem de programação R, aplicando-o a um exemplo prático relevante para a análise de políticas públicas. Vamos focar na utilização dessa técnica para avaliar o impacto do Regime de Recuperação Fiscal (RRF) sobre o número de vínculos do poder executivo nos estados brasileiros, com ênfase no caso do Rio de Janeiro.

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.