ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS...

88
ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS N ˜ AO LINEARES APLICADOS ` AS ´ ERIES TEMPORAIS Hellen Pereira Lima Projeto de Gradua¸c˜ ao apresentado ao Curso de Engenharia Eletrˆ onicaedeComputa¸c˜ao da Escola Polit´ ecnica, Universidade Federal do Rio de Janeiro, como parte dos requisitos necess´ arios ` aobten¸c˜ ao do t´ ıtulo de Enge- nheiro. Orientadores: Luiz Pereira Calˆ oba e Natanael Nunes de Moura Junior Rio de Janeiro Maio de 2018

Transcript of ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS...

Page 1: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO

MODELOS NAO LINEARES APLICADOS A SERIES

TEMPORAIS

Hellen Pereira Lima

Projeto de Graduacao apresentado ao Curso

de Engenharia Eletronica e de Computacao

da Escola Politecnica, Universidade Federal

do Rio de Janeiro, como parte dos requisitos

necessarios a obtencao do tıtulo de Enge-

nheiro.

Orientadores: Luiz Pereira Caloba e

Natanael Nunes de Moura Junior

Rio de Janeiro

Maio de 2018

Page 2: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com
Page 3: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com
Page 4: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

UNIVERSIDADE FEDERAL DO RIO DE JANEIRO

Escola Politecnica - Departamento de Eletronica e de Computacao

Centro de Tecnologia, bloco H, sala H-217, Cidade Universitaria

Rio de Janeiro - RJ CEP 21949-900

Este exemplar e de propriedade da Universidade Federal do Rio de Janeiro, que

podera incluı-lo em base de dados, armazenar em computador, microfilmar ou adotar

qualquer forma de arquivamento.

E permitida a mencao, reproducao parcial ou integral e a transmissao entre bibli-

otecas deste trabalho, sem modificacao de seu texto, em qualquer meio que esteja

ou venha a ser fixado, para pesquisa academica, comentarios e citacoes, desde que

sem finalidade comercial e que seja feita a referencia bibliografica completa.

Os conceitos expressos neste trabalho sao de responsabilidade do(s) autor(es).

iv

Page 5: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

AGRADECIMENTO

Agradeco primeiramente a Deus que, com sua imerecida graca, conduz minha vida

e permitiu que essa realizacao fosse possıvel.

A minha famılia, por todo amor e suporte oferecidos. Obrigada ao meu pai

Gilberto, por ser o engenheiro no qual me inspirei desde crianca. Obrigada a minha

mae Denise, por abrir mao das proprias escolhas para cuidar de mim com tanta

dedicacao. Obrigada a minha irma Evelyn, por tornar meus dias mais leves e por

compreender as noites que precisei manter a luz do quarto acesa para estudar de

madrugada. Obrigada ao meu namorado Henrique, por me apoiar em todos os

momentos com tanto amor.

Ao professor Caloba, que com toda sua sabedoria contribuiu de maneira essencial

para a realizacao deste trabalho e ao Junior que, alem de aceitar me orientar neste

trabalho, aconselhou minhas escolhas academicas, desde o inıcio da faculdade, com

muita paciencia.

Aos professores deste curso que facilitaram o entendimento de disciplinas e foram

solıcitos quando necessitei.

Aos colegas do Laboratorio de Processamento de Sinais, que me orientaram nos

anos de iniciacao cientıfica e compartilharam conhecimento com boa vontade.

Aos meus colegas da Engenharia Eletronica e de Computacao, que eu dividi boa

parte dos meus dias nestes ultimos anos. Muito obrigada por todas as tardes e

noites de estudo, pelo apoio quando eu ja nao tinha mais forcas pra estudar e,

principalmente, por tornar o cotidiano menos pesado com a companhia de voces.

Obrigada Antonio Resende, Gabriel Alboretti, Thiago Lobo, Humberto Paz, Tamine

Verli, Victor Barros, Alice Souto, Pedro Gil, Vitor Cossetti, Luiz Renno, Tharsus

Proux, Marina Torres e a todos os outros que cruzaram meu caminho e de alguma

forma contribuıram para esta conclusao.

v

Page 6: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

RESUMO

Com os avancos tecnologicos, os meios de pagamentos e formas de compras fo-

ram sofrendo modificacoes ate chegar ao modelo atual de lojas virtuais. Com isso,

cartoes de credito assumiram um papel fundamental no comercio, tanto no atacado,

quanto no varejo. Estudos indicam que a maior parte dos consumidores utiliza o

cartao de credito como forma de pagamento, em compras online, e que ha uma

crescente adesao do mercado brasileiro as compras virtuais, resultando em um com-

portamento crescente no volume de dados. Este fato torna o monitoramento de

transacoes por este meio de pagamento desafiador. Uma medida importante para

um lojista e a quantidade de vendas que foram realizadas, num determinado inter-

valo de tempo. Esta informacao tambem tem importancia para bancos, adquirentes

e outras empresas do meio de pagamentos. A partir desta medida, e possıvel detectar

anomalias comportamentais que podem indicar uma fraude, um problema tecnico

ou a condicao de churn, que e quando um cliente deixa de consumir os servicos de

determinada empresa. Neste projeto de graduacao propoe-se a utilizacao de decom-

posicao de series temporais, em conjunto com um modelo nao linear, para a predicao

da quantidade de vendas realizadas, em um determinado perıodo de tempo, por um

lojista, utilizando dados reais. Para realizar o desenvolvimento dos modelos, foram

utilizadas Redes Neurais Artificiais para prever a componente nao linear residual da

serie temporal em questao. Para o conjunto de validacao, foi obtido um RMSE de

584,182 e uma acuracia de comportamento de 76,75%. Esta ultima figura de merito

foi criada para este projeto e indica a capacidade do modelo de prever o compor-

tamento da serie esperada. O resultado desta abordagem foi confrontado com uma

tecnica de referencia que utiliza apenas a decomposicao de series temporais.

Palavras-Chave: Series Temporais, Perfil Transacional, NARMA, Redes Neurais

Artificiais, Decomposicao de Series Temporais, Ciencia de Dados, Aprendizado de

Maquina, Inteligencia Artificial.

vi

Page 7: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

ABSTRACT

Due to technological advances, the payment methods and ways of trading un-

derwent modifications until arriving at the current concept of e-commerce. Besides

that, credit cards have played a key role in both wholesale and retail trade. Studies

indicate that most consumers use credit cards as the main payment method, for

online purchases, and that there is an increasing adhesion of the Brazilian market

to virtual purchases. These two facts result in an increasing volume of data, which

makes monitoring the transactions by this payment method a challenging problem.

An important measure for a retailer is the amount of sales, within a certain time

period. This information is also important to banks, acquirers and other compa-

nies in the payments system. From this measure, it is possible to detect behavioral

anomalies that may indicate a fraud, a technical problem or the condition of churn

(when a customer stops consuming the services of a certain company). This un-

dergraduate project proposes a combined approach, using time series decomposition

and a nonlinear model, to predict the amount of sales in a store, given a time period,

using a real dataset. To develop the models, Artificial Neural Networks were used

to predict the residual nonlinear component of the time series in question. For the

validation set, the RMSE was 584,182 and the accuracy of behavior was 76.75 %.

The accuracy of behavior is a figure of merit that was specially created for this pro-

ject and indicates the capacity of the model to predict the behavior of the expected

series. The result of this approach was confronted with a reference technique that

uses only time series decomposition.

Key-words: Time Series, Transactional Profile, NARMA model, Artificial Neural

Networks, Time Series Decomposition, Data Science, Machine Learning, Artificial

Intelligence

vii

Page 8: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

SIGLAS

RNA - Rede Neural Artificial

MLP - Multilayer Perceptron ou Perceptron Multicamadas

CNC - Computer Numerical Control ou Controle Numerico Computadorizado

PACF - Partial Autocorrelation Function ou Funcao de Autocorrelacao Parcial

AR - Autoregressive ou Autorregressivo

ARMA - Autoregressive Moving Average ou Media Movel Autorregressiva

NARMA - Non-linear Autoregressive Moving Average ou Media Movel Autorre-

gressiva Nao-linear

Div. KL - Divergencia Kullback–Leibler

LSTM - Long Short-Term Memory

RNN - Recurrent Neural Network ou Rede Neural Recorrente

KDE - Kernel Density Estimation ou Estimativa de Densidade por Kernel

PDF - Probability Density Function ou Funcao de Densidade de Probabilidade

RBM - Restricted Boltzmann Machine

viii

Page 9: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

Sumario

1 Introducao 1

1.1 Tema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.2 Justificativa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.3 Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

1.4 Organizacao do Texto . . . . . . . . . . . . . . . . . . . . . . . . . . 5

2 Analise de Perfil de Consumo 6

3 Fundamentacao Teorica 9

3.1 Series Temporais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

3.1.1 Decomposicao de Series Temporais . . . . . . . . . . . . . . . 10

3.1.2 Tendencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

3.1.3 Sazonalidade e Ciclos Senoidais . . . . . . . . . . . . . . . . . 14

3.2 Redes Neurais Artificiais . . . . . . . . . . . . . . . . . . . . . . . . . 17

3.2.1 Funcao de Ativacao . . . . . . . . . . . . . . . . . . . . . . . . 19

3.2.2 Normalizacao dos Dados . . . . . . . . . . . . . . . . . . . . . 20

3.2.3 Funcoes Custo . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

3.3 Modelo NARMA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

4 Metodo 26

4.1 Leitura dos Dados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

4.2 Decomposicao da Serie Temporal . . . . . . . . . . . . . . . . . . . . 28

4.2.1 Tendencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

4.2.2 Sazonalidade . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

4.3 Pre-processamento . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

4.4 Treinamento do Modelo NARMA . . . . . . . . . . . . . . . . . . . . 30

ix

Page 10: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

4.4.1 Treinamento da Rede Neural Artificial . . . . . . . . . . . . . 31

4.4.2 Validacao Cruzada . . . . . . . . . . . . . . . . . . . . . . . . 31

4.5 Figuras de Merito . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

5 Resultados Experimentais 34

5.1 Banco de Dados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

5.2 Decomposicao de Series Temporais . . . . . . . . . . . . . . . . . . . 40

5.2.1 Tendencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

5.2.2 Sazonalidade . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

5.2.3 Decomposicao Completa e Serie Residual . . . . . . . . . . . . 42

5.2.4 Potencia das Componentes da Serie Temporal . . . . . . . . . 47

5.2.5 Reconstrucao da Serie Temporal, com Tendencia e Sazonalidade 48

5.3 Pre-processamento dos Dados . . . . . . . . . . . . . . . . . . . . . . 49

5.3.1 Normalizacao . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

5.3.2 Determinacao da Ordem do Modelo . . . . . . . . . . . . . . . 53

5.4 Parametros da RNA . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

5.5 Resultados do Modelo NARMA . . . . . . . . . . . . . . . . . . . . . 54

5.5.1 Serie Residual . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

5.5.2 Serie Reconstruıda . . . . . . . . . . . . . . . . . . . . . . . . 56

5.5.3 Serie Reconstruıda Nao Negativa . . . . . . . . . . . . . . . . 57

5.5.4 Serie Reconstruıda com Decomposicao . . . . . . . . . . . . . 57

5.5.5 Histograma do Erro . . . . . . . . . . . . . . . . . . . . . . . . 58

5.5.6 Scatter Plots . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

5.6 Conjunto de Validacao (Out-of-Sample) . . . . . . . . . . . . . . . . . 63

5.7 Divergencia KL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64

5.8 Comparacao dos Resultados . . . . . . . . . . . . . . . . . . . . . . . 67

6 Conclusoes 68

Bibliografia 70

x

Page 11: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

Lista de Figuras

3.1 Potencia da serie temporal, extraıda da Time Series Data Library, e

suas componentes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

3.2 Estimativas de tendencias lineares da serie temporal, extraıda da

Time Series Data Library, utilizando diferentes janelas de observacao 14

3.3 Estimativas de sazonalidades anuais, da serie temporal, extraıda da

Time Series Data Library, utilizando diferentes janelas de observacao. 16

3.4 Modelo nao linear de um neuronio artificial . . . . . . . . . . . . . . . 17

3.5 Exemplo de estrutura de uma MLP . . . . . . . . . . . . . . . . . . . 19

3.6 Modelo ARMA ou NARMA . . . . . . . . . . . . . . . . . . . . . . . 23

3.7 Exemplo de autocorrelacao parcial da serie temporal descrita na Secao

3.1.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

4.1 Modelo NARMA para Series Temporais . . . . . . . . . . . . . . . . . 26

4.2 Diagrama em blocos do fluxo de trabalho . . . . . . . . . . . . . . . . 27

4.3 Tangente hiperbolica . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

4.4 Estrutura da rede MLP utilizada . . . . . . . . . . . . . . . . . . . . 32

5.1 Grafico temporal do banco de dados completo . . . . . . . . . . . . . 35

5.2 Histograma do banco de dados . . . . . . . . . . . . . . . . . . . . . . 36

5.3 Histogramas do banco de dados, dividido por perıodo do dia . . . . . 38

5.4 Periodograma da serie temporal completa . . . . . . . . . . . . . . . . 39

5.5 Tendencia linear para toda a janela de aquisicao . . . . . . . . . . . . 41

5.6 Tendencia linear e serie original para julho de 2017 . . . . . . . . . . 41

5.7 Serie sem tendencia, em julho de 2017 . . . . . . . . . . . . . . . . . 41

5.8 Periodograma da serie sem tendencia . . . . . . . . . . . . . . . . . . 42

5.9 Sazonalidade diaria, em julho de 2017 . . . . . . . . . . . . . . . . . . 43

xi

Page 12: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

5.10 Tendencia global, sazonalidade global e serie original . . . . . . . . . 43

5.11 Serie original e estimativas de tendencia e sazonalidade locais . . . . . 44

5.12 Serie residual, sem tendencia e sazonalidade . . . . . . . . . . . . . . 45

5.13 Peridograma da serie residual, sem tendencia e sazonalidade . . . . . 46

5.14 Potencia da serie original, componentes e serie residual . . . . . . . . 47

5.15 Histogramas da serie original, serie sem tendencia e serie residual . . 48

5.16 Histogramas da serie original e da serie reconstruıda com tendencia e

sazonalidade horaria . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

5.17 Histograma da serie residual normalizada pela tecnica MinMax . . . . 50

5.18 Histograma da serie residual normalizada pela tangente hiperbolica . 51

5.19 Histograma da serie residual . . . . . . . . . . . . . . . . . . . . . . . 52

5.20 Serie residual normalizada, em julho de 2017 . . . . . . . . . . . . . 53

5.21 Autocorrelacao parcial da serie residual normalizada . . . . . . . . . . 54

5.22 RMSE para uma variacao de 1 a 10 neuronios na camada escondida . 55

5.23 Saıda da rede neural, para o conjunto de treino, comparada ao alvo . 56

5.24 Saıda da rede neural, para o conjunto de teste, comparada ao alvo . . 56

5.25 Saıda da rede neural reconstruıda, para o conjunto de teste, compa-

rada ao alvo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

5.26 Saıda da rede neural reconstruıda nao negativa, para o conjunto de

teste, comparada ao alvo . . . . . . . . . . . . . . . . . . . . . . . . . 58

