Analyse et prévision de séries temporelles

Table des matières:

Analyse et prévision de séries temporelles
Analyse et prévision de séries temporelles
Anonim

Pendant de nombreuses années, les gens ont prédit les conditions météorologiques, les événements économiques et politiques et les résultats sportifs, récemment cette longue liste a été reconstituée avec des crypto-monnaies. Pour prévoir des événements polyvalents, il existe de nombreuses façons de développer des prévisions. Par exemple, l'intuition, les opinions d'experts, l'utilisation des résultats passés pour les comparer aux statistiques traditionnelles et les prévisions de séries chronologiques ne sont que l'un d'entre eux, tandis que le type de prévisions le plus moderne et le plus précis avec un large éventail d'applications.

Méthode des séries chronologiques

Méthode des séries chronologiques
Méthode des séries chronologiques

Une méthode de série temporelle (TS) est un ensemble de données qui collecte des informations sur une période de temps. Il existe des méthodes spéciales pour extraire ce type:

  • linéaire et non linéaire;
  • paramétrique et non paramétrique;
  • unidimensionnel et multidimensionnel.

Heure de prévisionsérie apporte un ensemble unique de fonctionnalités pour relever les défis d'aujourd'hui. La modélisation repose sur l'apprentissage pour établir la force motrice derrière le changement de données. Le processus découle de tendances à long terme, d'effets saisonniers ou de fluctuations irrégulières qui sont caractéristiques de TS et qui ne sont pas observées dans d'autres types d'analyse.

L'apprentissage automatique est une branche de l'informatique où les algorithmes sont compilés à partir de données et incluent des réseaux de neurones artificiels, l'apprentissage en profondeur, des règles d'association, des arbres de décision, l'apprentissage par renforcement et des réseaux bayésiens. Une variété d'algorithmes offrent des options pour résoudre les problèmes, et chacun a ses propres exigences et compromis en termes d'entrée de données, de vitesse et de précision des résultats. Celles-ci, ainsi que la précision des prédictions finales, seront pondérées lorsque l'utilisateur décidera quel algorithme fonctionnera le mieux pour la situation étudiée.

La prévision des séries chronologiques emprunte au domaine des statistiques, mais donne de nouvelles approches à la modélisation des problèmes. Le principal problème pour l'apprentissage automatique et les séries chronologiques est le même: prédire de nouveaux résultats sur la base de données déjà connues.

La cible du modèle prédictif

Objectif du modèle prédi-t.webp
Objectif du modèle prédi-t.webp

TS est un ensemble de points de données collectés à intervalles réguliers. Ils sont analysés pour déterminer une tendance à long terme, pour prédire l'avenir ou pour effectuer un autre type d'analyse. Il y a 2 choses qui rendent TS différent d'un problème de régression normal:

  1. Ils dépendent du temps. Alorsl'hypothèse de base d'un modèle de régression linéaire selon laquelle les observations sont indépendantes ne tient pas dans ce cas.
  2. Avec une tendance à la hausse ou à la baisse, la plupart des TS ont une certaine forme de saisonnalité, c'est-à-dire des changements spécifiques à une certaine période de temps.

L'objectif d'un modèle de prévision de série chronologique est de fournir une prévision précise à la demande. La série chronologique a le temps (t) comme variable indépendante et comme variable dépendante cible. Dans la plupart des cas, la prévision est un résultat spécifique, par exemple le prix de vente d'une maison, le résultat sportif de la compétition, les résultats de la négociation en bourse. La prédiction représente la médiane et la moyenne et comprend un intervalle de confiance exprimant un niveau de confiance dans la plage de 80 à 95 %. Lorsqu'ils sont enregistrés à intervalles réguliers, les processus sont appelés séries temporelles et s'expriment de deux manières:

  • unidimensionnel avec un indice de temps qui crée un ordre implicite;
  • un ensemble à deux dimensions: le temps avec une variable indépendante et une autre variable dépendante.

La création de fonctionnalités est l'une des tâches les plus importantes et les plus chronophages du machine learning appliqué. Cependant, la prévision des séries chronologiques ne crée pas de caractéristiques, du moins pas au sens traditionnel. Cela est particulièrement vrai lorsque vous souhaitez prédire le résultat plusieurs étapes à l'avance, et pas seulement la valeur suivante.

