TimeSeries (1)

55
Mineração e Previsão de Séries Temporais Tiago Alessandro Espínola Ferreira [email protected] Recife – 2 o Semestre de 2001

description

LL

Transcript of TimeSeries (1)

Page 1: TimeSeries (1)

Mineração e Previsão de Séries Temporais

Tiago Alessandro Espínola [email protected]

Recife – 2o Semestre de 2001

Page 2: TimeSeries (1)

Sumário

Introdução Séries Temporais Modelos Automáticos Modelos de Box & Jenkins - ARIMA Aplicações do Modelo ARIMA Conclusões

Page 3: TimeSeries (1)

Introdução

“Previsão é um elemento chave na tomada de decisão”

Sistema de Previsão

Planejamento de Produção

Planejamento Financeiro

Gerenciamento de Estoque

Escalonamento de Pessoal

Planejamento de Oportunidades

Controle de Processo

Page 4: TimeSeries (1)

Previsão

PrevisãoPredição de eventos futuros, com o intuito de diminuição de risco na tomada de decisão.

Erro

Ponto Ótimo!

Custo da Previsão

Custo Total

Perdas Devido a IncertezaCusto Vs Benefício

Page 5: TimeSeries (1)

Decisão

Baseando-se em sistemas de Previsão:

+=Decisão Previsão Erro

Page 6: TimeSeries (1)

Algumas Definições

Período da Previsão Unidade básica de tempo na previsão.

Horizonte da Previsão No. de períodos cobertos.

Intervalo de Previsão Freqüência de atualização

Poderíamos requerer uma previsão para as próximas dez semanas, com uma análise semanal, assim o horizonte seria dez semanas e o período de uma semana

Page 7: TimeSeries (1)

Séries temporais

Uma série temporal é uma seqüência de observações sobre uma variável de interesse. A variável é observada em pontos temporais discretos, usualmente eqüidistantes, e a análise de tal comportamento temporal envolve a descrição do processo ou fenômeno que gera a seqüência.

Page 8: TimeSeries (1)

Padrões de Séries Temporais

Processamentos que permanecem constantes sobre um certo nível todo o tempo, com variações de período a período devido a causas aleatórias.

Padrões que ilustram tendências no nível dos processos, de maneira que a variação de um período ao outro é atribuída a uma tendência mais uma variação aleatória.

Processos que variam ciclicamente no tempo, como em processos sazonais (exemplo: o clima).

Page 9: TimeSeries (1)

Modelos de Previsão de Séries Temporais

Os procedimentos de previsão de séries temporais podem ser divididos, grosseiramente, em duas categorias:

 a) Automáticos, que são aplicados diretamente, com a estilização de programas simples de computador;

b) Não-Automáticos, que exigem a intervenção de pessoal especializado, para serem aplicados

Page 10: TimeSeries (1)

Modelos Automáticos

Previsão de Séries Localmente Constantes

NtaZ ttt ,,1,

t é o nível da série

At é um ruído branco

0

0,1

0,2

0,3

0,4

0,5

0,6

0,7

0,8

0,9

1

0 10 20 30 40 50 60 70 80 90 100

Page 11: TimeSeries (1)

Médias Móveis Simples (MMS)

r

ZZZM rttt

t11

Cálculo da média aritmética

das r últimas observações

Previsão

tt MhZ

Principal Vantagem:

Simples Utilização

Principal desvantagem:

Determinação de r

Page 12: TimeSeries (1)

Exemplo de MMS

1 1095,10        2 1067,10        3 1364,30 1081,10      4 1510,90 1215,70 1175,50    5 1260,20 1437,60 1314,10 1259,35  6 1229,50 1385,55 1378,47 1300,63 1259,527 1205,60 1244,85 1333,53 1341,23 1286,408 1237,60 1217,55 1231,77 1301,55 1314,109 1414,60 1221,60 1224,23 1233,23 1288,76

