EP4182859A1 - Génération de copies de données d'entraînement bruitées dans un procédé de détection d'anomalies - Google Patents

Génération de copies de données d'entraînement bruitées dans un procédé de détection d'anomalies

Info

Publication number
EP4182859A1
EP4182859A1 EP21755801.4A EP21755801A EP4182859A1 EP 4182859 A1 EP4182859 A1 EP 4182859A1 EP 21755801 A EP21755801 A EP 21755801A EP 4182859 A1 EP4182859 A1 EP 4182859A1
Authority
EP
European Patent Office
Prior art keywords
noisy
data
training data
learning module
training
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
EP21755801.4A
Other languages
German (de)
English (en)
Inventor
Roman MOSCOVIZ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suez International SAS
Original Assignee
Suez International SAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Suez International SAS filed Critical Suez International SAS
Publication of EP4182859A1 publication Critical patent/EP4182859A1/fr
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/088Non-supervised learning, e.g. competitive learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/01Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound

Definitions

  • the invention relates to a method for detecting anomalies.
  • the invention relates to an automatic learning method for the detection of abnormal data in a data set.
  • Anomaly detection is a well-known subject especially in the field of data mining, in English Data Mining, with many industrial applications such as sorting objects on a recycling chain, monitoring measurement sensors or any other plant supervision application.
  • the training data is generally composed of a large majority of "normal” data, while the anomaly data is generally weakly represented. This then raises a relatively important concern about the robustness of the training of the machine learning modules, in particular when they are supervised.
  • the SMOTE method tends to densify sparsely represented data areas so as to reduce the imbalance of the data set.
  • the training datasets include few or no examples of anomalous data, and there is a strong constraint on the accuracy of the detections obtained.
  • a method for detecting anomalies implemented by computer in a data set comprising the provision of a data set of labeled training comprising at least one training datum representative of a normal state of the analyzed data of the analyzed data.
  • the process includes:
  • a step of forming a set of noisy training data comprising said set of training data and said at least one associated noisy copy
  • the at least one noise generation parameter which includes a maximum noise amplitude to be added to all or part of the data of the training data set constitutes a simple and particularly robust parameter for obtaining distinct noisy copies of controlled manner.
  • the step of generating a noisy copy may in particular comprise the generation of noisy copies comprising the noise of only one part of the training data set, for example by random selection of the data to be noisy, so as to ensure a completely random distribution of the noisy data.
  • the noise parameter can have a different value but can also take identical values for all or part of the noisy copies. Indeed, the noise being added randomly, the same noise parameter will generate different noisy copies so that their performance may vary.
  • the method implements in parallel the steps of generating a plurality of noisy copies, and for each noisy copy generated, the method implements in parallel, the steps of constitution, training, and calculation, the determining step determining the set of noisy training data having a maximum detection performance among the performances calculated by the parallel calculation steps.
  • said generation, constitution, training and calculation steps are implemented iteratively, for example incrementally or dichotomously, so that at each iteration the detection performance of said automatic learning module calculated is compared with the detection performance of said automatic learning module calculated at the previous iteration.
  • an iterative implementation allows a relatively lightweight approach, especially in terms of memory footprint, to determine the optimal noise parameter value.
  • said generation, constitution, training and calculation steps are implemented incrementally, so that at each iteration the noise generation parameter value is incremented by a predetermined step, and if the performance calculated at the previous iteration is lower than that calculated at the current iteration, a new iteration of the generation, constitution, training and calculation steps is carried out.
  • the set of labeled training data also includes at least one example of anomalous data.
  • the machine learning module even more robust, with even better control over false positives, without diminishing the anomaly detection performance.
  • the step of calculating the performance of detection of said automatic learning module is also a function of the rate of false negatives obtained by the implementation of the automatic learning module on at least one example of abnormal data.
  • the step of calculating the performance of detection of said automatic learning module is also a function of the rate of false negatives obtained by the implementation of the automatic learning module on at least one example of abnormal data.
  • said step of calculating the detection performance comprises calculating an average between the rate of false positives and the rate of false negatives. This is a simple and relatively reliable method for calculating overall performance.
  • said average is weighted according to a predetermined coefficient.
  • the weighting makes it possible to give more weight either to the false-positives or to the false-negatives in the overall calculation of the performance, in order to take into account the most important criterion of the two, in particular with regard to the technical field for which the process is implemented.
  • the determination step further comprises a comparison of the maximum detection performance determined with a target performance value, so that if the maximum detection performance is lower than the performance value target, a new implementation of the method is carried out with new values of noise generation parameters.
  • the method according to the invention can be relaunched with new sold-out copies, for example by changing the sold-out parameters, so as to continue the search for a set of sold-out data. showing satisfactory performance.
  • said at least one brait generation parameter comprises a statistical brait distribution, such as a Gaussian white additive brait or a colored brait.
  • a statistical brait distribution such as a Gaussian white additive brait or a colored brait.
  • the machine learning module comprises one module among: a one-class support vector machine, a decision tree, a forest of decision trees, a method of the k nearest neighbors or an auto-encoder.
  • a one-class support vector machine a decision tree
  • a forest of decision trees a method of the k nearest neighbors or an auto-encoder.
  • the invention also relates to a method for classifying a material, to be classified in a list of predetermined materials, such as a list of plastic resins, each material being associated with at least one measurement parameter, such as an absorption spectrum; the classification method comprising, for each material of the predetermined list of materials, the implementation of the anomaly detection method as described previously.
  • the invention also relates to a computer program comprising program code instructions for the execution of the steps of the anomaly detection method as described previously and/or for the execution of the preceding classification method, when said program is run on a computer.
  • FIG. 1 is a flowchart of a first embodiment of the method according to the invention.
  • FIG. 2 is a flowchart of a second embodiment of the method according to the invention.
  • FIG. 3 is a schematic representation of the noisy and non-noisy training datasets implemented by the invention.
  • method 1 is implemented to detect non-recyclable plastic resins in a polyethylene recycling chain.
  • the invention can be implemented in any technical field, whether in the field of biology, for example to carry out the detection of bacteria, in astrophysics or in any other technical field where the detection fault should be performed.
  • Anomaly detection method 1 implements an unsupervised machine learning module.
  • Any type of unsupervised machine learning module can be implemented. Indeed, as will emerge from the description, the invention is based in particular on the automatic optimization of the training data. The method makes it possible in this respect to optimize the implementation of any type of automatic learning module.
  • one-class support vector machines called one-class SVM
  • trees of decision tree known as Decision Tree
  • decision tree forests in particular Isolation Forests, auto-encoders, or even the K-Nearest Neighbors method. All these methods are well known to those skilled in the art, and their particular implementation is not discussed here.
  • the objective is not to classify the data among a set of classes, as is known to do in a classification process, but to determine whether each datum of entry belongs to the unique class sought or not, in other words if it is an anomaly with respect to the other data.
  • the one-class SVM is particularly useful for detecting observations or measurements whose characteristics differ significantly from the expected data. This data is commonly referred to in the technical field as outliers, or outliers.
  • the module looks for a hyperplane, like the classic SVM, with the difference that this hyperplane aims to separate all the data from the origin in the space in which the data is projected, while maximizing the distance from the hyperplane to the data, so as to reduce the margin between the data and the hyperplane.
  • the method separates the space by a hypersphere which aims to encompass all the training data and to find the smallest hypersphere allowing to encompass all this data.
  • the machine learning module detects data as "abnormal” in an erroneous way, and the risk of false negatives, in other words the module detects that the data is "normal” when it is actually data "abnormal”.
  • over-sorting steps can eliminate non-recyclable materials; which will lead to an increase in waste treatment costs, ranging, for example, from €80 to €150 per ton.
  • the impact relates to the quality of the recycled material produced if an incompatible material is mixed with a modification of the expected properties; this has the consequence of not being able to market the recycled materials on the expected markets and of sending them to markets with lower added value, with a loss of between €100 and €300 per tonne, for example.
  • the invention aims to reduce the risk of all false detections in the case of the implementation of unsupervised machine learning modules.
  • Method 1 uses multiple datasets.
  • Figure 3 is a schematic representation of a training data set 20.
  • Each data in Figure 3 is a point of the plane; in other words, data made of a two-dimensional vector, so that the training data set 20 can be represented in a plane.
  • the reference 21 represents the noisy copy 21 of the training data. But the training data 20 being superimposed on the noisy data 21, all the data of the noisy copy 21 cannot be seen in FIG. dimensions greater than 2 or 3.
  • the training data set 20 may also include examples of anomalies. This is particularly advantageous because these examples of anomalies make it possible to obtain a module more robust machine learning by further improving control over false positive detection.
  • a set of labeled test data representative of the normal state of the analyzed data is also provided.
  • This set of test data which is a classic element of machine learning methods, makes it possible to calculate the performance of a trained machine learning module, by identifying the rate of correct detections made on a set of data whose component data we already know.
  • Method 1 trains the unsupervised automatic learning module, also from a set of noisy training data.
  • the objective is to optimally calibrate the added noise to improve the robustness of the learning module.
  • the noise added to the training data 20 is determined according to at least one noise parameter, in particular according to a random value limited in amplitude.
  • an input data of a machine learning module whether training, test or data to be analyzed, comprises a plurality of numerical values, usually organized as a vector or matrix.
  • a labeled datum associates an absorption spectrum with a material, here polyethylene.
  • the absorption spectrum is then an N-dimensional vector of absorbance values. N being the number of sample values in the spectrum.
  • the analysis spectrum being obtained by a so-called near infrared method
  • the spectrum is for example obtained between 780nm and 2500nm.
  • a number N of sampling points of the spectrum obtained during the analysis of the object is then defined, forming input data associated with the object.
  • noise threshold is understood to mean the maximum value in amplitude of the generated noise.
  • the noise generation method for the different data can be a method of generating an additive white Gaussian noise or a colored noise, in other words a noise whose power spectral density is not constant over the spectrum. This choice can be made by a person skilled in the art.
  • the generation step 10 of a noisy copy 21 does not necessarily include the noise of all the data of the training data set, but may include the noise of only part of this set , for example by random selection of the data to be noisy, so as to ensure a completely random distribution of the noisy data.
  • the amount of noisy input data may also be increased a posteriori if the detection performance as calculated 13 later in the description is not sufficient.
  • the search for the optimal noise value is carried out by a search grid method in which a plurality of noise parameters are used in parallel.
  • the number of noisy data 21 calculated is determined by the person skilled in the art according to the available calculation time, the desired search granularity and the desired training speed.
  • Each generation step 10-10 being independent, and each noisy copy 21 obtained being produced according to a noise threshold value different from the other noisy copies, or according to a different noise mode (white noise, colored noise).
  • noisy copies 21 are obtained in parallel.
  • step 11-11 of constitution of a noisy training data set 22, comprising the training data set 20 and its noisy copy 21. Also , one obtains as many noisy training data sets 22 as there are distinct noisy copies 21 .
  • training data is divided into two samples, a first training sub-sample comprising 80% of the training data set and a second test sub-sample made of the remaining 20%, not not be confused with the test data set of computation step 13.
  • training sub-steps based on the training sub-sample are repeated several times and the hyper- parameters of the machine learning module depending on the error obtained at each repetition of the training sub-steps, the calculated error can be a performance score of the model on the test sample, such as the squared error medium.
  • training sub-steps are therefore repeated a plurality of times, for example between 20 and 50 times, in particular 30 times, so as to cause the hyper-parameters of the model to converge to an optimal value as a function of the set of noisy training data 21.
  • this order of magnitude is given solely by way of example and depends in particular on the calculation time available for the training.
  • the performance of the machine learning module is calculated by implementing the trained module with the labeled test data set.
  • This calculation step 13 can be refined, according to an alternative implementation, also taking into account the number of false negatives, otherwise depending on the number of abnormal data wrongly considered as normal. This is possible only when the test dataset also includes abnormal data. Also it is advantageous to have a set of test data also including examples of anomalous data.
  • the performance can then be estimated as an average of the false-negative and false-positive rates, possibly weighted according to the importance given respectively to the type of false.
  • method 1 can be restarted at steps 10-10” by creating new datasets that have been reduced, for example by creating datasets that have been reduced from values of thresholds of noise presenting a refined granularity around the brait threshold having made it possible to obtain the maximum performance during the determination step, in order to seek an even better maximum value.
  • method 1' differs from the previous method 1 in that it is implemented incrementally, and not according to the grid mode. of research put in work previously.
  • the incremental method described below is an example of iterative implementation of the invention.
  • the invention is not limited to this single incremental method and can be adapted to other methods, such as a dichotomous approach or a heuristic method to perform an iterative search for optimum.
  • the method 1′ first proceeds to a generation step 10 of a first noisy copy 21, from a first noise threshold value.
  • the noise threshold value is, during the initialization of the process 1′, initialized to a minimum value, which corresponds to the smallest added noise. At each iteration of method 1′, the noise threshold is incremented by one step, determined according to the desired granularity.
  • the noise threshold values in other words the noise amplitude, can be freely adapted by those skilled in the art.
  • brait threshold value of the previous iteration was optimal and one can then proceed to the implementation step 15 of the machine learning module trained from the braited copy obtained for the brait threshold value of the previous iteration.
  • a performance maximum when it is determined during the determination step 14' that a performance maximum has been found, it may be a local maximum and not the optimal performance maximum. Also, according to a particular implementation of this second embodiment, it is possible to carry out a plurality of new iterations, for example for a predetermined number of iterations, in order to check whether a new improvement in performance can be obtained for the subsequent iterations. This prevents the process from stopping at a local maximum.
  • the invention described here makes it possible to obtain an anomaly detection method implementing unsupervised automatic learning modules having an operation optimized by the addition of controlled noise in the training data.
  • the invention can also be used for classification purposes.
  • the invention may relate to a classification method, for example material classification, to be classified in a predetermined list of materials, such as a list of plastic resins.
  • each material is associated with at least one measurement parameter, such as an absorption spectrum, as explained above.
  • the classification process then implements, for each material from the predetermined list of materials, a process 1, 1' for detecting anomalies as described above. This allows, through the implementation of several anomaly detection processes, to perform a relatively efficient and robust classification.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Measurement Of Mechanical Vibrations Or Ultrasonic Waves (AREA)
  • Image Analysis (AREA)
  • Testing And Monitoring For Control Systems (AREA)