Cela ne signifie pas que les fonctionnalités sont complètement désactivées. Ils doivent simplement être utilisés avec prudence pour les raisons suivantes:

  1. Je ne sais pas quel futur réelles valeurs seront pour ces fonctionnalités.
  2. Si les objets sont prévisibles et ont des modèles, vous pouvez construire un modèle prédictif pour chacun d'eux.

Cependant, sachez que l'utilisation de valeurs prédictives comme caractéristiques propagera l'erreur dans la variable cible et entraînera des erreurs ou des prédictions biaisées.

Composants de séries temporelles

Composants de séries chronologiques
Composants de séries chronologiques

La tendance existe lorsque la série augmente, diminue ou reste à un niveau constant dans le temps, elle est donc considérée comme une fonction. La saisonnalité fait référence à une propriété d'une série chronologique qui affiche des modèles périodiques qui se répètent à une fréquence constante (m), par exemple, m=12 signifie que le modèle se répète tous les douze mois.

Des variables factices similaires à la saisonnalité peuvent être ajoutées en tant que fonction binaire. Vous pouvez, par exemple, prendre en compte les jours fériés, les événements spéciaux, les campagnes marketing, que la valeur soit étrangère ou non. Cependant, vous devez vous rappeler que ces variables doivent avoir certains modèles. Cependant, le nombre de jours peut être facilement calculé même pour des périodes futures et influencer les prévisions de séries chronologiques, en particulier dans le domaine financier.

Les cycles sont des saisons qui ne se déroulent pas à un rythme fixe. Par exemple, les attributs de reproduction annuelle du lynx du Canada reflètent des modèles saisonniers et cycliques. Ils ne se répètent pas à intervalles réguliers et peuvent survenir même si la fréquence est de 1 (m=1).

Valeurs décalées -les valeurs retardées d'une variable peuvent être incluses comme prédicteurs. Certains modèles, tels que ARIMA, Vector Autoregression (VAR) ou Autoregressive Neural Networks (NNAR), fonctionnent de cette façon.

Les composants de la variable d'intérêt sont très importants pour l'analyse et la prévision des séries chronologiques, pour comprendre leur comportement, leurs modèles et pour pouvoir sélectionner le modèle approprié.

Attributs du jeu de données

Attributs du jeu de données
Attributs du jeu de données

Vous avez peut-être l'habitude de saisir des milliers, des millions et des milliards de points de données dans des modèles de machine learning, mais cela n'est pas obligatoire pour les séries chronologiques. En effet, il est possible de travailler avec des TS petits et moyens, selon la fréquence et le type de variable, et ce n'est pas un inconvénient de la méthode. De plus, cette approche présente en fait un certain nombre d'avantages:

  1. De tels ensembles d'informations correspondront aux capacités d'un ordinateur personnel.
  2. Dans certains cas, effectuez des analyses et des prévisions de séries chronologiques en utilisant l'ensemble de données complet, pas seulement un échantillon.
  3. La longueur TS est utile pour créer des graphiques qui peuvent être analysés. C'est un point très important car les programmeurs s'appuient sur des graphiques dans la phase d'analyse. Cela ne signifie pas qu'ils ne fonctionnent pas avec d'énormes séries temporelles, mais au départ, ils devraient être capables de gérer des TS plus petits.
  4. Tout ensemble de données contenant un champ lié au temps peut bénéficier de l'analyse et de la prévision de séries chronologiques. Cependant, si le programmeur dispose d'un ensemble de données plus important, la base de données (TSDB)peut être plus approprié.

Certains de ces ensembles proviennent d'événements enregistrés avec horodatage, journaux système et données financières. Étant donné que TSDB fonctionne nativement avec des séries chronologiques, c'est une excellente occasion d'appliquer cette technique à des ensembles de données à grande échelle.

Apprentissage automatique

