RLME - Régression linéaire mobile exponentielle
Moyenne arithmétique
Rappelons que la moyenne arithmétique d'une série de nombres Y(1),
..., Y(n) est définie par :
M = (Y(1) + ... + Y(n)) / n
Moyenne mobile exponontielle (MME)
La MME permet de lisser une série temporelle, par exemple le cours
d'un instrument financier. C'est une moyenne pondérée de la valeur
actuelle et de la MME précédente. La MME de Y est définie par :
MMEY(t) = c * Y(t) + (1-c) * MMEY(t-1)
Le MME présente l'inconvénient d'être décalée vers le futur par
rapport à la série étudiée.
Régression linéaire
La régression linéaire consiste à déterminer, à partir d'un ensemble
de points (X(i), Y(i)) une fonction linéaire f(X) = a * X + b qui
minimise les écarts entre f(X(i)) et Y(i).
Les formules de calcul de a et b sont les suivantes :
( voir http://informatique.coursgratuits.net/methodes-numeriques/regressions-et-interpolations.php
)
a = (n * somme(X(i)*Y(i)) - somme(X(i)) * somme(Y(i))) / (n *
somme(X(i)^2) - (somme(X(i)))^2)
b = (somme(X(i)^2) * somme(Y(i)) - somme(X(i)) * somme(X(i)*Y(i))) /
(n * somme(X(i)^2) - (somme(X(i)))^2)
avec somme = somme pour i=1 à n
On peut réécrire ces formules en utilisant des moyennes au lieu de
sommes, en remplaçant somme(...) par n * moyenne(...) où moyenne(...)
désigne la moyenne arithmétique des (...) En effectuant cette
substitution et en simplifiant, on obtient :
a = (moyenne(X(i)*Y(i)) - moyenne(X(i)) * moyenne(Y(i))) /
(moyenne(X(i)^2) - moyenne(X(i))^2)
b = (moyenne(X(i)^2) * moyenne(Y(i)) - moyenne(X(i)) *
moyenne(X(i)*Y(i))) / (moyenne(X(i)^2) - moyenne(X(i))^2)
Dans le cas particulier d'une série temporelle avec t = 1, 2, 3, ...
on a i = t et X(i) = i = t.
Régression linéaire mobile exponentielle (RLME)
La RLME est à la régression linéaire ce que la MME est à la moyenne
arithmétique. Elle est obtenue en remplaçant dans la formule de la
régression linéaire les moyennes arithmétiques par des MME.
On peut calculer la RLME d'une série temporelle Y(T) par les formules
suivantes :
- MMEY(0) = Y(0)
- MMET(0) = 0
- MMET2(0) = 0
- MMETY(0) = 0
- A(0) = 0
- B(0) = Y(0)
- MMEY(T) = c * Y(T) + (1-c) * MMEY(T-1)
- MMET(T) = c * T + (1-c) * MMET(T-1)
- MMET2(T) = c * T^2 + (1-c) * MMET2(T-1)
- MMETY(T) = c * T * Y(T) + (1-c) * MMETY(T-1)
- D(T) = MMET2(T) - MMET(T)^2
- si D(T) = 0 alors A(T) = A(T-1) sinon A(T) = (MMETY(T) - MMET(T)
* MMEY(T)) / D(T)
- si D(T) = 0 alors B(T) = B(T-1) sinon B(T) = (MMET2(T) * MMEY(T)
- MMET(T) * MMETY(T)) / D(T)
- RLME(T) = A(T) * T + B(T)
On obtient ainsi un lissage de la série temporelle X(t) qui "colle"
mieux à celle-ci que sa MME.