Abstract

Procédé (1) de détection d'anomalies mis en œuvre par ordinateur dans un ensemble de données mettant en œuvre un module d'apprentissage automatique non-supervisé comprenant une étape de génération (10-10'') d'une pluralité de copies bruitées de tout ou partie des données de l'ensemble de données d'entraînement, chaque copie bruitée étant obtenue à partir d'au moins un paramètre de génération de bruit, pour chaque copie bruitée, une étape d'entraînement (12-12'') dudit module d'apprentissage automatique en fonction dudit ensemble de données d'entraînement bruitées associé, et une étape de détermination (14, 14') de l'ensemble de données d'entraînement bruitées présentant une performance de détection maximale.

Description

Description
Titre de l’invention :
GENERATION DE COPIES DE DONNEES D'ENTRAINEMENT BRUITEES DANS UN PROCÉDÉ DE DÉTECTION D'ANOMALIES
[1] L’invention concerne un procédé de détection d’anomalies.
[2] Plus particulièrement l’invention concerne un procédé d’apprentissage automatique pour la détection de données anormales dans un ensemble de données.
[3] La détection d’anomalies est un sujet bien connu notamment dans le domaine de l’exploration de données, en anglais Data Mining, avec de nombreuses applications industrielles telles que le tri d’objets sur une chaîne de recyclage, le suivi de capteurs de mesures ou toute autre application de supervision d’usine.
[4] Il est connu de mettre en œuvre des méthodes d’apprentissage automatique pour détecter des données dites anormales dans un ensemble de données. Toutefois, un problème connu dans la détection d’anomalie est que les données généralement disponibles sont fortement déséquilibrées.
[5] Autrement dit, les données d’entraînement sont généralement composées d’une grande majorité de données « normales », tandis que les données d’anomalies sont généralement faiblement représentées. Ceci pose alors un souci relativement important sur la robustesse de l’entraînement des modules d’apprentissage automatiques, en particulier lorsqu’ils sont supervisés.
[6] Afin de réduire l’effet de déséquilibre des données, on connaît des méthodes telles que la méthode SMOTE décrite dans la publication scientifique SMOTE: Synthetic Minority Over-sampling Technique, Nitesh V. Chawla et al., in Journal ofArtificial Intelligence Research 16 (2002) 321-357.
[7] La méthode SMOTE tend à densifier les zones de données peu représentées de sorte à réduire le déséquilibre de l’ensemble de données.
[8] Toutefois les techniques connues de l’art antérieur, ne sont généralement pas satisfaisantes. Les méthodes d’apprentissage supervisé sont en effet sensibles à l’équilibrage des données, et le déséquilibre de jeu de données d’entraînement entre données normales et données anormales les rend peu adaptées à cet usage.
[9] Les méthodes d’apprentissage non-supervisé connues tendent quant à elle à être relativement conservatrices. Autrement dit, ces méthodes sont développées en présumant que des données anormales sont présentes dans les jeux de données d’entraînement, ceci les rendant relativement peu flexibles dans un contexte où il n’existe que peu ou pas d’exemples de données anormales. Ceci ne permet alors pas d’obtenir un contrôle satisfaisant sur les taux de faux-positifs.
[10] Or, dans le contexte de l’invention, les jeux de données d’entraînement comprennent peu ou pas d’exemples de données anormales, et il existe une forte contrainte sur l’exactitude des détections obtenues.
[11] Aussi, il existe le besoin d’un procédé d’apprentissage automatique pour la détection d’anomalies résolvant les problèmes précédents.
[12] À cet effet on propose un procédé de détection d’anomalies mis en œuvre par ordinateur dans un ensemble de données mettant en œuvre un module d’apprentissage automatique non- supervisé, et comprenant la fourniture d’un ensemble de données d’entraînement étiquetées comprenant au moins une donnée d’entraînement représentative d’un état normal des données analysées des données analysées.
[13] Le procédé comprend :
[14] Une étape de génération d’une pluralité de copies bruitées de tout ou partie des données de l’ensemble de données d’entraînement, chaque copie bruitée étant obtenue à partir d’au moins un paramètre de génération de bruit, ledit paramètre de génération de bruit comprenant une amplitude de bruit maximale à ajouter à tout ou partie des données de l’ensemble de données d’entraînement ;
[15] Pour chaque copie bruitée, une étape de constitution d’un ensemble de données d’entraînement bruitées, comprenant ledit ensemble de donnée d’entraînement et de ladite au moins une copie bruitée associée,
[16] Pour chaque copie bruitée, une étape d’entraînement dudit module d’apprentissage automatique en fonction dudit ensemble de données d’entraînement bruitées associée, par exemple par une méthode de validation croisée,
[17] Pour chaque copie bruitée, une étape de calcul de la performance de détection dudit module d’apprentissage automatique en fonction du taux de faux positifs obtenu par la mise en œuvre du module d’apprentissage automatique sur un ensemble de données de test étiquetées, comprenant au moins une donnée d’entraînement représentative d’un état normal des données analysées ;
[18] Une étape de détermination de l’ensemble de données d’entraînement bruitées présentant une performance de détection maximale ; et
[19] La mise en œuvre du module d’apprentissage automatique entraîné à partir dudit ensemble de données d’entraînement bruitées déterminé.
[20] Ainsi, on obtient un procédé permettant d’améliorer un module d’apprentissage automatique non supervisé pour détecter des anomalies en ajoutant du bruit aux données d’entraînement de manière contrôlée. Ainsi, l’invention permet d’éviter la détection erronée de faux -positifs bien qu’il n’existe pas nécessairement d’exemples de données anormales dans les données d’entraînement.
[21] Le au moins un paramètre de génération de bruit qui comprend une amplitude de bruit maximale à ajouter à tout ou partie des données de l’ensemble de données d’entraînement constitue un paramètre simple et particulièrement robuste pour obtenir des copies bruitées distinctes de manière contrôlé.
[22] En particulier, l’étape de génération de copie bruitée peut notamment comprendre la génération de copies bruitées comprenant le bruitage d’une partie seulement de l’ensemble de données d’entraînement, par exemple par sélection aléatoire des données à bruiter, de sorte à assurer une distribution totalement aléatoire des données bruitées.
[23] En particulier, pour chaque copie bruitée le paramètre de bruit peut présenter une valeur différente mais peut aussi prendre des valeurs identiques pour tout ou partie des copies bruitées. En effet, le bruitage étant ajouté aléatoirement, un même paramètre de bruit générera des copies bruitées différentes de sorte que leurs performances pourront varier.
[24] Avantageusement et de manière non limitative, le procédé met en œuvre en parallèle les étapes de génération d’une pluralité de copies bruitées, et pour chaque copie bruitée générée, le procédé met en œuvre en parallèle, les étapes de constitution, d’entraînement, et de calcul, l’étape de détermination déterminant l’ensemble de données d’entraînement bruitées présentant une performance de détection maximale parmi les performance calculées par les étapes de calcul parallèles.
[25] Ainsi, en implémentant le procédé selon une méthode de grille de recherche, on peut déterminer de manière relativement rapide le paramètre optimal de bruit pour bruiter les données d’entraînement.
[26] Selon une alternative avantageuse de mise en œuvre du procédé, lesdites étapes de génération, de constitution, d’entraînement et de calcul sont mises en œuvre de manière itérative, par exemple de manière incrémentale ou dichotomique, de sorte qu’à chaque itération on compare la performance de détection dudit module d’apprentissage automatique calculée avec la performance de détection dudit module d’apprentissage automatique calculée à l’itération précédente.
[27] Ainsi, une implémentation itérative permet une approche relativement légère, en particulier en termes d’encombrement mémoire, pour déterminer la valeur optimale de paramètre de bruit.
[28] Selon une mise en œuvre particulière, on met en œuvre lesdites étapes de génération, de constitution, d’entraînement et de calcul de manière incrémentale, de sorte qu’à chaque itération la valeur de paramètre de génération de bruit est incrémentée d’un pas prédéterminé, et si la performance calculée à l’itération précédente est inférieure à celle calculé à l’itération courante, on procède à une nouvelle itération des étapes de génération, de constitution, d’entraînement et de calcul.
[29] Avantageusement et de manière non limitative, l’ensemble de données d’entraînement étiquetées comprend aussi au moins un exemple de donnée anormale. Ainsi, on peut obtenir des données d’entraînement rendant le module d’apprentissage automatique encore plus robuste, avec un contrôle encore amélioré sur les faux-positifs, sans diminuer les performances de détection d’anomalies.
[30] Avantageusement et de manière non limitative, l’étape de calcul de la performance de détection dudit module d’apprentissage automatique est aussi fonction du taux de faux négatifs obtenu par la mise en œuvre du module d’apprentissage automatique sur au moins un exemple de donnée anormale. Ainsi, on peut améliorer le calcul de la performance de l’entraînement du module d’apprentissage automatique à partir du jeu de données bradées, en tenant compte non seulement des faux positifs, autrement dit des détections erronées d’anomalies, mais aussi des faux négatifs, autrement dit du taux d’anomalies non détectées.
[31] Avantageusement et de manière non limitative, ladite étape de calcul de la performance de détection comprend le calcul d’une moyenne entre le taux de faux positifs et le taux de faux négatifs. Ceci constitue une méthode simple et relativement fiable pour calculer une performance globale.
[32] Avantageusement et de manière non limitative, ladite moyenne est pondérée en fonction d’un coefficient prédéterminé. Ici la pondération permet de donner plus de poids soit aux faux-positifs soit aux faux-négatifs dans le calcul global de la performance, afin de tenir compte du critère le plus important des deux, en particulier eu égard au domaine technique pour lequel le procédé est mis en œuvre.
[33] Avantageusement et de manière non limitative, l’étape de détermination comprend en outre une comparaison de la performance de détection maximale déterminée avec une valeur de performance cible, de sorte que si la performance de détection maximale est inférieure à la valeur de performance cible, on procède à une nouvelle mise en œuvre du procédé avec de nouvelles valeurs de paramètres de génération de brait. Ainsi, si la performance maximale détectée n’est pas satisfaisante, on peut relancer le procédé selon l’invention avec de nouvelles copies bradées, par exemple en changeant les paramètres de brait, de sorte à poursuivre la recherche d’un ensemble de données bradées présentant une performance satisfaisante.
[34]
[35] Avantageusement et de manière non limitative, ledit au moins un paramètre de génération de brait comprend une distribution statistique du brait, tel qu’un brait additif blanc gaussien ou un brait coloré. Ainsi, on peut faire varier le brait non seulement quant à son amplitude mais aussi quant à son type de génération. Ceci participe à la détection d’un paramétrage optimal de brait.
[36] Avantageusement et de manière non limitative, le module d’apprentissage automatique comprend un module parmi : une machine à vecteur de support à une classe, un arbre décisionnel, une forêt d’arbres décisionnels, une méthode des k plus proches voisins ou un auto-encodeur. Ces modules sont bien connus de l’homme du métier et particulièrement performants. En outre le procédé présente des résultats performants pour tous ces modules.
[37] L’invention concerne aussi un procédé de classification d’un matériau, à classifier dans une liste de matériaux prédéterminée, telle qu’une liste de résines plastiques, chaque matériau étant associé à au moins un paramètre de mesure, tel qu’un spectre d’absorption ; le procédé de classification comprenant, pour chaque matériau de la liste de matériaux prédéterminée, la mise en œuvre du procédé de détection d’anomalies tel que décrit précédemment.
[38] L’invention concerne aussi un programme d’ordinateur comprenant des instructions de code de programme pour l’exécution des étapes du procédé de détection d’anomalie tel que décrit précédemment et/ou pour l’exécution du procédé de classification précédent, lorsque ledit programme est exécuté sur un ordinateur.
[39] D’autres particularités et avantages de l’invention ressortiront à la lecture de la description faite ci-après de deux modes de réalisation particuliers de l’invention, donnés à titre indicatif mais non limitatif, en référence aux dessins annexés sur lesquels :
[40] [Fig. 1] est un organigramme d’un premier mode de réalisation du procédé selon l’invention ;
[41] [Fig. 2] est un organigramme d’un deuxième mode de réalisation du procédé selon l’invention ; et
[42] [Fig. 3] est une représentation schématique des ensembles de données d’entraînement bruités et non bruités mis en œuvre par l’invention.
[43] Selon un premier mode de réalisation de l’invention du procédé 1 selon l’invention en référence à la figure 1, le procédé 1 est mis en œuvre pour détecter des résines plastiques non-recyclables dans une chaîne de recyclage de polyéthylène.
[44] Bien que la description dans ces deux modes de réalisations 1, 1’ décrits soit basée sur cet exemple particulier d’utilisation du procédé 1, l’invention n’est pas limitée à ce seul domaine technique, mais est adaptable à tout ensemble de données dans lequel des éléments indésirables doivent être identifiés, pour toute application de Data Mining, ou de traitement de données.
[45] L’invention pouvant être mise en œuvre dans n’importe quel domaine technique, que ce soit dans le domaine de la biologie, par exemple pour effectuer de la détection de bactéries, en astrophysique ou dans tout autre domaine technique où la détection d’anomalie doit être effectuée.
[46] Le procédé 1 de détection d’anomalies, met en œuvre un module d’apprentissage automatique non- supervisé.
[47] Tout type de module d’apprentissage automatique non-supervisé peut-être mis en œuvre. En effet, comme il ressortira de la description, l’invention repose en particulier sur l’optimisation automatique des données d’entraînement. Le procédé permet à cet égard d’optimiser la mise en œuvre de tout type de module d’apprentissage automatique.
[48] Parmi les modules d’apprentissage automatique, on connaît notamment les machines à vecteurs de support à une classe, dit one-class SVM, des arbres de décision, dit Decision Tree , des forêts d’arbres de décision, notamment des Isolation Forest, des auto-encodeurs, ou encore la méthode des K plus proches voisins, K-Nearest Neighbors. Toutes ces méthodes sont bien connues de l’homme du métier, et leur implémentation particulière n’est pas ici discutée.
[49] Il ressort clairement que pour l’homme du métier, toutes ces méthodes sont connues pour être entraînées sur la base de données d’entraînements, de sorte à pouvoir ensuite, dans une phase d’exploitation, fournir, en fonction d’une donnée d’entrée, une caractérisation de la donnée.
[50] Dans le contexte de l’invention, l’objectif n’est pas de classifier les données parmi un ensemble de classes, comme il est connu de le faire dans un procédé de classification, mais bien de déterminer si chaque donnée d’entrée appartient à la classe unique recherchée ou non, autrement dit s’il s’agit d’une anomalie par rapport aux autres données.
[51] Dans cet exemple de mise en œuvre de l’invention, nous mettons en œuvre un module one-class SVM.
[52] Le one-class SVM est en particulier utile pour détecter des observations ou des mesures dont les caractéristiques différent significativement des données attendues. Ces données sont couramment appelées des outliers dans le domaine technique, ou des données aberrantes.
[53] Le one-class SVM et décrit dans une première mise en œuvre dans la publication
Support Vector Method for Novelty Détection, Bernhard Scholkopf et al., NIPS'99: Proceedings ofthe 12th International Conférence on Neural Information Processing Systems, November 1999, Pages 582-588, qui est ici incorporé par référence.
[54] Dans cette implémentation, le module recherche un hyperplan, comme le SVM classique, à la différence que cet hyperplan vise à séparer toutes les données de l’origine dans l’espace dans lequel sont projetées les données, tout en maximisant la distance de l’hyperplan aux données, de sorte à réduire la marge entre les données et l’hyperplan.
[55] Une autre implémentation connue du one-class SVM est celle décrite dans Support vector data description, Tax, D. and Duin, R., 2004, in Machine learning,
54(1) .-pages 45-66, lui-aussi incorporé par référence.
[56] Dans cette implémentation particulière du one-class SVM, la méthode sépare l’espace par une hypersphère qui vise en englober toutes les données d’entraînement et à trouver la plus petite hypersphère permettant d’englober toutes ces données.
[57] Il est bien connu que les méthodes non- supervisées réalisent, d’une manière générale, des subdivisions ou séparations de l’espace en fonction de la densité des données d’entraînement, ce qui permet de faire ressortir les outliers de manière automatique.
[58] Toutefois, une limite bien connue de ces algorithmes est le risque d’obtenir des faux-positifs. Autrement dit que le module d’apprentissage automatique détecte une donnée comme « anormale » de manière erronée, et le risque de faux- négatifs, autrement dit que le module détecte que la donnée est « normale » alors qu’elle est en réalité une donnée « anormale ».
[59] Dans le contexte de l’exemple décrit, ces deux cas sont problématiques :
[60] - Lors d’un faux positif, un matériau recyclable est retiré car considéré comme non- recyclable ; l’impact négatif est double à la fois dû à une perte de matières recyclées et à l’augmentation du coût opérationnel de traitement du flux non valorisable. Si par exemple, l’erreur de détection est de l’ordre de 5 à 10%, cela se répercute sur les tonnages triés à l’année.
[61] - Lors d’un faux négatif, un matériau non-recyclable est considéré comme recyclable et vient alors polluer l’ensemble des matériaux triés. Dans ce cas, l’impact se situe lors des étapes de sur- tri en amont des lignes de production de matières recyclées ou sur la production proprement dite.
[62] Dans le premier cas, les étapes de sur-tri peuvent éliminer les matériaux non- recyclables ; ce qui va engendrer une augmentation des coûts de traitement des résidus, allant à titre d’exemple de 80€ à 150€ par tonne.
[63] Dans le deuxième cas, l’impact porte sur la qualité de la matière recyclée produite si une matière non-compatible se retrouve en mélange avec une modification des propriétés attendues ; cela a pour conséquence de ne pas pouvoir commercialiser les matières recyclées sur les marchés attendus et de les adresser sur des marchés à moindre valeur ajoutée, avec une perte comprise à titre d’exemple entre 100 à 300€ par tonne.
[64] A cet égard l’invention vise à réduire le risque de toutes les fausses détections dans le cas de la mise en œuvre de modules d’apprentissage automatique non supervisés.
[65] Le procédé 1 emploie plusieurs jeux de données.
[66] Tout d’abord on fournit 9 un ensemble de données d’entraînement 20 étiquetées représentatif de l'état normal des données analysées.
[67] La figure 3 est une représentation schématique d’un ensemble de données d’entraînement 20. Chaque donnée de la figure 3 est un point du plan ; autrement dit une donnée faite d’un vecteur bidimensionnel, de sorte qu’on peut représenter l’ensemble de données d’entraînement 20 dans un plan. La référence 21 représente la copie bruitée 21 des données d’entraînement. Mais les données d’entraînement 20 étant superposées sur les données bruitées 21, toutes les données de la copie bruitée 21 ne se voient pas sur la figure 3. Il est bien entendu que cette figure est uniquement illustrative, les données étant fréquemment des vecteurs de dimensions supérieures à 2 ou 3.
[68] Bien que ce ne soit pas obligatoire, l’ensemble de données d’entraînement 20 peut aussi comprendre des exemples d’anomalies. Ceci est particulièrement avantageux car ces exemples d’anomalies permettent d’obtenir un module d’apprentissage automatique plus robuste en améliorant encore le contrôle sur la détection des faux -positifs.
[69] Dans notre exemple de réalisation, des objets à recycler en polyéthylène ont été soumis à une caractérisation proche infra-rouge, connue sous le nom de caractérisation NIR, pour Near Infra-Red, de sorte que chaque objet est associé à un spectre d’absorption permettant de le caractériser.
[70] Ceci est encore une fois uniquement donné dans le cadre de l’exemple de mise en œuvre du procédé, mais les données étiquetées peuvent comprendre n’importe quelle caractéristique voulue par l’homme du métier, et ne se limite pas à un spectre ou des valeurs d’absorbance.
[71] On fournit aussi un ensemble de données de test étiquetées représentatif de l'état normal des données analysées.
[72] Cet ensemble de données de test, qui est un élément classique des méthodes d’apprentissage automatique, permet de calculer la performance d’un module d’apprentissage automatique entraîné, en identifiant le taux de détections correctes réalisées sur un ensemble de données dont on connaît déjà les données le composant.
[73] Le procédé 1 selon l’invention procède alors à l’entraînement du module d’apprentissage automatique non supervisé, à partir aussi d’un ensemble de données d’entraînement bruité. L’objectif étant de calibrer de manière optimale le bruit ajouté pour améliorer la robustesse du module d’apprentissage.
[74] Le bruit ajouté aux données d’entraînement 20 est déterminé en fonction d’au moins un paramètre de bruit, notamment en fonction d’une valeur aléatoire limitée en amplitude.
[75] En effet, il est bien connu qu’une donnée d’entrée d’un module d’apprentissage automatique, que ce soit une donnée d’entraînement, de test ou une donnée à analyser, comprend une pluralité de valeurs numériques, généralement organisées sous forme de vecteur ou de matrice.
[76] Dans notre exemple, tel qu’on l’a exposé précédemment, une donnée étiquetée associe un spectre d’absorption à un matériau, ici du polyéthylène.
[77] Le spectre d’absorption est alors un vecteur de dimension N de valeurs d’absorbance. N étant le nombre d’échantillons de valeurs dans le spectre.
[78] Dans notre exemple le spectre d’analyse étant obtenu par une méthode dite proche infra-rouge, le spectre est par exemple obtenu entre 780nm et 2500nm. On définit alors un nombre N de points d’échantillonnage du spectre obtenu lors de l’analyse de l’objet, formant donnée d’entrée associé à l’objet.
[79] En général, on procède alors à une normalisation du vecteur de données de sorte à simplifier le traitement de données, bien que cette étape ne soit pas obligatoire.
[80] Pour bruiter un tel vecteur, à titre d’exemple, on somme alors à ce vecteur de donnée un vecteur de bruit, dont la norme est inférieure ou égale à une valeur de seuil de bruit. Ainsi, on entend par seuil de bruit, la valeur maximale en amplitude du bruit généré.
[81] Le procédé de génération du bruit pour les différentes données peut être une méthode de génération d’un bruit additif blanc gaussien ou d’un bruit coloré, autrement dit un bruit dont la densité spectrale de puissance n’est pas constante sur le spectre. Ce choix pouvant être réalisé par l’homme du métier.
[82] On peut aussi prévoir différentes copies bruitées avec différents types de bruits, ce qui permet aussi d’augmenter la probabilité d’obtenir un maximum de performance, ceci nécessitant toutefois plus de temps de calcul et d’encombrement mémoire.
[83] Ainsi à partir d’une donnée d’entrée, on peut obtenir une deuxième donnée d’entrée bruitée, dont le bruit est contrôlé en amplitude dans l’espace à N dimension de la donnée.
[84] L’étape de génération 10 d’une copie bruitée 21 ne comprend pas nécessairement le bruitage de l’ensemble des données de l’ensemble de données d’entraînement, mais peut comprendre le bruitage d’une partie seulement de cet ensemble, par exemple par sélection aléatoire des données à bruiter, de sorte à assurer une distribution totalement aléatoire des données bruitée.
[85] Le bruitage d’une partie seulement des données de l’ensemble de données d’entraînement 20 est notamment pertinent lorsque cet ensemble de données d’entraînement 20 comprend un très grand nombre de données, ce qui imposerait des temps d’entraînement particulièrement long. Aussi, ce choix doit être opéré par l’homme du métier comme un rapport à trouver entre le temps de calcul nécessaire, en fonction des performances de calcul disponibles, et le besoin de maximiser la quantité de données d’entrée.
[86] La quantité de données d’entrées bruitée pourra en outre être augmentée a posteriori si la performance de détection telle que calculée 13 plus loin dans la description n’est pas suffisante.
[87] Dans ce premier mode de réalisation, la recherche de la valeur de bruit optimale est réalisée par une méthode de grille de recherche dans laquelle une pluralité de paramètres de bruits sont employés en parallèle.
[88] Autrement dit, plusieurs copies bruitées 21 de l’ensemble de données d’entraînement 20 sont générées au cours de plusieurs étape de génération 10- 10” parallèle.
[89] Le nombre de données bruitées 21 calculées est déterminé par l’homme du métier en fonction du temps de calcul disponible, de la granularité de recherche souhaitée et de la rapidité souhaitée de l’entraînement.
[90] Chaque étape de génération 10-10” étant indépendante, et chaque copie bruitée 21 obtenue étant réalisée selon une valeur de seuil de bruit différente des autres copies bruitée, ou selon un mode de bruitage différent (bruit blanc, bruit coloré).
[91] Ainsi, on obtient en parallèle une pluralité de copies bruitées 21. [92] Pour chaque copie bruitée 21, on procède alors à une étape de constitution 11-11” d’un ensemble de données d’entraînement bruité 22, comprenant l’ensemble de données d’entraînement 20 et sa copie bruitée 21. Aussi, on obtient autant d’ensemble de données d’entraînement bruité 22 que de copies bruitées 21 distinctes.
[93] On procède ensuite, pour chaque ensemble de données d’entraînement bruitées 22 à une étape d’entraînement 12-12” d’un module d’apprentissage automatique. Cette étape est bien connue de l’homme du métier qui met en œuvre un module d’apprentissage automatique.
[94] On peut notamment prévoir d’entraîner le module d’apprentissage automatiques par des méthodes de validation croisées connues du domaine technique.
[95] En particulier on peut procéder à un entraînement par validation croisée dite Hold-
Out dans laquelle on divise les données d’entraînement en deux échantillons, un premier sous-échantillon d’apprentissage comprenant 80 % de l’ensemble de données d’entraînement et un second sous-échantillon de test fait des 20% restants, à ne pas confondre avec l’ensemble de données de test de l’étape de calcul 13. Par les méthodes de validation croisée on répète plusieurs fois des sous-étapes d’entraînement basé sur le sous-échantillon d’apprentissage et on affine les hyper-paramètres du module d’apprentissage automatique en fonction de l’erreur obtenue à chaque répétition des sous-étapes d’entraînement, l’erreur calculée pouvant être un score de performance du modèle sur l'échantillon de test, tel que l'erreur quadratique moyenne. Pour un entraînement, des sous-étapes d’entraînements sont donc répétés une pluralité de fois, par exemple entre 20 et 50 fois, notamment 30 fois, de sorte à faire converger les hyper-paramètres du modèle à une valeur optimale en fonction de l’ensemble de données d’entraînement bruitées 21. Toutefois cet ordre de grandeur est donné uniquement à titre d’exemple et dépend notamment du temps de calcul disponible pour l’entraînement.
[96] Ainsi, on obtient autant de module d’apprentissage automatique entraînés que d’ensemble de données d’entraînement bruitées 22.
[97] Ensuite, un fois les étapes d’entraînement 12-12” terminées, on procède, pour chaque module d’apprentissage automatique entraîné à une étape de calcul IS IS” de la performance du module d’apprentissage automatique correspondant.
[98] On calcule la performance du module d’apprentissage automatique en mettant en œuvre le module entraîné avec l’ensemble de données de test étiquetées.
[99] On détermine alors le taux de données considérées à tort comme anormales, autrement dit le taux de faux-positifs.
[100] On peut affiner cette étape de calcul 13, selon un mise en œuvre alternative, en tenant compte aussi du nombre de faux-négatif, autrement en fonction du nombre de données anormales considérées à tort comme normales. Ceci est possible uniquement lorsque l’ensemble de données de test comprend aussi des données anormales. Aussi il est avantageux d’avoir un ensemble de données de test comprenant aussi des exemples de données anormales.
[101] Dans ce cas alternatif, la performance peut alors être estimée comme étant une moyenne des taux de faux-négatif et de faux-positif, éventuellement pondérée en fonction de l’importance apportée respectivement au type de faux.
[102] Aussi, une telle pondération doit être effectuée en lien direct avec le domaine technique pour lequel le procédé est mis en œuvre.
[103] Dans notre exemple du tri d’objet, un faux-négatif est particulièrement problématique en ce qu’il autorise le passage d’un matériau non-désiré dans la chaîne de recyclage. Aussi, dans cette alternative de mise en œuvre, et compte tenu du domaine technique, une pondération majorant l’importance de la détection des faux-négatif est alors préférée.
[104] Une fois la performance calculée pour chaque ensemble de données d’entraînement bruité 22, on procède à une étape de détermination 14 de l’ensemble de données. Ici on détermine quel chaque ensemble de données d’entraînement bruité 22 maximise le critère de performance.
[105] A ce stade du procédé 1 selon un mise en œuvre particulière du premier mode de réalisation, il est possible de continuer la recherche d’une meilleur critère de performance si, par exemple le critère de performance maximal obtenu au cours de l’étape de détermination 14 est inférieur à une valeur minimale de critère de performance souhaitée, ou si on soupçonne par exemple avoir obtenu un maximum local qui ne correspond pas au maximum pouvant réellement être obtenu.
[106] Dans ce cas le procédé 1 peut être recommencé aux étapes 10-10” en créant de nouveaux jeux de données bradées, par exemple en créant des jeux de données bradées à partir de valeurs de seuils de brait présentant une granularité affinée autour du seuil de brait ayant permis d’obtenir le maximum de performance lors de l’étape de détermination, afin de rechercher une valeur de maximum encore meilleure.
[107] De retour à la mise en œuvre première du premier mode de réalisation, une fois l’ensemble de données d’entraînement bradées 22 présentant la performance de détection maximale déterminée, aussi appelé ensemble de données d’entraînement bradées 22 déterminé, on met en œuvre 15 le module d’apprentissage automatique entraîné à partir de cet ensemble de données d’entraînement bradées 22 pour détecter les anomalies. Autrement dit, dans notre mode de réalisation, on peut mettre en œuvre ce module d’apprentissage automatique pour détecter les résines plastiques non-recyclables dans une chaîne de recyclage de polyéthylène.
[108] Selon un autre mode de réalisation de l’invention, en référence à la figure 2, le procédé 1’ diffère du procédé 1 précédent en ce qu’il est mis en œuvre de manière incrémentale, et non selon le mode en grille de recherche mis en œuvre précédemment.
[109] La méthode incrémentale ci-après décrite est un exemple de mise en œuvre itérative de l’invention. Cependant l’invention ne se limite pas à ce seul procédé incrémental et peut être adaptée à d’autres méthodes, telles qu’une approche dichotomique ou une méthode heuristique pour effectuer une recherche d’optimum itérative.
[110] Aussi, de manière détaillée, le procédé 1’ procède dans un premier temps à une étape de génération 10 d’une première copie bruitée 21, à partir d’une première valeur de seuil de bruit.
[111] On procède avec cette copie bruitée 21 à l’étape de constitution 11 d’un ensemble de données d’entraînement bruitées 22 qui est la combinaison de la copie bruitée 21 et de l’ensemble de données d’entraînement 20.
[112] Un fois cet ensemble de données d’entraînement bruitées 22 constitué, on entraîne alors le module d’apprentissage automatique à partir de cet ensemble de données d’entraînement bruitées 22, et on met en œuvre une étape de calcul 13 de la performance du dudit module d’apprentissage automatique entraîné.
[113] Ces étapes de constitution 11, d’entraînement 12 et de calcul 13 de la performance sont réalisées de la même manière que pour le premier mode de réalisation de l’invention.
[114] Lors de la première itération, on procède nécessairement à un retour à l’étape 10 de génération d’une nouvelle copie bruitée. Cette nouvelle copie bruitée est générée à partir d’une nouvelle valeur de seuil de bruit.
[115] Aussi, selon cet exemple de mise en œuvre, la valeur de seuil de bruit est, lors de l’initialisation du procédé 1’, initialisée à une valeur minimale, qui correspond au plus petit bruit ajouté. A chaque itération du procédé 1’, le seuil de bruit est incrémenté d’un pas, déterminé en fonction de la granularité souhaitée.
[116] En effet, plus le pas d’incrément du seuil de bruit est faible, plus la recherche du maximum de performance sera précise, mais plus le nombre d’itération sera important. A contrario, un pas d’incrément important permettra d’obtenir un maximum relativement rapidement, mais risque de ne pas permettre de trouver le maximum de performance optimal.
[117] Aussi, à titre d’exemple pour un vecteur de bruit de norme comprise dans la plage de valeurs ]0,1], on peut définir un incrément de 1/1000. Avec pour première valeur de seuil de bruit une norme de 0.001 et à chaque itération une augmentation du seuil de bruit, de sorte qu’on génère à chaque itération un bruit présentant une amplitude de plus en plus grande.
[118] Toutefois ceci est donné à titre d’exemple et le pas d’itération du bruit, les valeurs de seuil de bruit, autrement dit l’amplitude du bruit, peuvent être librement adaptés par l’homme du métier.
[119] A partir de la deuxième itération, lorsque la performance du module d’apprentissage automatique est calculée au cours de l’étape de calcul 13 de performance, on procède à une étape de détermination 14’ de l’ensemble de données d’entraînement bradées présentant une performance de détection maximale. Cette étape de détermination 14’ est ici mise en œuvre à chaque itération.
[120] Au cours de cette étape de détermination 14’, on compare la performance du module d’apprentissage automatique obtenue à cette itération par rapport à la performance du module d’apprentissage automatique de l’itération précédente.
[121] A ce stade, si l’itération précédente présentait une meilleure performance, on peut considérer qu’un maximum de performance a été atteint.
[122] Aussi dans ce cas, on détermine 14’ que la valeur de seuil de brait de l’itération précédente était optimale et on peut alors procéder à l’étape de mise en œuvre 15 du module d’apprentissage automatique entraîné à partir de la copie braitée obtenue pour la valeur de seuil de brait de l’itération précédente.
[123] A contrario, si on constate, au cours de l’étape de détermination, que la performance de l’itération actuelle est supérieure à la performance de l’itération précédente, on constate une progression des performances, et on procède alors à une nouvelle itération du procédé, en retour à l’étape de génération 10 d’une copie braitée.
[124] Toutefois, lorsqu’on détermine lors de l’étape de détermination 14’ qu’un maximum de performance a été trouvé, il se peut qu’il s’agisse d’un maximum local et non du maximum optimal de performance. Aussi, on peut selon une mise en œuvre particulière de ce deuxième mode de réalisation, procéder à une pluralité de nouvelles itérations, par exemple pour un nombre d’itération prédéterminé, afin de vérifier si une nouvelle progression de la performance peut être obtenue pour les itérations suivantes. Ceci permet d’éviter l’arrêt du procédé sur un maximum local.
[125] Ces deux modes de réalisations sont données à titre d’exemple de l’invention, et l’invention ne se limite toutefois pas uniquement à cette implémentation. En particulier tout type de module d’apprentissage non-supervisé peut être mis en œuvre par le procédé, les différentes approches algorithmiques décrites peuvent aussi être librement adaptée par l’homme du métier, dans la mesure où une recherche d’un maximum de performance du module d’apprentissage automatique par génération de différentes copies braitée est mise en œuvre.
[126] L’invention ici décrite permet d’obtenir un procédé de détection d’anomalie mettant en œuvre des modules d’apprentissage automatique non supervisés présentant un fonctionnement optimisé par l’ajout de brait contrôlé dans les données d’entraînement.
[127] L’invention peut aussi être employée à des fins de classification. En particulier, en référence à l’exemple de domaine technique exposé dans la présente description, mais de manière non limitative, l’invention peut concerner un procédé de classification, par exemple de classification de matériau, à classifier dans une liste de matériaux prédéterminée, telle qu’une liste de résines plastiques.
[128] A cet égard chaque matériau est associé à au moins un paramètre de mesure, tel qu’un spectre d’absorption, tel qu’exposé précédemment.
[129] Le procédé de classification met alors en œuvre, pour chaque matériau de la liste de matériaux prédéterminée, un procédé 1, 1’ de détection d’anomalies tel que décrit précédemment. Ceci permet, par la mise en œuvre de plusieurs procédés de détection d’anomalies d’effectuer une classification relativement efficace et robuste.