10 1299,30 1326,10 1285,93 1271,83 1269,5011 1420,60 1356,95 1317,17 1289,28 1277,3212 1360,30 1359,95 1378,17 1343,03 1315,5413 1304,40 1390,45 1360,07 1373,70 1346,4814 1213,20 1332,35 1361,77 1346,15 1359,8415 1360,60 1258,80 1292,63 1324,63 1319,5616 1587,60 1286,90 1292,73 1309,63 1331,8217 1431,60 1474,10 1387,13 1366,45 1365,2218 1267,50 1509,60 1459,93 1398,25 1379,4819 1429,00 1349,55 1428,90 1411,83 1372,1020 1517,00 1348,25 1376,03 1428,93 1415,2621 1506,50 1473,00 1404,50 1411,28 1446,5422 1627,30 1511,75 1484,17 1430,00 1430,3223 1650,50 1566,90 1550,27 1519,95 1469,4624 1606,00 1638,90 1594,77 1575,33 1546,06

Período Valor real de Zt

EQM   24091,94 19869,50 13763,68 14534,43

121rtZ 13

1rtZ 14

1rtZ 15

1rtZ

Page 13: TimeSeries (1)

Previsão de consumo de energia

1000

1200

1400

1600

1800

2000

2200

2400

1 2 3 4 5 6

Observações Futuras

Valoer Real

Previsão

25 1696,40 1597,57

26 1767,50 1645,05

27 1554,80 1680,10

28 1727,50 1656,17

29 2231,80 1686,55

Período

Valor real de Zt Previsão

30 2111,70 1800,40

Exemplo de MMS

Page 14: TimeSeries (1)

Alisamento Exponencial Simples (AES)

Previsão

Principal Vantagem:

Fácil Entendimento

Principal desvantagem:

Determinação de

NtZZZZZ ttt ,,1,1 101

Com 0 < <1, constante de alisamento

,3,2,1 hZhZ tt

Page 15: TimeSeries (1)

Exemplo do AES

0

200

400

600

800

1000

1200

0 20 40 60 80 100 120 140

Preços Médio da Saca de Feijão

Page 16: TimeSeries (1)

Exemplo do AES

Previsão de preços para a saca de feijão

0,00

500,00

1000,00

1500,00

2000,00

2500,00

3000,00

3500,00

4000,00

4500,00

5000,00

1 2 3 4 5 6 7 8 9 10 11 12

Observações Futuras

Valor Real

Previsão

121 1228,90 944,70

122 1316,90 1226,06

123 1735,20 1315,99

124 1978,20 1731,01

125 2116,30 1975,73

126 2191,80 2114,89

127 2436,10 2191,03

128 2946,40 2433,65

129 3002,10 2941,27

130 4708,20 3001,49

131 4500,80 4691,13

Período Valor real de Zt Previsão

132 4262,40 4502,70

Page 17: TimeSeries (1)

Modelos Automáticos

Previsão de Séries com Tendência

NtaTZ ttt ,,11

-0,05

0

0,05

0,1

0,15

0,2

0,25

0,3

0 20 40 60 80 100 120

t é o nível da série

T1 é a tendência (linear em t)

At é um ruído branco

Page 18: TimeSeries (1)

Alisamento Exponencial Linaer de Brown

111 ,1 ZZZZZ ttt

Previsão hbahZ ttt ,2,1

ttt ZZa 2,1

ttt ZZb

1,2

onde

Page 19: TimeSeries (1)

Exemplo do AELB

0

200

400

600

800

1000

1200

1400

1600

0 20 40 60 80 100 120 140

Série do ICV - São Paulo de 1970 a 1980

Page 20: TimeSeries (1)

Exemplo do AELB

Previsão para ICV

400

420

440

460

480

500

520

540

560

1 2 3 4 5 6

Observações Futuras

Valor Observado

Previsão

Page 21: TimeSeries (1)

Modelos Automáticos

Previsão de Séries Sazonais