Le machine learning (ML) peut surpasser les méthodes traditionnelles de prévision des séries chronologiques. Il existe une tonne d'études comparant les méthodes d'apprentissage automatique à des méthodes statistiques plus classiques sur les données TS. Les réseaux de neurones sont l'une des technologies qui ont fait l'objet de nombreuses recherches et appliquent des approches TS. Les méthodes d'apprentissage automatique sont en tête du classement pour la collecte de données basée sur des séries chronologiques. Ces ensembles se sont avérés efficaces, surpassant les ensembles TS purs par rapport à M3 ou Kaggle.

MO a ses propres problèmes spécifiques. Le développement de fonctionnalités ou la génération de nouveaux prédicteurs à partir d'un ensemble de données est une étape importante pour cela et peut avoir un impact énorme sur les performances et être un moyen nécessaire pour résoudre les problèmes de tendance et de saisonnalité des données TS. De plus, certains modèles ont des problèmes d'ajustement aux données, et s'ils ne le font pas, ils peuvent manquer la tendance principale.

Les séries chronologiques et les approches d'apprentissage automatique ne doivent pas exister indépendamment l'une de l'autre. Ils peuvent être combinés pour donner les avantages de chaque approche. Les méthodes de prévision et l'analyse des séries chronologiques permettent de décomposer les données en tendances et en données saisonnières.éléments. Cette analyse peut ensuite être utilisée comme entrée dans un modèle ML qui contient des informations sur les tendances et la saisonnalité dans son algorithme, offrant ainsi le meilleur des deux mondes.

Comprendre l'énoncé du problème

Par exemple, considérons le TS lié à la prévision du nombre de passagers sur un nouveau service ferroviaire à grande vitesse. Par exemple, vous avez 2 ans de données (août 2016 - septembre 2018) et avec ces données, vous devez prédire le nombre de passagers pour les 7 prochains mois, ayant 2 ans de données (2016-2018) au niveau horaire avec le nombre de passagers voyageant, et il est nécessaire d'estimer le nombre d'entre eux à l'avenir.

Sous-ensemble de données pour la prévision avec des séries temporelles:

  1. Création d'un fichier d'entraînement et de test pour la simulation.
  2. Les 14 premiers mois (août 2016 - octobre 2017) sont utilisés comme données d'entraînement, et les 2 mois suivants (novembre 2017 - décembre 2017) sont des données de test.
  3. Agréger l'ensemble de données quotidiennement.
Agrégation d'ensembles de données
Agrégation d'ensembles de données

Effectuez une visualisation des données pour voir comment elles évoluent sur une période de temps.

Visualisation de données
Visualisation de données

Méthode de construction de l'approche naïve

La bibliothèque utilisée dans ce cas pour la prédiction TS est statsmodels. Il doit être installé avant que l'une de ces approches puisse être appliquée. Peut-être que statsmodels est déjà installé dans l'environnement Python, mais il ne prend pas en charge les méthodesprédiction, vous devrez donc le cloner à partir du référentiel et l'installer à partir de la source.

Séquençage
Séquençage

Pour cet exemple, cela signifie que les prix des voyages en pièces sont stables dès le début et tout au long de la période. Cette méthode suppose que le prochain point attendu est égal au dernier point observé et s'appelle l'approche naïve.

Méthode naïve
Méthode naïve

Calculez maintenant l'écart type pour tester la précision du modèle sur l'ensemble de données de test. À partir de la valeur RMSE et du graphique ci-dessus, nous pouvons conclure que Naive ne convient pas aux options à forte volatilité, mais est utilisé pour les options stables.

Style moyen simple

Pour démontrer la méthode, un graphique est dessiné, en supposant que l'axe Y représente le prix et l'axe X représente le temps (jours).

Style moyen simple
Style moyen simple

De là, nous pouvons conclure que le prix augmente et diminue de manière aléatoire avec une petite marge, de sorte que la valeur moyenne reste constante. Dans ce cas, vous pouvez prédire le prix de la prochaine période, similaire à la moyenne de tous les jours passés.

Cette méthode de prévision avec la moyenne attendue des points précédemment observés est appelée la méthode de la moyenne simple.

