Détection de multiples anomalies dans une série chronologique saisonnière

Introduction à la détection d'anomalies en R

Alastair Rushworth

Data Scientist

Données mensuelles de revenus

head(msales)
  sales month
1 6.068     1
2 5.966     2
3 6.133     3
4 6.230     4
5 6.407     5
6 6.433     6

Le test de Grubbs n'est pas approprié ici

  • Présence possible de saisonnalité
  • Anomalies potentiellement multiples
Introduction à la détection d'anomalies en R

Visualiser les revenus mensuels

plot(sales ~ month, data = msales, type = 'o')

Introduction à la détection d'anomalies en R

Utilisation de l'algorithme ESD hybride saisonnier

library(AnomalyDetection)
sales_ad <- AnomalyDetectionVec(x = msales$sales, period = 12, 
                                direction = 'both')

Arguments

  • x : vecteur de valeurs
  • period : période du motif récurrent
  • direction : détecter des anomalies faibles ('neg'), fortes ('pos') ou les deux ('both')

Téléchargement du progiciel : https://github.com/twitter/AnomalyDetection

Introduction à la détection d'anomalies en R

Résultat de l'algorithme ESD hybride saisonnier

sales_ad <- AnomalyDetectionVec(x = msales$sales, period = 12, 
                                direction = 'both')
sales_ad$anoms
  index anoms
1    14 1.561
2   108 2.156
Introduction à la détection d'anomalies en R

Graphique de l'algorithme ESD hybride saisonnier

AnomalyDetectionVec(x = msales$sales, period = 12, 
                    direction = 'both', plot = T)

Introduction à la détection d'anomalies en R

Passons à la pratique !

Introduction à la détection d'anomalies en R

Preparing Video For Download...