NtaTFZ ttttt ,,1 ,

ttttt aFTZ

Sazonalidade Multiplicativa

Sazonalidade Aditiva

Gera-se três equações de alisamento, uma para a sazonalidade, uma para a tendência e outra para a série

Este método é chamado de Alisamento Exponencial Sazonal de Holt-Winters

Page 22: TimeSeries (1)

Método HW Multiplicativo

Forma Multiplicativa:

NstDFDZ

ZDF st

t

tt ,,1 ,10 ,1

NstATZAF

ZAZ tt

st

tt ,,1 ,10 1 11

NstCTCZZCT tttt ,,1 ,10 ,1 11

Equações de Alisamento:

Equação de Previsão:

shFThZhZ shtttt ,,2,1 ,

Page 23: TimeSeries (1)

Exemplo do HW Multiplicativo

0

5000

10000

15000

20000

25000

0 20 40 60 80 100 120 140 160

Índice do Produto Industrial do Brasil – 1969 até 1980

Page 24: TimeSeries (1)

Exemplo do HW Multiplicativo

Previsão para IPI

15000

16000

17000

18000

19000

20000

21000

22000

23000

1 2 3 4 5 6 7 8 9 10 11 12

Observações Futuras

Valo

r do

IPV Valor Real

Previsão

tZ 139,,128 ,11

tZ t

128 21614,00 21418,04

129 19717,00 20787,00

130 22133,00 21540,37

131 20503,00 20480,11

132 18800,00 19715,21

133 19577,00 18921,75

134 18992,00 18276,10

135 21022,00 20676,11

136 19064,00 20034,13

137 21067,00 20861,99

138 21553,00 21133,07

PeríodoT

Valor Real Previsão

139 21513,00 21919,51

Page 25: TimeSeries (1)

Filtragem Adaptativa

Esta é uma técnica baseada em uma média ponderada da observações passadas da séries temporal

t

ktiktii PZZ

1

1

São ponderados os k períodos mais recentes porque:        São considerados os mais relevantes; Se considerarmos todos os t valores da série temporal, seria necessário t pesos, que poderiam ser determinados de modo a obter exatamente o termo de ordem (t + 1), o que não é desejável porque estaríamos fazendo com que eles se adaptassem não só ao padrão de comportamento da série, mas também à componente aleatória.

Page 26: TimeSeries (1)

Pesos Iniciais

A determinação dos pesos inicias pode ser feita de duas maeiras:

•Método de Makridaski

•Método Silva

Page 27: TimeSeries (1)

Método Makridakis

Primeiramente são especificados valores iniciais todos iguais a 1,0, isto é, Pi = 1,0, i = 1, ... k. A seguir é

calculada a previsão para Zt+1, , utilizando-se a equação de

previsão, que é comparada com o valor observado Zt+1 e

sendo calculado o erro de previsão. Os pesos são então ajustados de modo a reduzir o erro na próxima previsão. Este processo é repetido até que se encontre o melhor conjunto de pesos.

Page 28: TimeSeries (1)

Método Silva

Neste método quer minimizar o erro:

kN

iiES

1

2

1

111 1ˆ

ki

jjijkikikii ZPZZZEonde

O problema resume-se a resolver o sistema:

kikikkiikiiki

kiikkiiiii

kiikkiiiii

ZZPZPZZPZZ

ZZPZZPZPZZ

ZZPZZPZZPZ

12

121111

11122

111

12112

Page 29: TimeSeries (1)

Atualização dos Pesos

Depois de se gerar os pesos iniciais, este método de Filtragem adaptativa pode passar a atualiza os pesos dinamicamente, segundo a expressão:

2

ikt

ikttii

Z

ZePP

Onde 10

Page 30: TimeSeries (1)

Exemplo do Método de Filtragem Adaptativa - Makridakis

Série de Preços Médios Mensais de Ovos

0

100

200

300

400

500

600

700

800

Observação (t)

