Slides ts-1

9,213 views

Published on

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
9,213
On SlideShare
0
From Embeds
0
Number of Embeds
7,578
Actions
Shares
0
Downloads
25
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Slides ts-1

  1. 1. ` ´Arthur CHARPENTIER - Modeles de previsions (ACT6420 - Automne 2012) Mod`les de pr´vision e e Partie 2 - s´ries temporelles e Arthur Charpentier charpentier.arthur@uqam.ca http ://freakonometrics.blog.free.fr/ Automne 2012
  2. 2. ` ´ Arthur CHARPENTIER - Modeles de previsions (ACT6420 - Automne 2012) Plan du cours• Motivation et introduction aux s´ries temporelles e• M´thodes de lissage e◦ Mod`les de r´gression (Buys-Ballot) e e◦ Lissage(s) exponentiel(s) (Holt-Winters)• Notions g´n´rales sur les processus stationnaires e e• Les processus SARIM A◦ Les mod`les autor´gressifs, AR(p), Φ(L)Xt = εt e e◦ Les mod`les moyennes mobiles, M A(q) (moving average), Xt = Θ(L)εt e◦ Les mod`les autor´gtressifs et moyenne mobiles, ARM A(p, q), e e Φ(L)Xt = Θ(L)εt◦ Les mod`les autor´gtressifs, ARIM A(p, d, q), (1 − L)d Φ(L)Xt = Θ(L)εt e e◦ Les mod`les autor´gtressifs, SARIM A(p, d, q), e e (1 − L)d (1 − Ls )Φ(L)Xt = Θ(L)εt◦ Pr´vision avec un SARIM A, T XT +h e
  3. 3. ` ´ Arthur CHARPENTIER - Modeles de previsions (ACT6420 - Automne 2012) M´thode de Buys Balot - la tendance eNotons (Xt ) une s´rie temporelle, observ´e jusqu’` la date T . e e aSi on a une tendance lin´aire, on cherche ` r´soudre e a e T β = (β0 , β1 ) ∈ argmin (Xt − (β0 + β1 · t))2 t=1> autoroute=read.table(+ "http://freakonometrics.blog.free.fr/public/data/autoroute.csv",+ header=TRUE,sep=";")> a7=autoroute$a007> X=ts(a7,start = c(1989, 9), frequency = 12)> T=time(X)> S=cycle(X)> B=data.frame(x=as.vector(X),T=as.vector(T),S=as.vector(S))> regT=lm(x~T,data=B)> plot(X)> abline(regT,col="red")
  4. 4. ` ´Arthur CHARPENTIER - Modeles de previsions (ACT6420 - Automne 2012) M´thode de Buys Balot - la tendance e 70000 60000 50000 X 40000 30000 20000 1990 1991 1992 1993 1994 1995 1996 Time
  5. 5. ` ´ Arthur CHARPENTIER - Modeles de previsions (ACT6420 - Automne 2012) M´thode de Buys Balot - la tendance ePosons Yt = Xt − (β0 + β1 t)> X1=predict(regT)> B$X1=X1> Y=B$X1> plot(X,xlab="",ylab="")> YU=apply(cbind(X,Y),1,max)> YL=apply(cbind(X,Y),1,min)> i=which(is.na(Y)==FALSE)> polygon(c(T[i],rev(T[i])),c(Y[i],rev(YU[i])),col="blue")> polygon(c(T[i],rev(T[i])),c(Y[i],rev(YL[i])),col="red")> lines(B$T,Y,lwd=3)
  6. 6. ` ´Arthur CHARPENTIER - Modeles de previsions (ACT6420 - Automne 2012) M´thode de Buys Balot - la tendance e 70000 60000 50000 40000 30000 20000 1990 1991 1992 1993 1994 1995 1996
  7. 7. ` ´ Arthur CHARPENTIER - Modeles de previsions (ACT6420 - Automne 2012) M´thode de Buys Balot - le cycle eOn cherche un cycle mensuel (de p´riode s = 12). Supposons e s−1 Yt = γk 1(t = k mod. s) + Zt k=0> B$res1=X-X1> regS=lm(res1~0+as.factor(S),data=B)> B$X2=predict(regS)> plot(B$S,B$res1,xlab="saisonnalit’e")> lines(B$S[1:4],B$X2[1:4],col="red",lwd=2)> lines(B$S[5:13],B$X2[5:13],col="red",lwd=2)Remarque mod. est l’op´rateur de calcul du reste de la division euclidienne, ex : e 27 mod. 12 = 27 − (12 × 2) = 3
  8. 8. ` ´Arthur CHARPENTIER - Modeles de previsions (ACT6420 - Automne 2012) M´thode de Buys Balot - le cycle e q q 30000 q q q q q q 20000 q 10000 q B$res1 q q q q q q q q q q q q q q q q q q q 0 q q q q q q q q q −10000 q q q q q q q q q q q q q q q q q q q q q q q q q q q −20000 q q 2 4 6 8 10 12 saisonnalité
  9. 9. ` ´ Arthur CHARPENTIER - Modeles de previsions (ACT6420 - Automne 2012) M´thode de Buys Balot - le cycle eAlors s−1 Xt = β0 + β1 t + γk 1(t = k mod. s) +Zt k=0 tendance lin´aire e cycle> plot(X,xlab="",ylab="")> YU=apply(cbind(X,Y),1,max)> YL=apply(cbind(X,Y),1,min)> i=which(is.na(Y)==FALSE)> polygon(c(T[i],rev(T[i])),c(Y[i],rev(YU[i])),col="blue")> polygon(c(T[i],rev(T[i])),c(Y[i],rev(YL[i])),col="red")> lines(B$T,Y,lwd=3)
  10. 10. ` ´Arthur CHARPENTIER - Modeles de previsions (ACT6420 - Automne 2012) M´thode de Buys Balot - tendance et cycle e 70000 60000 50000 40000 30000 20000 1990 1991 1992 1993 1994 1995 1996
  11. 11. ` ´ Arthur CHARPENTIER - Modeles de previsions (ACT6420 - Automne 2012) M´thode de Buys Balot - pr´vision e eOn peut alors faire de la pr´vision, en supposant le bruit Zt i.i.d., i.e. e s−1 T XT +h = E(XT +h |X1 · · · , XT ) = β0 + β1 [T + h] + γk 1(T + h = k mod. s) k=0> n=length(T)> T0=T[(n-23):n]+2> plot(X,xlim=range(c(T,T0)))> X1p=predict(regT,newdata=data.frame(T=T0))> Yp=X1p+B$X2[(n-23):n]> se=sd(X-Y)> YpU=Yp+1.96*se> YpL=Yp-1.96*se> polygon(c(T0,rev(T0)),c(YpU,rev(YpL)),col="yellow",border=NA)> lines(T0,Yp,col="red",lwd=3)> lines(B$T,Y,lwd=3,col="red")
  12. 12. ` ´Arthur CHARPENTIER - Modeles de previsions (ACT6420 - Automne 2012) M´thode de Buys Balot - pr´vision e e 70000 60000 50000 X 40000 30000 20000 1990 1992 1994 1996 1998 Time
  13. 13. ` ´ Arthur CHARPENTIER - Modeles de previsions (ACT6420 - Automne 2012) Formalisation de Buys-Ballot (1847)> sncf=read.table(+ "http://freakonometrics.blog.free.fr/public/data/sncf.csv",+ header=TRUE,sep=";")> SNCF=ts(as.vector(t(as.matrix(sncf[,2:13]))),+ ,start = c(1963, 1), frequency = 12)> plot(SNCF,lwd=2,col="purple")
  14. 14. ` ´ Arthur CHARPENTIER - Modeles de previsions (ACT6420 - Automne 2012) Formalisation de Buys-Ballot (1847)La s´rie Xt est la somme de 2 composantes d´terministes : une tendance Zt , e ed’une saisonnalit´ St et d’une composante al´atoire εt e e Xt = Zt + St + εt .On suppose que Zt et St sont des combinaisons lin´aires de fonctions connues e i jdans le temps, Zt et St , i.e.   Z = β + Z 1 β + Z 2 β + ... + Z m β t 0 t 1 t 2 t m (ex : β0 + β1 · t)  St = S 1 γ1 + S 2 γ2 + ... + S s γn . t t tLe but est d’estimer les β1 , ..., βm et γ1 , ..., γn ` partir des T observations. a m s i j Xt = Z t βi + St γj + εt pour t = 1, ..., T. i=1 j=1
  15. 15. ` ´ Arthur CHARPENTIER - Modeles de previsions (ACT6420 - Automne 2012) Formalisation de Buys-Ballot (1847)La forme de St d´pend du type de donn´es, et de la forme de la saisonnalit´. On e e e iconsid`rera ici des fonctions St indicatrices, e    0 si t = mois i  0 si t = 0 [modulo i] i i St = ou St =  1 si t = mois i  1 si t = 0 [modulo i] .Example : Consid´rons des donn´es trimestrielles, e e 1 2 3 4 Xt = α + β · t + γ1 St + γ2 St + γ3 St + γ4 St + εt , Zt St
  16. 16. ` ´ Arthur CHARPENTIER - Modeles de previsions (ACT6420 - Automne 2012)Que l’on peut ´crire de fa¸on matricielle, e c       5130 1 1 1 0 0 0 ε1         6410     1 2 0 1 0 0     ε2          8080   1 3 0 0 1 0    ε3  α              5900   1 4 0 0 0 1    ε4      β    5110 1 5 1 0 0 0 ε5                   γ1      6680 =   1 6 0 1 0 0   +   ε6       γ2      8350     1 7 0 0 1 0       ε7       γ3      5910     1 8 0 0 0 1      ε8       γ4     5080     1 9 1 0 0 0     ε9    . .   . . . . . . . . . . . .   . .    .     . . . . . .     .   1 2 3 4 Xt 1 t St St St St εt
  17. 17. ` ´ Arthur CHARPENTIER - Modeles de previsions (ACT6420 - Automne 2012) Formalisation de Buys-Ballot (1847)Remark : pour transformer les donn´es en donn´es trimestrielles (et non plus e emensuelles)> SNCFQ= ts(apply(matrix(as.numeric(SNCF),3,length(SNCF)/3),2,sum),+ start = c(1963, 1), frequency = 4)> plot(SNCFQ,col="red")> SNCFQ Qtr1 Qtr2 Qtr3 Qtr41963 5130 6410 8080 59001964 5110 6680 8350 59101965 5080 6820 8190 59901966 5310 6600 8090 6020... etc.
  18. 18. ` ´ Arthur CHARPENTIER - Modeles de previsions (ACT6420 - Automne 2012) Formalisation de Buys-Ballot (1847)Le graphique des donn´es trimestrielles est le suivant e
  19. 19. ` ´ Arthur CHARPENTIER - Modeles de previsions (ACT6420 - Automne 2012) Formalisation de Buys-Ballot (1847)On consid`re un mod`le de la forme e e m s i j Xt = Z t βi + St γj + εt pour t = 1, ..., T. i=1 j=1La m´thode des moindres carr´s ordinaires consiste ` choisir les βi et γj de fa¸on e e a ca` minimiser le carr´ des erreurs e T βi , γ j = arg min ε2 t t=1   2  T  m s   Xt − i j  = arg min Zt β i + St γj .   t=1  i=1 j=1 
  20. 20. ` ´ Arthur CHARPENTIER - Modeles de previsions (ACT6420 - Automne 2012) Formalisation de Buys-Ballot (1847)> T = seq(from=1963,to=1980.75,by=.25)> Q = rep(1:4,18)> reg=lm(SNCFQ~0+T+as.factor(Q))> summary(reg)Coefficients: Estimate Std. Error t value Pr(>|t|)T 231.87 12.55 18.47 <2e-16 ***as.factor(Q)1 -450526.26 24752.39 -18.20 <2e-16 ***as.factor(Q)2 -449257.44 24755.53 -18.15 <2e-16 ***as.factor(Q)3 -448644.19 24758.67 -18.12 <2e-16 ***as.factor(Q)4 -449880.94 24761.81 -18.17 <2e-16 ***---Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1Residual standard error: 552.7 on 67 degrees of freedomMultiple R-squared: 0.9953, Adjusted R-squared: 0.995F-statistic: 2846 on 5 and 67 DF, p-value: < 2.2e-16> plot(T,residuals(reg),type="l")
  21. 21. ` ´Arthur CHARPENTIER - Modeles de previsions (ACT6420 - Automne 2012)
  22. 22. ` ´ Arthur CHARPENTIER - Modeles de previsions (ACT6420 - Automne 2012) Formalisation de Buys-Ballot (1847) : pr´vision eSoit h ≥ 1. On suppose que le mod`le reste valide en T + h c’est ` dire que e a m s i j XT +h = ZT +h βi + ST +h γj + εT +h , i=1 j=1avec E (εT +h ) = 0, V (εT +h ) = σ 2 et cov (εt , εT +h ) = 0 pour t = 1, ..., T . Lavariable XT +h peut ˆtre approch´e par e e m n i j T XT +h = ZT +h βi + ST +h γj . i=1 j=1Cette pr´vision est la meilleur (au sens de l’erreur quadratique moyenne) epr´vision, lin´aire en X1 , ..., XT et sans biais. e e
  23. 23. ` ´ Arthur CHARPENTIER - Modeles de previsions (ACT6420 - Automne 2012) Formalisation de Buys-Ballot (1847) : pr´vision eUn intervalle de confiance de cette pr´vision est de la forme e XT (h) − φ1−α/2 eh ; XT (h) + φ1−α/2 eh ,o` φ1−α/2 est le quantile d’ordre α de la loi de Student ` T − m − n degr´s de u a elibert´, et o` e u   2 m n i j eh = E XT (h) − XT +h =V  ZT +h βi + ST +h γj − εT +h  i=1 j=1    β = β |γ V   β + s2 . γ γ
  24. 24. ` ´ Arthur CHARPENTIER - Modeles de previsions (ACT6420 - Automne 2012) M´thode de Buys Balot et temp´rature e eOn peut le faire sur la mod´lisation de la temp´rature e e> TEMP=read.table("http://freakonometrics.blog.free.fr/public/data/TN_STAID000038.txt",header=TRUE,sep=",")> D=as.Date(as.character(TEMP$DATE),"%Y%m%d")> T=TEMP$TN/10> plot(D,T,col="light blue",xlab="Temp’erature minimalejournali‘ere Paris",ylab="",cex=.5)1. Estimer la tendance lin´aire Xt = [β0 + β1 · t] + Yt e> abline(h=0,lty=2,col="grey")> abline(lm(T~D),lwd=2,col="red")

×