Brevet FR3116929A1 — publié le 20220603

La présente invention concerne une méthode d’apprentissage d’un réseau de neurones pour le rendre robuste aux attaques par exemples contradictoires. Le réseau de neurones est entraîné sur un ensemble d’exemples contradictoires générés au moyen d’une attaque sur des exemples intègres. L’apprentissage utilise une fonction de perte régularisée comprenant un premier terme fonction de l’écart entre la prédiction fournie par le réseau de neurones à partir d’exemples contradictoires et les labels des exemples intègres correspondants, ainsi qu’un second terme de pénalisation, proportionnel à la divergence de Sinkhorn entre la distribution des exemples contradictoires et celle des exemples intègres correspondants. Fig. 3 MÉTHODE D’APPRENTISSAGE D’UN RÉSEAU DE NEURONES POUR LE RENDRE ROBUSTE AUX ATTAQUES PAR EXEMPLES CONTRADICTOIRES La présente invention concerne de manière générale le domaine de l’apprentissage automatique et plus particulièrement celui des réseaux de neurones artificiels. Elle vise à accroître la robustesse d’un tel réseau de neurones vis-à-vis d’attaques par exemples contradictoires, également appelés antagonistes ou adversaires ( adversarial examples ). ETAT DE LA TECHNIQUE ANTÉRIEURE Les réseaux de neurones artificiels sont utilisés dans un très grand nombre de systèmes d’intelligence artificielle. Après une phase d’apprentissage (ou d’entrainement), un réseau de neurones est capable d’effectuer, dans une phase opérationnelle, des opérations de régression, de classification, d’extraction de vecteurs caractéristiques ( features ), d’encodage, de calcul de métriques, etc., de manière connue en soi. L’entrainement d’un réseau de neurones est généralement effectué de manière supervisée à partir d’un ensemble de données d’apprentissage ( training data set ) grâce à un algorithme dit de rétropropagation du gradient. Une description détaillée de cet algorithme pourra être trouvée notamment au chapitre 3.2 de l’ouvrage de C.C. Aggarwal intitulé « Neural networks and deep learning » publié chez Springer, édition 2018. On rappelle que la méthode de rétropropagation du gradient permet de calculer le gradient de l'erreur pour chaque neurone d'un réseau de neurones, de la dernière couche vers la première. Plus précisément, les différences entre les sorties du réseau et les étiquettes (ou labels) correspondantes forment des erreurs qui sont corrigées via la rétropropagation, les poids synaptiques du réseau de neurones étant alors changés en partant de la dernière couche et en remontant vers la première. Lorsque cette rétropropagation du gradient est effectuée de manière itérative, l'erreur tend à diminuer et le réseau offre une meilleure prédiction. Après apprentissage, le réseau de neurones peut ensuite être utilisé dans une phase opérationnelle pour effectuer une prédiction sur de nouvelles données d’entrée. Pendant sa phase opérationnelle, le réseau de neurones peut faire l’objet d’attaques, dites attaques antagonistes, dans lesquelles un tiers malveillant introduit des perturbations imperceptibles dans les données d’entrée dans le but d’induire des erreurs de prédiction. Ces données affectées de perturbations imperceptibles sont aussi dénommées exemples contradictoires ( adversarial examples ). De manière générale, si l’on note l’ensemble des données intègres servant à l’apprentissage ( training data set ) où la dimension du vecteur de données d’entrée et la dimension du vecteur de sortie du réseau de neurones, des exemples contradictoires peuvent être générés au moyen d’une faible perturbation des données intègres, , dans le but d’introduire une erreur de prédiction. Par exemple, si le réseau de neurones effectue une classification, l’exemple contradictoire pourra générer un faux positif (prédiction d’appartenance à une classe alors que la donnée intègre n’y appartient pas) ou bien un faux négatif (prédiction d’appartenance à une autre classe que celle à laquelle appartient la donnée intègre). Différentes techniques ont été proposées dans l’art antérieur pour contrecarrer ces attaques antagonistes. Une première approche, proposée dans l’article de I.J Goodfellow et al. intitulé « Explaining and harnessing adversarial examples » publié dans Proc. of International Conference on Learning Representations (ICLR), 2014 a été schématiquement représentée en . Selon cette approche, le réseau de neurones est entraîné à la fois sur un ensemble, 110, de données d’apprentissage intègres, et sur un ensemble, 120, d’exemples contradictoires générés à l’aide d’une méthode dite FGSM (Fast Gradient Signed Method) ajoutant une perturbation des données dans le sens du gradient. Plus précisément, l’apprentissage fait intervenir une fonction de perte ( loss function ) qui est la combinaison, d’une fonction de perte classique, , et d’une fonction de perte régularisée par une fonction intervenant dans la génération des exemples contradictoires, . Le gradient rétro-propagé dans les couches du réseau de neurones est celui calculé à partir de la fonction de perte combinée, . Une seconde approche a été proposée dans l’article de A. Madry et al. intitulé « Towards deep learning models resistant to adversarial attacks » publié dans Proc. of International Conference on Learning Representations (ICLR), 2018. Selon cette approche, représentée en , le réseau de neurones n’est pas entraîné sur l’ensemble des données d’apprentissage intègres mais sur un ensemble de données perturbées (exemples contradictoires) dans le but de rendre le réseau moins sensible à ces perturbations. Enfin, plus récemment, une troisième approche a été proposée dans l’article de C. Song et al. intitulé « Improving the generalization of adversial training with domain adaptation » publié dans Proc. of International Conference on Learning Representations (ICLR), 2019. Selon cette approche, représentée en , le réseau de neurones est entraîné comme précédemment sur l’ensemble des données d’apprentissage intègres ainsi que sur les exemples contradictoires mais fait intervenir dans la fonction de perte un terme de régularisation visant à effectuer une adaptation de domaine (supervisée et non supervisée) de manière à réduire l’écart entre les représentations associées aux données intègres et celles associées aux données perturbées par attaque FGSM. Cet espace de représentation correspond à la sortie de l’avant-dernière couche du réseau de neurones. Ainsi, par exemple, lorsque le réseau de neurones effectue une classification, l’espace de représentation est celui en sortie de l’avant dernière couche avant l’application du modèle logit (régression logistique binaire ou polytomique). Dans la , interviennent un terme de régularisation de la fonction de perte, associé à l’adaptation de domaine supervisée SDA (Supervised Domain Adaptation) et deux termes de régularisation associés à l’adaptation non supervisée, à savoir MMD (Maximum Mean Discrepancy) et CORAL (CORelation ALignement). Les termes de régularisation associés à l’adaptation de domaine non supervisée visent à aligner certains moments statistiques des distributions des données intègres avec les moments correspondants des distributions des données perturbées. Ainsi, le terme MMD exprime l’écart entre les moyennes et le terme CORAL exprime l’écart entre les covariances de ces deux distributions. En pratique ces termes de régularisation sont insuffisants pour aligner les deux distributions en question. En outre, le gradient de la fonction de perte ainsi régularisée peut disparaître ou au contraire exploser en certains points de ces distributions ce qui conduit à une instabilité et, le cas échéant, à un échec de la phase d’apprentissage. L’objet de la présente invention est par conséquent de proposer une méthode d’apprentissage d’un réseau de neurones qui permette de le rendre plus robuste aux attaques par exemples contradictoires que celles connues de l’art antérieur et ne souffre pas des problèmes d’instabilité précités. La présente invention est définie par une méthode d’apprentissage d’un réseau de neurones artificiels destiné à être entrainé sur un ensemble d’exemples intègres, labellisés par leurs labels correspondants, dans laquelle on génère au moyen d’au moins une attaque un ensemble d’exemples contradictoires labellisés, un exemple contradictoire étant obtenu par perturbation d’un exemple intègre et portant le même label que ce dernier, le réseau de neurones projetant un vecteur de données d’entrée de dimension dans un espace de représentation de dimension et fournissant, sous la forme d’un vecteur de sortie, une prédiction à partir du vecteur de données d’entrée ainsi projeté, le réseau de neurones artificiels étant entraîné sur ledit ensemble d’exemples contradictoires, ladite méthode étant originale en ce que cet entrainement est réalisé par rétropropagation du gradient à partir d’une fonction de perte régularisée, ladite fonction de perte régularisée comprenant un terme de pénalisation proportionnel à la divergence de Sinkhorn entre la distribution des exemples contradictoires et la distribution des exemples intègres, dans ledit espace de représentation. Avantageusement, l’apprentissage est effectué en une pluralité d’époques, chaque époque comprenant une pluralité d’itérations d’entrainement, chaque itération d’entrainement étant effectuée sur un mini-lot d’exemples contradictoires, obtenu à partir d’un mini-lot d’exemples intègres correspondants, extraits dudit ensemble d’exemples intègres. Chaque époque peut comprendre également une pluralité d’itérations d’entrainement sur des mini-lots d’exemples intègres, extraits dudit ensemble d’exemples intègres. La fonction de perte régularisée est alors calculée sur le mini-lot d’exemples contradictoires, en combinant la valeur moyenne de la fonction de perte sur ce mini-lot, ) avec la divergence de Sinkhorn ( ) entre la distribution des exemples contradictoires de ce mini-lot et celle des exemples intègres correspondants. La fonction de perte est avantageusement calculée pour chaque exemple contradictoire du mini-lot à partir de l’écart entre la prédiction du réseau de neurones artificiels pour cet exemple contradictoire et le label de ce dernier. La divergence de Sinkhorn est typiquement calculée comme où est la distribution des représentations des exemples contradictoires du mini-lot dans l’espace de représentation, et est la distribution des représentations des exemples intègres du mini-lot dans l’espace de représentation, et est la distance de Wasserstein d’ordre où est un entier positif, régularisée par un terme d’entropie : étant la divergence de Kullback-Leibler entre les distributions de probabilité et , étant l’ensemble des distributions sur un espace probabilisé dont les distributions marginales selon la première et la seconde dimension sont respectivement et , étant la distribution de probabilité produit de et , et étant un paramètre, dit paramètre de régularisation entropique. Selon un exemple de réalisation, . Selon une variante de réalisation, le paramètre de régularisation entropique est mis à jour à chaque itération d’entrainement en calculant la dérivée partielle de la divergence de Sinkhorn par rapport à et en la moyennant sur les exemples du mini-lot , la nouvelle valeur du paramètre de régularisation entropique étant calculée par descente de gradient. Les exemples contradictoires pourront par exemple être générés par perturbation des exemples intègres au moyen de la méthode PGD, PGD, FGSM, ou BIM. D’autres caractéristiques et avantages de l’invention apparaîtront à la lecture de modes de réalisation de l’invention, décrits en référence aux figures jointes. représente de manière schématique une première méthode d’apprentissage de l’état de la technique permettant d’accroître la robustesse d’un réseau de neurones à des attaques par exemples contradictoires ; représente de manière schématique une deuxième méthode d’apprentissage de l’état de la technique permettant d’accroître la robustesse d’un réseau de neurones à des attaques par exemples contradictoires ; représente de manière schématique une troisième méthode d’apprentissage de l’état de la technique permettant d’accroître la robustesse d’un réseau de neurones à des attaques par exemples contradictoires ; représente de manière schématique une méthode d’apprentissage selon un mode de réalisation de la présente invention, permettant d’accroître la robustesse d’un réseau de neurones à des attaques par exemples contradictoires ; représente de manière schématique l’ordinogramme d’une méthode de d’apprentissage d’un réseau de neurones, selon un mode de réalisation de la présente invention. DESCRIPTION DE MODES DE RÉALISATION Nous considérerons dans la suite un réseau de neurones artificiels destiné à effectuer une prédiction dans une phase opérationnelle. Cette prédiction peut notamment être une opération de régression, une opération de classification, voire une génération de représentation sous forme de caractéristiques ( features ), comme rappelé dans la partie introductrice. Sans perte de généralité, et dans un but de simplification de la présentation nous supposerons tout d’abord que le réseau de neurones effectue une opération de classification parmi une pluralité de classes possibles. Plus précisément, on notera un vecteur d’entrée et le vecteur de sortie correspondant, donnant la distribution de probabilité de parmi les classes possibles. Le vecteur de sortie est typiquement obtenu au moyen de la fonction softmax, à savoir où est la représentation de dans l’espace des logits, disponible en sortie de l’avant-dernière couche du réseau de neurones. De manière plus générale, nous noterons un vecteur de dimension réduite représentant dans l’espace des caractéristiques (ou features ) sur la base de laquelle le réseau de neurones effectue la prédiction. L’espace de représentation est quelquefois désigné par le terme « embedding space » ou « space of features » dans la littérature anglo-saxonne. Le réseau de neurones peut être modélisé par une fonction où est le vecteur de sortie du réseau, et est une fonction de prédiction à partir de l’espace de représentation. L’idée à la base de l’invention est d’effectuer un rapprochement des domaines de représentation des exemples intègres et des exemples contradictoires au moyen de la théorie du transport optimal. Plus précisément, les coefficients du réseau de neurones sont adaptés par rétropropagation lors de la phase d’apprentissage, de manière à ce que la distribution des exemples contradictoires et celle des exemples intègres soient proches au sens d’une certaine distance dans l’espace de représentation. Le rapprochement de ces distributions dans l’espace de représentation est obtenu en ajoutant à la fonction de perte un terme de régularisation (ici de pénalisation) proportionnel à la divergence de Sinkhorn entre ces distributions. L’alignement des distributions elles-mêmes, et pas seulement celui des moments de ces distributions, comme préconisé dans l’art antérieur, permet une stabilisation de l’apprentissage en évitant une disparition ou une explosion de certains gradients. La représente de manière schématique une méthode d’apprentissage d’un réseau de neurones selon un mode de réalisation de la présente invention. Comme précédemment, on a représenté en 210 un ensemble d’exemples intègres, et en 220, un ensemble d’exemples contradictoires, obtenus par perturbation de ces derniers, par exemple au moyen d’une méthode d’attaque antagoniste comme la méthode FGSM (décrite dans l’article de Goodfellow précité), la méthode PGD ( Projected Gradient Descent , décrite l’article de Madry précité) voire la méthode BIM ( Basic Iterative Method ) publiée dans l’article de A. Kurakin et al. intitulé « Adversarial machine learning at scale », Proc. of ICLR 2017, pp. 1-17. L’apprentissage du réseau de neurones est réalisé ici à partir de l’ensemble des exemples contradictoires. Plus précisément, si l’on note un exemple contradictoire obtenu au moyen d’une faible perturbation d’un exemple intègre , l’apprentissage se fait de manière supervisée sur l’ensemble des données labellisées . Cet apprentissage est réalisé par rétropropagation du gradient à partir d’une fonction de perte. De manière originale, la fonction de perte comprend un terme, représenté en 240, correspondant à la tâche de prédiction à effectuer (classification, régression par exemple) ainsi qu’un terme de régularisation, 230, fonction croissante de la divergence de Sinkhorn entre la distribution des exemples intègres et celle des exemples contradictoires dans l’espace de représentation. Selon un exemple de réalisation, le terme de régularisation est proportionnel à la divergence de Sinkhorn entre lesdites distributions. On rappelle que la divergence de Sinkhorn entre deux distributions de probabilité sur un espace probabilisé est définie par : (1) où est la distance de Wasserstein d’ordre (entier positif) régularisée par un terme d’entropie : (2) où est la divergence de Kullback-Leibler (ou entropie relative) entre les distributions de probabilité et , est l’ensemble des distributions sur l’espace probabilisé dont les distributions marginales selon la première et la seconde dimension sont respectivement et , est la distribution de probabilité produit de et , et est un paramètre entropique de régularisation. Le premier terme intervenant dans l’expression (2) peut être considéré comme une métrique de transport optimal entre les distributions de probabilité et avec un coût de transport égal à , le second terme étant un terme de régularisation entropique assurant une certaine uniformité du transport. On pourra trouver une présentation de la divergence de Sinkhorn dans l’article de A. Genevay et al. intitulé « Learning generative models with Sinkhorn divergences » , Proceedings of the 21 st Int’l Conf. on Artificial Intelligence and Statistics (AISTATS), Lanzarote, 2018. En définitive, la fonction de perte régularisée utilisée en 260 pour la rétropropagation du gradient lors de la phase d’apprentissage est donnée par : (3) où est la fonction de perte régularisée au sens de la présente invention (SAT étant l’acronyme de Sinkhorn Adversarial Training ), étant la fonction de perte relative à la tâche de prédiction du réseau de neurones sur l’ensemble (par exemple dans une tâche de classification, cette fonction de perte pourra être classiquement une entropie croisée), est la fonction de perte calculée pour une prédiction , signifiant la moyenne prise sur l’ensemble des couples de , et sont respectivement les distributions de probabilité des représentations et des exemples intègres et des exemples contradictoires, et est un coefficient strictement positif, par exemple égal à 1. De préférence, on choisira , autrement dit on optera pour une distance de Wasserstein quadratique dans le calcul de la divergence de Sinkhorn. Le paramètre entropique de régularisation, , est un hyperparamètre qui pourra être appris en 250, lors de la phase d’apprentissage, à partir des coefficients synaptiques mis à jour par l’algorithme de rétropropagation. Il pourra être mis à jour après chaque rétropropagation comme expliqué plus loin. La mise à jour du gradient pourra être effectuée de manière itérative selon une méthode de descente de gradient stochastique moyennée sur des mini-lots ( mini-batches ) extraits de l’ensemble d’apprentissage , de manière connue en soi. A la différence de la méthode d’apprentissage de la , l’apprentissage du réseau de neurones pourra être avantageusement limité au seul ensemble des exemples contradictoires (labellisés), comme représenté en . Selon une variante, l’apprentissage pourra toutefois être étendu à l’ensemble des exemples intègres (labellisés) ou encore à un sous-ensemble de ce dernier. Selon un mode particulier de réalisation (non représenté), on pourra alterner des itérations de mise à jour du gradient sur la base de l’ensemble des exemples intègres et des itérations de mise à jour du gradient sur la base de l’ensemble des exemples contradictoires. Comme précédemment indiqué, la méthode d’apprentissage représentée permet d’éviter une disparition ou une explosion du gradient de la fonction de perte et donc assure une meilleure stabilité du processus itératif. En outre, la contrainte induite par la régularisation permet de rapprocher de manière plus uniforme les distributions des exemples intègres et des exemples contradictoires dans l’espace de représentation, ce qui conduit à une plus grande robustesse du réseau entraîné à l’encontre des attaques par exemples contradictoires. La représente de manière schématique l’ordinogramme d’une méthode d’apprentissage d’un réseau de neurones artificiels selon un mode de réalisation de la présente invention. La méthode d’apprentissage commence par une étape d’initialisation, 310, dans laquelle on initialise le modèle du réseau de neurones, celui-ci étant défini par une fonction dont les paramètres sont les coefficients synaptiques du réseau. Comme précédemment indiqué la fonction peut se décomposer en une projection sur un espace de représentation de dimension sensiblement inférieure à la dimension des vecteurs d’entrée du réseau et une fonction de prédiction fournissant les vecteurs de sortie à partir des vecteurs d’entrée projetés dans l’espace de représentation, soit . La méthode d’apprentissage étant itérative, chaque itération comprenant une rétropropagation du gradient de la fonction de perte dans le réseau et par conséquent une mise à jour des coefficients synaptiques, on notera , et les fonctions , et du modèle à l’itération .. L’étape d’initialisation définit par conséquent des fonctions , et . Elle initialise également le paramètre de régularisation entropique intervenant dans la divergence de Sinkhorn à une valeur prédéterminée. L’indice des itérations est initialisé à 0, celui des mini-lots est initialisé à 1 et enfin celui, , des époques à 1. Le cas échéant l’amplitude maximale de la perturbation pouvant affecter les exemples intègres est initialisée à une valeur prédéterminée. L’apprentissage est divisé en époques, chaque époque comprenant un entraînement sur mini-lots. A l’étape 320, on extrait de l’ensemble des exemples intègres labellisés, constitué de mini-lots, le b-ième mini-lot étant noté . On pourra choisir les mini-lots de manière à ce qu’ils constituent une partition de l’ensemble d’apprentissage. A partir des exemples intègres du b-ième mini-lot , on génère en 330 des exemples contradictoires, en fonction du type d’attaque envisagé. Par exemple, on pourra perturber les exemples intègres au moyen de la méthode FGSM, avec une amplitude maximale de perturbation inférieure ou égale à en valeur absolue. Alternativement, on pourra utiliser les méthodes PGD ou BIM précitées. Dans tous les cas, on note conventionnellement les exemples contradictoires labellisés du mini-lot ainsi obtenu. Alternativement, on peut avoir préalablement généré un ensemble d’exemples contradictoires labellisés, associé à l’ensemble et extraire ensuite des mini-lots correspondants et respectivement de et . A l’étape 340, on effectue la projection des exemples contradictoires du mini-lot dans l’espace de représentation, au moyen de la fonction de projection (opération dite aussi « forward »).De manière similaire, on effectue en 345 la projection des exemples intègres du mini-lot dans l’espace de représentation au moyen de cette même fonction de projection. A l’étape 350, on obtient les prédictions issues des exemples contradictoires du mini-lot ,par exemple en appliquant la fonction de prédiction aux exemples contradictoires projetés à l’étape 340 dans l’espace de représentation. On en déduit la valeur moyenne de la fonction de perte sur les exemples du mini-lot , soit . A l’étape 355, on calcule la divergence de Sinkhorn entre les distributions et des exemples intègres du mini-lot et des exemples contradictoires du mini-lot dans l’espace de représentation, tels que calculés aux étapes 345 et 340 respectivement. La valeur de la divergence de Sinkhorn sur ces mini-lots est notée , où est la valeur du paramètre de régularisation entropique à l’itération . A l’étape 360, on combine la valeur moyenne prise par la fonction de perte sur le mini-lot , soit , précédemment calculée en 350, avec celle de la divergence de Sinkhorn, , calculée en 355, pour obtenir la valeur de la fonction de perte régularisée, comme indiqué dans l’expression (3), le calcul étant effectué pour le b-ième mini-lot . On calcule ensuite le gradient de la fonction de perte régularisée en 370 et on effectue une rétropropagation du gradient de couche en couche pour mettre à jour les coefficients synaptiques. Les poids synaptiques sont mis à jour par descente de gradient. On obtient ainsi une nouvelle fonction de projection , une nouvelle fonction de prédiction et un nouveau modèle défini par . En parallèle, on calcule en 375 la dérivée partielle de la divergence de Sinkhorn par rapport à pour la valeur . La dérivée partielle est moyennée sur les exemples du mini-lot. On en déduit ensuite, par descente de gradient, la nouvelle valeur du paramètre de régularisation entropique. Cette mise à jour vise à minimiser la divergence de Sinkhorn toutes choses étant égales par ailleurs. On peut alors incrémenter en 380 le numéro d’itération ainsi que l’indice du mini-lot. Si , autrement dit si l’on n’a pas encore épuisé tous les mini-lots de l’ensemble , on retourne à l’étape 320 pour une nouvelle extraction de mini-lot. Dans la négative, en revanche, on réinitialise en 385 l’indice de mini-lot, , et on incrémente l’indice d’époque, . On vérifie en 390 si l’indice d’époque est égal à une valeur maximale prédéterminée. Dans la négative, on retourne à l’étape 320 pour l’extraction d’un nouveau mini-lot. En revanche, dans l’affirmative, on considère que l’apprentissage est terminé en 395. Le réseau de neurones ainsi entraîné est alors robuste aux attaques par exemples contradictoires. Comme indiqué précédemment, on pourra alterner des itérations d’entrainement sur l’ensemble des exemples contradictoires et des itérations d’entrainement sur l’ensemble des exemples intègres. Dans ce cas, lorsqu’une itération est effectuée sur l’ensemble des exemples intègres, l’étape 350 effectue des prédictions issues des exemples du mini-lot ,par exemple en appliquant la fonction de prédiction aux exemples intègres projetés à l’étape 345 dans l’espace de représentation (cf. flèche en trait discontinu). On en déduit ensuite la valeur prise par la fonction de perte sur chaque exemple du mini-lot et on calcule la moyenne de ces valeurs sur les exemples du mini-mot pour obtenir une valeur qui est combinée avec celle de la divergence de Sinkhorn calculée à l’étape 355. Le reste de l’itération est identique à ce qui a été précédemment décrit. Cette alternance d’itérations permet, si besoin, d’améliorer la qualité de la prédiction du réseau lorsque les entrées ne font pas l’objet d’attaques par exemples contradictoires. Méthode d’apprentissage d’un réseau de neurones artificiels destiné à être entrainé sur un ensemble d’exemples intègres, labellisés par leurs labels correspondants, dans laquelle on génère au moyen d’au moins une attaque un ensemble d’exemples contradictoires labellisés, un exemple contradictoire étant obtenu par perturbation d’un exemple intègre et portant le même label que ce dernier, le réseau de neurones projetant un vecteur de données d’entrée de dimension dans un espace de représentation de dimension et fournissant, sous la forme d’un vecteur de sortie, une prédiction à partir du vecteur de données d’entrée ainsi projeté, le réseau de neurones artificiels étant entraîné sur ledit ensemble d’exemples contradictoires, caractérisée en ce que cet entrainement est réalisé par rétropropagation du gradient à partir d’une fonction de perte régularisée, ladite fonction de perte régularisée comprenant un terme de pénalisation proportionnel à la divergence de Sinkhorn entre la distribution des exemples contradictoires et la distribution des exemples intègres dans ledit espace de représentation. Méthode d’apprentissage d’un réseau de neurones artificiels selon la revendication 1, caractérisée en ce que l’apprentissage est effectué en une pluralité d’époques, chaque époque comprenant une pluralité d’itérations d’entrainement, chaque itération d’entrainement étant effectuée sur un mini-lot d’exemples contradictoires, obtenu à partir d’un mini-lot d’exemples intègres correspondants, extraits dudit ensemble d’exemples intègres. Méthode d’apprentissage d’un réseau de neurones artificiels selon la revendication 2, caractérisée en ce que chaque époque comprend également une pluralité d’itérations d’entrainement sur des mini-lots d’exemples intègres, extraits dudit ensemble d’exemples intègres. Méthode d’apprentissage d’un réseau de neurones artificiels selon la revendication 2, caractérisée en ce que la fonction de perte régularisée est calculée sur le mini-lot d’exemples contradictoires, en combinant la valeur moyenne de la fonction de perte sur ce mini-lot, ( avec la divergence de Sinkhorn ( ) entre la distribution des exemples contradictoires de ce mini-lot et celle des exemples intègres correspondants. Méthode d’apprentissage d’un réseau de neurones artificiels selon la revendication 4, caractérisée en ce que la fonction de perte est calculée pour chaque exemple contradictoire du mini-lot à partir de l’écart entre la prédiction du réseau de neurones artificiels pour cet exemple contradictoire et le label de ce dernier. Méthode d’apprentissage d’un réseau de neurones artificiels selon la revendication 4 ou 5, caractérisée en ce que la divergence de Sinkhorn est calculée comme où est la distribution des représentations des exemples contradictoires du mini-lot dans l’espace de représentation, et est la distribution des représentations des exemples intègres du mini-lot dans l’espace de représentation, et est la distance de Wasserstein d’ordre où est un entier positif, régularisée par un terme d’entropie : étant la divergence de Kullback-Leibler entre les distributions de probabilité et , étant l’ensemble des distributions sur un espace probabilisé dont les distributions marginales selon la première et la seconde dimension sont respectivement et , étant la distribution de probabilité produit de et , et étant un paramètre, dit paramètre de régularisation entropique. Méthode d’apprentissage d’un réseau de neurones artificiels selon la revendication 6, caractérisée en ce que . Méthode d’apprentissage d’un réseau de neurones artificiels selon la revendication 6 ou 7, caractérisée en ce que le paramètre de régularisation entropique est mis à jour à chaque itération d’entrainement en calculant la dérivée partielle de la divergence de Sinkhorn par rapport à et en la moyennant sur les exemples du mini-lot , la nouvelle valeur du paramètre de régularisation entropique étant calculée par descente de gradient. Méthode d’apprentissage d’un réseau de neurones artificiels selon l’une des revendications précédentes, caractérisée en ce que les exemples contradictoires sont générés par perturbation des exemples intègres au moyen de la méthode PGD, FGSM, ou BIM.