Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Dúvida] O que é media movel? E qual a fórmula matemática para se calcular?

O que é media movel? Eu ouvi falar sobre isso em alguns cursos de Data Science aqui da Alura. E também, ja ouvi falar sobre média movel ao estudar sobre otimizadores, por exemplo, o otimizador Adam (Adaptive Moment Estimation) é um dos métodos mais populares de otimização utilizados em redes neurais. Ele combina os benefícios de dois métodos amplamente usados: RMSProp e momentum, utilizando médias móveis para calcular passos adaptativos para cada parâmetro.

Mais, eu não entendo o que é média movel e nem como é calculado.

Eu na minha opinião, acho que média movel é simplismente uma média que pode mudar ao longo do tempo, tipo, se voce tem um dataset com 2000 amostras de um problema temporal, e ai queremos calcular a média model da coluna "preço", eu iria separar subconjuntos desse dataset, por exemplo pegar umas 500 amostras dos indices 0 até 500, e calcular a média do preço. Depois iria pegar de 500 até 1000, e calcular outra média do preço, e ai, eu iria observar que essa média poderia "se mover" de acordo com o periodo, ou seja, a média movel atual do preço seria sempre sendo calculada de um periodo inicial e final diferente, descartando as amostras mais antigas(por exemplo, a primeira média dos indices 0 a 500 não seriam mais contabilizados), ou seja, eu iria usar apenas as amostras do periodo inicial de interesse atual até o presente. Então, se eu calculasse a média das amotras de indices 1000 até 2000, a média já poderia se mover denovo, e mudar. Eu imagino que isso seja o conceito de média movel, mais eu não tenho certeza.

Minha opinião sobre o que eu acho que é média movel está correta? E se sim, como eu posso usar essa explicação para entender como o Adam funciona?

Minhas perguntas são:

  • (1) O que é media movel?

  • (2) E qual a fórmula matemática para se calcular?

  • (3) Minha opinião sobre o que eu acho que é média movel está correta? E se sim, como eu posso usar essa explicação para entender como o Adam funciona?

2 respostas
solução!

Olá William, tudo bem?

Irei responder sua dúvida em tópicos. É um assunto bem aprofundado, então pesquisei e tentei deixar de uma forma simples. Mas reforço que como é um assunto mais aprofundado, recomendo que você explore esse conteúdo em artigos científicos.

  1. O que é média móvel?

    A média móvel é uma forma de calcular uma média que vai mudando ao longo do tempo, ajudando a identificar tendências ao longo do tempo. Ela é chamada de "móvel" porque calcula a média de um subconjunto de dados que se "move" ao longo do conjunto de dados completo. Então, conforme novos dados são adicionados, os dados mais antigos são descartados do cálculo da média.

    Existem dois tipos principais de médias móveis:

    • Média móvel simples (SMA - Simple Moving Average): Calcula a média aritmética de um número fixo de pontos na janela.
    • Média móvel exponencial (EMA - Exponential Moving Average): Dá mais peso a valores recente, reduzindo o impacto dos mais antigos, e é amplamente usada em algoritmos de otimização, como o Adam.
  2. Qual a fórmula matemática para se calcular?

Média Móvel simples:

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Onde:

  • SMAt : média móvel no tempo ,
  • N: tamanho da janela,
  • xt-1: valor na posição t-1

O Adam (Adaptive Moment Estimation) utiliza uma média móvel exponencial (EMA), que é uma variação mais sofisticada da média móvel. Em vez de dar pesos iguais a todos os valores na janela, a EMA dá mais peso aos valores recentes, tornando-a mais sensível a mudanças recentes. A fórmula básica para a EMA é:

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Onde:

  1. EMA_Atual: O valor atual da média móvel exponencial que estamos calculando.
  2. Valor_Atual: O valor mais recente (ou dado atual) que queremos incluir na média.
  3. α: É um peso que determina a importância do valor atual em relação aos valores anteriores.
    • α está entre 0 e 1.
    • Valores mais próximos de 1 dão maior peso ao valor atual.
    • Valores mais próximos de 0 dão maior peso à média anterior.
  4. EMA_Anterior: O valor da média móvel calculado no passo anterior.
  5. (1 - α): Complemento de α, usado para determinar o peso dos valores mais antigos.

Para entender um pouco mais sobre como o algoritmo utiliza a média, compartilho o artigo Complete Guide to the Adam Optimization Algorithm, onde ele aborda um pouco utiliza a média para ajustar os passos da descida do gradiente, tornando o processo mais eficiente e estável.

Então, sua compreensão está bastante próxima do conceito de média móvel! A ideia de calcular a média de subconjuntos de dados e permitir que ela "se mova" conforme novos dados são adicionados é exatamente o que a média móvel faz.

Espero ter ajudado.

Qualquer dúvida, não hesite em compartilhar no fórum.

Abraços!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado

Muito obrigado por me explicar sobre isso!