Claims

Revendications
[Revendication 1] Procédé (1, G) de détection d’anomalies mis en œuvre par ordinateur dans un ensemble de données mettant en œuvre un module d’apprentissage automatique non- supervisé, et comprenant la fourniture (9) d’un ensemble de données d’entraînement (20) étiquetées comprenant au moins une donnée d’entraînement représentative d’un état normal des données analysées, caractérisé en ce que le procédé comprend : une étape de génération (10-10”) d’une pluralité de copies bruitées (21) de tout ou partie des données de l’ensemble de données d’entraînement (20), chaque copie bruitée (21) étant obtenue à partir d’au moins un paramètre de génération de bruit ; ledit paramètre de génération de bruit comprenant une amplitude de bruit maximale à ajouter à tout ou partie des données de l’ensemble de données d’entraînement ; pour chaque copie bruitée (21), une étape de constitution (11-11”) d’un ensemble de données d’entraînement bruitées (22), comprenant ledit ensemble de donnée d’entraînement (20) et ladite au moins une copie bruitée (21) associée, pour chaque copie bruitée, une étape d’entraînement (12-12”) dudit module d’apprentissage automatique en fonction dudit ensemble de données d’entraînement bruitées (22) associé, pour chaque copie bruitée, une étape de calcul (13-13”) de la performance de détection dudit module d’apprentissage automatique en fonction du taux de faux positifs obtenu par la mise en œuvre du module d’apprentissage automatique sur un ensemble de données de test étiquetées, comprenant au moins une donnée d’entraînement représentative d’un état normal des données analysées ; une étape de détermination (14, 14’) de l’ensemble de données d’entraînement bruitées présentant une performance de détection maximale ; et la mise en œuvre (15) du module d’apprentissage automatique entraîné à partir dudit ensemble de données d’entraînement bruitées déterminé.
[Revendication 2] Procédé (1) selon la revendication 1, caractérisé en ce qu’il met en œuvre en parallèle les étapes de génération (10-10”) d’une pluralité de copies bruitées (21), et pour chaque copie bruitée générée, le procédé (1) met en œuvre en parallèle, les étapes de constitution (11- 11”), d’entraînement (12-12”), et de calcul (13-13”), l’étape de détermination (14) déterminant l’ensemble de données d’entraînement bruitées présentant une performance de détection maximale parmi les performance calculées par les étapes de calcul (13-13”) parallèles.
[Revendication 3] Procédé (G) selon la revendication 1, caractérisé en ce que lesdites étapes de génération (10), de constitution (11), d’entraînement (12) et de calcul (13) sont mises en œuvre de manière itérative, par exemple de manière incrémentale ou dichotomique ; de sorte qu’à chaque itération on compare au cours de l’étape de détermination (14’) la performance de détection dudit module d’apprentissage automatique calculée avec la performance de détection dudit module d’apprentissage automatique calculée à l’itération précédente.
[Revendication 4] Procédé (1, G) selon l’une quelconque des revendications 1 à 3, caractérisé en ce que l’ensemble de données d’entraînement étiquetées (20) comprend aussi au moins un exemple de donnée anormale.
[Revendication 5] Procédé (1, G) selon la revendication 4 caractérisé en ce que l’étape de calcul (13-13”) de la performance de détection dudit module d’apprentissage automatique est aussi fonction du taux de faux négatifs obtenu par la mise en œuvre du module d’apprentissage automatique sur au moins un exemple de donnée anormale.
[Revendication 6] Procédé (1, G) selon la revendication 5, caractérisé en ce que ladite étape de calcul (13-13”) de la performance de détection comprend le calcul d’une moyenne entre le taux de faux positifs et le taux de faux négatifs.
[Revendication 7] Procédé (1, G) selon la revendication 6, caractérisé en ce que ladite moyenne est pondérée en fonction d’un coefficient prédéterminé.
[Revendication 8] Procédé (1, G) selon l’une quelconque des revendications 1 à 7, caractérisé en ce que l’étape de détermination (14) comprend en outre une comparaison de la performance de détection maximale déterminée avec une valeur de performance cible, de sorte que si la performance de détection maximale est inférieure à la valeur de performance cible, on procède à une nouvelle mise en œuvre du procédé (I,G) avec de nouvelles valeurs de paramètres de génération de bruit.
[Revendication 9] Procédé (1, G) selon l’une quelconque des revendications 1 à 8, caractérisé en ce que ledit au moins un paramètre de génération de bruit comprend une distribution statistique du bruit, tel qu’un bruit additif blanc gaussien ou un bruit coloré.
[Revendication 10] Procédé (1, G) selon l’une quelconque des revendications 1 à 9, caractérisé en ce que le module d’apprentissage automatique comprend un module parmi : une machine à vecteur de support à une classe, un arbre décisionnel, une forêt d’arbres décisionnels, une méthode des k plus proches voisins ou un auto-encodeur.
[Revendication 11] Procédé de classification d’un matériau, à classifier dans une liste de matériaux prédéterminée, telle qu’une liste de résines plastiques, chaque matériau étant associé à au moins un paramètre de mesure, tel qu’un spectre d’absorption ; le procédé de classification comprenant, pour chaque matériau de la liste de matériaux prédéterminée, la mise en œuvre du procédé (1, G) de détection d’anomalies selon l’une quelconque des revendications 1 à 10.
[Revendication 12] Programme d’ordinateur comprenant des instructions de code de programme pour l’exécution des étapes du procédé (1, G) selon l’une quelconque des revendications 1 à 10 et/ou pour l’exécution du procédé selon la revendication 11, lorsque ledit programme est exécuté sur un ordinateur.
EP21755801.4A 2020-07-16 2021-07-15 Génération de copies de données d'entraînement bruitées dans un procédé de détection d'anomalies Pending EP4182859A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR2007444A FR3112634B1 (fr) 2020-07-16 2020-07-16 Procédé de détection d’anomalies
PCT/FR2021/051321 WO2022013503A1 (fr) 2020-07-16 2021-07-15 Génération de copies de données d'entraînement bruitées dans un procédé de détection d'anomalies

