Détecter plusieurs anomalies dans des séries temporelles saisonnières

Introduction à la détection d’anomalies en R

Alastair Rushworth

Data Scientist

Données mensuelles de chiffre d'affaires

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 adapté ici

  • Une saisonnalité peut être présente
  • Il peut y avoir plusieurs anomalies
Introduction à la détection d’anomalies en R

Visualiser le chiffre d'affaires mensuel

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

Introduction à la détection d’anomalies en R

Utilisation de l'algorithme Seasonal-Hybrid ESD

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 package : https://github.com/twitter/AnomalyDetection

Introduction à la détection d’anomalies en R

Sortie de l'algorithme Seasonal-Hybrid ESD

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 Seasonal-Hybrid ESD

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...