Brevet FR3112634A1 — publié le 20220121

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. Figure d’abrégé : Figure 1 Procédé de détection d’anomalies L’invention concerne un procédé de détection d’anomalies. 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. 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. 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. 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. 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 of Artificial Intelligence Research 16 (2002) 321–357 . 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. 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. 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. 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. 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. À 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 représentatif de l'état normal des données analysées. Le procédé comprend : 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, 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, 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, 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 un état normal des données analysées ; 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 La mise en œuvre du module d’apprentissage automatique entraîné à partir dudit ensemble de données d’entraînement bruitées déterminé. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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 bruité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. 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. 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. 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 bruit. 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 bruitées, par exemple en changeant les paramètres de bruit, de sorte à poursuivre la recherche d’un ensemble de données bruitées présentant une performance satisfaisante. Avantageusement et de manière non limitative, ledit au moins un paramètre de génération de bruit comprend une amplitude de bruit maximale à ajouter à tout ou partie des données de l’ensemble de données d’entraînement. Ceci constitue un paramètre simple et particulièrement robuste pour obtenir des copies bruitées distinctes de manière contrôlé. Avantageusement et de manière non limitative, 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é. Ainsi, on peut faire varier le bruit 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 bruit. 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. 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. 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. 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 : est un organigramme d’un premier mode de réalisation du procédé selon l’invention ; est un organigramme d’un deuxième mode de réalisation du procédé selon l’invention ; et 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. 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. 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. 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. Le procédé 1 de détection d’anomalies, met en œuvre un module d’apprentissage automatique non-supervisé. 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. 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. 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. 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. Dans cet exemple de mise en œuvre de l’invention, nous mettons en œuvre un module one-class SVM . 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. Le one-class SVM et décrit dans une première mise en œuvre dans la publication Support Vector Method for Novelty Detection , Bernhard Scholkopf et al., NIPS'99: Proceedings of the 12th International Conference on Neural Information Processing Systems , November 1999 , Pages 582–588 , qui est ici incorporé par référence. 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. 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. 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. 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. 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 ». Dans le contexte de l’exemple décrit, ces deux cas sont problématiques : - 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. - 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. 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. 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. 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. Le procédé 1 emploie plusieurs jeux de données. 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. 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. 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. 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. 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. On fournit aussi un ensemble de données de test étiquetées représentatif de l'état normal des données analysées. 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étection correctes réalisées sur un ensemble de données dont on connaît déjà les données le composant. 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. 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. 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. 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. 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. 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. 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. 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é. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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é). Ainsi, on obtient en parallèle une pluralité de copies bruitées 21. 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. 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. 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. 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. Ainsi, on obtient autant de module d’apprentissage automatique entraînés que d’ensemble de données d’entraînement bruitées 22. 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 13-13’’ de la performance du module d’apprentissage automatique correspondant. 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. On détermine alors le taux de données considérées à tort comme anormales, autrement dit le taux de faux-positifs. 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. 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. 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. 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. 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. 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. Dans ce cas le procédé 1 peut être recommencé aux étapes 10-10’’ en créant de nouveaux jeux de données bruitées, par exemple en créant des jeux de données bruitées à partir de valeurs de seuils de bruit présentant une granularité affinée autour du seuil de bruit ayant permis d’obtenir le maximum de performance lors de l’étape de détermination, afin de rechercher une valeur de maximum encore meilleure. De retour à la mise en œuvre première du premier mode de réalisation, une fois l’ensemble de données d’entraînement bruitées 22 présentant la performance de détection maximale déterminée, aussi appelé ensemble de données d’entraînement bruité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 bruité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. 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. Le 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. 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. 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. 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é. 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. 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. 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. 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. 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. 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. 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 bruitées présentant une performance de détection maximale. Cette étape de détermination 14’ est ici mise en œuvre à chaque itération. 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. 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. Aussi dans ce cas, on détermine 14’ que la valeur de seuil de bruit 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 bruitée obtenue pour la valeur de seuil de bruit de l’itération précédente. 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 bruitée. 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. 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 bruitée est mise en œuvre. 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 bruit contrôlé dans les données d’entraînement. 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. 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. 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. Procédé (1, 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é, et comprenant la fourniture (9) d’un ensemble de données d’entraînement (20) étiquetées comprenant au moins 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, 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 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é. 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. Procédé (1’) 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. Procédé (1, 1’) 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. Procédé (1, 1’) 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. Procédé (1, 1’) 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. Procédé (1, 1’) selon la revendication 6, caractérisé en ce que ladite moyenne est pondérée en fonction d’un coefficient prédéterminé. Procédé (1, 1’) 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é (1,1’) avec de nouvelles valeurs de paramètres de génération de bruit. Procédé (1, 1’) 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 amplitude de bruit maximale à ajouter à tout ou partie des données de l’ensemble de données d’entraînement. Procédé (1, 1’) selon l’une quelconque des revendications 1 à 9, 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é. Procédé (1, 1’) selon l’une quelconque des revendications 1 à 10, 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. 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, 1’) de détection d’anomalies selon l’une quelconque des revendications 1 à 12. Programme d’ordinateur comprenant des instructions de code de programme pour l’exécution des étapes du procédé (1, 1’) selon l’une quelconque des revendications 1 à 11 et/ou pour l’exécution du procédé selon la revendication 12, lorsque ledit programme est exécuté sur un ordinateur.