5.27 Serie temporal reconstruıda com tendencia e sazonalidade diaria, para

o conjunto de teste, comparada ao alvo . . . . . . . . . . . . . . . . . 58

5.28 A esquerda, histograma do erro; a direita, histogramas da serie espe-

rada (em azul) e da serie predita (em vermelho) . . . . . . . . . . . . 59

5.29 Histogramas da serie original (em azul), da serie predita pelo mo-

delo NARMA (em vermelho) e da serie reconstruıda apenas com a

decomposicao (em marrom) . . . . . . . . . . . . . . . . . . . . . . . 60

5.30 Scatter plot do valor absoluto do erro versus valor absoluto do alvo . 61

5.31 Scatter plot do alvo residual versus saıda residual da RNA . . . . . . 62

5.32 Scatter plot do alvo completo versus saıda reconstruıda da RNA . . . 62

xii

Page 13: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

5.33 Scatter plots do alvo completo versus saıda reconstruıda da RNA (ver-

melho) e alvo completo versus saıda reconstruıda pela decomposicao

(marrom) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

5.34 Saıda residual da RNA, para o conjunto de validacao, comparada ao

alvo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64

5.35 Saıda da RNA reconstruıda, para o conjunto de validacao, comparada

ao alvo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64

5.36 Divergencia KL do modelo NARMA para o conjunto de validacao . . 65

5.37 Divergencia KL da decomposicao para o conjunto de validacao . . . . 66

xiii

Page 14: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

Lista de Tabelas

5.1 Tabela comparativa dos valores de divergencia KL . . . . . . . . . . . 66

5.2 Tabela comparativa dos valores de RMSE . . . . . . . . . . . . . . . 67

xiv

Page 15: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

Capıtulo 1

Introducao

Neste capıtulo, sera explicada a visao geral do projeto final, o contexto no

qual ele se insere, sua relevancia e aplicacoes. Ao final do capıtulo, sera descrita a

organizacao do texto.

1.1 Tema

O comercio, isto e, a atividade de compra, troca ou venda, e uma necessidade

humana desde a pre-historia [1]. Embora a forma original do comercio tenha sido

atraves de permuta, os registros historicos indicam que as sociedades nao monetarias

operavam primariamente sob os princıpios da economia de oferta e debito (dıvida)

[2, 3]. Com o passar do tempo, os meios de pagamento foram evoluindo, desde o

conceito de moeda-mercadoria (Mesopotamia, 3000 a.C.) [4], passando pela forma

representativa (que inclui moedas metalicas e papel-moeda) [5], ate chegar no cartao

de credito. Este ultimo e um cartao de pagamento, emitido para um portador, que

possibilita a este pagar a um comerciante por bens e servicos. Esta possibilidade

gira em torno da promessa que o portador faz ao emissor do cartao de que pagara

a ele os valores ja pagos ao comerciante, acrescidos de taxas acordadas [6].

O conceito de utilizar cartoes de credito para realizar compras foi descrito pela

primeira vez em 1888, por Edward Bellamy, em seu romance “Looking Backward”

[7]. Porem apenas em 1950, este conceito foi concretizado pela empresa Diners Club.

Desde entao, este metodo de pagamento vem sendo cada vez mais utilizado em todos

1

Page 16: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

os lugares do mundo [8]. No Brasil, segundo o Banco Central, no ano de 2016 foram

transacionados mais de R$ 1,1 trilhao, em credito e debito, um crescimento de 6,5%

em relacao a 2015 e de 17% em relacao a 2014 [9].

Em 1989, Tim Berners-Lee criou o primeiro servidor de World Wide Web e o

primeiro navegador [10]. Esta inovacao permitiu o avanco de outras tecnologias,

como a encriptacao dos dados transferidos online, que possibilitaram a realizacao

de transacoes comerciais seguras a distancia. Em 1994, o site NetMarket realizou a

primeira transacao segura, pela internet, utilizando um cartao de credito [11].

Segundo resultados de uma pesquisa realizada pelo Servico de Protecao ao Credito

e pela Confederacao Nacional de Dirigentes Lojistas, em 2017, estima-se que, no Bra-

sil, 89% dos internautas realizaram pelo menos uma compra online no ano anterior.

Alem disso, 43% dos consumidores aumentou a quantidade de produtos adquiridos

pela internet, comparado a 2016. Um outro fato relevante e que 65% dos consumi-

dores online utilizam cartao de credito como forma de pagamento [12].

Estas pesquisas indicam uma crescente adesao do mercado brasileiro as compras

online, o que significa um crescente volume de dados contendo informacoes de com-

pras e transacoes financeiras rastreaveis. Este novo cenario traz consequencias ao

mercado e apresenta alguns desafios relacionados a estes dados. Dentre os proble-

mas existentes, pode-se citar: grande volume de dados e a dificuldade de manter o

alto desempenho computacional; possibilidade de fraudes que podem afetar tanto

o lojista quanto o consumidor; banda de transmissao necessaria para transmitir

tamanha quantidade de dados, em tempo real; ciberseguranca para armazenar e

transmitir dados sensıveis.

Levando em consideracao os desafios envolvidos neste cenario, vale ressaltar que

estas informacoes de compras podem ser uteis para empresas de diversos segmentos,

entre eles: comercio, bancos, adquirentes1, agencias de marketing. E, alem disso,

1Uma adquirente e a empresa do meio de pagamentos que processa as transacoes em credito

e debito e viabiliza a comunicacao entre o lojista e o banco emissor do cartao, sendo responsavel

tambem pelo pagamento dos valores transacionados ao lojista [13, 14].

2

Page 17: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

estes dados podem apresentar uma complexidade elevada por possuirem compor-

tamento variavel ao longo do tempo. Deste modo, torna-se muito custoso fazer

analises manuais e surge entao a necessidade de automatizar este processo.

1.2 Justificativa

Tendo em vista os desafios envolvidos neste universo de compras online, uma

analise possıvel seria a predicao da quantidade de transacoes financeiras, em credito

ou debito, que serao realizadas num determinado estabelecimento comercial, seja ele

uma loja fısica ou uma loja virtual (e-commerce), em um determinado perıodo de

tempo. Esta informacao do numero de transacoes e chamada de perfil transacional.

Detectar e prever anomalias no comportamento transacional de um lojista pode

ter diversas aplicacoes, entre elas: predicao de churn2, para uma possıvel empresa

que possua o lojista como cliente (como e o caso de bancos e adquirentes); deteccao

de fraudes ou deteccao de problemas tecnicos. Porem, dependendo do numero de

clientes a serem observados, pode ser desafiador monitorar todas essas informacoes

individualmente e manualmente. Com isso, torna-se necessaria a utilizacao de siste-

mas de apoio a decisao, isto e, sistemas que sejam capazes de automatizar a deteccao

destes comportamentos indesejados de maneira escalavel e inteligente.

O comportamento transacional de um lojista ou de um cliente pode ser afetado

por fatores temporais (clima, epoca do ano, crises economicas, etc) e, portanto,

apresenta uma dependencia com o tempo. Tal relacao com o tempo possibilita uma

abordagem de series temporais a este estudo. Alem disso, espera-se uma relacao nao

linear com o tempo, que aumenta a complexidade deste problema.

As abordagens “classicas” de series temporais comumente utilizam o metodo de

Box–Jenkins, descrito no livro [15], na qual os estatısticos George Box and Gwilym

Jenkins popularizam a aplicacao de modelos ARMA (do ingles, Autoregressive Mo-

ving Average) ou ARIMA (do ingles, Autoregressive Integrated Moving Average)

para predicao de uma serie temporal. Porem, a literatura afirma que tais modelos

2Quando um cliente deixa de consumir os produtos ou servicos de uma empresa.

3

Page 18: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

sao lineares e, por isso, apresentam uma limitacao no tratamento de problemas nao

lineares [16, 17]. Deste modo, uma abordagem hıbrida que combine um modelo

linear com um modelo nao linear (como por exemplo, Redes Neurais Artificiais) tem

apresentado resultados mais acurados [18] e e uma alternativa para lidar com esta

restricao. A ideia e extrair a parte linear utilizando modelos lineares e treinar uma

Rede Neural Artificial (RNA) para aprender apenas a parte nao-linear restante.

Inspirado na abordagem hıbrida proposta pela literatura citada, este trabalho con-

siste na implementacao de um modelo computacional, capaz de realizar a predicao

do perfil transacional de um dado lojista, utilizando RNA e decomposicao classica

de series temporais.

Mais do que detectar os problemas citados anteriormente, busca-se atuar de ma-

neira preditiva, para antever possıveis anomalias e atuar de maneira a evitar que

as mesmas sejam concretizadas, evitando ate mesmo eventuais prejuızos financeiros.

Neste contexto, fica evidente a importancia de utilizar metodos preditivos, como os

que serao abordados aqui neste trabalho.

1.3 Objetivos

Dada a importancia dos dados que estao contidos em um perfil transacional, o ob-

jetivo deste trabalho e implementar um modelo capaz de prever o perfil transacional

de um lojista.

Para realizar tal previsao, sera utilizado um metodo hıbrido que combina a de-

composicao de series temporais (metodo linear) com uma RNA (metodo nao linear),

com o objetivo de aproveitar as vantagens de cada um destes modelos para prever

as componentes lineares e componentes nao lineares da serie temporal abordada.

A serie temporal estudada neste trabalho e composta por quatro meses do perfil

transacional de um dado lojista. Esta serie ira passar por uma normalizacao e um

pre-processamento estatıstico, a fim de extrair as componentes lineares e, posterior-

mente, uma RNA sera aplicada para a predicao das componentes nao lineares.

4

Page 19: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

Definir a capacidade de um modelo pode ser uma tarefa subjetiva. Entao, para

isto, serao utilizados recursos graficos para a comparacao, mas tambem serao avali-

adas metricas de distancia entre o perfil real e perfil predito pelo modelo.

1.4 Organizacao do Texto

No capıtulo 2 serao apresentadas algumas publicacoes academicas que abordam o

mesmo problema explorado neste projeto, descrevendo algumas formas ja publica-

das de atacar este problema. Ja no capıtulo 3 sera realizada uma apresentacao da

teoria que fundamenta este projeto de graduacao, passando pelo conceito de series

temporais, decomposicao de series temporais, tendencia, sazonalidade, ate chegar

em Redes Neurais Artificiais e modelo NARMA. Todo o metodo seguido para a

realizacao do projeto sera descrito no capıtulo 4, que abordara assuntos como a lei-

tura dos dados, pre-processamento, treinamento do modelo NARMA e metricas. Os

resultados serao apresentados no capıtulo 5, com graficos temporais, histogramas e

scatter plots das predicoes, comparadas ao valor esperado. Alem disso, o resultado

obtido pelo modelo NARMA sera comparado com o resultado obtido pela decom-

posicao de series temporais. Por fim, o capıtulo 6 sera destinado as consideracoes

finais e sugestoes de trabalhos futuros.

5

Page 20: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

Capıtulo 2

Analise de Perfil de Consumo

O perfil de consumo de um dado lojista pode ser entendido como o comportamento

esperado de vendas, num determinado perıodo de tempo. Este comportamento pode

ser relacionado tanto ao valor monetario (medio ou total) das vendas, como a quan-

tidade de vendas que foram realizadas, no perıodo de tempo. A analise deste perfil

de consumo, em geral, tem o objetivo de prever o comportamento futuro, tendo em

vista o comportamento historico e tambem outros dados externos complementares

relevantes para a analise.

Neste capıtulo, serao discutidas maneiras de se abordar a analise de perfil de

consumo, explorando formas de atacar o problema que ja foram utilizadas no meio

academico. Dentre as formas que serao apresentadas, estao: um metodo que utiliza o

comportamento de um consumidor em uma pagina web para prever o valor monetario

das vendas [19]; outro metodo que preve apenas se o comportamento de vendas

apresentara uma queda ou uma subida [20]; um metodo que estima o impacto nas

vendas de lojas vizinhas com a abertura de uma nova loja fısica proxima [21] e

algumas outras abordagens.

Sun et al. [19] propoem um metodo para predicao do valor de vendas online

que utiliza um algoritmo de deteccao que e um tipo de classificador com regressao

logıstica, baseado em caracterısticas semanticas de paginas web. O metodo consiste

em separar paginas web em tres categorias: paginas comuns, paginas de compras e

paginas de confirmacao de compras. Se uma pagina de compras e seguida por uma

pagina de confirmacao, entao a transacao e considerada bem sucedida e o valor dela

6

Page 21: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

e obtido e enviado ao servidor. O algoritmo que preve o valor da transacao e baseado

em regressao logıstica e utiliza alguns campos de texto extraıdos das paginas web. O

desempenho do algoritmo e satisfatorio e acurado na estimativa de vendas de varejo

online.

Ja Wei et al. [22] propoem uma combinacao de dados de pesquisa na internet com

a estrutura de um modelo de series temporais para prever o volume de vendas de

uma loja online chinesa chamada Taobao. O processo consiste na exploracao da cor-

relacao entre o comportamento de pesquisa dos consumidores e o comportamento de

compras, seguido da extracao das componentes de tendencia e sazonalidade, para o

calculo da serie temporal residual. Entao, o modelo preditivo utiliza as informacoes

sobre o comportamento de busca do consumidor e a serie residual para realizar a

predicao do volume de vendas. Os autores exploram apenas o tradicional modelo

AR de duas formas: a primeira apenas utilizando o volume residual de vendas e

a segunda acrescentando tambem as informacoes do comportamento de busca dos

consumidores. Os resultados indicam que a introducao das informacoes compor-

tamentais dos usuarios contribuıram positivamente para a acuracia da predicao,

mesmo com com a utilizacao de um modelo simples.

Yaneko e Yada [20] trazem uma abordagem que utiliza Deep Learning para a

previsao do comportamento das vendas em uma loja. Os dados utilizados sao pro-

venientes de um POS (maquina de cartao, do ingles, Point of Sale) de um super-

mercado, isto e, uma loja fısica. O modelo escolhido foi uma RBM (do ingles,

Restricted Boltzmann Machine), com multiplas conexoes e acrescentando multiplas

camadas na camada intermediaria. Para o treinamento do modelo, um aumento do

numero de vendas foi considerado como alvo ”1”e uma diminuicao deste numero foi

considerado como alvo ”0”. Esta interpretacao do conjunto de dados transforma a

questao em um problema de classificacao e reduz o seu objetivo a previsao de um

aumento ou diminuicao do numero de vendas e nao uma predicao do numero em si.

Os resultados da RBM sao comparados a uma regressao logıstica e indicam que o

uso de uma tecnica de Deep Learning, neste caso, trouxe uma melhor nos nıveis de

precisao, sensibilidade e F-score.

7

Page 22: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

Giuseppe e Valeria Nunnari [23] propoem uma abordagem para a previsao de

vendas mensais, utilizando um conjunto de dados com informacoes de vendas de 1992

ate 2016. O primeiro passo consiste na extracao da tendencia da serie temporal, pelo

metodo de medias moveis. Apos esta extracao, a serie sem tendencia e modelada

por modelos Autorregressivo Nao Linear (NAR), que utilizam Neuro-Fuzzy ou uma

RNA feedforward. Os resultados indicam que a utilizacao de um modelo nao linear

para a previsao traz benefıcios para as figuras de merito e que a abordagem que

