Académique Documents
Professionnel Documents
Culture Documents
Introduction
l’objectif principal de l’analyse d’une série temporelle est la prévision de ses futures
réalisations en se basant sur ses valeurs passées
Y t = Tt + St + εt
tendance linéaire: Tt = a + bt
Y t = (Tt + St ) ∗ εt
Y t = (Tt ∗ St ) + εt . . .
https://www.imo.universite-paris-saclay.fr/~goude/Materials/ProjetMLF/time_series.html 1/37
26/05/2020 Projet Machine Learning pour la Prévision: séries temporelles
nous nous intéressons ici aux méthodes de base (modélisation de série chro. linéaires):
temporelles
Yannig Goude
https://www.imo.universite-paris-saclay.fr/~goude/Materials/ProjetMLF/time_series.html 2/37
26/05/2020 Projet Machine Learning pour la Prévision: séries temporelles
Stationnarité
dé nition soit un processus aléatoire (Y t )t∈Z , il est dit stationnaire au sens fort (ou
strictement) si pour toute fonction f mesurable et
Projet Machine Learning pour la Prévision: séries
f(Y 1 , Y 2 , . . . , Y t )
ont la
f(Y 1+h , Y 2+h , . . . , Y t+h ) même loi.
temporelles
Cette notion de stationnarité forte est très difficile à vérifier en pratique. On lui préfère
généralement la notion de stationnaritéYannig Goude
faible qui porte sur les moments d’ordre 1 et 2 du
processus.
ρ(h) = γ(h)/γ(0)
∀t E(Y t ) = μ
On remarque que var(Y t ) = γ(0) et donc qu’un processus stationnaire faible à une
variance constante dans le temps.
https://www.imo.universite-paris-saclay.fr/~goude/Materials/ProjetMLF/time_series.html 3/37
26/05/2020 Projet Machine Learning pour la Prévision: séries temporelles
preuve
2 2 2
γ(0) = σ (1 + a +. . . +a q )
1
2
γ(1) = σ (a 1 + a 1 a 2 +. . . +a q−1 a q )
...
2
γ(q) = σ (a q )
γ(q + h) = 0
Y t = aY t−1 + εt
https://www.imo.universite-paris-saclay.fr/~goude/Materials/ProjetMLF/time_series.html 4/37
26/05/2020 Projet Machine Learning pour la Prévision: séries temporelles
2
σ
2 2
var(Y t ) = σ (1 + a + a +. . . ) =
2
1 − a
2 h
σ a
Yannig Goude
2 |h|
σ a
γ(h) =
2
1 − a
n
1
γ̂ (h) = ∑ (y t − ȳ )(y t−h − ȳ )
n − h
t=h+1
1 n
∑ (y t − ȳ )(y t−h − ȳ )
n−h k=h+1
ρ̂ (h) =
1 n
2
∑ (y t − ȳ )
n t=1
exemple voilà un exemple de série et son auto-corrélogramme, à votre avis de quel type de
série s’agit-il?
https://www.imo.universite-paris-saclay.fr/~goude/Materials/ProjetMLF/time_series.html 5/37
26/05/2020 Projet Machine Learning pour la Prévision: séries temporelles
Auto-corrélation partielle
Lorsque l’on s’intéresse à caractériser les dépendances d’au moins 3 variables aléatoires, il
est nécessaire d’introduire la notion de corrélation partielle. En effet, si l’on considère les
variables X1 , . . . , Xk , X1 peut être corrélée à X3 parce que X1 et X3 sont toutes deux
corrélées à X2 .
projection PM(X
1 ,..,X k )
(Y ) = Xα la projection linéaire d’une variable Y sur
M (X1 , . . , Xk ) est telle que
2 2
E[(Y − Xα) ] ≤ E[(Y − Xβ) ], ∀β
https://www.imo.universite-paris-saclay.fr/~goude/Materials/ProjetMLF/time_series.html 6/37
26/05/2020 Projet Machine Learning pour la Prévision: séries temporelles
r(h) = r(−h)
on remarque que r(h) = rY2 ,...,Yh (Y 1 , Y h+1 ) = rYk+2 ,...,Yk+h (Y k+1 , Y k+h+1 ) car le processus
est stationnaire.
Pour obtenir l’auto-corrélation partielle d’un processus, voyons les propriétés suivantes.
k−1
γ(k) − ∑ γ(k − j)bk−1,j
j=1
bk,k =
k−1
γ(0) − ∑ γ(j)bk−1,j
j=1
La tendance
Il existe différents procédés permettant d’anlyser puis/ou de corriger la tendance d’une série
temporelle.
Moyenne mobile
https://www.imo.universite-paris-saclay.fr/~goude/Materials/ProjetMLF/time_series.html 7/37
26/05/2020 Projet Machine Learning pour la Prévision: séries temporelles
La moyenne mobile est une méthode simple permettant d’extraire les composantes basses
fréquences d’une série temporelle autrement dit sa tendance. Elle est également connue
comme une méthode de lissage car elle agit comme un filtre passe bas et donc élimine le
bruit.
Yannig Goude
La moyenne mobile se calcule ainsi:
t+l
1
y
ˆt = ∑ yt
2l + 1
i=t−l
library(xts)
date1<- strptime("01/01/1900", "%m/%d/%Y")
date2<- strptime("01/01/2000", "%m/%d/%Y")
Date<-seq.POSIXt(date1,date2,by = "year")
n<-length(Date)
t<-c(1:n)
T<-t/20+1
w=2*pi/5
S<-cos(w*t)
eps<-rnorm(n,0,1)
X<-T*S*eps
X<-xts(X,order.by=Date)
T<-xts(T,order.by=Date)
S<-xts(S,order.by=Date)
X<-T+S+eps
MA<-filter(X, filter=array(1/10,dim=10), method = c("convolution"),
sides = 2, circular = FALSE)
https://www.imo.universite-paris-saclay.fr/~goude/Materials/ProjetMLF/time_series.html 8/37
26/05/2020 Projet Machine Learning pour la Prévision: séries temporelles
Di érenciation
Pour nettoyer une série de sa tendance et/où de sa saisonnalité, nous pouvons procéder par
différenciation. Celà fonctionne pour des séries à tendance polynomiale.
https://www.imo.universite-paris-saclay.fr/~goude/Materials/ProjetMLF/time_series.html 9/37
26/05/2020 Projet Machine Learning pour la Prévision: séries temporelles
j
yt = ∑ a j t + εt
alors le processus
temporelles
admet une tendance polyomiale d’ordre
Δy . k − 1
Yannig Goude
Estimation paramétrique de la tendance
Après avoir représenté la série, il est souvent possible d’inférer une représentation
paramétrique de sa tendance. Dans ce cas, on procède par régression linéaire pour estimer
cette tendance.
Par exemple, dans le cas d’un processus y admettant une tendance polynomiale d’ordre k:
, un estimateur de la tendance pourra être obtenu ainsi:
k j
yt = ∑ aj t + εt
j=0
ˆ = X â
T t
avec Y = (y 1 , . . . , y t ) .
Dans certains cas, une représentation paramétrique de la tendance n’est pas satisfaisante. Le
modèle sous-jacent à ce type de données est:
y t = f(t) + εt
où f est une fonction régulière sur laquelle on ne fait pas d’hypothèse paramétrique,
t = 1, 2, . . , n . On ne fait pour l’instant pas d’hypothèses précises sur εt , considérés comme
stationnaires. On pourra dans ce cas considérer une estimation non-paramétrique de cette
tendance. Plusieurs approches sont possibles.
Estimateur à noyaux
définition soit un réel h > 0 (paramètre de fenêtre), soit un noyau K . On appelle estimateur
à noyau de f associé à la fenêtre h et au noyau K la fonction ˆ
f h définie par:
i
https://www.imo.universite-paris-saclay.fr/~goude/Materials/ProjetMLF/time_series.html 10/37
26/05/2020 Projet Machine Learning pour la Prévision: séries temporelles
n x−i
∑ y i K( )
i=1 h
ˆ
f h (x) =
n x−i
∑ K( )
i=1 h
gaussien:
temporelles
K(x) = exp(−x /)/2pi
2
La Saisonnalité
Moyenne mobile
https://www.imo.universite-paris-saclay.fr/~goude/Materials/ProjetMLF/time_series.html 11/37
26/05/2020 Projet Machine Learning pour la Prévision: séries temporelles
Il subsiste ici une composante périodique de période 1 semaine qu’on peut ensuite éliminer
via un deuxième filtrage par moyenne mobile.
Di érenciation
https://www.imo.universite-paris-saclay.fr/~goude/Materials/ProjetMLF/time_series.html 12/37
26/05/2020 Projet Machine Learning pour la Prévision: séries temporelles
Projet Machine
Preuve , alors
y t = St + εt Learning pour la Prévision:
car par définition
Δτ y t = εt − εt−τ . séries St = St−τ
y t = ∑ a j cos(ω j t) + bj sin(ω j t) + εt
j=1
où ω j = 2π/τ , q est à déterminer par une méthode de sélection de modèle sur les
données. Les coefficients aj et bj sont obtenus par moindre carrés sur les données.
https://www.imo.universite-paris-saclay.fr/~goude/Materials/ProjetMLF/time_series.html 13/37
26/05/2020 Projet Machine Learning pour la Prévision: séries temporelles
De même que pour la moyenne mobile, il est possible en choisissant la bonne valeur de
fenêtre d’estimer la composante saisonnière d’un processus par méthode à noyau et
polynômes locaux.
+∞
Xt = ∑ ψj εt−j + C t , t ∈ Z
j=0
où
et ∑j=0
+∞
ψ0 = 1 |ψj | < +∞
les moyennes mobiles s’avèrent donc intéressantes pour modéliser des processus
stationnaires. La question reste alors l’estimation des coefficients ψ . Nous verrons par la
suite que certaines familles de modèles permettent une représentation parcimonieuse de
cette moyenne mobile.
dé nition on appelle opérateur retard L l’opérateur qui associe à un processus (Xt )t∈Z le
processus (Y t )t∈Z tel que Y t = LXt = Xt−1 . Cet opérateur est:
linéaire
inversible: son inverse est L−1 = F tel que F Xt = Xt+1 et est appelé l’opérateur
avance
De plus on a:
n
L Xt = Xt−n
https://www.imo.universite-paris-saclay.fr/~goude/Materials/ProjetMLF/time_series.html 14/37
26/05/2020 Projet Machine Learning pour la Prévision: séries temporelles
et
p p
i
(∑ a i L )Xt = ∑ a i Xt−i
i=1 i=1
séries en L on peut définir à l’aide de cet opérateur des séries en (ou ). Soit un
Projet Machine Learning pour la Prévision: séries
L F
sommable ∑
i∈Z
|a i | < ∞
temporelles
, alors le processus défini par:
Yannig Goude
Y t = ∑ a i Xt−i = (∑ a i L )Xt
i
i∈Z i∈Z
est stationnaire.
Inversion de polynômes en L
Avec ces notations le processus AR(1) Y t = aY t−1 + εt , avec |a| < 1 s’écrit ainsi:
(1 − aL)Y t = εt
ainsi Y t = (1 − aL)
−1
εt et l’écriture moyenne mobile de ce processus peut-être vue comme
un problème d’inversion du polynôme x → 1 − ax .
1 − aL est une application de l’ensemble des processus stationnaires dans lui même. La
série étant absolument sommable, la série est définie (|a| ) et nous
∞ i ∞ i i
∑ a ∑ a L < 1
i=0 i=0
avons:
∞ ∞
i i i i i+1 i+1 0
(∑ a L )(1 − aL) = ∑ a L − a L = L = 1
i=0 i=0
(1 − aL)Xt = Y t mais pas le seul processus. En effet, si Z est une v.a. quelconque, Za
t
est
solution (non-stationnaire!) de (1 − aL)Xt = 0 .
2 p
Φ(z) = 1 + ϕ1 z + ϕ2 z +. . . +ϕp z
de racines zj = 1/a j de modules supérieurs à 1. Alors on sait qu’il existe une série entière
Ψ(z) = ∑
i∈Z
ψi z
i
telle que
https://www.imo.universite-paris-saclay.fr/~goude/Materials/ProjetMLF/time_series.html 15/37
26/05/2020 Projet Machine Learning pour la Prévision: séries temporelles
∞
i=0
Xt + ∑ ϕi Xt−i = εt , ∀t ∈ Z
i=1
Φ(L)Xt = εt
Ecriture moyenne mobile in nie la définition du processsus AR(p) proposée n’implique pas
forcément que cette équation a une solution unique stationnaire. Pour celà, il faut relier ce
problème à la question de l’inversion du polynôme Φ(L) vue précédemment.
+∞ +∞
−1
Xt = Φ(L) εt = ∑ h j εt−j , ∑ |h j | < +∞
j=−∞ j=−∞
on voit que dans ce cas la valeur de Xt peut dépendre des valeurs passées, présentes et
futures de εt . Dans le cas ou les racines de Φ sont de module strictement supérieur à 1,
Φ
−
1(L) ayant un développement ne contenant que des puissances positives de L , la valeur
de Xt ne dépend que des valeurs passées de εt :
+∞ +∞
j=0 j=0
on voit donc que Xt−1 ne dépend (linéairement) que de εt−1 , εt−2 … Comme ε est un bruit
blanc, Xt−1 est donc non corrélée à εt . La projection linéaire de Xt sur son passé s’écrit
https://www.imo.universite-paris-saclay.fr/~goude/Materials/ProjetMLF/time_series.html 16/37
26/05/2020 Projet Machine Learning pour la Prévision: séries temporelles
donc:
P −∞ (Xt ) = − ∑ ϕi Xt−i
M
t−1
i=1
et
Projet Machine Learning pour la Prévision: séries
temporelles
Xt − PM −∞ (Xt ) = εt
t−1
régression linéaire de Xt sur son passé mais aussi son espérance conditionnelle.
Fonction d’autocorrélation d’un AR(p) soit un processus stationnaire AR(p) défini par
Φ(L)Xt = Xt + ∑ ϕi Xt−i = εt
i=1
j=1
est donc définie comme la solution d’une suite récurrente d’ordre p, donc racines non-nulles
de l’équation:
p p−j
λ + ∑ ϕj λ = 0
j=1
soit:
−j
1 + ∑ ϕj λ = 0
j=1
c’est à dire que est racine de donc . On sait donc que est une combinaison
1
Φ |λ| < 1 ρ(h)
λ
https://www.imo.universite-paris-saclay.fr/~goude/Materials/ProjetMLF/time_series.html 17/37
26/05/2020 Projet Machine Learning pour la Prévision: séries temporelles
ϕ1 ρ(1)
⎛ ⎞ ⎛ ⎞
−1
⎜ ⎟ = [ρ(i − j)] ⎜ ⎟
⎜ ⋮ ⎟ ⎜ ⋮ ⎟
⎝ ⎠ ⎝ ⎠
ϕp ρ(p)
Ce qui donne un algorithme d’estimation des coefficients d’un processus AR(p) en remplaçant
Projet
ρ(h)
Machineempirique.
par leur autocorrélation Learning pourégalement
Remarquons la Prévision: séries
que la variance de ce
processus vaut:
temporelles p 2
γ(0) = Yannig
− ∑ ϕj γ(j) Goude
+ σ
2
=
σ
p
1 + ∑ ϕj ρ(j)
j=1 j=1
défini par
Φ(L)Xt = Xt + ∑ ϕi Xt−i = εt
i=1
Cette propriété est très utile en pratique lorsque l’on cherche à identifier l’ordre d’un
processus AR. On peut ainsi calculer les autocorrélation partielles empiriques et regarder
quand celles-ci sont négligeables (non-significativement différentes de 0). Notons également
que r(p) = ϕp .
dé nition on appelle processus moyenne mobile d’ordre q , usuellement noté MA(q) (moving
average), un processus (Xt )t∈Z défini par:
q
Xt = (1 + θ1 L+. . . +θq L )εt = Θ(L)εt
https://www.imo.universite-paris-saclay.fr/~goude/Materials/ProjetMLF/time_series.html 18/37
26/05/2020 Projet Machine Learning pour la Prévision: séries temporelles
2 2 2
var(Xt ) = σ (1 + θ +. . . +θq )
1
temporelles
= E[(εt + θ1 εt−1 +. . . +θq εt−q )(εt−h + θ1 εt−h−1 +. . . +θq εt−h−q )]
Yannig Goude
et donc
2
γ(h) = (θh + θh+1 θ1 +. . . +θq θq−h )σ , si 1 ≤ h ≤ q
{
= 0 sinon
= 0 sinon
Les processus ARMA(p,q) généralise les modèles autorégressifs et moyennes mobiles. Ces
modèles sot très utiles en pratique pour modéliser des séries réelles en nécessitant moins de
paramètres que les modèles AR ou MA simples.
p q
Xt + ∑ ϕi Xt−i = εt + ∑ θj εt−j , ∀t ∈ Z
i=1 j=1
https://www.imo.universite-paris-saclay.fr/~goude/Materials/ProjetMLF/time_series.html 19/37
26/05/2020 Projet Machine Learning pour la Prévision: séries temporelles
Φ(L)Xt = Θ(L)εt , ∀t ∈ Z
1. ϕp ≠ 0 et θq ≠ 0
propriété si temporelles
est un processus stationnaire
Xt de représentation ARMA(p,q) minimale:
Yannig Goude
Φ(L)Xt = Θ(L)εt , ∀t ∈ Z
alors:
+∞
Θ(L)
Xt = εt = ∑ h j εt−j , h0 = 1
Φ(L)
j=0
+∞
Φ(L)
Xt = ∑ πj Xt−j = εt , π0 = 1
Θ(L)
j=0
3. l’innovation de X est ε
l’intérêt des modèles ARMA tient dans leur parcimonie. En effet, pour un ajustement aux
données de la même qualité, un ARMA nécessite moins de paramètres qu’un AR ou un MA
pur (on le comprend en regardant la décomposition AR ou MA infinie). En revanche, le choix
des ordre est plus complexe que pour les modèles AR ou MA purs.
En pratique, lorsque l’on doit ajuster un modèle AR, MA ou ARMA à des données réelles la
première question qui se pose est celle du choix des ordres p et q du modèle ARMA (on
considère que les AR et MA sont un cas particulier d’ARMA avec respectivement q = 0 et
p = 0 ). Pour choisir ces ordres, nous pouvons exploiter les résultats suivants:
Type de
Dé nition autocorrélations autocorrélations partielles
processus
https://www.imo.universite-paris-saclay.fr/~goude/Materials/ProjetMLF/time_series.html 20/37
26/05/2020 Projet Machine Learning pour la Prévision: séries temporelles
Type de
Dé nition autocorrélations autocorrélations partielles
processus
pour
Projet Machine Learning pour la Prévision: séries
ρ(h) = 0
MA(q) Xt = Θ(L)εt rien de particulier r(h)
h ≥ q + 1
ARMA(p,q) temporelles
Φ(L)Xt = Θ(L)εt ρ(h) ↘ 0, h ≥ q + 1 r(h) ↘ 0, h ≥ max(q + 1, p)
Yannig Goude
Ses résultats sont facilement exploitables dans le cas dun AR ou MA pur. Dans le cas d’un
ARMA il existe un moyen de déterminer les ordres p et q à l’aide de la méthode du coin
basée sur certains déterminant de matrices de corrélations que nous ne développons pas ici.
Une autre approche est de considérer un ensemble crédible de modèles ARMA(p,q) puis par
de sélectionner un candidat par une méthode de sélection de modèle basée sur des critères
d’information de type BIC ou AIC.
Une fois l’ordre et le type de modèle choisis, pour estimer les coefficients des modèles
plusieurs approches sont possibles.
1. Equations de Yule-Walker. Nous avons obtenus précédemment que dans le cas d’un
processus AR, les coefficients vérifient:
t=p+1
n p 2
1 ∑ (Xt − ∑ ϕj Xt−j )
t=p+1 j=1
= exp(− )
n−p
2σ 2
(2πσ 2 ) 2
n p 2
∑ (Xt − ∑ ϕj Xt−j )
t=p+1 j=1
2 2
(ϕ1 , . . . , ϕp , σ ) → + (n − p) ln(σ )
2
σ
à σ
2
fiwé cela correspond au critère des moindres carrés.
https://www.imo.universite-paris-saclay.fr/~goude/Materials/ProjetMLF/time_series.html 21/37
26/05/2020 Projet Machine Learning pour la Prévision: séries temporelles
Revenons sur le choix de l’ordre d’un ARMA(p,q). Nous avons vu précédemment que l’étude
des autocorrélations et autocorrélations partielles peuvent permettre de préselectionner un
certains nombre de modèles plausibles. On peut ensuite, une fois les paramètres de ces
modèles estimés sélectionner celui qui minimise les critères suivants:
temporelles
AIC(ϕ, θ, σ ) = −2 log(L(θ, ϕ, σ )) + 2k
2 2
BIC(ϕ, θ, σ ) = −2 log(L(θ, ϕ, σ )) + nk
library(polynom)
n<-500
sigma<-1
set.seed(100)
eps<-rnorm(n,0,sd=sigma)
pol<-poly.calc(x=c(1.5,2,1.6))
pol<--pol/pol[1]
pol
https://www.imo.universite-paris-saclay.fr/~goude/Materials/ProjetMLF/time_series.html 22/37
26/05/2020 Projet Machine Learning pour la Prévision: séries temporelles
par(mfrow=c(1,2))
acf(x1)
pacf(x1)
https://www.imo.universite-paris-saclay.fr/~goude/Materials/ProjetMLF/time_series.html 23/37
26/05/2020 Projet Machine Learning pour la Prévision: séries temporelles
L’estimation d’un modèle AR(p) par maximum de vraisemblance sur cette série se fait via la
commande:
Yannig Goude
Nous avons vu dans un chapitre antérieur comment corriger une série non-stationnaire de
composantes déterministes telles qu’une tendance ou une saisonnalité. Entre autre, nous
avons étudié l’opérateur de différenciation (rappel):
j
yt = ∑ a j t + εt
j=0
https://www.imo.universite-paris-saclay.fr/~goude/Materials/ProjetMLF/time_series.html 24/37
26/05/2020 Projet Machine Learning pour la Prévision: séries temporelles
Avec les notations des modèles ARMA, on peut remarquer que ΔXt = (1 − L)Xt et plus
généralement d
Δ Xt = (1 − L) Xt
d
. Ainsi un processus ARIMA est défini ainsi:
temporelles
d
Φ(L)(1 − L) Xt = Θ(L)εt , ∀t ∈ Z
Yannig Goude
avec les conditions suivantes:
1. ϕp ≠ 0 et θq ≠ 0
Un processus ARIMA(p,d,q) convient pour modéliser une série temporelle comprenant une
tendance polynômiale de degrés d, l’opérateur (1 − L)
d
permettant de transformer un
polynôme de degré d en une constante.
Pour estimer les paramètres d’un modèle ARIMA, on procède de même que pour un ARMA
sur le processus différencié (1 − L) Xt
d
.
Certaines série chronologiques présentent des saisonnalités. Nous avons déjà abordé le cas
de séries dont les composantes saisonnières sont déterministes et nous avons procédé par
des méthodes de régressions (paramétriques, non-paramétriques) ou par différenciation
pour les désaisonnaliser et ensuite leur appliquer une modélisation ARMA. Une autre
démarche consiste à intégrer, dans un modèle ARIMA, des décalages multiples de la
saisonnalité (par exemple retard de 12 pour des séries mensuelles possédant une
saisonnalité annuelle). En théorie, si on choisit des ordres p et q suffisamment important, ces
retards sont naturellement intégrés au modèle ARIMA(p,d,q), l’inconvénient étant qu’on
rajoute un grand nombre de retards intermédiaires potentiellement non-significatifs.
set.seed(100)
n<-500
sigma<-1
eps<-rnorm(n,0,sd=sigma)
x1<-arima.sim(n = n, list(ar =c(.6,rep(0,10),.5,-.30),innov=eps))
https://www.imo.universite-paris-saclay.fr/~goude/Materials/ProjetMLF/time_series.html 25/37
26/05/2020 Projet Machine Learning pour la Prévision: séries temporelles
Où les lag 12 et 13 sont significatifs alors que les lag intermédaires ne sont pas
significativement différents de 0. L’autocorrélogramme indiquant clairement une saisonnalité
(pas immédiat en se basant sur la trajectoire).
https://www.imo.universite-paris-saclay.fr/~goude/Materials/ProjetMLF/time_series.html 26/37
26/05/2020 Projet Machine Learning pour la Prévision: séries temporelles
d s D s s
(1 − L) Φp (L)(1 − L ) ΦP (L )Xt = Θq (L)ΘQ (L )εt , ∀t ∈ Z
L’approche de Box-Jenkins
L’approche de box jenkins, du nom des statisticiens George Box et Gwilym Jenkins, est une
méthode empirique de choix et construction de modèle SARIMA mise au point dans les
années 1970. Pour simplifier les choses nous nous intéressons ci-dessous aux processus
ARIMA.
https://www.imo.universite-paris-saclay.fr/~goude/Materials/ProjetMLF/time_series.html 27/37
26/05/2020 Projet Machine Learning pour la Prévision: séries temporelles
l’estimation des paramètres se fait ensuite par les méthodes précédemment citées
(maximum de vraisemblance, moindres carrés conditionnels).
https://www.imo.universite-paris-saclay.fr/~goude/Materials/ProjetMLF/time_series.html 28/37
26/05/2020 Projet Machine Learning pour la Prévision: séries temporelles
Une fois le modèle estimé, il est important de valider ou non nos choix de modélisation. Pour
cela différents tests et diagnostics existent.
Une fois un modèle ARIMA estimé, on peut obtenir une estimation de εt par:
ˆ −1 d
ε̂ t = Θ(L) Φ̂(L)(1 − B) Xt
n−h
∑ ε̂ t ε̂ t+h
t=1
ρ̂ ε (h) =
n 2
∑ ε̂ t
t=1
Tests du portemanteau
Test de Box-Pierce il permet de tester l’hypothèse que les résidus d’une série Xt suivant une
modélisation ARMA(p,q) sont un bruit blanc ie, pour une série Xt et ses résidus associés
ˆ
ε̂ t = Θ(L)
−1 d
Φ̂(L)(1 − B) Xt de fonction d’autocorrélation ρε (h) et son estimateur
empirique asssocié:
https://www.imo.universite-paris-saclay.fr/~goude/Materials/ProjetMLF/time_series.html 29/37
26/05/2020 Projet Machine Learning pour la Prévision: séries temporelles
2
−−−
L
−→ χ (h − k)
2
temporelles
n→+∞
j=1
où k Yannigqu’on
est le nombre de paramètre du modèle Goudeconsidère et vaut p + q ou p + q + 1
Test de Ljung-Box Il s’agit d’une variante du test précédant préconisée dans le cas ou la taille
n de la trajectoire est petite.
h 2
ρ̂ ε (j) L
2
QLB (h) = n(n + 2) ∑ −−−−→ χ (h − k)
n − j n→+∞
j=1
dé nition soit une série temporelle yt . On appelle lissage exponentiel simple de paramètre
α ∈ [0, 1] de cette série le processus ŷ t définie ainsi:
on a donc:
t−1
i
ŷ t+1/t = ∑ α(1 − α) y t−i
i=0
la prévision de l’instant t + 1 est donc une somme pondérée des valeurs passées de la série,
les poids décroissant exponentiellement dans le passé. La mémoire de la prévision dépend
de α . Plus α est proche de 1 plus les observations récentes influent sur la prévision, à
l’inverse un α proche de 0 conduit à une prévision très stable prenant en compte un passé
lointain.
https://www.imo.universite-paris-saclay.fr/~goude/Materials/ProjetMLF/time_series.html 30/37
26/05/2020 Projet Machine Learning pour la Prévision: séries temporelles
En effet, si on note:
t−1
i 2
â = argmina ∑ (1 − α) (y t−i − a)
i=0
on a ,
t−1 i t−1 i
â = ∑ (1 − α) y t−i / ∑ (1 − α)
i=0 i=0
soit α t−1 i
â = ∑ (1 − α) y t−i
t i=0
1−(1−α)
ce qui, si t est suffisamment grand tend vers l’estimateur de lissage exponentiel simple
définie précédemment.
i 2
ŷ t+1 = argmina ∑ (1 − α) (y t−i − a)
i=0
Voilà un exemple de lissage exponentiel simple sur des données simulées de la façon
suivante:
set.seed(150)
n<-100
t<-c(1:n)
eps<-rnorm(n,0,1/2)
T<-log(t)+pmax(t-50,0)/10-pmax(t-70,0)/5
X<-T+eps
https://www.imo.universite-paris-saclay.fr/~goude/Materials/ProjetMLF/time_series.html 31/37
26/05/2020 Projet Machine Learning pour la Prévision: séries temporelles
Holt (1957) a étendu le lissage exponentiel simple au cas du lissage exponentielle linéaire.
L’idée est d’ajuster une droite au lieu d’une constante dans l’approximation locale de la série.
dé nition soit une série temporelle yt . On appelle lissage exponentiel double (ou de Holt) de
paramètre α ∈ [0, 1] de cette série le processus ŷ t définie ainsi:
ŷ t+h/t = l t + bt h
avec:
2
lt l t−1 + bt−1 + (1 − (1 − α) )(y t − ŷ t/t−1 )
{
2
bt bt−1 + α (y t − ŷ t/t−1 )
ˆ ˆ i 2
( l , b ) = argminl,b ∑ (1 − α) (y t−i − (l + bi))
i=0
https://www.imo.universite-paris-saclay.fr/~goude/Materials/ProjetMLF/time_series.html 32/37
26/05/2020 Projet Machine Learning pour la Prévision: séries temporelles
https://www.imo.universite-paris-saclay.fr/~goude/Materials/ProjetMLF/time_series.html 33/37
26/05/2020 Projet Machine Learning pour la Prévision: séries temporelles
Cette approche est une généralisation du lissage double, qui permet entre autre de proposer
les modèles suivants:
ŷ t+h = l t + hbt
avec
ŷ t+h = l t + hbt + st
dé nition soit une série temporelle yt . On appelle lissage exponentiel double de Holt-
Winters saisonnier de paramètres ,
α ∈ [0, 1] β ∈ [0, 1] δ ∈ [0, 1] , de cette série le
processus ŷ t définie ainsi:
ŷ t+h = l t + hbt + st
avec
n<-100
t<-c(1:n)
https://www.imo.universite-paris-saclay.fr/~goude/Materials/ProjetMLF/time_series.html 34/37
26/05/2020 Projet Machine Learning pour la Prévision: séries temporelles
eps<-rnorm(n,0,1/2)
w<-2*pi/10
S<-cos(w*t)
T<-log(t)+pmax(t-50,0)/10-pmax(t-70,0)/5
X<-T+S+eps
https://www.imo.universite-paris-saclay.fr/~goude/Materials/ProjetMLF/time_series.html 35/37
26/05/2020 Projet Machine Learning pour la Prévision: séries temporelles
dé nition soit une série temporelle yt . On appelle lissage exponentiel double de Holt-
Winters saisonnier multiplicatif de paramètres , ,
α ∈ [0, 1] β ∈ [0, 1] δ ∈ [0, 1] de cette série
le processus ŷ t définie ainsi:
y
t
⎧
⎪ lt α + (1 − α)(l t−1 + bt−1 )
⎪ st−T
Implémentation en R
https://www.imo.universite-paris-saclay.fr/~goude/Materials/ProjetMLF/time_series.html 36/37
26/05/2020 Projet Machine Learning pour la Prévision: séries temporelles
Il est possible avec cette fonction de fixer les paramètres de lissage, ou (par défaut) de les
laisser estimer par la méthode. Dans le cas saisonnier, la période correspond à celle de la
série temporelle x (objet ts).
https://www.imo.universite-paris-saclay.fr/~goude/Materials/ProjetMLF/time_series.html 37/37