FR 3098961 A1 20210122 FR 1908065 A 20190717 Description Titre de l'invention : Procédé d'identification de données aberrantes dans d'un jeu de données d'entrée acquises par au moins un capteur [0001] DOMAINE TECHNIQUE GENERAL [0002] La présente invention concerne le domaine de l'exploration de données, et plus parti- culièrement la détection d'anomalies. Elle propose en particulier un procédé d'identification de données aberrantes dans d'un jeu de données d'entrée acquises par des capteurs. [0003] ETAT DE L'ART [0004] La détection d'anomalie est l'identification d'éléments, d'événements ou d'observations rares qui soulèvent des suspicions en différant de manière significative de la majorité des autres données. Tout comme pour les méthodes de classification classique, il existe trois grandes catégories de techniques de détection d'anomalies, les techniques : supervisées, non-supervisées, ainsi que scmi-supervisées. Les méthodes supervisées sont bien souvent les plus puissantes, cependant, elles reposent sur l'utilisation de jeux de données étiquetées, dans lesquels les données sont identifiées comme étant soit « normales », soit « anormales ». Cependant ces jeux de données étiquetés sont très fastidieux à obtenir, quand ce n'est pas impossible. Les méthodes scmi-supervisées nécessitent pour leur part seulement d'avoir un jeu de données uniquement normales. Les méthodes non-supervisées quant à elles ne sont pas aussi performantes que les méthodes supervisées, mais ne nécessitent pas de savoir à l'avance si les données d'entrée sont normales ou anormales. [0005] Lc développement récent des capteurs connectés (par exemples les compteurs com- municants) ainsi que l'augmentation des capacités de stockages de données pour des coûts de plus en plus réduits a permis d'accéder à données de plus en plus massives. Cependant ce type de données n'est que très rarement étiqueté, c'est pourquoi les méthodes non supervisée (parfois aussi scull-supervisées) sont les plus utilisées. [0006] 11 est ensuite possible d'identifier trois autres sous-groupes de méthodes : les méthodes statistiques, les méthodes par proximité ou les méthodes basées sur la déviation. [0007] Les méthodes statistiques considèrent que les données doivent être réparties selon une certaine distribution de probabilité. Une observation est considérée comme anormale lorsqu'elle s'écarte de cette distribution au-delà d'un certain seuil. Ces méthodes ont le désavantage de nécessiter un a priori sur le comportement normal de la distribution de données. [0008] Les méthodes par proximité considèrent une observation anormale si elle s'éloigne 2 de la masse. 11 est possible d'utiliser des méthodes de détection d'anomalie par partitionnement ou par estimation de densité. L'idée est de comparer la densité du voisinage d'un point avec la densité de l'ensemble de ses voisins. Cependant celles-ci reposent le plus souvent sur des mesures de distances entre plusieurs observations, il n'est donc pas possible de les appliquer directement lorsque les données sont de trop grande dimension. [0009] Enfin les méthodes par déviation ont pour objectif de compresser et reconstruire des données dites normales, puis de reproduire l'opération sur de nouvelles données et de mesurer l'erreur de reconstruction. Les observations avec une forte erreur de reconstruction sont considérées comme des anomalies. Une telle méthode est décrite dans [0010] An, J., & Cho, S. (2015). Variational autoencoder based anomaly détection using reconstruction probability. Special Lecture on JE, 2(1). [0011] Cependant les méthodes par déviation sont des méthodes serni-supervisées, qui re- quièrent la création d'une hase de données composée uniquement de données sans anomalie. Exposé de l'invention [0012] Selon un premier aspect, la présente invention concerne un procédé d'identification de données aberrantes dans un jeu de données d'entrée acquises par au moins un capteur et appartenant à un espace d'entrée ayant une dimension d'entrée, le procédé comprenant des étapes de : [0013] a. Pour chaque donnée d'entrée, calcul, par un encodeur d'un réseau de neurones de type auto-encodeur, d'une donnée encodée représentative de la donnée d'entrée dans un espace latent de dimension inférieure à la dimension d'entrée b. Pour chaque donnée encodée, application d'un traitement de type facteur aberrant local (LOF), de sorte à produire un score d'anomalie associé à la donnée encodée ; c. Partitionnement en grappes des données encodées ; d. Pour au moins und des grappes, comparaison des scores d'anomalie des données encodées de la grappe avec un seuil, et identification de la grappe comme étant aberrante ou non en fonction des comparaisons. [0014] Selon d'autres caractéristiques avantageuses et non limitatives : [0015] - les données d'entrée sont normalisées avant l'étape a) ; le partitionnement de l'étape c) est réalisé selon un modèle de mélange gaussien dans lequel les différentes grappes sont représentées chacune par une distribution gaussienne représentant la probabilité d'appartenir à ladite grappe ; 3 - l'étape d) comprend en outre des étapes de : [0016] i. Calcul d'un quantilc du score d'anomalie pour l'ensemble des grappes, le quantilc étant utilisé comme le seuil ; ii. Identification de la grappe aberrante en fonction du nombre de valeurs du score d'anomalie supérieures au seuil calculé à l'étape i) ; [0017] - l'auto-encodeur est variationnel ; les données d'entrée sont des données de consommation électrique acquises par au moins un compteur électrique. [0018] Selon un deuxième et un troisième aspect, l'invention propose un produit programme d'ordinateur comprenant des instructions de code pour l'exécution d'un procédé selon le premier aspect d'identification de données aberrantes dans d'un jeu de données d'entrée ; et un moyen de stockage lisible par un équipement informatique sur lequel un produit programme d'ordinateur comprenant des instructions de code pour l'exécution d'un procédé selon le premier aspect d'identification de données aberrantes dans d'un jeu de données d'entrée. Brève description des dessins [0019] D'autres caractéristiques et avantages de la présente invention apparaîtront à la lecture de la description qui va suivre d'un mode de réalisation préférentiel. Cette description sera donnée en référence aux dessins annexés dans lesquels : [0020] [fig.1] la figure 1 est un schéma d'une architecture pour la mise en oeuvre du procédé selon l'invention ; [0021] W8.21 la figure 2 représente les étapes d'un mode de réalisation préféré du procédé selon l'invention. Description des modes de réalisation 100221 Architecture 100231 En référence à la figure 1, un système comprend un réseau de capteurs 200, un serveur de hase de données 2, et un dispositif de traitement 1. 100241 Le réseau de capteurs 200 comprend une pluralité de capteurs 40a, 40h, 40c, 40d (par exemple des compteurs communicants) reliés à un réseau tel que le réseau internet ou bien un réseau courant porteurs en ligne. 100251 Le serveur de hase de données 2 recueille des données à partir des capteurs 40a, 40h, 40e, 40d grâce au réseau de capteurs 200, puis les fournit au serveur de traitement 1 grâce à une réseau d'échange de données tel que le réseau internet. Il est tout à fait possible que les deux équipements 1 et 2 soient confondus. 100261 Dans tous les cas, chaque équipement 1, 2 est typiquement un équipement in- formatique distant relié à un réseau étendu 10 tel que le réseau internet pour l'échange des données. Chacun comprend des moyens de traitement de données 11, 21 de type processeur, et des moyens de stockage de données 12, 22 telle qu'une mémoire informatique, par exemple un disque. [0027] Les données collectées par les capteurs 40a, 40b, 40e, 40d du réseau de capteurs 200 peuvent être des données de consommation électrique, des données de consommation d'eau, ou bien des données vibratoires de machines tournantes. [0028] Le dispositif de traitement 1 est configuré pour mettre en oeuvre un procédé d'identification de données aberrantes, qui sera décrit ci-après. [0029] Le dispositif de traitement 1 comprend typiquement un processeur adapté pour exécuter un programme dont les instructions de code permettent la mise en oeuvre de ce procédé d'identification. [0030] En particulier, le dispositif de traitement est configuré pour utiliser un réseau de neurones connu de l'état de la technique sous le nom d'auto-encodeur. [0031] Principe [0032] Le procédé de d'identification de données aberrantes repose sur du partitionnement (« clustering ») ainsi que l'estimation d'une densité locale, comme les méthodes par proximité, cependant au lieu d'être réalisés directement sur les données issues des capteurs (ce qui n'est pas possible en pratique à cause de la taille de ces données), les données sont préalablement compressées selon une méthode similaire à celles par déviation, et les distances nécessaires au partitionnement et à l'estimation de densité locale sont calculées dans l'espace des données compressées. [0033] En référence à la figure 2, ce procédé comprend les étapes suivantes. [0034] Les données issues du réseau de capteurs 200 sont, dans un premier temps, utilisées pour entrainer l'auto-encodeur. L'encodeur de l'auto-encodeur est ensuite utilisé, dans une étape a), pour compresser les données d'entrée dans un espace latent de faible dimension. L'auto-encodeur peut-être par exemple un auto-encodeur variationnel. [0035] Il est aussi possible de normaliser les données issues des capteurs dans une étape pré- liminaire réalisée en amont de l'apprentissage. Cette normalisation peut être réalisée de plusieurs manières selon le type de données : en utilisant la médiane ou la moyenne de toutes les observations du jeu de données d'entrée lorsque les données ne sont pas bornées, en utilisant les valeur minimales et maximales si les données sont bornées, ou bien en appliquant une fonction de normalisation telle qu'une fonction logarithme. [0036] Ensuite, un traitement de type facteur aberrant local (« Local Outiier Factor », LOF) est appliqué, dans une étape b), sur les données issues de capteurs après la compression afin d'identifier un seuil à partir duquel les données sont considérées comme aberrantes grâce à un score d'anomalie. Pour identifier les grappes de données aberrantes, un quantile du score d'anomalie est évalué dans une étape d.i) afin de servir de seuil. Le quantile peut être par exemple le percentile 90%, c'est-à-dire la valeur particulière de LOF telle que 90% des valeurs de LOF soient inférieures à la valeur par- ticulière. [0037] Dans le même temps, les données compressées sont partitionnécs, dans une étape c), par un algorithme de partitionnement de préférence basé sur des opérations mathématiques dérivables (par exemple un modèle de mélange gaussicn, « Gaussian mixture model »). La dérivabilité des opérations de partitionnement permet d'utiliser une fonction de coût relative au partitionnement lors de l'étape l'entrainement du réseau de neurones auto-encodeur et ainsi de prendre en compte la tache de partitionnement dans rentrainement de l'auto-encodeur. [0038] Contrairement au cas des méthodes par déviation où un auto-encodeur peut être utilisé pour les tâches de compression et de reconstruction, l'auto-encodeur utilisé dans le procédé d'identification de données aberrantes décrit ci-dessus n'a pas besoin d'être entrainé uniquement sur des données normales. En effet le but n'est pas d'apprendre un modèle statistique des données dites normales et ensuite vérifier si une observation particulière a bien été générée par le modèle ou si au contraire elle dévie du modèle. [0039] Les grappes de données aberrantes sont ensuite identifiées dans une étape d.ii), en étudiant la répartition des scores d'anomalie dans une grappe par rapport au quantilc calculé. La grappe contenant le plus de scores d'anomalie supérieurs au quantilc est alors celle identifiée comme la grappe aberrante. 6 REVENDICATIONS[Revendication I] Procédé d'identification de données aberrantes dans un jeu de données d'entrée acquises par au moins un capteur et appartenant à un espace d'entrée ayant une dimension d'entrée, le procédé comprenant des étapes de : a) Pour chaque donnée d'entrée, calcul, par un encodeur d'un réseau de neurones de type auto-encodeur, d'une donnée encodée représentative de la donnée d'entrée dans un espace latent de dimension inférieure à la dimension d'entrée ; b) Pour chaque donnée encodée, application d'un traitement de type facteur aberrant local (LOF), de sorte à produire un score d'anomalie associé à la donnée encodée ; c) Partitionnement en grappes des données encodées ; d) Pour au moins une des grappes, comparaison des scores d'anomalie des données encodées de la grappe avec un seuil, et identification de la grappe comme étant aberrante ou non en fonction des comparaisons. [Revendication 2] Procédé selon la revendication 1 dans lequel les données d'entrée sont normalisées avant l'étape a). [Revendication 3] Procédé selon l'une des revendications 1 ou 2, dans lequel le parti- tionnement de l'étape c) est réalisé selon un modèle de mélange gaussien dans lequel les différentes grappes sont représentées chacune par une distribution gaussienne représentant la probabilité d'appartenir à ladite grappe. [Revendication 4] Procédé selon l'une des revendications 1 à 3 dans lequel l'étape d) comprend en outre des étapes de : d.i) Calcul d'un quantile du score d'anomalie pour l'ensemble des grappes, le quantile étant utilisé comme le seuil ; d.ii) Identification de la grappe aberrante en fonction du nombre de valeurs du score d'anomalie supérieures au seuil calculé à l'étape i). [Revendication 5] Procédé selon l'une des revendication 1 à 4, dans lequel l'auto-encodeur est variationnel. [Revendication 6] Procédé selon l'une des revendications 1 à 5, dans lequel les données d'entrée sont des données de consommation électrique acquises par au moins un compteur électrique. [Revendication 7] Produit programme d'ordinateur comprenant. des instructions de code pour l'exécution du procédé selon l'une des revendications 1 à 6, lorsque ledit programme est. exécuté sur un ordinateur. 7 [Revendication 8] Moyen de stockage lisible par un équipement informatique sur lequel est enregistré un produit programme d'ordinateur comprenant des instructions de code pour l'exécution d'un procédé selon l'une des revendications 1 à 6, lorsque ledit programme est exécuté sur un ordinateur.