utiliza Neuro-Fuzzy apresentou medidas ligeiramente melhores, se comparadas ao

uso de uma RNA feedforward.

Merino e Ramirez-Nafarrate [21] utilizam uma ideia que propoe a combinacao de

um modelo de interacao espacial e simulacao para a estimativa de vendas em uma

determinada loja e do impacto da abertura de uma nova loja numa determinada

regiao, baseado no comportamento de compras dos consumidores. O estudo de caso

real demonstra empiricamente esta abordagem com a construcao de um modelo de

interacao operacional de varejo para estimar o fluxo de gastos dos domicılios em

determinadas lojas. Foram utilizados o modelo Huff para representar a dinamica

da interacao entre as lojas e seus consumidores e simulacoes de Monte Carlo para

complementar as informacoes faltantes nesta modelagem. As estimativas foram com-

paradas com dados reais e os resultados, embora indiquem uma acuracia adequada,

tambem mostram que a previsao tende a ser subestimada, por causa de algumas

premissas adotadas.

No proximo capıtulo serao detalhadas as teorias de algumas tecnicas que podem

ser utilizadas para prever o perfil de consumo de uma loja.

8

Page 23: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

Capıtulo 3

Fundamentacao Teorica

Neste capıtulo sera abordada a teoria que fundamenta o projeto. Inicial-

mente, serao introduzidas as series temporais. Posteriormente, alguns algoritmos de

aprendizado serao detalhados, bem como suas aplicacoes em series temporais. Por

fim, o capıtulo se encerra com modelos preditivos.

3.1 Series Temporais

Uma serie temporal e uma representacao para um conjunto de observacoes feitas

ao longo do tempo [24], isto e, uma sequencia que apresenta o comportamento de

uma ou mais variaveis ao longo do tempo. Uma serie temporal com N observacoes

pode ser representada como na Equacao 3.1, onde S e a serie temporal e as variaveis

S1 ate SN sao as amostras da serie no perıodo de tempo t = 1, 2, ..., N .

S = S1;S2; ...;SN (3.1)

Existem varios exemplos do dia a dia que podem ser representados como series

temporais, entre eles:

• A temperatura na cidade do Rio de Janeiro, no ultimo mes;

• Serie historica dos ındices de inflacao e taxas de juros;

• Indice pluviometrico mensal em Londres, no ano de 2017;

• Uma imagem [25, 26];

• Um eletrocardiograma

9

Page 24: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

Series temporais podem ser utilizadas em uma variedade de campos: estatıstica,

processamento de sinais, engenharia, medicina e em muitos campos que envolvem

medidas no tempo. Segundo Chatfield [24], ha varios objetivos possıveis ao ana-

lisar uma serie temporal. Estes podem ser classificados em: descricao, explicacao,

predicao e controle. Descricao consiste em obter as medidas descritivas simples das

principais propriedades da serie e isto e realizado, primeiramente, atraves de um

grafico das observacoes ao longo do tempo. Neste primeiro passo, muitas vezes,

e possıvel observar periodicidade, pontos discrepantes (outliers), crescimentos ou

decrescimentos medios. Outro objetivo, ao analisar uma serie temporal, seria a ex-

plicacao, que pode ser empregada para, a tıtulo de exemplo, utilizar a variacao em

uma serie temporal para explicar uma variacao em outra. Mais um objetivo seria

a predicao de valores futuros de uma serie temporal. Por ultimo, tambem utiliza-

se essa abordagem para o controle de um sistema fısico ou economico, como por

exemplo, uma serie que e uma medida da qualidade de um processo industrial.

Uma serie temporal e chamada contınua quando suas observacoes sao feitas con-

tinuamente ao longo do tempo, ate mesmo quando as variaveis medidas so podem

assumir valores discretos. Por um outro lado, a serie temporal e chamada dis-

creta quando as observacoes sao tomadas em intervalos de tempo especıficos, mesmo

quando as variaveis medidas sao contınuas.

Se uma serie temporal pode ser predita sem erros associados, ela e dita como

determinıstica [24]. Porem, a maior parte das series e estocastica, o que significa

que as amostras futuras serao estimadas com um erro associado, ou seja, serao

apenas parcialmente determinadas pelas amostras passadas.

3.1.1 Decomposicao de Series Temporais

Segundo [27], a forma mais pratica de analisar uma serie temporal e decompondo-

na em series mais simples. Esta decomposicao pode ser aditiva, multiplicativa ou

mista. Tais componentes podem ser ser funcoes determinısticas no tempo ou nao

e a diferenca entre a serie completa e as componentes determinısticas e chamada

de serie residual. O que sobra na serie residual, isto e, a serie apos a extracao das

10

Page 25: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

componentes determinısticas, sao duas componentes: uma cujos valores possuem

uma dependencia complicada (talvez nao linear) do tempo e uma outra serie que

apresenta valores considerados nao predizıveis (ruıdos nao correlatos). Ja as compo-

nentes determinısticas sao: tendencia, sazonalidade, ciclos senoidais e possivelmente

outros artefatos.

Este processo de decomposicao tambem torna-se importante quando e observada

a energia de cada uma dessas componentes. Em estatıstica, uma forma de esti-

mar a energia de uma serie temporal e calculando a sua variancia, ao longo do

tempo, e utilizando-se de uma analogia com sinais eletricos, e comum se referir a

esta variancia como espectro de potencia, mesmo quando nao ha potencia fısica en-

volvida [28]. A Figura 3.1 representa a energia de uma serie temporal, proveniente

da Time Series Data Library [29], referente ao numero, em milhares, de passageiros

mensais em companhias aereas internacionais. Em azul, esta representada a energia

da serie completa e, em laranja, esta representada a energia da serie sem tendencia.

E possıvel observar que a tendencia e a sazonalidade (em verde e vermelho, res-

pectivamente) possuem uma energia consideravelmente maior do que a energia da

serie residual (em roxo). Este fato pode dificultar o processo de aprendizado de um

modelo que visa prever a serie residual, que e onde se encontram as componentes

nao lineares (este conceito sera discutido na Secao 3.3). Deste modo, fica reforcada

a importancia do processo de decomposicao de series temporais.

3.1.2 Tendencia

Tendencia em uma serie temporal e a componente dita como uma representacao

grafica simplificada da serie. Tambem pode ser definida como uma mudanca a

longo prazo no comportamento da serie temporal, excluindo-se mudancas periodicas.

Segundo [30], uma das formas de se identificar a tendencia e ajustar os dados em

uma das funcoes parametricas descritas nas Equacoes 3.2, 3.3, 3.4 e 3.5, onde µt e

o nıvel medio local, no tempo t.

• Tendencia linear global (determinıstica):

µt = α + βt (3.2)

11

Page 26: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

1951 1952 1953 1954 1955 1956 1957 1958 1959Year

0

1000

2000

3000

4000

5000

6000

7000

Rollin

g Va

riance

Power of Time Series ComponentsOriginal time seriesDetrended seriesTrendAnnual SeasonalityResidual series

Figura 3.1: Potencia da serie temporal, extraıda da Time Series Data Library, e

suas componentes

12

Page 27: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

Onde α e β sao constantes que representam a interceptacao da reta com o eixo

vertical e coeficiente angular da reta, respectivamente.

• Tendencia linear (estocastica):

µt = αt + βtt (3.3)

Onde os parametros αt e βt evoluem com o tempo e representam a inter-

ceptacao local da reta e coeficiente angular local da reta, respectivamente.

• Curva de Gompertz [30]:

log(µt) = a+ brt (3.4)

Onde 0 < r < 1 e a e b sao parametros que definem a curva.

• Curva logıstica:

µt =a

1 + be−ct(3.5)

Onde a, b e c sao parametros que definem a curva.

Uma vez determinados os parametros da curva escolhida para a representacao da

tendencia, e possıvel realizar a extracao da tendencia, segundo a Equacao 3.6, onde

S(t) e a serie original e S1(t) e a serie sem tendencia.

S1(t) = S(t)− µt (3.6)

Dentre os tipos de tendencia que podem ser extraıdos, a mais utilizada e a

tendencia linear. Vale ressaltar tambem que utilizar uma tendencia muito com-

plicada pode indicar uma boa interpolacao para pontos do passado, mas talvez nao

apresente uma capacidade de generalizacao para pontos futuros.

Outro ponto importante a ser observado ao extrair a tendencia e se o compor-

tamento da mesma varia ao longo do tempo. Por este motivo, pode ser necessario

fazer a extracao da tendencia local, em uma janela de tempo menor do que a ja-

nela de aquisicao total. Na Figura 3.2, e possıvel observar diferentes extracoes de

tendencia, utilizando-se janelas de 12 meses (em laranja), 24 meses (em verde), 36

meses (em vermelho) e a janela de aquisicao total (em azul), para o mesmo banco de

13

Page 28: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

1949 1951 1953 1955 1957 1959 1961Year

100

200

300

400

500

600Nu

mbe

r of p

asse

nger

s (in

thou

sand

s) Overall linear trendLinear trend (12-month window)Linear trend (24-month window)Linear trend (36-month window)

Figura 3.2: Estimativas de tendencias lineares da serie temporal, extraıda da Time

Series Data Library, utilizando diferentes janelas de observacao

dados citado na Secao 3.1.1, para ilustrar o impacto desta variacao. Observe que a

lacuna existente nos anos iniciais do grafico se deve ao fato da primeira amostra de

cada uma das formas de extracao necessitar de um numero de amostras pelo menos

igual ao numero de amostras contidas na janela de tempo escolhida para o calculo

da tendencia.

3.1.3 Sazonalidade e Ciclos Senoidais

A sazonalidade e a componente que representa padroes que se repetem em in-

tervalos de tempo regulares ou perıodos de tempo P. Por exemplo, espera-se que a

venda de picoles em determinado lugar apresente uma sazonalidade anual, por causa

do verao. Ja ciclos senoidais sao um caso particular de sazonalidade, na qual esta

possui a forma de uma senoide com perıodo P [27]. Desta forma, estes podem ser

modelados como um comportamento amortecido de uma senoide [31].

14

Page 29: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

Uma proposta para a estimativa da sazonalidade seas(t) para cada instante

i = 1, 2, ..., P do perıodo e calcular o valor medio da serie neste instante a cada

perıodo, conforme representado na Equacao 3.7.

seas(i) =1

floor(NP

) floor(NP )−1∑

k=0

S1(i+ kP ), i = 1, 2, ..., P (3.7)

Onde N e o numero de amostras, S1(t) e a serie ja sem tendencia e floor(NP

)e o

resultado inteiro da divisao NP

, arrendondado para baixo, que representa o numero

de perıodos completos de sazonalidade que existem na serie.

Existem alguns tratamentos classicos que podem ser aplicados as series tempo-

rais para detectar sazonalidades e ciclos senoidais [32]. Um deles e a aplicacao da

transformada de Fourier, pelo algoritmo Fast Fourier Transform (FFT), que tem

como saıda os parametros a e b da expressao que caracteriza um ciclo senoidal,

representada pela Equacao 3.8.

cs(t) = a ∗ cos(2πft) + b ∗ sen(2πft) (3.8)

Outro metodo utiliza a autocorrelacao de uma serie temporal que, por sua vez, e

definida como a correlacao entre a serie s(t) e a mesma serie atrasada de k unidades

de tempo, y(t− k) [27].

Deste modo, e possıvel caracterizar uma sazonalidade quando ha uma autocor-

relacao significativa em atrasos multiplos de P (nP , onde n e inteiro) ou quando o

espectrograma tem raias em n/P , onde n e inteiro. Se a autocorrelacao apresentar

um aspecto de senoide ou houver frequencias altas no espectrograma, ha evidencias

para a existencia de ciclos senoidais. Vale ressaltar que tambem e possıvel determi-

nar o perıodo P da sazonalidade utilizando conhecimentos da fenomenologia (como

citado no exemplo).

Finalmente, para realizar a extracao da sazonalidade e dos ciclos senoidais, basta

subtrair os mesmos da serie temporal ja sem tendencia [27], no caso de uma decom-

posicao aditiva, conforme representado na Equacao 3.9.

S2(t) = S1(t)− seas[R

(t

P

)]− cs(t) (3.9)

15

Page 30: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

1949 1951 1953 1955 1957 1959 1961Year

−100

−50

0

50

100

150

200Passengers

Overall ann al seasonalityAnn al Seasonality (48-month window)Annual Seasonality (60-month window)Annual Seasonality (72-month window)

Figura 3.3: Estimativas de sazonalidades anuais, da serie temporal, extraıda da

Time Series Data Library, utilizando diferentes janelas de observacao.

Onde S2(t) e a serie residual, cs(t) e um ciclo senoidal e R(

tP

)e o resto da divisao

tP

, que representa o instante i do perıodo da sazonalidade que corresponde ao tempo

t da serie.

Assim como na extracao da tendencia, e importante observar se o comportamento

da sazonalidade varia ao longo do tempo. Deste modo, pode ser necessario fazer a

extracao da sazonalidade localmente, em uma janela de tempo menor do que a

janela de aquisicao total. Na Figura 3.3, e possıvel observar diferentes extracoes de

sazonalidade anual, utilizando-se janelas de 48 meses (em laranja), 60 meses (em

verde), 72 meses (em vermelho) e a janela de aquisicao total (pontilhado, em azul),

para o mesmo banco de dados citado na Secao 3.1.1, para ilustrar o impacto desta

variacao. Vale ressaltar que a lacuna existente nos anos iniciais do grafico se deve

ao fato da primeira amostra de cada uma das formas de extracao necessitar de um

numero de amostras pelo menos igual ao numero de amostras contidas na janela de

tempo escolhida para o calculo da sazonalidade.

16

Page 31: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

Figura 3.4: Modelo nao linear de um neuronio artificial

3.2 Redes Neurais Artificiais

Inspirado no funcionamento do cerebro e no neuronio biologico, o conceito de

Redes Neurais Artificiais foi introduzido em 1943 [33]. McCulloch e Pitts conce-

beram o modelo basico de neuronio, representado na Figura 3.4, que forma a base

para a construcao de Redes Neurais Artificiais. Segundo Haykin [34], um modelo

neural e composto por tres elementos basicos: sinapses, um somador e uma funcao

de ativacao. As sinapses sao caracterizadas por um peso ou forca atribuıdos a elas,

isto e, um sinal xj aplicado a entrada da sinapse j conectada ao neuronio k e mul-

tiplicado pelo peso sinaptico wkj. O somador e o elemento que soma os sinais de

entrada, ponderados pelas respectivas sinapses do neuronio. A funcao de ativacao

pode limitar a amplitude da saıda de um neuronio e inserir uma nao linearidade.

Alguns tipos de funcao de ativacao serao abordados com mais detalhes na Secao

3.2.1.

Em 1949, Hebb [35] criou uma hipotese de aprendizado baseado no mecanismo

de plasticidade neural (aprendizagem hebbiana). Esta teoria propoe uma explicacao

para a adaptacao dos neuronios no cerebro durante o processo de aprendizagem.

Pesquisadores, entao, comecaram a aplicar estas ideias em modelos computacionais.

17

Page 32: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

Em 1958, Rosenblatt [36] criou um algoritmo para reconhecimento de padroes, o per-

ceptron. O perceptron foi originalmente projetado para ser uma maquina utilizada