Page 31: TimeSeries (1)

Exemplo do Método de Filtragem Adaptativa - Makridakis

Para = 0,36 – Calculado tal que minimize os erros

t123

4567

891011

4839,00711,00032,01142,0

0097,00635,00531,00532,0

0203,00917,02205,03923,01

ZZZZ

ZZZZ

ZZZZZ

ttt

tttt

ttttt

Page 32: TimeSeries (1)

Exemplo do Método de Filtragem Adaptativa - Makridakis

Previsão da Série de Preços Médios Mensais de Ovos - Makridakis

0

100

200

300

400

500

600

700

800

1 2 3 4 5 6 7 8 9 10 11 12

Observações (t)

Valor Real

Previsão (Sem Atualização)

Previsão (com atualização)

0,1ˆ1 tZ 36,0,1ˆ

1 tZ131 432,90 388,35 388,35

132 455,10 413,58 430,32

133 432,30 437,16 463,91

134 465,30 452,81 468,66

135 620,07 494,06 509,22

136 677,80 573,66 632,32

137 633,60 577,62 657,48

138 539,70 564,07 639,28

139 613,50 562,68 603,65

140 653,40 625,21 671,80

141 635,70 629,12 670,53

PeríodoT

Valor RealZt

Previsão Previsão

142 715,50 618,08 648,08

Page 33: TimeSeries (1)

Modelos de Box & Jenkins

Box & Jenkins propuseram um método iterativo para a identificação do modelo de uma série temporal – Modelo ARIMA.

Este método envolve investigações sobre os dados da série, sem a necessidade de se ter informações prévias sobre a série

Este é um procedimento muito poderoso, porém necessita de um conhecimento muito apurado

Page 34: TimeSeries (1)

Modelos De Box & Jenkins

Modelo é satisfatório?

Escolhe um ou mais modelos candidatos ARIMA

Estima os parâmetros dos modelos escolhidos

Checagem dos modelos quando à adequação

PrevisãoSim Não

Estagio 1: Identificação

Estágio 2: Estimação

Estágio 3: Verificação

Page 35: TimeSeries (1)

Modelos Auto-Regressivos – AR(p)

tt aZB ~O modelo AR(p) pode ser escrito por:

Onde (B) é o operador Auto-Regressivo: (B) = 1-1B - 2B2 - ... - pB

p

E B é o operador translação para o passado: mttm

tt ZZBZBZ 1

Pode-se mostrar que a Função de Auto-Correlação para um modelo AR(p) é: pjpjjj 2211

Page 36: TimeSeries (1)

FAC – AR(p)

Podemos provar que a fac pode ser escrita de forma geral:

jpp

jjj GAGAGA 2211

Onde para que o modelo convirja temos que |Gi| < 1, logo.

1. Se Gi for real, o termo AiGij decai geometricamente para

zero (amortecimento exponencial);

2. Um par de raízes complexas conjugadas contribui com um termo da forma AdjSen(2fj+F) (senoide amortecida), onde f é uma freqüência, F é uma fase, e o termo Adj é a amplitude que decresce com o incremento de j, uma vez que |d|<1.

Page 37: TimeSeries (1)

FAC – AR(p)

Função De Auto-Correlação

0

0,2

0,4

0,6

0,8

1

1 3 5 7 9 11 13 15 17 19

j

Função de Auto-Correlação

-1

-0,5

0

0,5

1

1 3 5 7 9 11 13 15 17 19

j

Page 38: TimeSeries (1)

Modelo de Médias Móveis – MA(q)

O modelo MA(q) pode ser escrito por: ttq

q aBaBBBZ 2211

~

qq BBBB 2

211Onde (B) é o Operador Médias Móveis:

qj

qjq

jqqjjj

j

,0

,,1,1 22

1

2211

Pode-se mostrar que a Função de Auto-Correlação para um modelo MA(q) é:

Vemos que a fac para um MA(q) é finita de extensão q.

