En analyse de données, la détection d'anomalies est l'identification d'éléments, d'événements ou d'observations rares qui s'écartent significativement de la majorité des données et ne se conforment pas à une notion bien définie de comportement normal. De tels exemples peuvent susciter des soupçons d'être générés par un mécanisme différent ou sembler incohérents avec le reste de l'ensemble de données. Ce concept est également appelé détection de valeurs aberrantes et parfois détection de nouveautés, selon le contexte et le domaine d'application.
La détection d'anomalies trouve des applications dans de nombreux domaines, notamment la cybersécurité, la médecine, la vision par ordinateur, les statistiques, les neurosciences, l'application de la loi et la détection de fraude financière. Historiquement, les anomalies ont d'abord été recherchées pour être clairement rejetées ou omises des données afin d'aider l'analyse statistique, comme le calcul de la moyenne ou de l'écart type. Elles ont également été supprimées pour améliorer les prédictions de modèles comme la régression linéaire, et plus récemment, leur suppression aide les performances des algorithmes d'apprentissage automatique. Cependant, dans de nombreuses applications, les anomalies elles-mêmes présentent un intérêt primordial et sont les observations les plus souhaitées dans l'ensemble des données, nécessitant une identification et une séparation du bruit ou des valeurs aberrantes non pertinentes.
Définition et terminologie
La détection d'anomalies est l'identification d'observations, d'événements ou de modèles qui s'écartent substantiellement du comportement normal attendu dans un contexte particulier. Il n'existe pas de définition opérationnelle unique qui s'applique universellement à tous les domaines, car la notion de normalité dépend des données, de la représentation des observations, du contexte dans lequel elles se produisent et des hypothèses faites par la méthode de détection.
Une anomalie n'est pas nécessairement une erreur de données. Selon l'application, elle peut représenter une erreur de mesure ou d'enregistrement, un changement dans le processus qui a généré les données, une observation inhabituelle mais valide, ou un événement d'intérêt tel qu'une fraude, une défaillance d'équipement ou une intrusion de sécurité. Les anomalies ne sont pas non plus définies uniquement par la rareté ou la distance par rapport aux autres observations ; différentes méthodes caractérisent la normalité en utilisant des distributions de probabilité, des distances ou des densités locales, l'appartenance à des clusters, des frontières autour des données normales, des erreurs de prédiction, des erreurs de reconstruction ou d'autres critères spécifiques au modèle.
De nombreuses méthodes de détection d'anomalies renvoient un score d'anomalie numérique plutôt qu'une étiquette catégorielle immédiate. Le score représente le degré auquel une observation s'écarte du modèle de normalité ajusté et est converti en une décision binaire en appliquant un seuil de décision. Par conséquent, le fait qu'une observation soit étiquetée comme anormale dépend du modèle de normalité, du contexte disponible et de la règle de décision utilisée.
Types d'anomalies
Une classification largement utilisée distingue trois types d'anomalies. Une anomalie ponctuelle est une observation individuelle considérée comme anormale par rapport au reste des données - par exemple, une transaction inhabituellement importante par rapport aux autres transactions d'un ensemble de données. Une anomalie contextuelle, également appelée anomalie conditionnelle, n'est anormale que dans un contexte particulier - une observation peut être normale dans un ensemble de circonstances mais anormale dans un autre, comme une température normale en été mais inhabituelle en hiver. Le contexte peut être temporel, spatial, démographique ou autrement défini par l'application. Une anomalie collective est un ensemble lié d'observations qui est anormal dans son ensemble, même lorsque les observations individuelles ne sont pas anormales en elles-mêmes - par exemple, une sous-séquence inhabituelle dans une série temporelle ou un modèle d'activité inattendu dans un réseau informatique.
La catégorie appropriée dépend en partie de la structure des données. Les méthodes d'anomalies ponctuelles peuvent suffire pour des observations indépendantes, tandis que les séries temporelles, les données spatiales, les séquences et les graphes nécessitent souvent que les relations contextuelles ou collectives soient modélisées explicitement.
Termes associés
Les termes anomalie, valeur aberrante et nouveauté sont parfois utilisés de manière interchangeable, mais leur usage varie entre les statistiques, l'apprentissage automatique, le traitement du signal et les domaines d'application individuels. Une valeur aberrante désigne couramment une observation qui semble incohérente avec les autres observations d'un ensemble de données ; les méthodes de détection de valeurs aberrantes permettent souvent que ces observations soient présentes dans les données utilisées pour ajuster le modèle. Dans la détection de nouveautés, les données d'entraînement sont généralement supposées représenter un comportement normal, et les observations de test jamais vues auparavant sont évaluées par rapport au modèle de normalité résultant. La détection de nouveautés est par conséquent souvent formulée comme une forme de classification à une classe. Ces distinctions ne sont pas appliquées de manière cohérente dans toute la littérature, et le terme plus large de détection d'anomalies inclut fréquemment tous ces contextes.
Techniques et catégories
Il existe trois grandes catégories de techniques de détection d'anomalies. Les techniques de détection d'anomalies supervisées nécessitent un ensemble de données étiqueté comme « normal » et « anormal » et impliquent l'entraînement d'un classifieur. Cependant, cette approche est rarement utilisée car les données étiquetées sont généralement indisponibles et les classes sont intrinsèquement déséquilibrées. Les techniques de détection d'anomalies semi-supervisées supposent qu'une partie des données est étiquetée - généralement des données normales - et construisent un modèle représentant le comportement normal, puis testent la probabilité qu'une instance de test ait été générée par le modèle. Les techniques de détection d'anomalies non supervisées supposent que les données ne sont pas étiquetées et sont de loin les plus couramment utilisées en raison de leur application plus large et plus pertinente.
Méthodes statistiques
Les approches statistiques modélisent le comportement normal des données à l'aide de distributions de probabilité. Les méthodes incluent des techniques paramétriques telles que les modèles de mélange gaussiens et des techniques non paramétriques basées sur des histogrammes ou l'estimation de densité par noyau. Les observations avec une faible probabilité sous le modèle ajusté sont signalées comme des anomalies. Ces méthodes supposent souvent l'indépendance entre les observations, ce qui les rend moins adaptées aux données structurées complexes sans adaptation.
Méthodes basées sur la distance et la densité
Les méthodes basées sur la distance caractérisent une observation comme anormale si elle est éloignée de ses voisins les plus proches. Les méthodes basées sur la densité, telles que le facteur de valeur aberrante locale, comparent la densité locale autour d'une observation avec celle de ses voisins ; les observations dans des régions de densité significativement plus faible sont signalées. Ces méthodes sont particulièrement utiles pour identifier des anomalies ponctuelles dans des ensembles de données avec des densités variables et ne nécessitent pas d'hypothèses a priori sur la distribution des données.
Méthodes basées sur le clustering
La détection d'anomalies basée sur le clustering regroupe les données en clusters et identifie les anomalies comme des points qui n'appartiennent à aucun cluster, sont éloignés des centroïdes de cluster, ou appartiennent à de très petits clusters. Des algorithmes comme k-means et DBSCAN ont été adaptés à cette fin. L'approche est intuitive et peut être efficace, mais les performances dépendent de l'algorithme de clustering choisi et de ses paramètres, et la définition de ce qui constitue un cluster anormal varie selon l'application.
Approches d'apprentissage automatique et d'apprentissage profond
La détection d'anomalies moderne repose de plus en plus sur des techniques d'apprentissage automatique et d'apprentissage profond. Les autoencodeurs, un type de réseau de neurones, apprennent à reconstruire des données normales ; une erreur de reconstruction élevée indique une anomalie. Les machines à vecteurs de support à une classe apprennent une frontière autour des données normales dans un espace de caractéristiques de haute dimension. Des méthodes basées sur les architectures transformeur et les grands modèles de langage ont également été explorées pour détecter des anomalies dans des données séquentielles, telles que des journaux ou des séries temporelles, en exploitant leur capacité à modéliser des dépendances à longue portée et des modèles contextuels.
Applications
Cybersécurité
La détection d'anomalies est un composant fondamental des systèmes de détection d'intrusion. Le concept a évolué considérablement au fil du temps, commençant comme un processus manuel où les administrateurs système surveillaient les activités inhabituelles, comme l'accès au compte d'un utilisateur en vacances ou une activité d'imprimante inattendue. À la fin des années 1970 et au début des années 1980, l'analyse des journaux d'audit et des journaux système était principalement rétrospective pour l'investigation d'incidents, car le volume de données rendait la surveillance en temps réel impraticable. L'abordabilité du stockage numérique a permis l'analyse en ligne des journaux d'audit avec des programmes spécialisés, bien que ces programmes soient généralement exécutés pendant les heures creuses en raison de l'intensité computationnelle. Les années 1990 ont apporté des systèmes de détection d'intrusion en temps réel capables d'analyser les données d'audit au fur et à mesure de leur génération, passant à une détection proactive. Les systèmes modernes appliquent la détection d'anomalies au trafic réseau, au comportement des utilisateurs et aux activités des points de terminaison pour identifier les attaques zero-day, les menaces internes et d'autres modèles malveillants.
Détection de fraude financière
En finance, la détection d'anomalies identifie les transactions frauduleuses, telles que la fraude par carte de crédit, l'abus de réclamations d'assurance et le blanchiment d'argent. Des modèles inhabituels dans les montants de transaction, la fréquence ou la localisation géographique peuvent déclencher des alertes pour une enquête plus approfondie. Le domaine bénéficie à la fois de méthodes supervisées utilisant des étiquettes de fraude historiques et de méthodes non supervisées pour découvrir de nouveaux schémas de fraude.
Médecine et soins de santé
Les applications médicales incluent la détection de signaux physiologiques anormaux, l'identification de réponses inattendues aux traitements et le signalement d'anomalies dans les images médicales telles que les scanners IRM ou CT. Ces systèmes aident les cliniciens à concentrer leur attention sur les cas qui s'écartent des normes établies, améliorant potentiellement le diagnostic de conditions rares ou la détection précoce de dysfonctionnements d'équipement.
Fabrication et maintenance prédictive
Dans les environnements industriels, la détection d'anomalies surveille les lectures de capteurs des équipements pour prédire les défaillances avant qu'elles ne se produisent. Des modèles de vibration inhabituels, des pics de température ou des signatures acoustiques peuvent indiquer des pannes imminentes, permettant aux équipes de maintenance d'intervenir de manière proactive. Cela réduit les temps d'arrêt et les coûts de maintenance dans des secteurs tels que la fabrication, l'aviation et l'énergie.
Défis et limitations
La détection d'anomalies fait face à plusieurs défis persistants. La définition de la normalité change souvent au fil du temps, nécessitant que les modèles s'adaptent à la dérive conceptuelle. La rareté des anomalies rend les données étiquetées rares, limitant les approches supervisées et compliquant l'évaluation. Les ensembles de données déséquilibrés peuvent entraîner des taux de faux positifs élevés, ce qui est coûteux dans des domaines comme la cybersécurité où les analystes doivent trier de nombreuses alertes. De plus, les anomalies dépendent du contexte, et les méthodes qui fonctionnent bien sur des observations ponctuelles indépendantes peuvent échouer sur des données structurées comme les graphes ou les séquences sans modélisation contextuelle explicite.
Le choix du seuil de décision est critique ; le baisser augmente le taux de détection mais augmente également les fausses alarmes, tandis que le monter peut manquer des anomalies subtiles. Il n'existe pas de métrique universellement acceptée pour comparer les méthodes de détection d'anomalies entre domaines, car les coûts relatifs des faux positifs et des faux négatifs varient considérablement selon l'application.
Relation avec d'autres domaines
La détection d'anomalies croise plusieurs domaines de l'intelligence artificielle et des statistiques. Dans l'IA générative, des modèles comme les transformeurs peuvent être utilisés pour estimer la probabilité de séquences, fournissant une base pour détecter des entrées inhabituelles. La recherche dans des institutions telles que le MIT CSAIL et le Stanford AI Lab a contribué aux fondements théoriques et aux algorithmes pratiques. Des entreprises comme Amazon Web Services et Google Cloud proposent des services de détection d'anomalies dans le cadre de leurs plateformes cloud, s'intégrant aux pipelines d'apprentissage automatique. Le domaine s'appuie également sur des travaux en analyse de séries temporelles, traitement du signal et statistiques robustes, et informe les pratiques de gestion de la qualité des données et de surveillance des systèmes.