para reconhecimento de imagem [37]. Neste modelo, os neuronios sao organizados

em camadas, uma de entrada e outra de saıda e os pesos das conexoes sao adapta-

dos a fim de se atingir a eficiencia sinaptica. Porem, uma limitacao importante e

que os perceptrons so sao capazes de aprender padroes linearmente separaveis. Um

exemplo classico desta limitacao foi descrito em 1969, no livro “Perceptrons” [38],

que mostrou que este tipo de algoritmo nao e capaz de aprender uma funcao XOR.

Uma generalizacao do perceptron e o modelo perceptron multi-camadas (do ingles,

Multilayer Perceptron, MLP), que consiste tipicamente numa camada de entrada,

uma ou mais camadas escondidas e uma camada de saıda. O Teorema da Apro-

ximacao Universal afirma que uma rede MLP, com uma unica camada escondida,

contendo um numero finito de neuronios e uma funcao de ativacao nao linear e um

aproximador universal [39].

A Figura 3.5 representa um exemplo de rede MLP, totalmente conectada, com

duas camadas escondidas. O sinal de entrada se propaga atraves da rede, da en-

trada para a saıda (sentido forward), camada por camada [34]. Enquanto que, para

o treinamento da rede neural e adaptacao dos pesos, e utilizado o algoritmo back-

propagation que, basicamente, consiste em duas etapas. Na primeira etapa, uma

entrada e aplicada na rede neural e seus efeitos sao propagados no sentido forward,

camada por camada ate chegar na ultima camada e produzir um vetor de saıdas

(neste momento, os pesos sinapticos sao fixos). Na segunda etapa, backward, os pe-

sos sao ajustados de acordo com uma regra para correcao do erro. Resumidamente,

a saıda atual da rede neural e subtraıda do valor esperado (alvo) gerando um erro,

que e propagado no sentido oposto das conexoes dos pesos sinapticos (retropro-

pagacao do erro, do ingles, error backpropagation). Por ultimo, os pesos sinapticos

sao ajustados de maneira a reduzir este erro, isto e, aproximar a saıda atual do valor

desejado, somando-se o fator ∆wij, representado na Equacao 3.10, a cada um dos

pesos sinapticos atuais.

∆wij = −η ∂E∂wij

(3.10)

18

Page 33: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

Figura 3.5: Exemplo de estrutura de uma MLP

Onde wij e o peso sinaptico de um neuronio, E e uma funcao custo que mede a

dissimilaridade entre a saıda atual e o valor esperado e η e a chamada learning rate,

parametro que define o tamanho do passo de treinamento e, consequentemente, a

atualizacao do peso wij.

3.2.1 Funcao de Ativacao

A funcao de ativacao ou funcao de transferencia (ϕ(.), da Figura 3.4) de um

neuronio artificial tem como objeto calcular a saıda deste neuronio e pode restrin-

gir a amplitude da saıda para um valor finito, em funcao do valor do potencial

de ativacao (vk). Em redes MLP densamente conectadas, as funcoes de ativacao

mais utilizadas sao: degrau (Equacao 3.11), linear com saturacao (Equacao 3.12),

tangente hiperbolica (Equacao 3.13) e sigmoide (Equacao 3.14).

• Funcao degrau:

ϕ(v) =

1, se v ≥ 0

0, se v < 0

(3.11)

19

Page 34: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

• Funcao linear com saturacao:

ϕ(v) =

1, se v ≥ +1

2

v, se + 12> v > −1

2

0, se v ≤ −12

(3.12)

• Funcao tangente hiperbolica:

ϕ(v) = tanh(v) (3.13)

• Funcao sigmoide:

ϕ(v) =1

1 + e−av(3.14)

Onde a e o parametro de inclinacao da sigmoide. Variacoes neste parametro

produzem sigmoides de diferentes inclinacoes.

Segundo [39], a funcao de ativacao mais utilizada na construcao de RNA e a funcao

sigmoide (ou a tangente hiperbolica, quando deseja-se um intervalo ente [-1,1] e nao

[0,1]). Uma caracterıstica importante destas funcoes e que elas sao diferenciaveis,

diferentemente da funcao degrau.

Caso o intuito do modelo seja obter saıdas contınuas, como e o caso de aplicacoes

em regressao, geralmente faz-se uso de neuronios lineares na saıda. Caso contrario,

onde se deseja obter saıdas discretas (classificacao), utiliza-se neuronios nao-lineares.

Existe tambem casos em que e interessante ter pelo menos um neuronio linear na

camada intermediaria, com o objetivo de facilitar o mapeamento de possıveis relacoes

lineares entre as entradas e saıdas [27].

3.2.2 Normalizacao dos Dados

Em muitos casos, os dados de entrada de uma RNA sao provenientes de diferentes

fontes, apresentam diversas faixas dinamicas e nao sao padronizados. Alem disso,

as funcoes de ativacao nao lineares, em geral, restringem a amplitude dos valores de

saıda de um neuronio. Neste contexto, surge a necessidade de realizar a normalizacao

dos dados, antes do processo de treinamento, para que os valores que passam pelos

neuronios possam corresponder ao intervalo de saıda destas funcoes [40], evitando

assim a saturacao dos dados.

20

Page 35: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

O processo de normalizacao consiste em garantir que os dados de entrada este-

jam dentro de um intervalo previamente estabelecido. Geralmente, os intervalos

utilizados sao [-1,1] ou [0,1] e alguns exemplos de funcoes de normalizacao sao:

• Transformacao linear para o intervalo [0,1]:

xn =x0 − xmin

xmax − xmin

(3.15)

• Transformacao linear para o intervalo [a,b]:

xn =(b− a)(x0 − xmin)

xmax − xmin + a(3.16)

• Normalizacao estatıstica:

xn =x0 − xσ

(3.17)

• Normalizacao simples:

xn =x0xmax

(3.18)

• Normalizacao pela tangente hiperbolica:

xn = Ctanh(Dx0) (3.19)

Onde xn corresponde aos dados normalizados; x0 aos dados originais; xmin, xmax,

x e σ ao valor mınimo, valor maximo, media e desvio padrao dos dados originais,

respectivamente. As variaveis C e D sao parametros que ajustam a intensidade

da normalizacao pela tangente hiperbolica e serao discutidos com mais detalhes no

proximo capıtulo.

Vale ressaltar que a normalizacao pela tangente hiperbolica e uma boa alternativa

para lidar com os chamados outliers1. Este assunto tambem sera discutido mais

detalhadamente no proximo capıtulo.

1Um ponto de observacao dentro de um conjunto de dados que esta perceptivelmente distante

das outras observacoes deste mesmo conjunto [41].

21

Page 36: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

3.2.3 Funcoes Custo

O conceito de funcao custo foi introduzido, em estatıstica, em 1950 [42]. Como

citado no fim da Secao 3.2, o processo de treinamento supervisionado de uma RNA

consiste em minimizar o erro entre a saıda predita e o valor desejado. A funcao custo

representa uma medida de dissimilaridade entre a predicao e o valor esperado. Por

este motivo, a funcao custo tambem pode ser utilizada para avaliar o desempenho

de uma RNA ja treinada. A funcao de erro mais comumente utilizada e o Erro

Medio Quadratico (do ingles, Mean Squared Error, MSE). Porem ha outras funcoes

tambem utilizadas na literatura que serao apresentadas abaixo [32].

• Erro Medio Quadratico (MSE):

MSE =1

N

N∑i=1

(ei)2 (3.20)

• Raiz do Erro Medio Quadratico (RMSE):

RMSE =√

MSE =

√√√√ 1

N

N∑i=1

(ei)2 (3.21)

• Erro Medio Percentual Absoluto (MAPE):

MAPE =100

N

N∑i=1

∣∣∣∣ eixi∣∣∣∣ (3.22)

• Correlacao: medir a correlacao de Pearson entre os valores estimados e os

valores reais.

r =cov(X, Y )√

var(X)√var(Y )

(3.23)

onde cov(X, Y ) e a covariancia entre X e Y e var(X) e var(Y ) sao as variancias

de X e Y .

3.3 Modelo NARMA

Modelos para a previsao de series temporais podem ter diversas formas e re-

presentar diferentes processos estocasticos. Os principais modelos encontrados na

literatura sao: Autorregressivos (do ingles, Autoregressive, AR) e Media Movel (do

22

Page 37: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

Figura 3.6: Modelo ARMA ou NARMA

ingles, Moving Average, MA), representados nas Equacoes 3.24 e 3.25, respectiva-

mente. Estas duas classes de modelos possuem uma dependencia linear das amostras

passadas [43].

• Modelo Autorregressivo (AR):

Xt = α1Xt−1 + ...+ αpXt−p + Zt (3.24)

Onde Xt e um processo autorregressivo de ordem p, Zt um ruıdo branco gaus-

siano e αi sao parametros do modelo.

• Modelo de Media Movel (MA):

Xt = β0Zt + β1Zt−1 + ...+ βqZt−q + Zt (3.25)

Onde Xt e um processo de media movel de ordem q, Zt um ruıdo branco

gaussiano e βi sao parametros do modelo.

A combinacao destas duas abordagens resulta no modelo Autorregressivo de Media

Movel (do ingles, Autoregressive Moving Average, ARMA), definido na Equacao 3.26

e ilustrado na Figura 3.6, onde cada bloco ∆T indica um atraso de uma amostra.

Xt = α1Xt−1 + ...+ αpXt−p + Zt + β1Zt−1 + ...+ βqZt−q (3.26)

23

Page 38: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

E possıvel observar que, no caso do modelo ARMA, o sistema e linear, ϕ(.) e

um simples ponderador e esta estrutura e conhecida como um filtro IIR (do ingles,

Infinite Impulse Response), em processamento de sinais. Porem, o bloco ϕ(.) pode

ser implementado com um modelo nao linear, como por exemplo uma RNA. Neste

caso, o modelo deixa de ser linear e recebe o nome de ARMA nao linear, NARMA

[44].

O modelo NARMA pode ter diversas aplicacoes, entre elas:

• Controle de temperatura e umidade de um sistema de uma estufa [45];

• Modelagem da dinamica de glicose do tecido subcutaneo [46];

• Reconhecimento de dıgitos falados [47];

• Aprimoramento da usinagem de uma CNC [48]

Segundo Caloba [27], o modelo NARMA (e suas simplificacoes NAR e NMA) e o

mais utilizado em conjunto com RNAs e um possıvel motivo para isto e o fato destes

modelos poderem ser facilmente reinicializados, uma vez que seu estado e composto

pelas entradas e saıdas do sistema atrasadas, variaveis facilmente observaveis.

No caso da aplicacao do NARMA para previsao de series temporais, a previsao de

uma proxima amostra da serie pode ser descrita como uma combinacao nao linear

de amostras passadas. Esta relacao esta representada na Equacao 3.27.

x(t+ k) = ϕ[x(t), x(t− 1), ..., x(t−M)] (3.27)

Onde M e a ordem do modelo.

Uma maneira de determinar a ordem do modelo e utilizando a funcao de Auto-

correlacao Parcial (do ingles, Partial Autocorrelation Function, PACF) [15]. Esta

funcao denota a correlacao parcial de uma serie temporal, com seus proprios valores

defasados, excluindo o efeito das amostras intermediarias (isto e, as amostras que

produzem um atraso menor). Ela difere da funcao de autocorrelacao, que nao exclui

estes atrasos menores. Na Figura 3.7, e possıvel observar a autocorrelacao parcial

24

Page 39: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

0 10 20 30 40 50Lags

−0.6

−0.4

−0.2

0.0

0.2

0.4

0.6

0.8

1.0Pa

rtial Autoc

orrelatio

nPartial Autocorrelation of Time Series

Figura 3.7: Exemplo de autocorrelacao parcial da serie temporal descrita na Secao

3.1.1

da serie temporal utilizada como exemplo na Secao 3.1.1. E esperado que a auto-

correlacao parcial diminua, conforme o atraso aumenta, caso nao haja componentes

cıclicas.

25

Page 40: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

Capıtulo 4

Metodo

Neste capıtulo serao descritas todas as etapas deste trabalho, bem como as justi-

ficativas para cada uma delas e os problemas contornados.

O modelo escolhido para realizar a previsao do perfil transacional deste lojista

e uma combinacao da decomposicao de series temporais, utilizando metodos es-

tatısticos, e um modelo NARMA, utilizando uma RNA, cujo diagrama especıfico

para series temporais esta representado na Figura 4.1.

O algoritmo foi implementado em Python, com o suporte das bibliotecas Ke-

ras [49] e Scikit-learn [50]. As cinco etapas da implementacao estao ilustradas na

Figura 4.2. A primeira etapa consiste no carregamento e preparacao dos dados

para as proximas etapas. Na segunda etapa, foi realizada a decomposicao de series

temporais, com extracao da tendencia e da sazonalidade. Na terceira etapa, foi

realizado o pre-processamento da serie residual, para que a mesma pudesse ser utili-

zada para o treinamento do modelo NARMA. A quarta etapa consiste na definicao

dos parametros e treinamento deste modelo. Por fim, a quinta etapa resume-se na

Figura 4.1: Modelo NARMA para Series Temporais

26

Page 41: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

Figura 4.2: Diagrama em blocos do fluxo de trabalho

analise dos resultados e das figuras de merito para avaliacao do algoritmo.

4.1 Leitura dos Dados

O banco de dados utilizado e composto pelo historico de vendas que tiveram como

meio de pagamento o cartao de credito, realizadas em um determinado lojista, entre

abril de 2017 e agosto de 2017. Como as transacoes chegam de maneira assıncrona,

para extrair o perfil transacional deste lojista, foi necessario realizar um agrupamento

do numero de transacoes e decidir a janela de processamento a ser utilizada. Devido

ao grande volume de dados, 15 minutos foi a janela de processamento escolhida.

Caso a janela de processamento fosse maior, alguma variacao importante poderia ser

perdida e o tempo para tomada de decisao poderia ser muito grande (por exemplo,

detectar uma fraude apos horas do acontecimento pode ser muito tempo). Caso a

janela de processamento fosse menor, nao haveria informacao suficiente para cada

janela, a serie temporal poderia ter muito zeros, dificultando a identificacao do perfil

transacional.

27

Page 42: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

4.2 Decomposicao da Serie Temporal

Como citado na Secao 3.1.1, uma serie temporal pode ser composta por:

• Tendencia

• Sazonalidade

• Componentes nao lineares

• Ruıdos nao correlatos (imprevisıveis)

O objetivo da decomposicao e extrair as componentes determinısticas (tendencia e

sazonalidade), gerando uma serie residual, formada pelas componentes nao lineares

e pelos ruıdos nao correlatos. Esta serie residual e utilizada para treinar o modelo

NARMA para prever as componentes nao lineares. Alem da predicao da serie resi-

dual, tambem se faz necessario realizar a predicao da tendencia e da sazonalidade.

Enfim, a combinacao destas tres predicoes compoe a predicao final.

4.2.1 Tendencia

A extracao da tendencia, inicialmente, foi realizada atraves de um metodo da bi-

blioteca StatsModel [51]. No entanto, a biblioteca nao fornecia nenhum metodo para

realizar a predicao desta componente. Alem disso, o tipo de tendencia implemen-

tado na biblioteca (baseado em medias moveis) nao foi considerado adequado para