Page 39: TimeSeries (1)

FAC – MA(1)

Para um modelo MA(1), q = 1, e supondo que = -0,8 (para o modelo ser estável, | | < 1):

Funçõa de Auto-Correlação

-1

-0,8

-0,6

-0,4

-0,2

0

0,2

0,4

0,6

0,8

1

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

j

Page 40: TimeSeries (1)

Modelos Mistos – ARMA(p,q)

O modelo ARMA(p,q) pode ser escrito por:

qtqttptptt aaaZZZ 1111

~~~ tt aBZB ~ou

Pode-se mostrar que a Função de Auto-Correlação para um modelo ARMA(p,q) é:

qjjj zaqzaapjpjjj 112211

Mas que para j > q: qjpjpjjj ,2211

jttza ZaEj ~onde

do que se deduz que as Auto-Correlações de “lags” 1, 2, ..., q serão afetadas pelos parâmetros de médias móveis, mas para j > q as mesmas comportam-se como no modelos auto-regressivos.

Page 41: TimeSeries (1)

FAC – ARMA(1, 1)

Para um Modelo ARMA(1, 1), pode-se mostrar que:

221

22

2

0

1

1

1

21

a

a

1 jj E para j > q

Assim, se temos = 0,8 e = -0,3, o gráfico da fac será:

Função de Auto-Correlação

0,00

0,10

0,20

0,30

0,40

0,50

0,60

0,70

0,80

0,90

1,00

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

j

Page 42: TimeSeries (1)

FACP

Box & Jenkins proporam um segundo método de análise: A Função de

Auto-Correlação Parcial: kk

As facp podem ser calculadas a partir das eqs. de Yule-Walke:

kkk

k

k

kk

k

k

2

1

2

1

21

21

11

1

1

1

Page 43: TimeSeries (1)

FACP – AR, MA, ARMA

i. Um processo AR(p) tem facp kk 0 para k menor ou

igual a p, e kk = 0 para k maior que p;

ii. Um processo MA(q) tem facp que se comportam de maneira similar às fac de um processo AR(p): são dominadas por exponenciais e/ou senoides amortecidas;

iii. Um processo ARMA(p,q) tem facp que se comportam como a facp de um processo MA puro.

Page 44: TimeSeries (1)

FACP – AR, MA e ARMA

Fun çaõ de A ut o- C or r elação P ar c ial par a A R ( 1)

-1

-0, 8

-0, 6

-0, 4

-0, 2

0

0, 2

0, 4

0, 6

0, 8

1

1 2 3 4 5 6 7 8 9 10

j

Fun ção de A ut o- C or r elação P ar c ial par a M A ( 1)

-1

-0, 8

-0, 6

-0, 4

-0, 2

0

0, 2

0, 4

0, 6

0, 8

1

1 2 3 4 5 6 7 8 9 10

j

Fun ção de A ut o- C or r elação P ar c ial par a A R M A ( 1, 1)

-1

-0, 8

-0, 6

-0, 4

-0, 2

0

0, 2

0, 4

0, 6

0, 8

1

1 2 3 4 5 6 7 8 9 10

jAR(1) MA(1)

ARMA(1, 1)

Page 45: TimeSeries (1)

Modelos ARIMA

As séries que podem ser representados pelos modelos já vistos tem que ser estacionária. Assim um procedimento de torna-las estacionárias é tiramos diferenças:

ttttt ZZBZZW 11

td

t ZW Ou tirando d diferenças:

ttd aBZB ou

Que é o modelo ARIMA(p, q, d).

Page 46: TimeSeries (1)

Identificação

De forma geral, o modelo ARIMA é parcimonioso, logo em geral d = 0, 1 ou 2 é suficiente para obtermos a identificação dos modelos

Faz as diferenças Calcula-se as fac e facp para os dados Analisa-se As funções obtidas com as dos modelos vistos. Identifica-se um conjunto de possíveis modelos

Page 47: TimeSeries (1)