Dans ce cas, des valeurs précédemment connues sont prises, la moyenne est calculée et prise comme valeur suivante. Bien sûr, ce ne sera pas exact, mais c'est assez proche, et il y a des situations où cette méthode fonctionne mieux.

Simple Moyenméthode
Simple Moyenméthode

Selon les résultats affichés sur le graphique, cette méthode fonctionne mieux lorsque la valeur moyenne sur chaque période reste constante. Bien que la méthode naïve soit meilleure que la moyenne, mais pas pour tous les ensembles de données. Il est recommandé d'essayer chaque modèle étape par étape et de voir s'il améliore ou non le résultat.

Modèle de moyenne mobile

Modèle de moyenne mobile
Modèle de moyenne mobile

Sur la base de ce graphique, nous pouvons conclure que les prix ont augmenté plusieurs fois dans le passé par une large marge, mais qu'ils sont désormais stables. Pour utiliser la méthode de calcul de la moyenne précédente, vous devez prendre la moyenne de toutes les données précédentes. Les prix de la période initiale influenceront fortement les prévisions de la période suivante. Par conséquent, comme amélioration par rapport à la moyenne simple, ne prenez la moyenne des prix que pour les dernières périodes de temps.

Cette technique de prévision est appelée technique de la moyenne mobile, parfois appelée "fenêtre mobile" de taille "n". À l'aide d'un modèle simple, la prochaine valeur de TS est prédite pour vérifier l'exactitude de la méthode. Clairement, Naive surpasse à la fois la moyenne et la moyenne mobile pour cet ensemble de données.

Il existe une variante de la prévision par la méthode du lissage exponentiel simple. Dans la méthode de la moyenne mobile, les "n" observations passées sont pondérées de manière égale. Dans ce cas, vous pouvez rencontrer des situations où chacun des « n » passés affecte les prévisions à sa manière. Cette variation, qui pondère différemment les observations passées, est appelée la méthodemoyenne mobile pondérée.

Extrapolation de modèles

L'une des propriétés les plus importantes nécessaires pour prendre en compte les algorithmes de prévision de séries chronologiques est la capacité d'extrapoler des modèles en dehors du domaine des données d'apprentissage. De nombreux algorithmes ML n'ont pas cette capacité car ils ont tendance à être limités à une région définie par les données d'apprentissage. Par conséquent, ils ne conviennent pas au TS, dont le but est de projeter le résultat dans le futur.

Une autre propriété importante de l'algorithme TS est la possibilité d'obtenir des intervalles de confiance. Bien qu'il s'agisse de la propriété par défaut des modèles TS, la plupart des modèles ML n'ont pas cette capacité car ils ne sont pas tous basés sur des distributions statistiques.

Ne pensez pas que seules des méthodes statistiques simples sont utilisées pour prédire le TS. Ce n'est pas du tout comme ça. Il existe de nombreuses approches complexes qui peuvent être très utiles dans des cas particuliers. L'hétéroscédasticité conditionnelle autorégressive généralisée (GARCH), le bayésien et le VAR ne sont que quelques-uns d'entre eux.

Il existe également des modèles de réseaux de neurones qui peuvent être appliqués à des séries chronologiques qui utilisent des prédicteurs retardés et peuvent gérer des fonctionnalités telles que l'autorégression de réseau de neurones (NNAR). Il existe même des modèles de séries chronologiques empruntés à l'apprentissage complexe, en particulier dans la famille des réseaux de neurones récurrents, tels que les réseaux LSTM et GRU.

Métriques d'estimation et diagnostics résiduels

Les métriques de prédiction les plus courantes sontrms signifie, que beaucoup de gens utilisent pour résoudre des problèmes de régression:

  • MAPE car il est indépendant de l'échelle et représente le rapport d'erreur aux valeurs réelles en pourcentage;
  • MASE, qui montre les performances de la prédiction par rapport à la prédiction moyenne naïve.

Une fois qu'une méthode de prévision a été adaptée, il est important d'évaluer dans quelle mesure elle est capable de capter les modèles. Bien que les métriques d'évaluation aident à déterminer à quel point les valeurs sont proches des valeurs réelles, elles n'évaluent pas si le modèle correspond au TS. Les restes sont un bon moyen d'évaluer cela. Étant donné que le programmeur essaie d'appliquer des modèles TS, il peut s'attendre à ce que les erreurs se comportent comme du "bruit blanc" car elles représentent quelque chose qui ne peut pas être capturé par le modèle.