o caso em questao, por nao apresentar uma boa capacidade de generalizacao para

pontos futuros. Deste modo, foi implementado um algoritmo para a identificacao e

predicao da tendencia linear, utilizando a funcao de regressao linear da biblioteca

SciPy [52].

Entao, o calculo da tendencia consiste no ajuste de uma reta nas amostras pas-

sadas da serie temporal. E, atraves da extensao desta reta, e possıvel realizar uma

estimativa para as amostras futuros da tendencia.

28

Page 43: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

4.2.2 Sazonalidade

A extracao da sazonalidade e feita na serie temporal, ja sem tendencia. Esta

extracao foi primeiramente realizada utilizando a biblioteca StatsModel. Porem,

esta tambem nao apresenta um metodo para a predicao da sazonalidade. Assim

sendo, foi implementado um algoritmo que realizasse a operacao descrita na Equacao

3.7 e fosse capaz de fazer a predicao da sazonalidade para pontos futuros.

Vale ressaltar que um parametro crucial para o calculo desta componente e o

perıodo da sazonalidade. Este perıodo pode ser determinado por conhecimento da

fenomenologia ou por meio do periodograma da serie sem tendencia. Por conhe-

cimento da fenomenologia, espera-se uma sazonalidade diaria, porque, para este

lojista, o numero de vendas realizadas durante o dia e maior do que de madru-

gada. Ao analisar o periodograma da serie sem tendencia, que sera apresentado no

Capıtulo 5, sera possıvel observar tal sazonalidade. Apos a retirada da sazonalidade

diaria, foi feita uma nova analise do periodograma da serie residual, que tambem

sera apresentada no Capıtulo 5

4.3 Pre-processamento

O pre-processamento dos dados consistiu basicamente num processo de norma-

lizacao, para garantir que os valores da serie residual estivessem dentro do intervalo

[-1,1], antes de servirem de entrada para o modelo NARMA.

Para realizar a normalizacao, a primeira tecnica utilizada foi a de transformacao

linear para o intervalo [-1, 1], tambem chamada de normalizacao MinMax. Porem

uma questao identificada foi o fato de a maior parte dos dados ter ficado concentrada

no intervalo entre [-0,25, 0,25]. Isto poderia causar um problema no treinamento

do modelo, porque grandes variacoes de valores estariam sendo representadas por

pequenas variacoes da serie normalizada. Este ocorrido se deu devido a distribuicao

da serie residual, tambem muito concentrada e apresentando valores muito grandes

pouco frequentes (este fato sera detalhado na Secao 5.1).

29

Page 44: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

Figura 4.3: Tangente hiperbolica

Uma solucao possıvel seria tratar os valores muito grandes como outliers e sim-

plesmente truncar a serie em um valor que tornasse a distribuicao mais dispersa,

de modo que a normalizacao pelo metodo de transformacao linear nao concentrasse

tanto os valores. Esta solucao nao foi considerada adequada, porque estes valores

maiores indicam momentos em que o numero de transacoes e muito grande e, embora

sejam menos frequentes, fazem parte do comportamento transacional deste lojista

(Secao 5.1). Entao, truncar estes valores seria perder uma informacao que retrata o

comportamento que deseja-se prever.

Para contornar estre problema, foi escolhida a normalizacao pela tangente hi-

perbolica, que realiza uma transformacao nao linear, segundo a Figura 4.3. Os

parametros C e D foram escolhidos de maneira que os valores da serie residual

que estao na regiao de 3 desvios-padrao coincidissem com a regiao de linearidade da

funcao. Deste modo, foi possıvel explorar a linearidade da tangente hiperbolica para

produzir uma serie residual normalizada com uma distribuicao menos concentrada.

4.4 Treinamento do Modelo NARMA

Apos o processo de decomposicao de series temporais e de normalizacao, obtem-

se uma serie residual normalizada que sera utilizada para treinamento do modelo

30

Page 45: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

NARMA. O primeiro parametro que precisa ser escolhido e a ordem M do modelo

(vide Figura 4.1). Esta ordem indica quantas amostras passadas serao utilizadas

para o treinamento da previsao da proxima amostra. Para determinar a ordem do

modelo, foi utilizada a PACF. E esperado que a correlacao entre a amostra atual e

as amostras passadas va diminuindo, conforme o atraso e maior (ou o “passado” e

mais distante).

4.4.1 Treinamento da Rede Neural Artificial

A proxima etapa do processo compreende a realizacao do treinamento da Rede

Neural Artificial, bem como a escolha da sua topologia e parametros.

Para este trabalho foi escolhida uma rede MLP, com uma camada escondida,

ilustrada na Figura 4.4. A dimensao da camada de entrada e determinada pelos

dados de entrada. Para a determinacao do tamanho da camada escondida, foram

realizadas varias tentativas e escolheu-se a topologia que apresentou o menor RMSE

medio, para o conjunto de teste, pois representa a maior similaridade entre o alvo e

a predicao. Estes resultados serao apresentados no capıtulo seguinte.

A funcao de treinamento utilizada foi a gradiente descendente, com uma learning

rate constante e a funcao custo escolhida para minimizacao foi a MSE.

4.4.2 Validacao Cruzada

Para acessar a flutuacao estatıstica do processo de treinamento, foi utilizada a

validacao cruzada. Esta e uma tecnica utilizada para avaliar a capacidade de gene-

ralizacao de um determinado modelo. Principalmente para a construcao de predi-

tores, onde deseja-se medir o quao acurada e a predicao, esta tecnica fornece uma

maneira de obter esta medida e identificar o limite do modelo. Embora existam

varias abordagens para tal [53], a tecnica adotada neste trabalho consiste em es-

colher aleatoriamente amostras para compor o conjunto de treino e o conjunto de

teste. Estes dois subconjuntos sao mutualmente exclusivos. Esta divisao entao foi

feita algumas vezes e o resultado escolhido foi aquele que apresentou menor RMSE

para o conjunto de teste.

31

Page 46: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

Figura 4.4: Estrutura da rede MLP utilizada

Vale ressaltar que esta tecnica, implementada usando a biblioteca Scikit-learn, nao

fornece garantia de que as repeticoes serao diferentes, porem isto e provavel para

conjuntos de dados suficientemente grandes. Alem disso, para extrair as figuras

de merito de validacao, foi separada previamente uma parte do conjunto de dados,

referente a ultima semana da janela de aquisicao utilizada.

4.5 Figuras de Merito

Quando se trata de predicao de series temporais, a representacao grafica e uma

boa maneira de avaliar o desempenho do modelo. Porem, para complementar esta

analise, foram escolhidas figuras de merito auxiliares para esta avaliacao.

A primeira delas, o RMSE (vide Equacao 3.21), e uma medida que diz o quao

distante (dissimilar) a predicao esta do valor esperado (ou alvo). A outra figura

utilizada foi a divergencia Kullback–Leibler [54] (tambem chamada de divergencia

KL ou entropia relativa), representada na Equacao 4.1. Esta segunda figura de

merito visa trazer uma medida de como a distribuicao de probabilidade da predicao

32

Page 47: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

diverge da distribuicao de probabilidade da serie esperada. Para seu calculo, a

funcao densidade de probabilidade (do ingles, probability density function, PDF)

foi determinada atraves da estimativa de densidade por Kernel (do ingles, kernel

density estimation, KDE), com kernel quadrado que possui uma largura de banda

fixa, definida empiricamente.

DKL =∑i

P (i)logP (i)

Q(i)(4.1)

Onde P e Q sao distribuicoes de probabilidades discretas e DKL e a di-

vergencia KL de P para Q.

Alem disso, foi criada uma figura de merito especificamente para esta aplicacao,

cujo objetivo e demonstrar a capacidade do modelo utilizado de reconstruir o com-

portamento da serie esperada, isto e, se o modelo consegue prever se ha um cresci-

mento ou um decrescimento da serie. Uma medida que expressa este comportamento

e o calculo da diferenca entre a amostra atual e a amostra passada de cada uma

das series, que e dada por x(n)− x(n− 1), onde x(n) e uma amostra de uma serie

temporal no tempo n. Quando esta diferenca e positiva, ha um crescimento da serie

e quando esta e negativa, ha um decrescimento da serie. E realizado, entao, o calculo

desta diferenca para as amostras da serie predita e da serie alvo. O numero de vezes

em que as diferencas correspondentes de ambas as series apresentam o mesmo sinal

e contado como um acerto. O numero de acertos dividido pelo numero total de

amostras foi chamado de acuracia de comportamento.

33

Page 48: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

Capıtulo 5

Resultados Experimentais

Este capıtulo sera destinado para a apresentacao dos dados utilizados para a

realizacao deste trabalho, bem como os resultados obtidos.

5.1 Banco de Dados

Como ja citado na Secao 4.1, o banco de dados utilizado neste trabalho e composto

pelo perfil transacional de um determinado lojista, com janelas de processamento

de 15 em 15 minutos, considerando uma janela de aquisicao de 4 meses. A Figura

5.1 apresenta 4 graficos, onde o eixo das abscissas corresponde ao tempo e o eixo

das ordenadas corresponde ao numero de transacoes em um intervalo de 15 minutos.

Cada um dos graficos e referente a um intervalo de um mes e a escala do eixo das

abscissas representa um dia.

Nestes graficos temporais, e possıvel observar que o comportamento da serie tem-

poral apresenta uma complexidade nao linear com o tempo e tambem uma compo-

nente cıclica. Vale ressaltar tambem que, em alguns momentos, ha picos de 2000 ou

mais transacoes, que nao ocorrem de forma periodica e que tambem nao podem ser

considerados outliers, pois fazem parte do comportamento transacional.

Ja na Figura 5.2 esta representado o histograma do banco de dados completo, isto

e, o histograma do numero de transacoes que ocorreram nos intervalos de 15 minutos,

ao longo destes 4 meses. E possıvel observar dois picos importantes: marcados com

fundos vermelho e lilas, em torno de 0 e 1000 transacoes, respectivamente, que e

34

Page 49: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

Apr 17 May 1731 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 01 02

0

1000

2000

Coun

t Transac

tions

May 17 Jun 1730 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 01 02

0

1000

2000

Coun

t Transac

tions

Jun 17 Jul 1731 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 01 02

0

1000

2000

Coun

t Transac

tions

Jul 1730 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

Date

0

1000

2000

Coun

t Transac

tions

Figura 5.1: Grafico temporal do banco de dados completo

35

Page 50: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

Figura 5.2: Histograma do banco de dados

36

Page 51: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

um comportamento esperado para um grande lojista. Outro ponto importante e

a presenca de algumas ocorrencias com mais de 2000 transacoes, o que reforca o

porte deste lojista. Ademais, estes fatos mostram que a distribuicao dos dados e

bimodal, o que descarta a possibilidade de assumir uma distribuicao gaussiana e

tambem indica que ha uma composicao de dois comportamentos distintos. Este

indıcio, aliado ao comportamento temporal visto na Figura 5.1 motivou uma analise

comportamental por perıodo do dia. Esta analise esta representada no grafico da

Figura 5.3, que contem um histograma com as transacoes que ocorreram entre 11h

e 23:45h e outro histograma com as transacoes que ocorreram entre 00h e 10:45h.

Este grafico confirma a hipotese da existencia de dois comportamentos. Alem disso,

esta analise mostra que no intervalo de tempo entre 00h e 10:45h ha um volume

de compras baixo, com o valor da moda proximo de zero, o que e esperado para o

perıodo da madrugada. Ja no intervalo entre 11h e 23:45h, o volume de compras

e maior, com a moda em torno de 1000 transacoes em 15 minutos, indicando que,

neste perıodo, a atividade de vendas e mais intensa.

Na Figura 5.4, encontra-se o periodograma da serie temporal. Os eixos de or-

denadas e abscissas deste grafico sao, respectivamente, potencia (em numero de

transacoes ao quadrado) e frequencia (em Hz). As caixas de texto apontando para

cada um dos picos indicam o valor correspondente ao perıodo que tais picos re-

presentam. Os picos sao resultado de uma energia maior para estas componentes

de frequencia. Ha um indicativo forte de sazonalidade em 24 horas, e outros pi-

cos correspondentes a um perıodo de 12 horas que sao possıveis harmonicos desta

sazonalidade diaria. Outra informacao importante e a existencia de um pico na

frequencia de 0 Hz, indicando a presenca de um nıvel DC. Vale ressaltar tambem

que os valores correspondentes ao perıodo destes picos nao sao numeros inteiros.

Esta informacao pode significar que o perıodo exato da sazonalidade pode estar em

um momento que a janela de processamento nao e capaz de enxergar. Por exem-

plo: 11,96 horas e equivalente a 11 horas, 57 minutos e 36 segundos, um perıodo

que a janela de processamento de 15 minutos nao tem granularidade suficiente para

mostrar.

37

Page 52: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

0 500 1000 1500 2000 2500Possible Values

0

100

200

300

400

Occurences

Count Transactions Histogram per PeriodBetween 11h and 23:45hBetween 00h and 10:45h

Figura 5.3: Histogramas do banco de dados, dividido por perıodo do dia

38

Page 53: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

0 110000 s

14999 s

13333 s

12500 s

12000 s

Frequency (Hz)

0.0

0.2

0.4

0.6

0.8

1.0

Powe

r Spe

ctru

m

1e1224.02 h

12.01 h

11.96 h

Periodogram of Original Series

0 110000 s

14999 s

13333 s

12500 s

12000 s

0.0

0.5

1.0

1.5

2.0 1e10

Figura 5.4: Periodograma da serie temporal completa

39

Page 54: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

5.2 Decomposicao de Series Temporais

O processo de decomposicao de series temporais foi realizado atraves da extracao

da tendencia linear e da sazonalidade, com o objetivo de extrair as componentes

determinısticas da serie temporal. Foi necessario adotar duas formas de extracao

diferentes: global, considerando toda a janela de aquisicao e local, considerando

uma janela de tempo menor e estimando a proxima amostra. Isto foi necessario

porque, em condicoes reais, para realizar a predicao da proxima amostra de uma serie

temporal, e necessario realizar tambem a predicao da tendencia e da sazonalidade

correspondentes a esta amostra e limitar a janela de observacao historica. Entao,

a extracao local simula tais condicoes, adotando uma janela deslizante menor e

estimando o proximo ponto de tendencia ou sazonalidade.

5.2.1 Tendencia

O tipo de tendencia escolhido foi a tendencia linear, para evitar que tipos muito

complexos nao generalizassem bem para pontos futuros.

Na Figura 5.5, que contem a tendencia para toda a janela de aquisicao, e in-

teressante observar que, mesmo a regressao linear, que e um metodo simples, ja

consegue trazer informacoes relevantes, como o crescimento do numero de vendas.

Esta reta possui coeficiente angular 0,007 e interceptacao com o eixo das ordenadas

em 682,943, indicando que este crescimento e suave. Esta suavidade no crescimento

pode ser mais facilmente observada na Figura 5.6, que apresenta a serie original e a

tendencia no mesmo grafico, para o mes de julho de 2017 e ilustra como a tendencia

e praticamente um valor constante, quando comparada a serie completa.

Na Figura 5.7, e possıvel observar o grafico da serie sem tendencia, que apresenta

valores negativos, por causa do aspecto da tendencia e ainda apresenta os picos e

comportamento sazonal.

