Séries temporelles – Cours 2 Processus stationnaires – modèles ARMA Angelina Roche Executive Master Statistique et Big Data 2018–2019 Séries temporelles – Cours 2 Rappels cours précédent I Une série temporelle est l’observation d’une quantité Xt mesurée à des temps différents t1 , ..., tn . I Outils graphiques : chronogramme (plot.ts()), diagramme retardé (lag.plot()), chronogramme par saison (monthplot()). I On modélise souvent une série temporelle par un des modèles suivants : I modèle additif Xt = mt + st + Zt (decompose(), stl(),...), I modèle multiplicatif Xt = mt st (1 + Zt ) (decompose() avec option type=’multiplicative’,...). Séries temporelles – Cours 2 Plan du cours d’aujourd’hui Stationnarité Modèles ARMA(p,q) Meilleur prédicteur linéaire et fonction d’autocorrélation partielle Séries temporelles – Cours 2 Stationnarité Plan Stationnarité Modèles ARMA(p,q) Meilleur prédicteur linéaire et fonction d’autocorrélation partielle Séries temporelles – Cours 2 Stationnarité Processus stationnaire Définition Un processus stochastique {Xt , t ∈ Z} est dit (faiblement) stationnaire si : I sa moyenne E[Xt ] ne dépend pas de t (constante), I pour tout h ∈ Z, cov(Xt , Xt−h ) ne dépend pas de t (uniquement de h). Séries temporelles – Cours 2 Stationnarité Exemple de processus non stationnaires 30 25 20 15 0 100 5 10 Consommation finale effective totale 500 400 300 200 Nombre de passagers aériens 600 35 Processus à moyenne variable : 1950 1952 1954 1956 1958 1960 1950 1960 1970 1980 Année 1990 2000 2010 Année -4e+05 0e+00 2e+05 4e+05 6e+05 rnorm(1000) * (1:1000 - 500)^2 0 -1 -2 -3 -4 Résidu du modèle 1 2 Processus à variance variable : 1950 1960 1970 1980 1990 Année 2000 2010 0 200 400 600 Index 800 1000 Séries temporelles – Cours 2 Stationnarité Bruit blanc Définitions I Un bruit blanc {Zt , t ∈ T } est une suite de variables aléatoires non corrélées, de moyenne nulle et de variance constante. I Un bruit blanc gaussien {Zt , t ∈ T } est une suite de variables aléatoires i.i.d de loi normale. Un bruit blanc est un processus stationnaire. Séries temporelles – Cours 2 Stationnarité Bruit blanc 0 -2 -1 rnorm(100) 1 2 Bruit blanc gaussien : 0 20 40 60 80 100 60 80 100 Index 0.0 -0.1 -0.2 -0.3 Z * epsilon 0.1 0.2 0.3 Bruit blanc non gaussien : 0 20 40 Séries temporelles – Cours 2 Stationnarité Fonction d’autocovariance Définition Soit X = {Xt , t ∈ Z} un processus stationnaire, on appelle fonction d’autocovariance de X la fonction : h 7→ γX (h) := Cov(Xt , Xt−h ). Propriétés I γX (0) = Var(Xt ) ≥ 0 ; I |γX (h)| ≤ γX (0), pour tout h ; I γX (h) = γX (−h), pour tout h. Séries temporelles – Cours 2 Stationnarité Fonction d’autocorrélation Définition Soit X = {Xt , t ∈ Z} un processus stationnaire, on appelle fonction d’autocorrélation (ou ACF) de X la fonction : h 7→ ρX (h) := Cor(Xt , Xt−h ) = Propriétés I ρX (0) = 1 ; I |ρX (h)| ≤ 1, pour tout h ; I ρX (h) = ρX (−h), pour tout h. γX (h) . γX (0) Séries temporelles – Cours 2 Stationnarité Estimation de la moyenne et des fonctions d’autocovariance et d’autocorrélation I I Supposons que l’on observe X1 , ..., Xn . Estimation de la moyenne µX = E[Xt ] (mean()) n 1X µ bX := Xi . n i=1 I Estimation de la fonction d’autocovariance γX (acf()) : n 1 X γ bX (h) := (Xi − µ bX )(Xi−h − µ bX ) pour h = 0, ..., n − 1. n i=h+1 I Estimation de la fonction d’autocorrélation ρX (acf()) : ρbX (h) := γ bX (h) pour h = 0, ..., n − 1. γ bX (0) Séries temporelles – Cours 2 Stationnarité Normalité asymptotique Normalité asymptotique de l’autocorrélation empirique Sous certaines hypothèses assez génériques, ρbX (1) ρX (1) √ . . L n .. − .. −→ N (0, T ), n→+∞ ρbX (h) ρX (h) où T = (Tj,k )1≤j,k≤h est donnée par la formule de Bartlett, Tj,k = +∞ X r =1 (ρX (r + j) + ρX (r − j) − 2ρX (j)ρX (r )) (ρX (r + k) + ρX (r − k) − 2ρX (k)ρX (r )) . Séries temporelles – Cours 2 Stationnarité Exemple du bruit blanc autocovariance empirique 2 ACF (cov) 0 0 1 1 2 γ X(h) 3 3 4 4 autocovariance théorique 5 10 15 20 0 10 Lag autocorrélation théorique autocorrélation empirique 20 15 20 0.8 1.0 15 ACF 0.2 0.4 0.6 0.8 0.6 0.4 -0.2 0.0 0.2 0.0 ρX(h) 5 h 1.0 0 0 5 10 h 15 20 0 5 10 Lag Séries temporelles – Cours 2 Stationnarité Comment se ramener à une série stationnaire ? I Opérateur retard : BXt = Xt−1 , B 2 Xt = BBXt = Xt−2 ,..., B k Xt = Xt−k . I Opérateur différence (diff()) : ∆ = (I − B). ∆Xt = Xt − Xt−1 ,→ élimine une tendance linéaire. Plus généralement ∆k élimine une tendance polynomiale d’ordre k. I Opérateur différence saisonnière :∆k = (1 − B k ),→ élimine une saisonnalité de période k. I En présence d’hétéroscedasticité (variance non constante) on transforme généralement les données (transformation log, √ ·,...). Séries temporelles – Cours 2 Stationnarité 500 400 300 200 100 Nombre de passagers aériens 600 Exemple : évolution du nombre de passagers aériens 1950 1952 1954 1956 1958 1960 Année Méthode 1 : 1. Transformation log pour stabiliser la variance (log(AirPassengers)) : 5.5 5.0 log(Xt) 6.0 6.5 log(Xt) 1950 1952 1954 1956 1958 1960 Time 2. Différentiation saisonnière (diff(log(AirPassengers),lag=12)) : 0.2 0.1 0.0 Δ 12(log(Xt)) 0.3 Δ12(log(Xt)) 1950 1952 1954 1956 Time 1958 1960 Séries temporelles – Cours 2 Stationnarité 500 400 300 200 100 Nombre de passagers aériens 600 Exemple : évolution du nombre de passagers aériens 1950 1952 1954 1956 1958 1960 Année 60 40 20 0 diff(AirPassengers, lag = 12) Méthode 2 : 1. Différentiation saisonnière (diff(AirPassengers,lag=12)) : 1950 1952 1954 1956 1958 1960 Time 40 20 0 -20 -40 diff(diff(AirPassengers, lag = 12)) 2. Différentiation pour éliminer la tendance (diff(diff(AirPassengers,lag=12))) : 1950 1952 1954 1956 Time 1958 1960 Séries temporelles – Cours 2 Modèles ARMA(p,q) Plan Stationnarité Modèles ARMA(p,q) Meilleur prédicteur linéaire et fonction d’autocorrélation partielle Séries temporelles – Cours 2 Modèles ARMA(p,q) Processus AR(p) Définition Un processus stationnaire {Xt , t ∈ Z} est dit autorégressif d’ordre p (ou AR(p)) s’il obéit à une équation du type Xt = c + ϕ1 Xt−1 + ϕ2 Xt−2 + ... + ϕp Xt−p + Zt , ∀t ∈ Z, avec : I c ∈ R, ϕ = (ϕ1 , ..., ϕp ) ∈ Rp , I {Zt , t ∈ Z} un bruit blanc. Séries temporelles – Cours 2 Modèles ARMA(p,q) Exemples processus AR(1) : Xt = ϕXt−1 + Zt -0.4 -0.2 Xt 0.0 0.2 phi= -0.5 0 20 40 60 80 100 60 80 100 t -0.3 -0.2 -0.1 Xt 0.0 0.1 0.2 phi= 0.5 0 20 40 t Séries temporelles – Cours 2 Modèles ARMA(p,q) Processus MA(q) Définition Un processus {Xt , t ∈ Z} est un processus moyenne mobile d’ordre q (ou MA(q)) si Xt = µ + Zt + θ1 Zt−1 + θ2 Zt−2 + ... + θq Zt−q , ∀t ∈ Z, avec : I µ ∈ R, θ = (θ1 , ..., θq ) ∈ Rq , I {Zt , t ∈ Z} un bruit blanc. Un processus MA(q) est toujours stationnaire. Séries temporelles – Cours 2 Modèles ARMA(p,q) Exemples processus MA(1) : Xt = θZt−1 + Zt -0.4 -0.2 Xt 0.0 0.2 theta= -0.5 0 20 40 60 80 100 60 80 100 t -0.6 -0.4 Xt -0.2 0.0 0.2 0.4 theta= 2 0 20 40 t Séries temporelles – Cours 2 Modèles ARMA(p,q) Fonction d’autocorrélation d’un MA(q) Si X = {Xt , t ∈ Z} est un processus MA(q) de θ = (θ1 , ..., θq ), alors : (1 + θ12 + ... + θq2 )σZ2 γX (h) = (θ + θh+1 θ1 + ... + θq θq−h )σZ2 h 0 avec σZ2 = Var(Zt ). paramètres si h = 0, si 1 ≤ h ≤ q, si h > q, Séries temporelles – Cours 2 Modèles ARMA(p,q) Exemples ACF empirique ACF theorique 0.8 ACF 0.4 0.0 0.0 -0.2 0.2 0.2 0.4 0.0 Xt ACF 0.6 0.6 0.2 0.8 0.4 1.0 1.0 processus AR(1) 100 200 300 400 500 0 5 10 15 20 25 0 5 10 15 20 t Index Lag processus MA(1) ACF theorique ACF empirique 0.8 1.0 25 0.6 ACF 0.4 0.2 0.0 0.0 -0.2 0.2 -0.1 0.4 0.0 Xt ACF 0.6 0.1 0.2 0.8 0.3 1.0 0 0 100 200 300 t 400 500 0 5 10 15 Index 20 25 0 5 10 15 Lag 20 25 Séries temporelles – Cours 2 Modèles ARMA(p,q) Processus ARMA(p, q) Définition Un processus stationnaire {Xt , t ∈ Z} obéit à un modèle ARMA(p,q) s’il vérifie une équation du type Xt = c+ϕ1 Xt−1 +ϕ2 Xt−2 +...+ϕp Xt−p +Zt +θ1 Zt−1 +θ2 Zt−2 +...+θq Zt−q , ∀t ∈ Z, avec : I c ∈ R, (ϕ1 , ..., ϕp ) ∈ Rp , (θ1 , ..., θq ) ∈ Rq , I {Zt , t ∈ Z} un bruit blanc. Séries temporelles – Cours 2 Modèles ARMA(p,q) Exemples processus ARMA(p,q) 0 -2 -1 Xt 1 2 ARMA(1,1) 0 20 40 60 80 100 60 80 100 t -3 -2 -1 Xt 0 1 2 3 ARMA(2,1) 0 20 40 t Séries temporelles – Cours 2 Modèles ARMA(p,q) ACF ACF empirique ACF theorique ACF 0.4 -3 0.0 0.0 -2 0.2 0.2 -1 0.4 ACF 0.6 0.6 0.8 2 1 0 Xt 0.8 3 1.0 1.0 processus ARMA(1,1) 100 200 300 400 500 0 5 10 15 20 25 0 5 10 15 t Index Lag processus ARMA(2,1) ACF theorique ACF empirique 25 20 25 1.0 20 ACF 0.0 ACF 0.0 0 -0.5 -0.5 -2 -4 Xt 0.5 0.5 2 4 1.0 0 0 100 200 300 t 400 500 0 5 10 15 Index 20 25 0 5 10 15 Lag Séries temporelles – Cours 2 Meilleur prédicteur linéaire et fonction d’autocorrélation partielle Plan Stationnarité Modèles ARMA(p,q) Meilleur prédicteur linéaire et fonction d’autocorrélation partielle Séries temporelles – Cours 2 Meilleur prédicteur linéaire et fonction d’autocorrélation partielle Meilleur prédicteur linéaire d’un processus stationnaire I On observe X1 , ..., Xn et l’on veut prédire au mieux Xt pour t > n. I Le meilleur prédicteur linéaire de Xt , sachant les observations X1 , ..., Xn , est la quantité Xt|n = a0 + n X aj Xn+1−j j=1 où a0 , a1 , ..., an définis de façon à minimiser l’erreur quadratique moyenne h 2 i . EQM = E Xt − Xt|n I La résolution du problème de minimisation nous donne : a 0 = µX 1− n X ! ai et Γn an = γ n (h), i=1 où an = (a1 , ..., an )t , Γn = (γX (i − j))1≤i,j≤n et γ n (h) = (γX (h), ..., γX (h + n − 1))t . Séries temporelles – Cours 2 Meilleur prédicteur linéaire et fonction d’autocorrélation partielle Fonction d’autocorrélation partielle Définition Soit {Xt , t ∈ Z} un processus stationnaire centré (µX = 0). La fonction d’autocorrélation partielle (ou PACF) est la fonction (h) pX (h) = ah , (h) où ah tel que Xh|h−1 = h X (h) aj Xh+1−j . j=1 PACF théorique La PACF d’un AR(p) est nulle à partir de l’ordre p + 1. Séries temporelles – Cours 2 Meilleur prédicteur linéaire et fonction d’autocorrélation partielle Estimation de la PACF On peut estimer la PACF d’un processus stationnaire à partir d’une estimation de son ACF par l’algorithme de Durbin-Levinson. Propriétés de pbX Si X = {Xt , t ∈ Z} est un AR(p) alors : I pbX (p) converge vers pX (p) quand n → +∞, I pbX (h) converge vers 0 quand n → +∞ pour tout h > p, I Var(b pX (h)) de l’ordre de 1/n pour tout h > p. Séries temporelles – Cours 2 Meilleur prédicteur linéaire et fonction d’autocorrélation partielle Exemples : processus AR(p) ou MA(q) PACF empirique 0.3 -0.1 0.0 -0.3 0.1 0.2 PACF Partial ACF 0.4 0.3 0.1 Xt -0.1 0.1 0.2 0.3 0.4 0.5 PACF theorique 0.5 processus AR(1) 100 200 300 400 500 0 5 10 15 20 25 5 10 15 20 Lag processus MA(1) PACF theorique PACF empirique 200 300 t 400 500 0.2 0.0 Partial ACF -0.2 -0.2 PACF 0.0 0.1 0.2 0.3 0.4 0.1 Xt -0.1 100 25 0.4 Index -0.3 0 0 t 0.3 0 0 5 10 15 Index 20 25 0 5 10 15 Lag 20 25 Séries temporelles – Cours 2 Meilleur prédicteur linéaire et fonction d’autocorrélation partielle Processus ARMA(p,q) PACF empirique PACF theorique 0.1 Partial ACF ACF Xt 0 100 200 300 400 500 0 5 10 15 20 25 0 5 10 15 t Index Lag processus ARMA(2,1) PACF theorique PACF empirique 20 25 0.2 25 0.0 -0.2 Partial ACF ACF Xt 20 -0.6 -0.6 -4 -0.4 -0.4 -2 -0.2 0 0.0 2 0.2 4 0 -0.1 -3 0.00 -2 0.05 0.0 -1 0.10 1 0.15 0.2 2 0.20 3 0.3 processus ARMA(1,1) 0 100 200 300 t 400 500 0 5 10 15 Index 20 25 0 5 10 15 Lag Séries temporelles – Cours 2 Meilleur prédicteur linéaire et fonction d’autocorrélation partielle Identification d’un ARMA(p,q) : méthode de Box et Jenkins 1. Se ramener à un processus stationnaire : transformer éventuellement les données, éliminer la tendance et la saisonnalité,... 2. Identifier p et q : I À l’aide des tracés de l’ACF et de la PACF empirique : Fonction ACF PACF I I MA(q) 0 à. p. rg(q) déc. exp. AR(p) déc. exp. 0 à. p. rg(p) ARMA(p,q) déc. exp. déc. exp. BB 0 0 Critère AIC = n log(b σZ2 ) + 2(p + q), AICc = AIC + 2(p + q)(p + q + 1)/(n − p − q − 1) (petits échantillons), BIC,... Modélisation automatique : fonctions auto.arima() de forecast, armasubsets() de TSA, armaselect() de caschrono,... Séries temporelles – Cours 2 Meilleur prédicteur linéaire et fonction d’autocorrélation partielle Estimation des paramètres ϕ et θ I Lorsque p et q sont fixés, nous pouvons estimer les paramètres ϕ et θ du modèle choisi. I Méthode classique : maximum de vraisemblance dont il existe différentes variantes (arima() ou ar(), Arima() de forecast, arimax() de TSA,.... ).