Previsão do tempo de Natal-RN utilizando LSTM — Parte 1/3

Entendendo o contexto e o desafio

Álvaro Ferreira Pires de Paiva
3 min readNov 8, 2020

Em dezembro de 2019 realizei um trabalho em grupo em uma disciplina da universidade que consistia em utilizar machine learning para previsão do tempo de Natal-RN (recomendo que leiam essa publicação antes de continuar a leitura desse artigo). Agora, em outra disciplina, pretendo continuar no mesmo contexto, porém fazendo uso de novas abordagens/técnicas.

Sobre esse novo trabalho, ele será dividido em 3 partes:

  • Este artigo servindo para explicar o contexto e o problema enfrentado, além do embasamento que direciona para a nova abordagem.
  • Um artigo seguinte apresentando a base de dados, o tratamento realizado e os dados para treinamento.
  • Um último artigo apresentando os resultados obtidos e debatendo os mesmo, fazendo apontamentos para projetos futuros.

Antes de prosseguir com a leitura, é interessante que saiba diferenciar tempo e clima, caso não saiba dê uma rápida leitura na seção “Tempo e Clima” no artigo anterior clicando aqui.

Contexto

Imagem retirada de matéria do G1.

O tempo influencia o nosso dia-a-dia direta ou indiretamente, desde a roupa que escolhemos (por exemplo quando esta frio preferimos roupas que nos aqueçam) até quando escolhemos qual percurso faremos até o trabalho, pois um trecho do caminho pode esta alagado ou não devido a chuva. Hoje em dia a previsão do tempo (seja em jornais, revistas ou outros meios de comunicação) nos alerta de possíveis temporais ou problemas que podem ocorrer devido ao tempo.

Devido a isso e a vários outros fatores, é importante para nós termos conhecimento sobre o tempo e conseguir prever ele da melhor forma possível. Com isso em mente, essa sequência de artigos se propõe apresentar uma abordagem de previsão do tempo usando LSTM (Long Short-Term Memory).

Resultados anteriores

No artigo anterior utilizamos diversas abordagens de machine learning para atacar o problema, além de tentarmos realizar a previsão de velocidade do vento, precipitação, pressão, umidade e temperatura.

Sendo que enfrentamos muitos problemas, principalmente porque estávamos usando modelos comuns de machine learning e abordagens que não eram propícios para problemas que envolvem dados seriais, como é o caso para previsão do tempo. No fim, os resultados não foram muitos satisfatórios.

Para projetos futuros, foi sugerido o uso de modelos para dados seriais, indicando como candidato modelos usando a cadeia de Markov.

Nova abordagem

Por mais que tenha-se indicado modelos usando Markov, optou-se por usar Redes Neurais Recorrentes (Recurrent Neural Network, RNN), em especifico o modelo Long Short-Term Memory (LSTM).

RNN são modelos de deep learning que, ao contrário das redes neurais tradicionais, fazem uso de uma memória (também chamada de estados) para auxiliar nas previsões futuras. Ou seja, usamos esses modelos quando queremos prever um resultado futuro com base nas entradas sequenciais anteriores.

Imagem retirada da Wikimedia Commons.

As redes LSTM são baseadas nas RNN, sendo que sua estrutura de memória é modificada de forma que permita lembrar valores em intervalos arbitrários, isso se torna uma vantagem na resolução de problemas que a previsão das séries temporais possui intervalos de tempo de duração desconhecida.

Caso queira saber um pouco mais sobre a arquitetura das redes LSTM, recomendo ler o capítulo 51 do Deep Learning Book.

Esse artigo foi escrito para a disciplina de Aprendizado Profundo do curso de Bacharelado em Tecnologia da Informação (BTI) da Universidade Federal do Rio Grande do Norte (UFRN), possuindo Ivanovitch Silva como professor.

--

--