O periodograma da serie sem tendencia esta representado na Figura 5.8, cu-

jos eixos de ordenadas e abscissas sao, respectivamente, potencia (em numero de

transacoes ao quadrado) e frequencia (em Hz). Este grafico se assemelha ao perio-

40

Page 55: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

Apr 17 May 17 Jun 17 Jul 1701 04 07 10 13 16 19 22 25 28 01 04 07 10 13 16 19 22 25 28 31 03 06 09 12 15 18 21 24 27 30 03 06 09 12 15 18 21 24 27 30

Date

680

700

720

740

760

Coun

t Transac

tions

Linear Trend

Figura 5.5: Tendencia linear para toda a janela de aquisicao

Jul 1701 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

Date

0

500

1000

1500

2000

2500

Coun

t Transactio

ns

Original Time SeriesLinear Trend

Figura 5.6: Tendencia linear e serie original para julho de 2017

Jul 1701 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

Date

−500

0

500

1000

1500

Coun

t trans

actio

ns

Detrended Series

Figura 5.7: Serie sem tendencia, em julho de 2017

41

Page 56: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

0 110000 s

14999 s

13333 s

12500 s

12000 s

Frequency (Hz)

0.0

0.2

0.4

0.6

0.8

1.0

Powe

r Spe

ctru

m1e12

24.02 h

12.01 h

11.96 h

Periodogram of Detrended Series

0 110000 s

14999 s

13333 s

12500 s

12000 s

0.0

0.5

1.0

1.5

2.0 1e10

Figura 5.8: Periodograma da serie sem tendencia

dograma da Figura 5.4. A principal diferenca e a diminuicao da amplitude do pico

em 0 Hz, o que reforca a ideia de que extrair a tendencia e, de fato, alterar o nıvel DC

da serie temporal. Os outros aspectos, como a presenca de picos, com harmonicos,

que indicam sazonalidade diaria, sao semelhantes nas duas Figuras. Este grafico,

entao, foi utilizado para determinar o perıodo da sazonalidade, que foi de 24 horas.

5.2.2 Sazonalidade

Apos a extracao da tendencia, foi realizado o calculo e extracao da sazonali-

dade diaria. A sazonalidade diaria da serie temporal foi calculada de acordo com a

Equacao 3.7 e pode ser observada na Figura 5.9.

5.2.3 Decomposicao Completa e Serie Residual

Por fim, apos o calculo da tendencia linear e da sazonalidade diaria, tem-se o

grafico que resume o processo de decomposicao global, na Figura 5.10, ja descritos

42

Page 57: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

Jul 1701 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

Date

−600

−400

−200

0

200

400Co

unt T

rans

actio

ns

24h Seasonality

Figura 5.9: Sazonalidade diaria, em julho de 2017

Jul 1701 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

Da e

−500

0

500

1000

1500

2000

2500

Coun

Tra

nsac

ions

Time Series Decomposi ionOriginalLinear Trend24h Seasonali y

Figura 5.10: Tendencia global, sazonalidade global e serie original

nas Secoes 5.2.2 e 5.2.1 e mostra que as componentes estao acompanhando o com-

portamento da serie original. Um detalhe importante a ser observado e a presenca

de um pequeno pico no momento com menor numero de transacoes de alguns dias.

A sazonalidade incorpora este comportamento, que nao esta presente em todos os

dias, como por exemplo nos dias 15 e 16 de julho.

Alem disso, tambem foi realizada a decomposicao local, para a simulacao das

condicoes reais de operacao, que esta representada na Figura 5.11. A janela desli-

zante utilizada para esta decomposicao foi de 7 dias, determinada empiricamente. E

possıvel observar que a tendencia linear, quando extraıda localmente, apresenta uma

pequena oscilacao, demonstrando seu comportamento dinamico ao longo do tempo.

A sazonalidade tambem apresenta uma pequena variacao, porem menos significativa

que a da tendencia.

Apos a extracao da sazonalidade e da tendencia, obtem-se a serie residual, que

sera a base para o treinamento do modelo NARMA. Esta serie residual pode ser

observada na Figura 5.12. Vale ressaltar que os picos observados na Figura 5.1 ainda

43

Page 58: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

Jul 1701 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

Date

−500

0

500

1000

1500

2000

2500Co

unt T

ans

actio

ns

Time Se ies Decomposition (Online)O iginalOnline Linea T endOnline 24h Seasonality

Figura 5.11: Serie original e estimativas de tendencia e sazonalidade locais

existem, porem o comportamento sazonal foi retirado. E possıvel perceber que a

serie residual apresenta um aspecto muito mais complicado do que a serie original,

o que e um indicativo de que o que sobra na serie residual sao as componentes nao

lineares.

Na Figura 5.13, esta representado o periodograma da serie residual, com os mes-

mos eixos da Figura 5.4. E possıvel notar que as amplitudes dos picos reduziram,

de uma ordem de grandeza de 1012 para 109 e que os perıodos correspondentes a

estes picos parecem representar harmonicos em torno da sazonalidade diaria ja ex-

traıda. Este fato pode ser justificado pela presenca de uma sazonalidade de perıodo

nao divisıvel pelo tamanho da janela de processamento adotada (15 minutos), o

que impossibilitaria a completa remocao desta sazonalidade. Alguns testes para a

extracao de sazonalidades com perıodos menores (12 horas ou 1 hora) foram rea-

lizados, porem estes testes demonstraram que estas extracoes inseririam oscilacoes

na serie residual, nao existentes na serie original. Por este motivo, a possibilidade

de extrair sazonalidades com perıodos menores foi descartada.

Vale ressaltar que, para o treinamento da RNA, foi utilizada a serie residual,

resultante da decomposicao global. Ja para a reconstrucao (adicao da tendencia

e sazonalidade) da serie residual prevista, foi utilizada a tendencia e sazonalidade

locais. Esta escolha foi baseada nas condicoes de operacao reais, onde na aplicacao

da RNA tem-se o conhecimento da serie historica para realizar a extracao global,

porem, na hora de reconstruir a previsao da RNA, e necessario realizar tambem uma

previsao da tendencia e da sazonalidade, como foi feito na extracao local.

44

Page 59: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

Apr 17 Ma 1731 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 01 02

−1000

0

1000

Coun

t Transactio

ns

Ma 17 Jun 1730 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 01 02

−1000

0

1000

Coun

t Transactio

ns

Jun 17 Jul 1731 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 01 02

−1000

0

1000

Coun

t Transactio

ns

Jul 1730 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

Date

−1000

0

1000

Coun

t Transactio

ns

Residual Series

Figura 5.12: Serie residual, sem tendencia e sazonalidade

45

Page 60: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

0 110000 s

14999 s

13333 s

12500 s

12000 s

Frequency (Hz)

0

1

2

3

4

5

Powe

r Spectrum of R

esidual Series

1e912.93 h

480.46 h288.27 h

Periodogram of Residual Series (Without trend and 24h seasonality)

Figura 5.13: Peridograma da serie residual, sem tendencia e sazonalidade

46

Page 61: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

Apr 17 May 17 Jun 17 Jul 1701 04 07 10 13 16 19 22 25 28 01 04 07 10 13 16 19 22 25 28 31 03 06 09 12 15 18 21 24 27 30 03 06 09 12 15 18 21 24 27 30

Date

0

50000

100000

150000

200000

250000Ro

lling

Varia

nce

Power of Time Series and its ComponentsOriginal time seriesDetrended seriesTrendSeasonality (24h)Residual series

Figura 5.14: Potencia da serie original, componentes e serie residual

5.2.4 Potencia das Componentes da Serie Temporal

Na Figura 5.14, o eixo das abscissas representa a data, com resolucao diaria, e

o eixo das ordenadas contem a variancia movel, calculada com uma janela desli-

zante com a largura de 7 dias, determinada empiricamente. Neste grafico e possıvel

observar a potencia da serie original (em azul), cujo valor e igual a potencia da

serie sem tendencia (pontilhado, em laranja). Este fato ocorre porque a tendencia

linear estimada apresentou um coeficiente angular tendendo a zero. Assim sendo, o

comportamento esperado para uma reta de coeficiente angular proximo a zero e de

potencia variacional com valor pequeno, como observado na figura em questao. Caso

o coeficiente angular apresentasse significativamente maior do que zero, este fato se-

ria refletido na presenca de potencia variacional. Ademais, e possıvel observar que

a potencia da sazonalidade (em rosa) representa uma parte significativa da potencia

total, o que faz com que a potencia da serie residual (em roxo) seja muito menor do

que a potencia total. Isto se deve ao fato de a sazonalidade ter uma amplitude alta.

Estas observacoes confirmam a importancia da extracao da tendencia e sazonalidade

e da utilizacao de um metodo nao linear para o aprendizado especificamente da serie

residual, pois o alto valor energetico da sazonalidade poderia ser prejudicial para

este processo.

Na Figura 5.15, estao os histogramas da serie original, da serie sem tendencia

e da serie residual (sem tendencia e sazonalidade diaria), em azul, laranja e roxo,

respectivamente. Neste grafico, e possıvel observar que a extracao da tendencia

provoca apenas um deslocamento da distribuicao da serie original. Por outro lado,

47

Page 62: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

−1000 −500 0 500 1000 1500 2000 2500Possible Values

0

200

400

600

800

1000

1200

1400Oc

curences

Count Transactions HistogramOriginal seriesDetrended seriesDetrended and without seasonalit 24h

Figura 5.15: Histogramas da serie original, serie sem tendencia e serie residual

a extracao da sazonalidade exclui a condicao de bimodalidade, resultando numa

distribuicao unimodal, bem concentrada em torno de zero, apresentando valores

mais altos pouco frequentes.

5.2.5 Reconstrucao da Serie Temporal, com Tendencia e Sa-

zonalidade

Ao somar a tendencia e sazonalidade horaria, extraıdas localmente, obtem-se uma

reconstrucao da serie temporal utilizando apenas estas componentes determinısticas.

O histograma desta reconstrucao esta representado, em marrom, na Figura 5.16,

juntamente com o histograma da serie original, em azul. E possıvel notar que o

pico originalmente existente proximo de zero (vide histograma, em azul) nao foi

devidamente reconstruıdo apenas com estas componentes. Alem disso o outro pico

existente em torno de 1000 (vide histograma, em azul) tambem nao e alcancado

48

Page 63: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

0 500 1000 1500 2000 2500Possible Values

0

100

200

300

400

Occu

renc

esCount Transactions Histogram

Original SeriesReconstructed Series (online trend + season. 24h)

Figura 5.16: Histogramas da serie original e da serie reconstruıda com tendencia e

sazonalidade horaria

(vide histograma, em marrom). Outro ponto importante sao as ocorrencias entre

2000 e 2500 transacoes que tambem nao sao alcancadas. Estas limitacoes destas

componentes determinısticas sao motivacoes para o uso de um metodo nao linear,

que seja capaz de prever estes comportamentos possivelmente nao lineares.

5.3 Pre-processamento dos Dados

Antes da serie residual, representada na Figura 5.12, servir como entrada para o

modelo NARMA, foi realizado um processo de normalizacao.

49

Page 64: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

−1.00 −0.75 −0.50 −0.25 0.00 0.25 0.50 0.75 1.00Possible Values

0

200

400

600

800

1000

1200

1400Oc

curences

Count Transactions HistogramNormalized Residual Series (MinMax)

Figura 5.17: Histograma da serie residual normalizada pela tecnica MinMax

5.3.1 Normalizacao

Como citado na Secao 4.3, a primeira tentiva de normalizacao foi realizada pela

tecnica MinMax e o problema descrito naquela mesma secao pode ser observado na

Figura 5.17. E possıvel notar que a maior parte dos dados ficou concentrada no

intervalo [-0,25, 0,25], como descrito anteriormente.

Para resolver este problema, foi realizada a normalizacao pela tangente hiperbolica,

cujo histograma pode ser observado na Figura 5.18. Esta normalizacao foi realizada

de maneira que os valores que estao dentro do intervalo marcado pelas linhas verme-

lhas da Figura 5.19 coincidissem com a regiao de linearidade da tangente hiperbolica,

tambem marcada com linhas vermelhas na Figura 4.3. Este histograma demonstra

uma distribuicao mais espalhada, confirmando que a exploracao da linearidade da

tangente hiperbolica foi eficaz para resolver o problema em questao.

50

Page 65: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

−1.00 −0.75 −0.50 −0.25 0.00 0.25 0.50 0.75 1.00Possible Values

0

50

100

150

200

250

300

350

Occu

renc

es

Count Transactions HistogramNormalized Residual Series (tanh; C = 1; D = 2/(3*std))

Figura 5.18: Histograma da serie residual normalizada pela tangente hiperbolica

51

Page 66: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

−1000 −500 0 500 1000 1500Possible Val es

0

200

400

600

800

1000

1200

1400

Occ rences

Co nt Transactions HistogramResid al Series witho t trend and season. 24h

Figura 5.19: Histograma da serie residual

52

Page 67: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

Jul 1701 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

Date

−1.0

−0.5

0.0

0.5

1.0Co

unt T

rans

actio

ns

Residual Series

Normali ed Residual Series

Figura 5.20: Serie residual normalizada, em julho de 2017

Na Figura 5.20, esta retratada uma parte do grafico temporal da serie residual

normalizada, referente a julho de 2017. E possıvel constatar que os picos foram

suavizados e os valores proximos de zero foram mais espalhados. A serie residual

normalizada para toda a janela de aquisicao servira de entrada para o treinamento,

teste e validacao do modelo NARMA.

5.3.2 Determinacao da Ordem do Modelo

Apos a normalizacao da serie residual, foi necessario realizar a escolha da ordem

M do modelo NARMA, ilustrada na Figura 4.1. Para fazer esta escolha, foi utilizado

o grafico de Autocorrelacao Parcial da serie residual normalizada, representado na

Figura 5.21. Nota-se que, conforme esperado, a PACF diminui conforme o atraso

aumenta e, por isso, foi escolhida a ordem 6 para o modelo NARMA. Isto significa

que a entrada da RNA sera composta pelas amostras x(n), x(n − 1), x(n − 2),

x(n− 3), x(n− 4), x(n− 5) e x(n− 6).

5.4 Parametros da RNA

Para realizar treinamento da RNA foi executado um processo de validacao cru-

zada, com 10 sorteios, separando 25% do conjunto para teste e escolhendo-se o sor-

teio que apresentasse o menor RMSE de teste, que foi considerado o melhor sorteio.

Ademais, a ultima semana da serie temporal foi separada para compor o conjunto de

validacao. Para determinacao do numero de neuronios na camada escondida, houve

uma variacao de 1 a 10 neuronios, com validacao cruzada para cada uma destas

topologias. Na Figura 5.22, esta exposto o resultado desta variacao, com o valor do

53

Page 68: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

0 5 10 15 20 25 30Lags

0.0

0.2

0.4

0.6

0.8

1.0Pa

rtial Autoc

orrelatio

nPartial Autocorrelation of Normalized Residual Time Series

Figura 5.21: Autocorrelacao parcial da serie residual normalizada

RMSE de teste, acompanhado da flutuacao estatıstica da validacao cruzada, no eixo

das ordenadas e o numero de neuronios na camada escondida, no eixo das abscissas.

Foi escolhida a topologia de 9 neuronios, embora a variacao do RMSE seja pequena