Estimação

Existem basicamente dois procedimentos de estimação:

1)Procedimento Condicional

2)Procedimento Não Condicional ou Incondicional

Todos dos métodos realizam a minimização da função de verossimilhança(condicional e não condiciona)

n

tt aWWnaaWWnS

1

**2*** ,,,,

n

tt aWWnaaWWnS

1

**2** ,,,,

Page 48: TimeSeries (1)

Exemplo de Estimação

Supondo Um Modelo ARIMA (0, 1,1)

Wt = Zt = (1-B) at

E suponha = 0,8 , termos At = Wt + 0,8 at-1

Assim, supondo o método condicional ,

9

1

9

1

210

2* 26,8018,008,08,0

t tttt aWaaS

Valores de S*

200

250

300

350

400

450

500

1 2 3 4 5 6 7 8 9 1 11

Teta

O menor valor de S* é para = -0,4

Page 49: TimeSeries (1)

Verivicação

Existem vários métodos de verificação, contudo exibiremos o método do Periodogram acumulado:

2

1

2

11 2sen2cos

2 n

tit

n

tita tfatfa

nfI

E o espectro aculumado é:

2

1,

2

10,2

0,0

2

2

0

f

ff

f

dggpfP

a

a

f

aa

E o periodograma Acumulado é uma estimativa do espectro acumulado:

2

1

a

j

iia

j n

fIfC

Page 50: TimeSeries (1)

Ruído Branco

RUÍDO BRANCO

0

0,1

0,2

0,3

0,4

0,5

0,6

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 2122 23 24 25 26 27 28 29 30 3132 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50

f j

Page 51: TimeSeries (1)

Aplicação do método ARIMA

Gráfico da Temperatura do Processo Químico

15

17

19

21

23

25

27

29

Tempo (minutos)

Page 52: TimeSeries (1)

FAC e FACP

Função de A uto- C or r el ação, d = 0

0

0, 1

0, 2

0, 3

0, 4

0, 5

0, 6

0, 7

0, 8

0, 9

1

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

Lag

Fun ção de A ut o- C or r elação, d = 1

0

0, 1

0, 2

0, 3

0, 4

0, 5

0, 6

0, 7

0, 8

0, 9

1

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

Lags

Fun ção de A ut o- cor r elação, d = 2

-1

-0, 8

-0, 6

-0, 4

-0, 2

0

0, 2

0, 4

0, 6

0, 8

1

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

Lags

Fun ção de A ut o- C or r elação P ar c ial, d = 0

-1

-0, 8

-0, 6

-0, 4

-0, 2

0

0, 2

0, 4

0, 6

0, 8

1

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

Lags

Fun ção de A ut o- C or r elação P ar c ial, d = 1

-1

-0, 8

-0, 6

-0, 4

-0, 2

0

0, 2

0, 4

0, 6

0, 8

1

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

LagsFun ção de A ut o- C or r elação P ar c ial, d = 2

-1

-0, 8

-0, 6

-0, 4

-0, 2

0

0, 2

0, 4

0, 6

0, 8

1

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

Lags

d=0

d=1

d=2

FAC FACP

Page 53: TimeSeries (1)

Estimativa

nS ,

ttt aZZ 1)04,0(82,0

212 )07,0(12,0,0)07,0(13,0 tttt aaaZ

226 0,018

Número de Observações

 Modelo Fitados

Variância Residual

226 0,019

Modelos escolhido: ARIMA (1, 1, 0) e ARIMA (0, 2, 2)

Page 54: TimeSeries (1)

Verificação

ARIMA(1, 1, 0)

ARIMA(0, 2, 2)

Page 55: TimeSeries (1)

Conclusões

Os modelos Automáticos são bem mais fáceis de serem utilizados, porem requer um conhecimento prévio sobre a série.

O Modelo ARIMA é bem mais preciso do que os modelos automáticos mencionados, porém requer mão de obrar super qualificada.