Publications (1)

Publication Number Publication Date
EP4182859A1 true EP4182859A1 (fr) 2023-05-24

Family

ID=72885727

Family Applications (1)

Application Number Title Priority Date Filing Date
EP21755801.4A Pending EP4182859A1 (fr) 2020-07-16 2021-07-15 Génération de copies de données d'entraînement bruitées dans un procédé de détection d'anomalies

Country Status (4)

Country Link
EP (1) EP4182859A1 (fr)
FR (1) FR3112634B1 (fr)
WO (1) WO2022013503A1 (fr)
ZA (1) ZA202301444B (fr)

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6782679B2 (ja) * 2016-12-06 2020-11-11 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 情報処理装置、情報処理方法及びプログラム

Also Published As

Publication number Publication date
WO2022013503A1 (fr) 2022-01-20
FR3112634B1 (fr) 2023-04-28
ZA202301444B (en) 2023-10-25
FR3112634A1 (fr) 2022-01-21

Similar Documents

Publication Publication Date Title
Tao et al. Self-adaptive cost weights-based support vector machine cost-sensitive ensemble for imbalanced data classification
González et al. Validation methods for plankton image classification systems
EP3238137B1 (fr) Representation semantique du contenu d'une image
Sikder et al. Outlier detection using AI: a survey
FR2746530A1 (fr) Procede et systeme pour selectionner des vecteurs d'adaptation pour la reconnaissance de formes
CN113609569B (zh) 一种判别式的广义零样本学习故障诊断方法
EP3846087A1 (fr) Procede et systeme de selection d'un modele d'apprentissage au sein d'une pluralite de modeles d'apprentissage
WO2016012972A1 (fr) Procede pour detecter des anomalies dans un reseau de distribution, en particulier d'eau potable
Wei et al. Minority-prediction-probability-based oversampling technique for imbalanced learning
Almeida et al. An integrated approach based on the correction of imbalanced small datasets and the application of machine learning algorithms to predict total phosphorus concentration in rivers
Kang et al. Product failure detection for production lines using a data-driven model
EP4182859A1 (fr) Génération de copies de données d'entraînement bruitées dans un procédé de détection d'anomalies
Kennedy et al. Synthesizing class labels for highly imbalanced credit card fraud detection data
Chen et al. Gearbox fault diagnosis using convolutional neural networks and support vector machines
EP2766825B1 (fr) Systeme et procede non supervise d'analyse et de structuration thematique multi resolution de flux audio
US20220398494A1 (en) Machine Learning Systems and Methods For Dual Network Multi-Class Classification
FR2899359A1 (fr) Procede utilisant la multi-resolution des images pour la reconnaissance optique d'envois postaux
Dongre et al. Stream data classification and adapting to gradual concept drift
Wood Real-time monitoring and optimization of drilling performance using artificial intelligence techniques: a review
Fop et al. Unobserved classes and extra variables in high-dimensional discriminant analysis
Malhotra et al. Simplify Your Neural Networks: An Empirical Study on Cross-Project Defect Prediction
Razoqi et al. A Survey Study on Proposed Solutions for Imbalanced Big Data
Nikovski et al. Regularized covariance matrix estimation with high dimensional data for supervised anomaly detection problems
WO2019211367A1 (fr) Procede de generation automatique de reseaux de neurones artificiels et procede d'evaluation d'un risque associe
WO2022135972A1 (fr) Procede et dispositif de diagnostic d'anomalies

Legal Events

Date Code Title Description
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: UNKNOWN

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE

PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE

17P Request for examination filed

Effective date: 20230209

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

P01 Opt-out of the competence of the unified patent court (upc) registered

Effective date: 20230705

DAX Request for extension of the european patent (deleted)
RAV Requested validation state of the european patent: fee paid

Extension state: MA

Effective date: 20230209