e praticamente dentro da barra de erro.

Alem disso, as funcoes de ativacao da camada escondida sao tangentes hiperbolicas

e da camada de saıda, composta por 1 neuronio, e linear. A funcao custo utilizada

foi MSE e a funcao de otimizacao gradiente descendente, com learning rate de 0,01.

5.5 Resultados do Modelo NARMA

Esta secao sera dedicada a apresentacao dos resultados de treinamento, teste e

validacao do modelo NARMA. Os resultados apresentados correspondem ao melhor

sorteio da topologia escolhida, isto e, aquele que apresentou o menor RMSE de teste.

54

Page 69: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

1 2 3 4 5 6 7 8 9 10Neurons hidden layer

0.2150

0.2175

0.2200

0.2225

0.2250

0.2275

0.2300

0.2325Te

st RMSE

Figura 5.22: RMSE para uma variacao de 1 a 10 neuronios na camada escondida

5.5.1 Serie Residual

Na Figura 5.23, em azul esta representado o valor esperado da serie residual e, em

vermelho, a saıda residual da RNA para o conjunto de treino, para o perıodo de 1

de abril ate 14 de abril de 2017, para melhor visualizacao. O RSME para o melhor

conjunto de treinamento foi 0,228.

Neste grafico e possıvel observar que a RNA foi treinada adequadamente e conse-

gue acompanhar o comportamento do valor esperado, mesmo com a evidente com-

plexidade do mesmo. Uma figura de merito que expressa este comportamento e

a acuracia de comportamento, definida na Secao 4.5. Neste caso, a porcentagem

da acuracia de comportamento foi de 80,32%. Porem, e interessante ressaltar que,

algumas vezes, a RNA nao alcanca a amplitude dos picos existentes, como e o caso

do pico negativo, entre 11 e 12 de abril.

Ja na Figura 5.24, esta representada a saıda da RNA para o melhor conjunto de

teste (em vermelho), comparada com o valor esperado (em azul). Os pontos pretos

representam o valor absoluto do erro para aquela amostra. O RMSE para o conjunto

55

Page 70: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

Apr 1701 02 03 04 05 06 07 08 09 10 11 12 13 14

Date

−1.0

−0.5

0.0

0.5

1.0No

rmalize

d Re

sidual V

alues

Residual Training Set (A ril 1 - April 14)TargetNN Output

Figura 5.23: Saıda da rede neural, para o conjunto de treino, comparada ao alvo

Jun 1701 02 03 04 05 06 07 08 09 10 11 12 13 14 15

Events

−1.0

−0.5

0.0

0.5

1.0

Nor alized Residual Values

Residual Test Set (Jun 1 - Jun 15)TargetOutput of NNAbsolute Value of Error

Figura 5.24: Saıda da rede neural, para o conjunto de teste, comparada ao alvo

de teste foi de 0,211 e a acuracia de comportamento foi 80,05%. Mais uma vez, e

possıvel notar que a RNA acompanha o comportamento da serie original, sendo

capaz de generalizar para o conjunto de teste, porem, embora seja capaz de indicar

a existencia de um pico, muitas vezes nao chega na amplitude esperada, como e o

caso do pico negativo entre os dias 7 e 8 de junho.

5.5.2 Serie Reconstruıda

A Figura 5.25 representa, em vermelho, a saıda da RNA reconstruıda, isto e,

acrescida da tendencia e sazonalidade diaria estimadas para os pontos correspon-

dentes. Em azul, esta representada a serie temporal que se deseja obter, tambem

para o intervalo entre 1 e 31 de maio. Mais uma vez e possıvel constatar que a

previsao acompanha satisfatoriamente o formato da serie original, embora nao seja

capaz de alcancar a amplitude dos picos muito grandes, que destoam do compor-

tamento mais comum. O RMSE para a serie reconstruıda foi 226,498 e a acuracia

de comportamento foi 70,91%. Porem, ao calcular o RMSE para as amostras com

valor esperado menor do que 1500 obtem-se o valor de 179,907, enquanto que o

56

Page 71: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

May 1701 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

Date

0

500

1000

1500

2000

2500Co

unt T

rans

actio

ns

Reconstructed Output (May 1 - May 31)OriginalNN Output

Figura 5.25: Saıda da rede neural reconstruıda, para o conjunto de teste, comparada

ao alvo

RMSE para amostras com valor esperado maior do que 1500 foi de 800,421. Esta

discrepancia entre os RMSE para diferentes valores do alvo confirma a hipotese de

que o modelo tem dificuldade para prever os valores muito altos, que sao menos

frequentes, mas acabam por aumentar o valor do RMSE.

5.5.3 Serie Reconstruıda Nao Negativa

Ao reconstruir a serie, foram obtidos alguns valores negativos (vide Figura 5.25),

que nao possuem sentido real para o problema em questao, pois nao e factıvel ter

um numero de transacoes negativo. Para lidar com este problema, estes valores

negativos foram mapeados para zero, obtendo-se o resultado ilustrado na Figura

5.26. Para esta reconstrucao nao negativa, o RMSE foi de 225,848, apenas 0,2%

menor do que o RMSE para a saıda que inclui valores negativos. Alem disso, a

acuracia de comportamento agora foi de 70,75%. O RMSE para valores esperados

menores do que 1500 caiu para 179,061. Embora esta mudanca represente pequenas

melhoras nas metricas, ela e importante para trazer um sentido real para a predicao

e seria uma adaptacao necessaria para a implementacao deste sistema em casos reais.

5.5.4 Serie Reconstruıda com Decomposicao

Uma forma alternativa de obter uma predicao para a serie temporal e apenas so-

mando a tendencia e sazonalidade que foram estimadas, sem acrescentar a previsao

obtida pelo modelo NARMA. Esta forma de reconstruir a serie temporal, apenas com

a decomposicao esta ilustrada na Figura 5.27. Nota-se que esta forma de predicao

57

Page 72: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

May 1701 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

Date

0

500

1000

1500

2000

2500Co

unt T

rans

actio

ns

Non-negative Reconstructed Output (May 1 - May 31)OriginalNon-negative NN Output

Figura 5.26: Saıda da rede neural reconstruıda nao negativa, para o conjunto de

teste, comparada ao alvo

May 1701 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

Date

0

500

1000

1500

2000

2500

Count T

ransactio

ns

Original and Decomposition (May 1 - May 31)OriginalTrend + 24h Seasonality

Figura 5.27: Serie temporal reconstruıda com tendencia e sazonalidade diaria, para

o conjunto de teste, comparada ao alvo

acompanha o comportamento geral da serie temporal, porem nao acompanha mu-

dancas bruscas os picos pouco frequentes. O RMSE alcancado foi de 211,646, com

acuracia de comportamento de 80,21%. Para os momentos em que o valor esperado

era menor que 1500, o RMSE foi de 161,704 e, para os momentos restantes (valor

esperado maior do que 1500), o RMSE foi de 790,681. Outra vez e possıvel constatar

que prever os picos de maior amplitude sao um problema complexo, que aumenta o

RMSE.

5.5.5 Histograma do Erro

Uma ponto importante a ser avaliado e a distribuicao do erro. Na Figura 5.28,

ao lado esquerdo esta representado o histograma do erro entre a saıda nao negativa

da RNA e o valor esperado. Observa-se que o erro apresenta uma distribuicao

aproximadamente simetrica, o que indica que o erro nao tem vies. No grafico do

lado direito, o histograma em vermelho representa a distribuicao da predicao nao

58

Page 73: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

−1000 −500 0 500 1000 1500Possible Values

0

25

50

75

100

125

150

175Oc

cure

nces

Error His ogram

0 500 1000 1500 2000 2500Possible Values

0

20

40

60

80

100

Occu

renc

es

NN ou pu and Tru h His ogramsTru hRecons ruc ed NN Ou pu

Figura 5.28: A esquerda, histograma do erro; a direita, histogramas da serie esperada

(em azul) e da serie predita (em vermelho)

negativa da RNA e, em azul, a distribuicao da serie temporal esperada. Nota-se, no

histograma em vermelho, a existencia de um pico em zero, devido ao mapeamento

dos valores negativos. O pico da distribuicao original, ja ressaltado na Secao 5.1 e

aproximadamente reconstruıdo com a previsao da RNA. Alem disso, fica claro que

o formato da distribuicao e a bimodalidade sao alcancados.

Na Figura 5.29, a tıtulo de comparacao, estao representados os histogramas da

serie original, da serie reconstruıda com o modelo NARMA e da serie reconstruıda

apenas com a decomposicao, em azul, vermelho e marrom, respectivamente. E

possıvel notar que nenhuma das duas formas de predicao alcancam os valores espe-

rados maiores que 1800, embora a RNA ainda alcance valores um pouco maiores do

que a decomposicao. Observa-se tambem que o histograma em vermelho apresenta

picos ligeiramente maiores do que os existentes no histograma em marrom e esta

forma se aproxima mais do histograma azul (que e o alvo).

5.5.6 Scatter Plots

Na Figura 5.30, esta representado o grafico de dispersao do valor absoluto da serie

esperada (no eixo das abscissas) e do valor absoluto do erro entre a serie esperada

e a serie predita pelo modelo NARMA, acrescida da tendencia e sazonalidade (no

eixo das ordenadas). Este grafico demonstra que para valores esperados maiores do

que 1500 (os picos da serie original), o valor absoluto do erro aumenta. Em outras

59

Page 74: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

0 500 1000 1500 2000 2500Possible Values

0

20

40

60

80

100

Occu

renc

es

NN output, Decomposition and Truth HistogramsTruthReconstructed NN OutputTrend + 24h Seasonality

Figura 5.29: Histogramas da serie original (em azul), da serie predita pelo modelo

NARMA (em vermelho) e da serie reconstruıda apenas com a decomposicao (em

marrom)

60

Page 75: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

0 500 1000 1500 2000 2500Absolute Value of Truth

0

200

400

600

800

1000

1200

1400Ab

solute Value

of E

rror

Scatter Plot: Truth x Error

Figura 5.30: Scatter plot do valor absoluto do erro versus valor absoluto do alvo

palavras, este grafico confirma a dificuldade que o modelo tem de prever os valores

muito altos.

O grafico de dispersao entre a serie residual esperada (no eixo das abscissas) e a

serie residual predita pelo modelo NARMA (no eixo das ordenadas) esta ilustrado na

Figura 5.31. Ao realizar uma regressao linear neste grafico, o coeficiente angular da

reta resultante foi 0,690 e a interceptacao com o eixo das ordenadas foi em 0,008. A

aparencia do grafico e estes valores da reta indicam que a predicao da serie residual

e o valor esperado sao altamente correlacionados e que a RNA foi capaz de prever o

valor desejado.

Na Figura 5.32 esta representado o grafico de dispersao da serie reconstruıda pre-

dita pelo modelo NARMA e o valor esperado da serie original, no eixo das ordenadas

e no eixo das abscissas, respectivamente. A regressao linear neste grafico resultou

em uma reta com coeficiente angular 0,785 e interceptacao com o eixo das ordenadas

em 150,123. Mais uma vez, nota-se que para os valores esperados grandes (maiores

que 1500), o valor da predicao apresenta um erro maior.

61

Page 76: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

−1.00 −0.75 −0.50 −0.25 0.00 0.25 0.50 0.75 1.00Target

−0.75

−0.50

−0.25

0.00

0.25

0.50

0.75

1.00

NN Outpu

tScatter Plot: Target x NN Output

Figura 5.31: Scatter plot do alvo residual versus saıda residual da RNA

0 500 1000 1500 2000 2500Truth

0

500

1000

1500

2000

Pred

iction

Scatter Plot: Truth x Reconstructed NN Output

Figura 5.32: Scatter plot do alvo completo versus saıda reconstruıda da RNA

62

Page 77: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

Figura 5.33: Scatter plots do alvo completo versus saıda reconstruıda da RNA (ver-

melho) e alvo completo versus saıda reconstruıda pela decomposicao (marrom)

Para fins comparativos, na Figura 5.33 esta representado o grafico exposto na

Figura 5.32 (agora, em vermelho), juntamente com o grafico de dispersao da serie

reconstruıda apenas com a decomposicao e a serie original (em marrom). E possıvel

observar que ambas as formas de predicao apresentam um grafico de dispersao si-

milar. O coeficiente angular da reta marrom e 0,795, com interceptacao no eixo das

ordenadas em 145,612, indicando uma forte similaridade com a reta vermelha, cujos

coeficientes ja foram apresentados no paragrafo anterior.

5.6 Conjunto de Validacao (Out-of-Sample)

Para comprovar a capacidade de generalizacao do modelo, alem de realizar o pro-

cesso de validacao cruzada, foi separada a ultima semana do conjunto de dados para

realizar a validacao do modelo. A Figura 5.34 apresenta o grafico comparativo entre

o alvo residual (em azul) e a serie predita pelo modelo NARMA (em vermelho), am-

bos desnormalizados. Ja na Figura 5.35, esta representada a serie original completa

63

Page 78: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

Jul 17 Jul 1723 24 25 26 27 28 29 30

Data

−500

−250

0

250

500

750

1000Co

unt T

ran

actio

n

Re idual Serie TargetOutput of Neural Network

Figura 5.34: Saıda residual da RNA, para o conjunto de validacao, comparada ao

alvo

Jul 17 Jul 1723 24 25 26 27 28 29 30

Date

0

500

1000

1500

2000

Coun

t Tra

nsac

tions

TargetReconstructed Output of Neural Network

Figura 5.35: Saıda da RNA reconstruıda, para o conjunto de validacao, comparada

ao alvo

(em azul), e a serie predita pelo modelo NARMA acrescida da tendencia e da sazo-

nalidade diaria (em vermelho). E interessante ressaltar que o modelo demonstra sua

capacidade de generalizacao com um RMSE de 144,438 para a serie ja reconstruıda.

Outro fato interessante e que o RMSE para valores esperados maiores que 1500 e

igual a 594,182, enquanto que para valores menores que 1500, o RMSE e de 123,831.

Estes valores indicam que sao realmente estes picos maiores que 1500 que aumentam

o RMSE. Ademais, a acuracia de comportamento foi de 76,75%.

5.7 Divergencia KL

Na Figura 5.36, e possıvel observar a divergencia KL para o conjunto de validacao

do modelo NARMA. Em azul esta representada a distribuicao da serie esperada, em

vermelho esta a distribuicao da serie predita pelo modelo NARMA. Os valores de

64

Page 79: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

Figura 5.36: Divergencia KL do modelo NARMA para o conjunto de validacao

divergencia KL, por bin, estao representados em preto e verde, correspondendo a

divergencia KL da predicao para o alvo e do alvo para a predicao, respectivamente.

No geral, os valores de divergencia sao baixos, vide a escala do grafico. Porem,

a respeito da divergencia a partir da saıda para o alvo, e possıvel notar um pico

significante em torno de zero e outro entre 500 e 1000 transacoes. Ja a divergencia

a partir do alvo para a predicao (em verde) apresenta um pico na regiao de 1000

transacoes.

Ja na Figura 5.37, esta representado o grafico que contem a divergencia KL entre a

predicao pela decomposicao e o valor esperado, ambos para o conjunto de validacao.

O esquema de cores segue a mesma representacao do esquema da Figura 5.36, porem

com a distribuicao em vermelho sendo correspondente a serie reconstruıda com a

