31/01/2017

Qu’est-ce que la détection d’anomalies ?

On dit souvent que l’erreur est humaine, mais les machines en font parfois aussi !
S’assurer du bon fonctionnement d’une ligne de production, de la conformité d’un produit ou encore de sa qualité est chose courante dans l’industrie et d’autres domaines. Tout au long de tels processus, différents tests sont effectués, qu’ils soient visuels ou sensitifs. Par exemple, un menuisier va inspecter sa chaise nouvellement créée à la recherche de défauts de ponçage alors qu’un fabricant de câbles électriques va tester si le courant est bien transmis à travers ceux-ci. Tous deux sont à la recherche de potentielles anomalies. Cette recherche est alors cruciale pour s’assurer de la qualité des produits et optimiser la production.

 

Dans un monde résolument plus informatisé et plus connecté, nous abordons ici une approche du problème reliée au traitement et à l’analyse des données. Dans l’exemple du menuisier, il s’agirait de détecter les défauts à partir de photos des différentes parties de la chaise. Pour le fabricant de câbles, les données provenant des capteurs de courant électrique seraient alors analysées.

Anomaly Detection

Figure: Quelques-uns des éléments clés d’un problème de détection d’anomalies.

 

Lorsqu’elle est automatisée, la détection d’anomalies dans un jeu de données est une tâche complexe qui fait intervenir les domaines tels que le « Machine Learning », les statistiques, le « Data Mining », etc. La nature des données, les informations correspondantes, le type d’anomalies à considérer et le résultat à fournir pour le système en question vont déterminer le choix de l’algorithme à utiliser. Tous ces aspects sont des éléments clés d’un problème de détection d’anomalies (voir Figure).

 

Quant à une définition plus formelle du problème, elle peut être donnée comme suit : « La détection d’anomalies est définie comme la recherche de structures dans un jeu de données qui ne correspondent pas au comportement attendu » [Anomaly detection: A survey, V. Chandola, A. Banerjee, V. Kumar, 2009, p.58].

 

De manière plus pratique, il s’agit de reconnaître quelles valeurs sont problématiques parmi toutes les données. Par exemple, un fournisseur de carte de crédit va chercher à identifier les transactions frauduleuses. Si le système enregistre un achat de plusieurs milliers de francs alors que vous avez l’habitude d’utiliser votre carte pour acheter votre billet de train, il y a de fortes chances pour que vous vous soyez fait voler votre carte ou vos identifiants de paiement. Dans un autre contexte, si la ligne de fabrication d’une entreprise pharmaceutique enregistre un poids final d’une fiole de médicament 20% supérieur à d’habitude, une erreur s’est probablement glissée dans sa fabrication.

 

Les domaines concernés donc sont très variés et la manière de les résoudre diffère souvent. Nous aborderons dans le prochain article les raisons qui rendent la détection d’anomalies un problème complexe.