Fonctions > Traitement du signal > Analyse de séries temporelles > Exemple : Corrélation et autocorrélation partielle
  
Exemple : Corrélation et autocorrélation partielle
Utilisez les fonctions lcorr et plcorr pour calculer la corrélation d'échantillon avec retard et l'autocorrélation partielle, respectivement.
Pour des définitions et des exemples, voir "Time Series Analysis" par Bowerman et O'Connell (Duxbury), et "Forecasting Economic Time Series" par Granger et Newbold (Academic Press).
lcorr
Cette fonction lcorr suppose que les deux entrées ont la même longueur.
Supposez un signal d'entrée de la forme d'une impulsion sinusoïdale fenêtrée. Cette impulsion peut par exemple être utilisée en tant que signal de test d'un sonar. Le signal de retour voyage sur une certaine distance, rebondit sur l'objet en cours d'investigation, puis revient à la source, avec un retard (en raison du temps de parcours), atténué et parasité. En corrélant le signal reçu avec le signal de test, il est possible de déterminer le retard, et donc la distance à l'objet en cours de test.
1. Définissez le nombre de points d'échantillonnage.
Cliquez pour copier cette expression
Cliquez pour copier cette expression
Cliquez pour copier cette expression
2. Définissez la longueur d'impulsion.
Cliquez pour copier cette expression
Cliquez pour copier cette expression
3. Utilisez la fonction sin pour définir le signal.
Cliquez pour copier cette expression
Cliquez pour copier cette expression
4. Utilisez la fonction hanning pour définir la fonction de fenêtrage.
Cliquez pour copier cette expression
Cliquez pour copier cette expression
Cliquez pour copier cette expression
La largeur de la fenêtre est égale à 200.
La longueur du vecteur x est de 1000 éléments.
5. Tracez le signal d'entrée x, puis utilisez un marqueur vertical pour afficher la ligne de longueur de pulsation.
Cliquez pour copier cette expression
6. Utilisez la fonction rnd pour définir le bruit aléatoire, puis définissez le retard et l'atténuation du signal de retour.
Cliquez pour copier cette expression
Cliquez pour copier cette expression
Cliquez pour copier cette expression
7. Définissez et tracez le signal de retour ainsi que le signal d'entrée.
Cliquez pour copier cette expression
Cliquez pour copier cette expression
Lorsque le retard n'est pas connu, par exemple lorsque les signaux sont mesurés et non simulés, il est difficile de déterminer à quel endroit se situe l'impulsion de retour sur le tracé de bruit ci-dessus.
Au moment ou à proximité du retard, on s'attend à ce que la corrélation linéaire de x et de y soit maximale, comparée à d'autres échantillons corrélés. En effet, la corrélation fait glisser un signal sur un autre, multipliant et sommant pour arriver à chaque échantillon. Lorsque le retard est atteint, le chevauchement est maximal.
8. Utilisez les fonctions lcorr, max et match pour vérifier que la corrélation linéaire de x et y est au maximum au moment du temps de retard ou autour de celui-ci.
Cliquez pour copier cette expression
Cliquez pour copier cette expression
Cliquez pour copier cette expression
Autocorrélation à l'aide de lcorr
Utilisez l'autocorrélation pour estimer l'ordre d'un processus de moyenne mobile.
1. Utilisez les fonctions rnd et movavg pour lisser une séquence aléatoire, avec une largeur de fenêtre de N.
Cliquez pour copier cette expression
Cliquez pour copier cette expression
Cliquez pour copier cette expression
Cliquez pour copier cette expression
2. Tracez la moyenne mobile.
Cliquez pour copier cette expression
3. Utilisez la fonction lcorr pour calculer et tracer l'autocorrélation de Y.
Cliquez pour copier cette expression
Cliquez pour copier cette expression
Cliquez pour copier cette expression
Les premières valeurs N d'autocorrélation forment une ligne plus ou moins droite déclinant vers 0 à N Si l'on ne connaissait pas la valeur de N, on pourrait utiliser ce comportement pour en faire une estimation correcte.
4. Pour la référence, utilisez la fonction slope pour calculer la pente de ce segment initial et le comparer à -1/N.
Cliquez pour copier cette expression
Cliquez pour copier cette expression
Cliquez pour copier cette expression
Cliquez pour copier cette expression
Cliquez pour copier cette expression
Cliquez pour copier cette expression
L'autocorrélation est une transformée de Fourier du spectre du signal. Elle peut par conséquent être calculée efficacement à l'aide de la fonction dft.
plcorr
Cette fonction plcorr est utilisée pour estimer l'ordre du modèle capable de réaliser la meilleure approximation d'une série temporelle autorégressive, et pour calculer le paramètre du modèle.
La séquence d'autocorrélation partielle, également appelée séquence de coefficients de réflexion, représente la corrélation entre les valeurs de la série temporelle aux temps t et t-k, après que ces valeurs ont été ajustées en soustrayant les prédictions avant et arrière. Les prédictions sont basées sur les valeurs de la série aux temps intermédiaires.
Pour des détails techniques supplémentaires, voir l'ouvrage de D. B. Percival et A. T. Walden, "Spectral Analysis for Physical Applications" p. 409, Cambridge University Press, 1993, qui décrit l'utilisation de la récursivité de Levinson-Durban pour les modèles autorégressifs.
Pour illustrer l'utilisation de la fonction d'autocorrélation partielle plcorr, appliquez les étapes suivantes pour construire un processus autorégressif.
1. Définissez les coefficients du processus.
Cliquez pour copier cette expression
Cliquez pour copier cette expression
2. Utilisez la fonction rnd pour initialiser la série de temps.
Cliquez pour copier cette expression
Cliquez pour copier cette expression
3. Générez le reste de la série à l'aide du signal d'autorégression et du bruit aléatoire.
Cliquez pour copier cette expression
Cliquez pour copier cette expression
4. Calculez et tracez les 200 premières étapes du processus.
Cliquez pour copier cette expression
Cliquez pour copier cette expression
5. Utilisez les fonctions lcorr et plcorr pour calculer l'autocorrélation et l'autocorrélation partielle.
Cliquez pour copier cette expression
Cliquez pour copier cette expression
6. Tracez les 30 premiers éléments de chaque vecteur de corrélation, puis utilisez un marqueur vertical pour marquer le nombre de coefficients.
Cliquez pour copier cette expression
Cliquez pour copier cette expression
Pour le processus autorégressif b, l'autocorrélation oscille, mais l'autocorrélation partielle disparaît surtout après 6. Par conséquent, l'autocorrélation partielle donne des informations sur l'ordre du processus, pouvant par exemple être utilisées ensuite avec la fonction burg.
Les séries temporelles de données économiques sont souvent ajustées et analysées à l'aide de modèles d'ordre faible, pour lesquels seul un nombre restreint de coefficients plcorr sont différents de zéro. Les données dont les coefficients plcorr ne diminuent pas rapidement peuvent indiquer la présence d'un phénomène non linéaire. Une technique adoptée couramment dans ce cas consiste à différencier les données et à analyser les données différenciées pour les corrélations.