Cliquez pour en savoir plus sur l'auteur Maarit Widmann.
Une application complète d'analyse de séries chronologiques couvre les étapes d'un Sciences des données cycle depuis l’accès à la transformation, la modélisation, l’évaluation et le déploiement des données de séries chronologiques. Cependant, pour les données de séries chronologiques, les tâches spécifiques de ces étapes diffèrent par rapport aux données transversales. Par exemple, les données transversales sont collectées sous la forme d'un instantané d'un objet à un moment donné, tandis que les données de séries chronologiques sont collectées en observant le même objet sur une période donnée. Les modèles réguliers dans les données de séries chronologiques ont leur terminologie spécifique et déterminent le prétraitement requis avant de passer à la modélisation des séries chronologiques. Les séries chronologiques peuvent être modélisées avec de nombreux types de modèles, mais des modèles de séries chronologiques spécifiques, tels qu'un modèle ARIMA, utilisent la structure temporelle entre les observations.
Dans cet article, nous présentons les tâches les plus courantes dans le processus de création d'une application de séries chronologiques. Enfin, nous mettons la théorie en pratique en créant un exemple d'application dans la plateforme Analytics.
Accéder aux séries chronologiques
Les séries chronologiques ont diverses sources et applications : données de ventes quotidiennes pour la prévision de la demande, données macroéconomiques annuelles pour la planification politique à long terme, données de capteurs d'une montre intelligente pour analyser une séance d'entraînement, et bien d'autres encore. Toutes ces séries chronologiques diffèrent, par exemple, par leur granularité, leur régularité et leur propreté : nous pouvons être sûrs que nous disposons d'une valeur du PIB pour notre pays pour cette année et pour les 10 prochaines années également, mais nous ne pouvons pas garantir que la Le capteur de notre montre intelligente fonctionne de manière stable dans n'importe quel exercice et à n'importe quelle température. Il se peut également que les données chronologiques ne soient pas disponibles à intervalles réguliers, mais ne puissent être collectées qu'à partir d'événements aléatoires, tels que des infections infectieuses ou des visites spontanées de clients. Ce que tous ces types de données de séries chronologiques ont en commun, c’est qu’elles sont collectées à partir de la même source au fil du temps.
Séries chronologiques de régularisation et de nettoyage
Une fois que nous disposons des données de séries chronologiques, l'étape suivante consiste à les rendre également espacées avec une granularité appropriée, continue et propre. Les tâches requises dépendent de la forme originale des données et également de notre analytique but. Par exemple, si nous prévoyons une promotion d’une semaine pour un produit, nous pourrions être intéressés par des données plus granulaires que si nous souhaitons avoir un aperçu des ventes d’un produit.
tri
Les séries temporelles doivent être triées par heure. Lorsque vous divisez les données en ensembles d'entraînement et de test, n'oubliez pas de préserver la structure temporelle entre les enregistrements en prenant les données de haut en bas pour les tests/entraînement. Si vos données contiennent plusieurs enregistrements par horodatage, vous devez les regrouper par horodatage. Par exemple, lorsque vous avez plusieurs commandes par jour et que vous êtes intéressé par les ventes quotidiennes, vous devez additionner les ventes de chaque jour. De plus, si vous êtes intéressé par la série chronologique avec une autre granularité que celle que vous avez actuellement dans les données (par exemple, ventes mensuelles au lieu de ventes quotidiennes), vous pouvez agréger davantage les données à la granularité souhaitée.
Valeurs manquantes
Si certains horodatages sont manquants, vous devez les introduire dans la série chronologique afin de la rendre équidistante. Parfois, les enregistrements manquants font partie de la dynamique de la série chronologique (par exemple, une bourse ferme un vendredi et ouvre un lundi).
Lorsque vous introduisez les horodatages manquants dans les données, les valeurs correspondantes sont bien entendu manquantes. Vous pouvez imputer ces valeurs manquantes, par exemple par interpolation linéaire ou par valeurs moyennes mobiles. N'oubliez pas, cependant, que la meilleure technique pour imputer les valeurs manquantes dépend de la dynamique régulière des données. Par exemple, si vous inspectez la saisonnalité hebdomadaire dans les données quotidiennes et qu'il manque une valeur pour un samedi, la valeur du samedi dernier est probablement le meilleur remplacement. Si les valeurs manquantes ne manquent pas par hasard, comme les cours de clôture manquants en bourse le week-end, vous pouvez les remplacer par une valeur fixe, qui serait dans ce cas 0. D'un autre côté, si les valeurs manquantes sont aléatoires et qu'elles se produisent suffisamment loin dans le passé, vous pouvez utiliser les données après la valeur manquante et ignorer les données plus anciennes.
Motifs irréguliers
Un bon moyen de gérer les fluctuations rapides et les valeurs aberrantes consiste à lisser les données. Plusieurs techniques peuvent être utilisées, telles que moyenne mobile ainsi que lissage exponentiel. De plus, la suppression des valeurs situées en dehors des moustaches d'un diagramme en boîte lisse les données. Gardez à l’esprit qu’une forte saisonnalité des données peut conduire à une boîte à moustaches généralisée, et il est alors préférable d’utiliser une boîte à moustaches conditionnelle pour détecter les valeurs aberrantes.
Cependant, parfois, la série chronologique ne montre qu’un phénomène très irrégulier ! Dans un tel cas, vous pouvez essayer de rendre la série temporelle plus régulière en en extrayant un sous-ensemble, par exemple en considérant uniquement les ventes d'un produit au lieu des ventes de l'ensemble du supermarché, ou en regroupant les données.
Explorer et transformer des séries chronologiques
À ce stade, nous disposons de nos données de séries chronologiques sous une forme adaptée à leur exploration visuelle et numérique. Les différents tracés et statistiques révèlent des modèles et des relations temporelles à long et à court terme dans la série chronologique que nous pouvons utiliser pour mieux en comprendre la dynamique et prédire son développement futur.
Exploration visuelle des séries chronologiques
Le graphique de base pour explorer les séries chronologiques est le tracé linéaire (Figure 3) qui montre une direction possible, des fluctuations régulières et irrégulières, des valeurs aberrantes, des lacunes ou des points tournants dans la série chronologique. Si vous observez une tendance régulière dans votre série chronologique, telle qu'une saisonnalité annuelle dans les ventes de boissons, vous pouvez ensuite inspecter chaque cycle saisonnier (année) séparément dans un graphique saisonnier (Figure 3). Dans le graphique saisonnier, vous pouvez facilement voir, par exemple, si juillet a été un mois de ventes plus important cette année que l'année dernière, ou si les ventes mensuelles augmentent d'année en année.
Si vous êtes intéressé par ce qui se passe au fil des saisons, par exemple quelles sont les ventes médianes au cours des mois d'été et dans quelle mesure et dans quelle direction les ventes varient chaque mois, vous pouvez inspecter ces types de dynamiques dans une boîte à moustaches conditionnelle (Figure 3). Un autre graphique utile pour explorer les séries chronologiques est le tracé de décalage (Figure 3). Le diagramme de décalage montre la relation entre les valeurs actuelles et les valeurs passées, par exemple les ventes d'aujourd'hui et les ventes de la semaine précédente.
Décomposition classique des séries chronologiques
La décomposition classique, c'est-à-dire la décomposition de la série chronologique en tendance, saisonnalités et résiduel, constitue une bonne référence pour la prévision. La partie restante de la série chronologique, le résidu, est censée être stationnaire, et peut être prévu par un modèle ARIMA, par exemple. N'oubliez pas, cependant, que si la série résiduelle n'est pas stationnaire, certaines transformations supplémentaires peuvent être nécessaires, telles qu'une différenciation du premier ordre ou une transformation logarithmique de la série chronologique d'origine.
Premièrement, si la série chronologique montre une direction, une tendance, la série chronologique peut être déduite, par exemple en ajustant un modèle de régression aux données ou en calculant une valeur moyenne mobile.
Deuxièmement, si la série chronologique présente une fluctuation régulière (une saisonnalité), elle peut être ajustée en conséquence. Vous pouvez trouver le décalage où se produit la saisonnalité majeure dans le tracé d'autocorrélation de la série chronologique. Par exemple, si vous observez un pic au décalage de 7 et que vous disposez de données quotidiennes, alors les données auront une saisonnalité hebdomadaire. La saisonnalité peut être ajustée en différenciant les données au moment où se produit le pic majeur. Si vous souhaitez ajuster la deuxième saisonnalité des données, vous pouvez le faire en répétant la procédure pour la série temporelle ajustée (différenciée).
Enfin, lorsque vous avez atteint une série temporelle stationnaire prête à être modélisée par exemple par un modèle ARIMA, vous pouvez faire une dernière vérification avec, par exemple, Test de Ljung-box pour la stationnarité.
Modélisation et évaluation de séries chronologiques
Passons maintenant à la modélisation de la partie résiduelle de la série temporelle qui contient sa dynamique irrégulière. Nous pouvons le faire avec les modèles ARIMA, machine learning modèles, réseaux de neurones et de nombreuses variantes de ceux-ci. On modélise souvent la partie résiduelle de la série temporelle par ces modèles, car elle est stationnaire. Cependant, décomposer les séries temporelles n'est pas toujours nécessaire, car certains modèles, comme par exemple le modèle saisonnier ARIMA, fonctionnent également pour modéliser des séries temporelles non stationnaires.
Dans ce qui suit, nous rassemblons quelques propriétés de ces différentes techniques de modélisation, leurs similitudes et leurs différences, afin que vous puissiez choisir celle qui convient le mieux à votre cas d'utilisation. N’oubliez pas non plus qu’il est utile d’entraîner plusieurs modèles, et même d’en construire un ensemble !
Modèles ARIMA
ARIMA (Autoregressive Integrated Moving Average) est un modèle de régression linéaire entre les valeurs actuelles et passées (partie AR), ainsi qu'entre les erreurs de prévision actuelles et passées (partie MA). Si le modèle a une partie I non nulle, alors les données sont différenciées afin de le rendre stationnaire. Les modèles ARIMA de base supposent que la série chronologique est stationnaire et que les séries chronologiques stationnaires n'ont pas de modèles prévisibles à long terme. La baisse de précision des prévisions à long terme se reflète dans l’augmentation des intervalles de confiance des prévisions. Avoir plus de données n'est pas toujours préférable pour former des modèles ARIMA : des ensembles de données volumineux peuvent rendre l'estimation des paramètres d'un modèle ARIMA fastidieuse, ainsi qu'exagérer la différence entre le processus réel et le processus du modèle.
Modèles d'apprentissage automatique
Les modèles d'apprentissage automatique utilisent les valeurs décalées comme colonnes de prédicteurs et ignorent la structure temporelle entre la colonne cible et les colonnes de prédicteurs. Les modèles d'apprentissage automatique peuvent également identifier des modèles à long terme et des points tournants dans les données, à condition que suffisamment de données soient fournies dans les données de formation pour établir ces modèles. En général, plus les données présentent d’irrégularités, plus il faut de données pour entraîner le modèle. Lorsque vous appliquez un modèle d’apprentissage automatique, il est recommandé de modéliser le résidu. Sinon, vous risquez de construire un modèle plus compliqué que le modèle de décomposition classique, mais qui n’apprend rien de nouveau en plus !
Conseils sur la sélection du modèle
Premièrement, certains phénomènes sont difficiles à prévoir et, dans un tel cas, il est souvent judicieux d'opter pour un modèle plus simple et de ne pas investir de ressources dans la modélisation de quelque chose qui ne peut pas être prévu avec précision.
Deuxièmement, la performance du modèle n’est pas le seul critère. Si des décisions importantes sont basées sur les résultats du modèle, son interprétabilité pourrait être plus importante qu'une performance légèrement meilleure. Cela dit, un réseau de neurones pourrait perdre contre un simple modèle de décomposition classique, même s'il prédit un peu mieux.
Troisièmement, l'ajout de variables explicatives à votre modèle pourrait améliorer la précision des prévisions. Cependant, dans un tel modèle, les variables explicatives doivent également être prévues, et la complexité croissante du modèle ne justifie pas toujours une meilleure précision. Parfois, des estimations approximatives suffisent pour étayer les décisions : si les montants des expéditions sont calculés en dizaines et en centaines, la demande prévue n'a pas besoin non plus d'avoir une plus grande granularité.
Évaluation du modèle
Après avoir entraîné un modèle, l’étape suivante consiste à l’évaluer. Pour la prévision au sein d'un échantillon, l'ensemble de test est l'ensemble d'entraînement lui-même, de sorte que le processus du modèle est adapté aux données qui ont été utilisées pour entraîner le modèle. Pour la prévision hors échantillon, l'ensemble de test est ultérieur à l'ensemble d'apprentissage dans le temps.
Une mesure d’erreur recommandée pour évaluer un modèle de série chronologique est le pourcentage d’erreur absolu moyen (MAPE), puisqu'il fournit l'erreur sur une échelle universelle, en pourcentage de la valeur réelle. Cependant, si la vraie valeur est zéro, cette métrique n'est pas définie, ni d'autres métriques d'erreur, comme l'erreur quadratique moyenne (RMSE), ça ira. Ce qui est souvent recommandé, cependant, c'est de NE PAS utiliser R-carré. La métrique R au carré ne correspond pas au contexte de l’analyse des séries chronologiques, car l’accent est mis sur la prévision de la variabilité systématique future de la colonne cible au lieu de modéliser toute la variabilité du passé.
Prévision et reconstruction de séries chronologiques
Nous y sommes presque! La dernière étape consiste à prévoir les valeurs futures et à reconstruire le signal.
Prévision dynamique
Si votre modèle ne peut pas fournir de prévisions précises à long terme, le déploiement dynamique améliore souvent la précision des prévisions hors échantillon. Dans le déploiement dynamique, un seul point dans le futur est prévu à la fois, et les données passées sont mises à jour en fonction de cette valeur de prévision pour générer la prévision suivante (Figure 5).
Restaurer les tendances et les saisonnalités
Enfin, si nous décomposons les séries chronologiques avant de faire des prévisions, nous devons restituer la tendance et/ou les saisonnalités aux prévisions. Si nous ajustons la saisonnalité en différenciant les données, nous commençons à reconstruire le signal en ajoutant des valeurs au décalage où la saisonnalité se produit. Par exemple, si nous disposions de données quotidiennes pour lesquelles nous appliquions une différenciation saisonnière avec un décalage de 7 (saisonnalité hebdomadaire), la restauration de cette saisonnalité nécessiterait le calcul suivant pour les valeurs de prévision yt+1, yt+2, ..., yt+h :
De tc'est le dernier moment dans les données d'entraînement, et h est l’horizon de prévision.
Afin de restaurer la deuxième saisonnalité, nous répéterions l'étape décrite ci-dessus pour la série chronologique restaurée. Si nous voulions restaurer la composante de tendance dans la série chronologique, nous appliquerions le modèle de régression représentant la tendance à la série chronologique restaurée.
Application complète de séries chronologiques dans la plateforme d'analyse
Enfin, voyons comment mettre ces étapes en pratique à l’aide de notre plateforme d’analyse. Le flux de travail Accès aux séries temporelles de transformation et de modélisation (disponible sur le Hub) dans la figure 6 montre les étapes allant de l'accès au nettoyage, à l'exploration visuelle, à la décomposition et à la modélisation des séries temporelles. Pour certaines de ces tâches, nous utilisons composants de séries chronologiques qui encapsulent les workflows sous forme de fonctionnalités spécifiques aux séries temporelles : agréger les données à la granularité sélectionnée, effectuer la décomposition classique, et bien plus encore.
Dans cet exemple, nous utilisons le Échantillon – Supermagasin données fournies par Tableau. Dans notre analyse, nous nous concentrons sur les commandes de tous les produits de 2014 à 2017, soit au total 9994 enregistrements. Nous commençons le prétraitement en remodelant les données en données de séries chronologiques en calculant les ventes totales par jour. Désormais, nous n'avons qu'une seule valeur par jour, mais certains jours manquent car aucune commande n'a été soumise ces jours-là. Par conséquent, nous introduisons ces jours dans la série chronologique et remplaçons les valeurs de ventes manquantes par une valeur fixe 0. Après cela, nous agrégeons les données au niveau mensuel et considérons les ventes moyennes de chaque mois dans une analyse plus approfondie.
Pour l’exploration visuelle, nous agrégeons également les données au niveau annuel et nous découvrons qu’il y a un tournant au début de l’année 2015, comme le montre le tracé linéaire à droite de la figure 7. Le tracé linéaire de gauche montre la saisonnalité annuelle des données : il y a deux pics réguliers à la fin de chaque année et un pic inférieur au début de chaque année. Nous détectons également une saisonnalité annuelle dans les données, comme le montre le pic majeur au décalage de 12 dans le graphique ACF de gauche. Nous décomposons la série chronologique en tendance, saisonnalité et résiduel, et ces composants sont représentés dans le tracé linéaire au milieu de la figure 7. Le tracé ACF de droite ne montre aucune autocorrélation significative dans la série résiduelle.
Ensuite, nous modélisons la série résiduelle des ventes mensuelles moyennes avec un modèle ARIMA. Après différenciation au décalage de 12, la longueur de la série chronologique est de 36 observations. Nous recherchons le meilleur modèle avec le composant Auto ARIMA Learner avec un ordre maximum de 4 pour les pièces AR et MA et un ordre maximum de 1 pour la pièce I. Le modèle le plus performant basé sur Critère d'information Akaike est ARIMA (0, 1, 4), et le MAPE résultant basé sur les prévisions dans l'échantillon est de 1.153.
Enfin, nous évaluons la précision des prévisions hors échantillon du modèle. Le flux de travail Prévision et reconstruction de séries chronologiques (disponible sur le Hub) dans la figure 8 montre comment prévoir les ventes quotidiennes en 2017 sur la base des données mensuelles des années 2014 à 2016 (24 observations) et le modèle ARIMA gagnant (0,1,4) utilisant le déploiement dynamique approche. Après cela, nous reconstruisons le signal, dans ce cas, rétablissons la tendance et la saisonnalité annuelle aux valeurs prévues (valeurs de ventes moyennes mensuelles sur 12). Nous comparons les valeurs réelles et prévues et obtenons un MAPE de 0.336.
Résumé
Les séries chronologiques, qu'il s'agisse de données de capteurs montrant le comportement d'un petit objet nanoseconde après nanoseconde, de données macroéconomiques du 20e siècle ou de quelque chose entre les deux, font appel à des techniques d'analyse spécifiques qui s'appliquent aux étapes d'accès, de manipulation et de modélisation.
Dans cet article, nous vous avons présenté les bases des techniques d'analyse pour les séries chronologiques qui vous aident à démarrer lorsque vous travaillez avec des données de séries chronologiques.
Bibliographie
[1] Chambers, John C., Satinder K. Mullick et Donald D. Smith. Comment choisir la bonne technique de prévision. Université Harvard, École supérieure d'administration des affaires, 1971.
[2] Hyndman, Rob J. et George Athanasopoulos. Prévisions : principes et pratiques. OTextes, 2018.
Source : https://www.dataversity.net/building-a-time-series-analysis-application/
- Absolute
- Supplémentaire
- selon une analyse de l’Université de Princeton
- analytique
- Application
- applications
- AR
- article
- auto
- Basics
- référence
- LES MEILLEURS
- Boissons
- corps
- Box
- construire
- Développement
- la performance des entreprises
- Nettoyage
- Colonne
- Commun
- composant
- confiance
- d'exportation
- Courant
- données
- journée
- Demande
- Développement
- Maladie
- estimations
- événement
- Exercises
- exploration
- Figure
- finalement
- Prénom
- s'adapter
- Focus
- Vendredi
- avenir
- PIB
- Général
- George
- Bien
- diplôme
- Maniabilité
- harvard
- Harvard University
- Comment
- How To
- HTTPS
- Des centaines
- identifier
- image
- Infections
- d'information
- IT
- Juillet
- gros
- conduire
- APPRENTISSAGE
- apprenant
- apprentissage
- Niveau
- Gamme
- Location
- machine learning
- majeur
- Marché
- Métrique
- modèle
- modélisation statistique
- lundi XNUMX
- données mensuelles
- mois
- Bougez
- réseau et
- réseaux
- Neural
- Réseau neuronal
- les réseaux de neurones
- ouvre
- de commander
- passer commande
- Autre
- Patron de Couture
- performant
- et la planification de votre patrimoine
- plateforme
- prédiction
- Produit
- Produits
- promotion
- Articles
- régression
- Les relations
- Ressources
- Résultats
- vente
- Escaliers intérieurs
- L'école
- choisi
- sens
- Série
- set
- Livraison
- étapes
- petit
- smart
- Instantané
- So
- Commencer
- j'ai commencé
- statistiques
- stock
- marché boursier
- soumis
- été
- Support
- Tableau
- Target
- tester
- Les bases
- El futuro
- fiable
- top
- Formation
- De La Carrosserie
- Universel
- université
- Plus-value
- Montres
- semaine
- hebdomadaire
- Qu’est ce qu'
- Wikipédia
- dans les
- Activités principales
- workflow
- entraînement
- vaut
- an
- années
- zéro