Baixe o app para aproveitar ainda mais
Prévia do material em texto
Previsão de Utilização de uma ERB através do HMM e LSTM JAILTON NEVES e ADOLPHO OLIMPIO Tratamento de Incertezas – 2021/1 Prof° Antônio Rocha AGENDA •Objetivo •Conceitos •HMM • LSTM •Como implementamos •Resultados •Conclusões 2 OBJETIVO •O objetivo do estudo é verificar se o método é útil para avaliar uma das medidas de desempenho de sistemas (utilização); • Auxiliar uma operadora de celular na decisão de aumentar ou não a quantidade de ERB na área avaliada. 3 CONCEITOS BÁSICOS • Uma cadeia de Markov é uma sequência X1, X2, X3, ... de variáveis aleatórias. • O escopo destas variáveis, isto é, o conjunto de valores que elas podem assumir, é chamado de espaço de estados, onde Xn denota o estado do processo no tempo n. • Se a distribuição de probabilidade condicional de Xn+1 nos estados passados é uma função apenas de Xn, então: onde x é algum estado do processo. A identidade acima define a propriedade de Markov. HMM (Hidden Markov Model) • A Cadeia de Markov é um processo estocástico que não tem memória, ou seja, o próximo passo do sistema só depende do passo atual. Um sistema (processo) em que os valores limites das probabilidades dos estados independem das condições iniciais é conhecido como sistema(processo) ergódico. • O processo de Markov é importante no estudo de confiabilidade. • Qualquer sistema que seja possível ser representado por um grafo, poderá representar uma cadeia de Markov e a partir dele gerar uma matriz estocástica. HMM (Hidden Markov Model) • A matriz estocástica P é uma matriz quadrada cujas entradas pij são definidas para todos os estados i e j. Então, P é chamada matriz Markoviana (ou matriz de probabilidade de transição) se; A soma das probabilidades de sair de um estado i e ir para qualquer um dos estados j => soma dos elementos da linha da matriz é igual a 1. • Os valores de (pi)_j são chamados de probabilidades limitantes em regime estacionário (long-run), que correspondem à proporção de tempo em que o processo fica no estado j. HMM (Hidden Markov Model) • A evolução do processo através de um passo de tempo é descrita pela equação sendo o número (n) um índice e não um expoente. LSTM (Long Short Term Memory) • É uma arquitetura de rede neural recorrente (RNN); • Usa um loop para passar informações de uma etapa da rede para a próxima; • Lembra valores em intervalos arbitrários; • Esses loops podem ser desdobrados ou desenrolados em uma estrutura em cadeia da mesma rede. LSTM (Long Short Term Memory) •As três Gates (portas) existentes na unidade LSTM para proteger e controlar o estado da unidade são: •(1) porta de entrada (input gate), permite a adição de informações úteis ao estado da unidade; •(2) porta de saída (output gate) extrai informações úteis do estado da unidade atual para serem apresentadas como uma saída; •(3) porta de esquecimento (forget gate), remove as informações que não são mais úteis no estado da unidade. LSTM (Long Short Term Memory) COMO IMPLEMENTAMOS •HMM • Foi implementado o modelo HMM no Python e baseada nos dados do log de uma antena contendo: • A data, a hora, latitude e longitude mais a quantidade de usuários conectados em intervalos de 5 em 5 minutos. •O período avaliado foi o dos primeiros dez dias do mês de abril. • Esses dados foram separados com a finalidade de gerar a simulação, quanto ao número de Estados, sobre duas perspectivas: • A de 5 em 5 minutos e a de hora em hora. COMO IMPLEMENTAMOS •HMM •A implementação foi feita quatro passos: Passo 1: Identificação dos Estados •Cada ponto amostral distinto, ou seja, para cada ocorrência de número de usuário distinto, dentro de cada amostra, foi considerado um novo Estado. •Assim, para as amostras de 10 dias cujos intervalos de tempo são de 5 minutos e de 1 hora, teremos respectivamente, no máximo 2880 e 240 Estados. •No caso da amostra de 20 dias, para intervalos de tempo de 5 minutos e de 1 hora, teremos respectivamente, no máximo 5732 e 480 Estados. • Em particular, o número de ocorrência de usuários que representou cada hora, foi o maior que ocorreu dentre todos os instantes da hora analisada. COMO IMPLEMENTAMOS Passo 2: Determinando os elementos do vetor de probabilidade de iniciar em cada Estado. Esse vetor foi chamado de L •O número de Estados é equivalente ao número de elementos distintos dentro de cada amostra; •A probabilidade de iniciar em cada um dos Estados é igual a razão entre 1 e o número de estados, para cada uma das simulações. Passo 3: Gerar o grafo e sua respectiva Matriz de Transição Estocástica. COMO IMPLEMENTAMOS Passo 4: Previsão do número de usuários para cinco dias. •Com os dados obtidos nos passos 2 e 3 foi possível fazer a previsão desejada. • Para obter a matriz de probabilidade de previsão, uma das maneiras é através da equação matricial abaixo: • sendo P a matriz de probabilidade estocástica; • L o vetor de probabilidade de iniciar em cada estado inicial; • e no número de passos ou etapas que antecedem a etapa desejada que seria a n+1. COMO IMPLEMENTAMOS Exemplo: •Após calcular os MP^(n+1), com n natural. Como exemplo, temos: Ao tomarmos n=10 na equação, determinamos os elementos da matriz MP^11, que representam a probabilidade do processo parar em cada um dos estados no dia 11, e aquele elemento ou Estado que apresentou o maior percentual, será o Estado que o processo estará no 11º dia. •De maneira análoga, repetimos o processo para determinar o Estado que o processo estará nos demais dias. COMO IMPLEMENTAMOS • LSTM • Logs da antena 10 primeiros dias de abril e 10 de maio; • Primeiramente o maior valor para cada intervalo de 1 hora (24 amostras por hora e 480 amostras no total dos 20 dias); • 480 amostras ⅔ delas foram utilizadas para treino e ⅓ para teste; • 60 tamanho da janela de valores a serem lembrados pela função sigmóide; • Estrutura de loop com 4 camadas para o treino: • com 50 units (neurônios); • lote de tamanho 32; • treinado por 150 épocas. COMO IMPLEMENTAMOS • LSTM • Métricas utilizadas para avaliar o desempenho do modelo: • O RMSE é a medida que calcula "a raiz quadrática média" dos erros entre valores observados (reais) e predições (hipóteses); • O MAE calcula o "erro absoluto médio" dos erros entre valores observados (reais) e predições (hipóteses). • Segundo experimento - todos os intervalos das amostras e não apenas os valores de pico de cada hora. • Realizamos alterações basicamente nos: • valores das quantidades de linhas do arquivo .csv para treino e teste; • valor das janelas; • das épocas de treinamento • dos valores de previsão futuro RESULTADO HMM: Intervalo de tempo de 1hr e CSV FUll •HMM RESULTADO HMM: Intervalo de tempo de 1hr e CSV FUll RESULTADO HMM: Intervalo de tempo de 5 minutos e CSV FUll RESULTADO HMM: Intervalo de tempo de 5 minutos e CSV FUll RESULTADOS LSTM • Picos das hora dos 20 dias (480 amostras) • Valor de MAE = 32,29 e o Valor de RMSE = 51,80 RESULTADOS LSTM • Intervalos de 5 em 5 minutos 20 dias (5732 amostras) • Valor de MAE = 25,76 e o Valor de RMSE = 35,65 RESULTADOS LSTM • Previsão para 3 dias a frente: • Valores com a previsão para os próximos 72 intervalos intervalos, equivalentes a 3 dias, para 1 amostra por hora; • Valores com previsão para os próximos 288 intervalos, equivalente a 1 dia, para amostras de 5 em 5 minutos. RESULTADOS LSTM • Previsão para 3 dias a frente pico por hora RESULTADOS LSTM • Previsão para 3 dias a frente amostras de 5 em 5 min CONCLUSÕES • No intervalo de tempo de 1 hora, percebemos que os resultados obtidos nos dois modelos apresentaram uma certa semelhança com os dados reais, apesar do gráfico do HMM está deslocado. Já ao considerar o intervalo de tempo de 5 minutos, o LSTM demosntronstrou-se mais aderente aos resultados reais. • Isso se deu devido ao LSTM utilizar a estrutura de loops para passar informações de uma etapa da rede para a próxima e por lembrar de valores em intervalos arbitrários. • O HMM se baseia no último passo e é consideradoum método sem memória. • Para trabalhos futuros, por exemplo, sugerimos trabalhar com uma amostra maior e comparar o LSTM com o GRU. DÚVIDAS E PERGUNTAS
Compartilhar