decomposicao. Tambem e possıvel observar que os valores da divergencia sao baixos,

no geral. Ha um pico entre 500 e 1000 no valor da divergencia KL da predicao para

o alvo. Vale ressaltar tambem que o pico proximo a zero apresenta-se maior do que

o da Figura 5.36. Alem disso, nota-se dois picos: um entre zero e 500 transacoes

e outro na regiao em torno de 1000 transacoes, para o valor da divergencia KL do

65

Page 80: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

Figura 5.37: Divergencia KL da decomposicao para o conjunto de validacao

alvo para a predicao.

Na Tabela 5.1 estao os valores totais da divergencia KL para os 4 casos mos-

trados nos graficos anteriores. Conclui-se que, por esta metrica, as duas maneiras

de predicao apresentam um desempenho similar, com a maior discrepancia relativa

sendo proxima de 5%. Isto significa que ambas sao capazes de gerar uma distribuicao

que pouco diverge da distribuicao da serie que se deseja obter.

Divergencia KL

Da predicao para o alvo Do alvo para a predicao

Modelo

NARMA

0,0204 0,0215

Apenas decom-

posicao

0,0205 0,0205

Tabela 5.1: Tabela comparativa dos valores de divergencia KL

66

Page 81: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

5.8 Comparacao dos Resultados

Na Tabela 5.2, encontra-se um sumario dos valores de RMSE para os conjuntos

de teste e validacao. O menor RMSE de teste foi alcancado pela tecnica que uti-

liza somente decomposicao de serie temporais, seguido do modelo NARMA, com

saıda reconstruıda nao negativa, com uma discrepancia relativa de 6,7% entre os

resultados. O conjunto de validacao apresenta um RMSE relativamente baixo, de-

vido a menor ocorrencia de momentos com muitas transacoes (maior do que 1500

transacoes), no perıodo de validacao.

RMSE

Serie residual (teste) 0,211

Saıda da RNA reconstruıda

(teste)

226,498

Saıda da RNA reconstruıda nao

negativa (teste)

225,848

Somente Decomposicao (teste) 211,646

Saıda da RNA reconstruıda (va-

lidacao)

144,438

Tabela 5.2: Tabela comparativa dos valores de RMSE

67

Page 82: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

Capıtulo 6

Conclusoes

Neste projeto de graduacao, foi implementado um modelo que combinou a decom-

posicao de series temporais com a nao linearidade do modelo NARMA para realizar

previsoes de uma serie temporal referente ao perfil transacional de um lojista. Para

comparar os resultados, foi realizada uma previsao utilizando a decomposicao de

series temporais, sem a combinacao do modelo NARMA, isto e, somente as estima-

tivas de tendencia e sazonalidade.

Foi possıvel constatar que o treinamento da RNA foi realizado corretamente e

apresenta resultados pertinentes, com boa aproximacao da serie residual esperada.

Ao reconstruir o resultado da predicao da serie residual, isto e, adicionar a tendencia

e sazonalidade estimadas, houve uma diminuicao na acuracia de comportamento.

Porem, ainda assim nota-se que a previsao apresenta bons resultados e acompa-

nha o formato da serie temporal original. Vale ressaltar que, ao tornar a saıda da

serie reconstruıda nao negativa, a melhora nas metricas foi muito pequena, porem

introduziu-se um sentido real para a predicao.

Ao comparar os resultados do modelo NARMA com a previsao utilizando-se ape-

nas a decomposicao de series temporais, nota-se que a decomposicao apresenta um

RMSE menor do que o modelo NARMA, com uma discrepancia relativa de ape-

nas 6,7%. Fica claro que a decomposicao tambem apresenta uma boa acuracia de

comportamento, 11,7% acima da acuracia de comportamento para a previsao nao

negativa do modelo NARMA. Ademais, os resultados da divergencia KL para as

duas previsoes se mostraram similares, indicando que ambas as tecnicas reconstroem

68

Page 83: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

satisfatoriamente a distribuicao da serie original.

Uma explicacao para os resultados do modelo NARMA nao representarem uma

melhora na predicao da serie temporal pode estar relacionada ao fato da RNA uti-

lizada nao ter nocao de temporalidade entre as previsoes obtidas. Os resultados in-

dicam, tambem, que talvez este modelo nao apresente complexidade suficiente para

prever a proxima amostra da serie residual, com apenas a informacao transacional

dos ultimos 105 minutos (tempo correspondente a amostra atual e mais 6 amostra-

das passadas), de maneira mais precisa. Este problema apresenta uma relacao nao

linear e claramente complicada com o tempo. Isto pode indicar a necessidade de

utilizar outras variaveis adicionais para melhorar a previsao.

Para trabalhos futuros, sugere-se testar modelos que tenham esta nocao de tempo-

ralidade, como e o caso de um modelo RNN (do ingles, Recurrent Neural Network),

construıdo com LSTM (do ingles, Long Short-Term Memory). Outra possibilidade

seria compor diferentes modelos para os diversos valores da serie original, para ten-

tar lidar com a dificuldade de previsao para picos muito grandes e pouco frequen-

tes. Alem disso, introduzir novas variaveis externas como, por exemplo, ındices

economicos e existencia de feriados, tambem pode enriquecer e aprimorar a pre-

visao.

69

Page 84: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

Referencias Bibliograficas

[1] WATSON, P., Ideas: A History of Thought and Invention, from Fire to Freud.

Harper Perennial, 2006.

[2] GAUSS, M., The Gift: The Form and Reason for Exchange in Archaic Societies.

Routledge, 1990.

[3] GRAEBER, D., Debt: The First 5000 Years. Melville House Publishing, 2011.

[4] KRAMER, S. N., History Begins at Sumer: Thirty-Nine Firsts in Recorded

History. University of Pennsylvania Press, 1988.

[5] JEVONS, W. S., Money and the Mechanism of Exchange. New York: D. Ap-

pleton and Co., 1875.

[6] O’SULLIVAN, A., SHEFFRIN, S. M., Economics: Principles in Action. Pren-

tice Hall, 2003.

[7] “Credit Card”, https://en.wikipedia.org/wiki/Credit card, Acessado em 20 de

Janeiro de 2018.

[8] World Payments Report 2017, Report, Capgemini e BNP Paribas, 2017.

[9] “Estatısticas de Pagamentos de Varejo e de Cartoes no Brasil”,

https://www.bcb.gov.br/?SPBADENDOS, 2017, Banco Central.

[10] BERNERS-LEE, T., Weaving the Web: The Original Design and Ultimate

Destiny of the World Wide. Harper, 1999.

[11] “Attention Shoppers: Internet Is Open”,

http://www.nytimes.com/1994/08/12/business/attention-shoppers-internet-

is-open.html, Acessado em 23 de Fevereiro de 2018.

70

Page 85: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

[12] 89% dos internautas fizeram compras online no ultimo ano, aponta estudo do

SPC Brasil e CNDL, Report, SPC Brasil, CNDL e Meu Bolso Feliz, 2017.

[13] OLIVEIRA, F., “Adquirente, Operadora, Bandeira, Facilitadores. . . Quem

faz o que?”, http://www.concil.com.br/blog/conciliacaodecartao/adquirente-

operadora-bandeira-facilitadores/, 2016, Acessado em 23 de Janeiro de 2018.

[14] CHARGEBACKS911, “Difference Between ‘Acquiring Bank’ and ‘Issuing

Bank”’, https://chargebacks911.com/knowledge-base/difference-between-

acquiring-bank-and-issuing-bank/, Acessado em 20 de Janeiro de 2018.

[15] BOX, G. E. P., JENKINS, G. M., Time Series Analysis, Forecasting and Con-

trol. San Francisco : Holden-Day, 1976.

[16] GODFREY, L. B., GASHLER, M. S., “Neural Decomposition of Time-Series

Data”. In: 2017 IEEE International Conference on Systems, Man, and Cyber-

netics (SMC), pp. 2796–2801, Banff, Canada, 2017.

[17] ZOMAYA, A., ANDERSON, J., FOGEL, D., et al., “Nonconventional compu-

ting paradigms in the new millennium: a roundtable”, Computing in Science

& Engineering, v. 3, pp. 82–99, 2001.

[18] ZHANG, G., “Time series forecasting using a hybrid ARIMA and neural

network model”, Neurocomputing, v. 50, pp. 159 – 175, 2003.

[19] SUN, X., LIU, Y., CHAI, Y., et al., “A method for online retail sales estimation

based on semantic features of web pages”. In: Proceedings of the 2014 IEEE

18th International Conference on Computer Supported Cooperative Work in

Design (CSCWD), pp. 236–241, Maio 2014.

[20] KANEKO, Y., YADA, K., “A Deep Learning Approach for the Prediction of

Retail Store Sales”. In: 2016 IEEE 16th International Conference on Data

Mining Workshops (ICDMW), pp. 531–537, Dec 2016.

[21] MERINO, M., RAMIREZ-NAFARRATE, A., “Estimation of retail sales under

competitive location in Mexico”, Journal of Business Research, v. 69, n. 2,

pp. 445 – 451, 2016.

71

Page 86: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

[22] WEI, D., GENG, P., YING, L., et al., “A prediction study on e-commerce

sales based on structure time series model and web search data”. In: The 26th

Chinese Control and Decision Conference (2014 CCDC), pp. 5346–5351, Maio

2014.

[23] NUNNARI, G., NUNNARI, V., “Forecasting Monthly Sales Retail Time Series:

A Case Study”. In: 2017 IEEE 19th Conference on Business Informatics (CBI),

v. 01, pp. 1–6, Julho 2017.

[24] CHATFIELD, C., The Analysis of Time Series: An Introduction. 6th ed. Chap-

man and Hall/CRC, 2003.

[25] TAK, Y.-S., “A Leaf Image Retrieval Scheme Based on Partial Dynamic Time

Warping and Two-Level Filtering”. In: 7th IEEE International Conference on

Computer and Information Technology, pp. 633–638, Fukushima, Japan, 2007.

[26] RATH, T. M., KANE, S., LEHMAN, A., et al., Indexing for a Digital Library

of George Washington’s Manuscripts: A Study of Word Matching Techniques,

Report, University of Massachusetts, 2002.

[27] CALOBA, L. P., Introducao ao Uso de Redes Neurais na Modelagem de Siste-

mas Dinamicos e Series Temporais. Natal, Livro de Minicursos do XIV Con-

gresso Brasileiro de Automatica, 2002.

[28] OPPENHEIM, A. V., SCHAFER, R. W., BUCK, J. R., Discrete-Time Signal

Processing. 2 ed. Prentice Hall, 1999.

[29] “International airline passengers: monthly totals in thousands. Jan 49 – Dec

60”, https://datamarket.com/data/set/22u3/international-airline-passengers-

monthly-totals-in-thousands-jan-49-dec-60#!ds=22u3&display=line, Acessado

em 16 de Marco de 2018.

[30] CHATFIELD, C., Time-Series Forecasting. Chapman and Hall/CRC, 2000.

[31] MORETTIN, P. A., TOLOI, C. M. C., Analise de Series Temporais. Sao Paulo,

Edgard Blucher, 2004.

72

Page 87: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

[32] POMMERANZENBAUM, I. R., Redes Neurais Artificiais na Predicao das

Principais Series do Indice Ibovespa e suas Aplicacoes em Sistemas Automati-

zados de Negociacao. Dissertacao de M.Sc., COPPE/UFRJ, Marco 2014.

[33] MCCULLOCH, W. S., PITTS, W., A Logical Calculus of Ideas Immanent in

Nervous Activity. 115–133, Bulletin of Mathematical Biophysics, 1943.

[34] HAYKIN, S., Neural Networks, A Comprehensive Foundation. Prentice Hall,

1999.

[35] HEBB, D., The Organization of Behavior: A Neuropsychological Theory. John

Wiley & Sons, Inc., 1949.

[36] ROSENBLATT, F., “The Perceptron: A Probabilistic Model For Information

Storage And Organization In The Brain”, Psychological Review, v. 65, n. 6,

pp. 386–408, 1958.

[37] BISHOP, C. M., Pattern Recognition and Machine Learning. Springer, 2006.

[38] MINSKY, M., PAPERT, S., Perceptrons: An Introduction to Computational

Geometry. M.I.T. Press, 1969.

[39] CSAJI, B. C., Approximation with Artificial Neural Networks. Dissertacao de

M.Sc., Faculty of Sciences, Eotvos Lorand University, 2001.

[40] ZHANG, G., PATUWO, B. E., HU, M. Y., “Forecasting with artificial neural

networks: The state of the art”, International Journal of Forecasting, v. 14,

pp. 35–62, 1998.

[41] GRUBBS, F. E., “Procedures for Detecting Outlying Observations in Samples”,

Technometrics, v. 11, n. 1, pp. 1–21, 1969.

[42] WALD, A., Statistical Decision Functions. Wiley, 1950.

[43] GERSHENFELD, N., The Nature of Mathematical Modeling. Cambridge, Cam-

bridge University Press, 1999.

[44] CONNOR, J. T., ATLAS, L. E., MARTIN, D. R., “Recurrent Networks and

NARMA Modeling”. In: NIPS, 1991.

73

Page 88: ESTIMATIVA DE PERFIL DE CONSUMO UTILIZANDO MODELOS …monografias.poli.ufrj.br/monografias/monopoli10026324.pdf · anos de inicia˘c~ao cient ca e compartilharam conhecimento com

[45] MANONMANI, A., THYAGARAJAN, T., SUTHA, S., “ANN based modeling

and control of GHS for winter climate”. In: 2017 Trends in Industrial Measu-

rement and Automation (TIMA), pp. 1–7, Jan 2017.

[46] TRAJANOSKI, Z., WACH, P., GRUBER, R., et al., “NARMA modeling of

subcutaneous tissue glucose time-series using neural networks”. In: Proceedings

of the 15th Annual International Conference of the IEEE Engineering in Me-

dicine and Biology Societ, pp. 538–539, 1993.

[47] ZHAO, Q., YIN, H., CHEN, X., et al., “Performance optimization of the echo

state network for time series prediction and spoken digit recognition”. In: 2015

11th International Conference on Natural Computation (ICNC), pp. 502–506,

Aug 2015.

[48] CHANG, W. R., FERNANDEZ, B., “Improved CNC machining using NARMA

neural systems”. In: IEEE International Conference on Neural Networks, pp.

1865–1870 vol.3, 1993.

[49] “Keras: The Python Deep Learning library”, https://keras.io, acessado em 12

de marco de 2018.

[50] “scikit-learn: Machine Learning in Python”, http://scikit-learn.org, acessado

em 12 de marco de 2018.

[51] “StatsModel: Statistics in Python”, http://www.statsmodels.org, acessado em

22 de marco de 2018.

[52] “SciPy”, https://www.scipy.org, acessado em 22 de marco de 2018.

[53] KOHAVI, R., “A Study of Cross-validation and Bootstrap for Accuracy Esti-

mation and Model Selection”. In: Proceedings of the 14th International Joint

Conference on Artificial Intelligence - Volume 2, pp. 1137–1143, San Francisco,

CA, USA, 1995.

[54] KULLBACK, S., LEIBLER, R. A., “On Information and Sufficiency”, Ann.

Math. Statist., v. 22, n. 1, pp. 79–86, 03 1951.

74