"Bruit blanc" doit avoir les propriétés suivantes:

  1. Résidus non corrélés (Acf=0)
  2. Les résidus suivent une distribution normale avec une moyenne nulle (sans biais) et une variance constante.
  3. Si l'une des deux propriétés est manquante, il y a place à l'amélioration du modèle.
  4. La propriété de la moyenne nulle peut être facilement testée à l'aide du test T.
  5. Les propriétés de normalité et de variance constante sont contrôlées visuellement à l'aide d'un histogramme de résidus ou d'un test de normalité univarié approprié.

Modèle ARIMA

ARIMA - Le modèle de moyenne mobile intégrée autorégressive est l'une des méthodes les plus populaires utilisées dans la prévision TS, principalementgrâce à l'autocorrélation des données pour créer des modèles de haute qualité.

Lors de l'évaluation des coefficients ARIMA, l'hypothèse principale est que les données sont stationnaires. Cela signifie que la tendance et la saisonnalité ne peuvent pas affecter la variance. La qualité du modèle peut être évaluée en comparant le tracé temporel des valeurs réelles avec les valeurs prédites. Si les deux courbes sont proches, alors on peut supposer que le modèle correspond au cas analysé. Il doit divulguer toute tendance et saisonnalité, le cas échéant.

L'analyse des résidus devrait alors montrer si le modèle correspond: des résidus aléatoires signifient qu'il est précis. Ajuster ARIMA avec les paramètres (0, 1, 1) donnera les mêmes résultats que le lissage exponentiel, et utiliser les paramètres (0, 2, 2) donnera des résultats de lissage exponentiel double.

Algorithmes de séries chronologiques dans SQL Server
Algorithmes de séries chronologiques dans SQL Server

Vous pouvez accéder aux paramètres ARIMA dans Excel:

  1. Démarrer Excel.
  2. Recherchez XL MINER dans la barre d'outils.
  3. Sur le ruban, sélectionnez ARIMA dans le menu déroulant.

Résumé des capacités du modèle ARIMA:

  1. ARIMA - Moyenne mobile intégrée autorégressive.
  2. Modèle de prévision utilisé dans l'analyse des séries chronologiques.
  3. Syntaxe des paramètres ARIMA: ARIMA (p, d, q) où p=nombre de termes autorégressifs, d=nombre de différences saisonnières et q=nombre de termes de moyenne mobile.

Algorithmes dans SQL Server

La prédiction croisée est l'un des éléments importantscaractéristiques des séries chronologiques dans la prévision des tâches financières. Si deux séries liées sont utilisées, le modèle résultant peut être utilisé pour prédire les résultats d'une série en fonction du comportement des autres.

SQL Server 2008 dispose de nouvelles fonctionnalités de série temporelle puissantes à apprendre et à utiliser. L'outil dispose de données TS facilement accessibles, d'une interface facile à utiliser pour simuler et reproduire les fonctions de l'algorithme, et d'une fenêtre d'explication avec un lien vers les requêtes DMX côté serveur afin que vous puissiez comprendre ce qui se passe à l'intérieur.

Les séries temporelles du marché sont un vaste domaine auquel les modèles et algorithmes d'apprentissage en profondeur peuvent être appliqués. Les banques, les courtiers et les fonds expérimentent maintenant leur déploiement d'analyses et de prévisions pour les indices, les taux de change, les contrats à terme, les prix des crypto-monnaies, les actions gouvernementales et plus encore.

Dans la prévision des séries chronologiques, le réseau de neurones trouve des modèles prévisibles en étudiant les structures et les tendances des marchés et donne des conseils aux commerçants. Ces réseaux peuvent également aider à détecter des anomalies telles que des pics inattendus, des chutes, des changements de tendance et des changements de niveau. De nombreux modèles d'intelligence artificielle sont utilisés pour les prévisions financières.

Conseillé: