450 likes | 718 Views
EE-240/2009 Séries Temporais. Análise e Previsão de Séries Temporais. Exemplo: . t y ( t ) 0 .0000 0 .0000 1.0000 0.9580 2.0000 1.4540 3.0000 -1.2937 4.0000 -1.0410 5.0000 1.0711 6.0000 0.2001 7.0000 1.3900
E N D
EE-240/2009 Séries Temporais
Análise e Previsão de Séries Temporais
Exemplo: t y ( t ) 0.0000 0.0000 1.0000 0.9580 2.0000 1.4540 3.0000 -1.2937 4.0000 -1.0410 5.0000 1.0711 6.0000 0.2001 7.0000 1.3900 8.0000 1.6156 9.0000 1.6119 10.0000 2.2902 11.0000 1.7686 12.0000 2.3908 13.0000 0.0975 .... .... Série temporal: “Conjunto de valores de uma grandeza gerada seqüencialmente no tempo”
t y ( t ) 0.0000 0.0000 1.0000 0.9580 2.0000 1.4540 3.0000 -1.2937 4.0000 -1.0410 5.0000 1.0711 6.0000 0.2001 7.0000 1.3900 8.0000 1.6156 9.0000 1.6119 10.0000 2.2902 11.0000 1.7686 12.0000 2.3908 13.0000 0.0975 14.0000 1.3802 15.0000 1.3433 16.0000 -0.0041 17.0000 1.9573 18.0000 0.7435 19.0000 3.3151 20.0000 1.1949 21.0000 2.6287 22.0000 2.4193 23.0000 1.3781 24.0000 0.2293 25.0000 2.4408
t y ( t ) 0.0000 0.0000 1.0000 0.9580 2.0000 1.4540 3.0000 -1.2937 4.0000 -1.0410 5.0000 1.0711 6.0000 0.2001 7.0000 1.3900 8.0000 1.6156 9.0000 1.6119 10.0000 2.2902 11.0000 1.7686 12.0000 2.3908 13.0000 0.0975 14.0000 1.3802 15.0000 1.3433 16.0000 -0.0041 17.0000 1.9573 18.0000 0.7435 19.0000 3.3151 20.0000 1.1949 21.0000 2.6287 22.0000 2.4193 23.0000 1.3781 24.0000 0.2293 25.0000 2.4408
t y ( t ) 0.0000 0.0000 1.0000 0.9580 2.0000 1.4540 3.0000 -1.2937 4.0000 -1.0410 5.0000 1.0711 6.0000 0.2001 7.0000 1.3900 8.0000 1.6156 9.0000 1.6119 10.0000 2.2902 11.0000 1.7686 12.0000 2.3908 13.0000 0.0975 14.0000 1.3802 15.0000 1.3433 16.0000 -0.0041 17.0000 1.9573 18.0000 0.7435 19.0000 3.3151 20.0000 1.1949 21.0000 2.6287 22.0000 2.4193 23.0000 1.3781 24.0000 0.2293 25.0000 2.4408 Ajuste de uma função linear ( reta )
t y ( t ) 0.0000 0.0000 1.0000 0.9580 2.0000 1.4540 3.0000 -1.2937 4.0000 -1.0410 5.0000 1.0711 6.0000 0.2001 7.0000 1.3900 8.0000 1.6156 9.0000 1.6119 10.0000 2.2902 11.0000 1.7686 12.0000 2.3908 13.0000 0.0975 14.0000 1.3802 15.0000 1.3433 16.0000 -0.0041 17.0000 1.9573 18.0000 0.7435 19.0000 3.3151 20.0000 1.1949 21.0000 2.6287 22.0000 2.4193 23.0000 1.3781 24.0000 0.2293 25.0000 2.4408 ek Erros no Ajuste da Reta
Mínimos Quadrados Regressão Linear: yk = a tk + b Mínimos Quadrados: Obter valores a e b de modo que n n ( ) 2 2 å å = - - e y at b k k k = = k 1 k 1 seja mínimo. n ( ) ( ) å - - t y y t k k n 1 = k 1 å = ˆ a = t t n k n ( ) 2 å = k 1 - t t k n 1 = k 1 å = y y n k ˆ = - ˆ b y a t = k 1
Regressão Linear: %Supondo que os pares t(k) e y(k) estão disponíveis > uns = ones(size(x),1); > [coef,intervcoef,res,intervres,stat]=regress(y,[t uns],0.05) % 0.05 se refere (1 – 0.05) de nível de confiança % coef são os coeficientes angular e linear da reta % intervcoef são os intervalos de confiança dos coeficientes % res são os resíduos % intervres são os intervalos de confiança para os resíduos % stat contém os valores de R2, F e p
a [ 0.0117 0.1212 ] b [ -0.4155 1.1800 ] = 0.05 y(t) = 0.0665 t+ 0.3823 R2 = 0.2075
a [ 0.0117 0.1212 ] b [ -0.4155 1.1800 ] = 0.05 y(t) = 0.0665 t+ 0.3823 R2 = 0.2075
R2 = 0.9259 R2 = 0.4280 Explicado Não-Explicado Total
Polinômio de 10a ordem y(t) = 1.7640e-010 t10 -1.2032e-008 t9 + 3.8719e-008 t8 + 2.0053e-005 t7 -8.4235e-004 t6+ 1.6681e-002 t5 – 0.18486 t4 + 1.1401 t3 -3.4843e+000 t2 + 3.9049 t -5.2614e-002
Ajuste do Polinômio de 10a ordem: % Supondo que os pares y(k),t(k) já estão definidos > coef = polyfit(t,y,10) > plot(t,y,’r’) > hold on > ychapeu = polyval(coef,t) > plot(t,ychapeu)
proposta é tão boa quanto a “naïve” proposta é melhor que a “naïve” proposta é pior que a “naïve” U de Theil Forecast Relative Change Actual Relative Change Previsão “naïve”
Adaptações do Método de Regressão Linear: Linear y(t) = at + b Polinomial y(t) = a1 t n + a2 t n-1 + ... + ab Exponencial y(t) = ab t Potencial y(t) = a t b Hiperbólica y(t) = a + b / t log y(t) = log a + t log b log y(t) = log a + b logt y(t) = a + b (1/ t )
log(e -0.1) =-0.0434 log 5 = 0.699 log y(t) = log a + t log b = log 5 + t log (e -0.1) y(t) = 5 exp (- 0.1 t) = 5 (e -0.1) t = ab t
outliers Regressão Linear Robusta Robust OLS
Exemplo: y t2 k=3 k=1 k=5 k=2 k=4 t1 Regressão Linear Múltipla: 1 2 m = + + + + y a a t a t a t e L k 0 1 k 2 k m k k
1 2 m = + + + + y a a t a t a t e Complicantes na Regressão Linear: L k 0 1 k 2 k m k k • Regressores mal escolhidos • Não linearidade • Coeficientes variantes no tempo • Heterocedasticidade • Erros correlacionados no tempo • Erros com média não nula • Multicolinearidade y e ti não são inter-relacionados = y f ( t ) e k NL k k = + + y a ( t k) t b ( t k) e k k k = + + y a t b c ( t k) e k k k j i = a ¹ " t t i j , k k k
Suavização Exponencial: = 0.5
Método de Holt-Winters: m=1 = 0.4 = 0.4
Séries Temporais: Modelos ARMA
= - b - b - - b y e e ... e - - k 0 k 1 k 1 m k m = - a - a - - a + x x x ... x e - - - k 1 k 1 2 k 2 n k n k . . . . . . Valores anteriores de y Média ponderada dos últimos m+1 valores de ek = - a - a - - a - b - b - - b x x x ... x e e ... e - - - - - k 1 k 1 2 k 2 n k n 0 k 1 k 1 m k m ARMA Média Móvel - MA: Auto-Regressão - AR:
= - b - b - - b x e e ... e - - k 0 k 1 k 1 m k m = - a - a - - a + x x x ... x e - - - k 1 k 1 2 k 2 n k n k = - a - a - - a - b - b - - b x x x ... x e e ... e - - - - - k 1 k 1 2 k 2 n k n 0 k 1 k 1 m k m ARMA ( n , m ) Média Móvel - MA: Auto-Regressão - AR:
Série Original x(k) Série “Diferenciada” x(k) - x(k-1)
Raizes de A(q-1) fora do círculo unitário Raizes de A(q-1) no círculo unitário Estabilidade Série Estacionária
E[ . ] 0 Rx(p)=Rxx( k , k-p ) = E[ xkxk-p ] Identificação de Parâmetros de Modelos AR Equações de Yule-Walker
AR Computes AR-models of signals using various approaches. Model = AR(Y,N) or TH = AR(Y,N,Approach) Model: returned as an IDPOLY model with the estimated parameters of the AR-model, see HELP IDPOLY. Y: The time series to be modelled, an IDDATA object. N: The order of the AR-model Approach: The method used, one of the following ones: 'fb' : The forward-backward approach (default) 'ls' : The Least Squares method 'yw' : The Yule-Walker method 'burg': Burg's method 'gl' : A geometric lattice method
ARMAX Computes the prediction error estimate of an ARMAX model. M = ARMAX(Z,[na nb nc nk]) or M = ARMAX(Z,'na',na,'nb',nb,'nc',nc,'nk',nk) M : returns the estimated model in an IDPOLY object format along with estimated covariances and structure information. For the exact format of M see also help IDPOLY. Z : The estimation data in IDDATA object format. See help IDDATA [na nb nc nk] are the orders and delays of the ARMAX model A(q) y(t) = B(q) u(t-nk) + C(q) e(t) If the data have several inputs, nb and nk are row vectors with lengths equal to the number of input channels.
M I X N C Outros Modelos AR MA
Referências Bibliográficas AMEMIYA, T. – Advanced Econometrics. Harvard University Press, 1985. BOX, G.E.P.; JENKINS, G.M.; REINSEL, G.C. – Time Series Analysis, Forecasting and Control, 3a ed, Prentice Hall, 1994. FRANSES, P.H. – Time Series Models for Business and Economic Forecasting. Cambridge University Press, 1998. GUJARATI, D.N. – Econometria Básica. Pearson Education do Brasil, 2000. MAKRIDAKIS, S.; WHEELWRIGHT, S.C.; HYNDMAN, R.J. – Forecasting Methods and Applications. John Wiley, 1998. MATOS, O.C. – Econometria Básica, Teoria e Aplicações. Editora Atlas, 2000. MORETTIN, P.A.; TOLOI, C.M.C. – Análise de Séries Temporais. Editora Blücher, 2006.