Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD FOR GENERATING AN ADVERSARIAL EXAMPLE FOR A MACHINE LEARNING MODEL, AND ASSOCIATED ROBUSTIFICATION METHOD, GENERATION DEVICE AND COMPUTER PROGRAM PRODUCT
Document Type and Number:
WIPO Patent Application WO/2020/136264
Kind Code:
A1
Abstract:
The invention concerns a method for generating at least one adversarial example for a machine learning model. The generation method comprises the following steps: - defining a variation function of a piece of initial input data defining a plurality of pieces of modified input data; - defining a directional constraint on the variation function such that the difference between at least one component of each piece of modified input data and the component corresponding thereto of the piece of initial input data is of a predetermined sign; and - generating a plurality of pieces of modified input data; - generating the adversarial example maximising the probability that a modified prediction is different to an initial prediction. Figure for the abstract: Figure

Inventors:
ADDAD BOUSSAD (FR)
KODJABACHIAN JÉRÔME (FR)
Application Number:
PCT/EP2019/087106
Publication Date:
July 02, 2020
Filing Date:
December 27, 2019
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
THALES SA (FR)
International Classes:
G06N3/04; G06N3/08
Other References:
KOLOSNJAJI BOJAN ET AL: "Adversarial Malware Binaries: Evading Deep Learning for Malware Detection in Executables", 2018 26TH EUROPEAN SIGNAL PROCESSING CONFERENCE (EUSIPCO), EURASIP, 3 September 2018 (2018-09-03), pages 533 - 537, XP033461626, DOI: 10.23919/EUSIPCO.2018.8553214
BOUSSAD ADDAD ET AL: "Clipping free attacks against artificial neural networks", ARXIV.ORG, CORNELL UNIVERSITY LIBRARY, 201 OLIN LIBRARY CORNELL UNIVERSITY ITHACA, NY 14853, 26 March 2018 (2018-03-26), XP080859097
MARIA-IRINA NICOLAE ET AL: "Adversarial Robustness Toolbox v0.2.2", ARXIV.ORG, CORNELL UNIVERSITY LIBRARY, 201 OLIN LIBRARY CORNELL UNIVERSITY ITHACA, NY 14853, 3 July 2018 (2018-07-03), XP081243456
Attorney, Agent or Firm:
HABASQUE, Etienne et al. (FR)
Download PDF:
Claims:
REVENDICATIONS

1. Procédé de génération (200) d’au moins un exemple adversaire (EA) pour un modèle d’apprentissage automatique, le modèle d’apprentissage automatique étant associé à une base de données (12), le modèle d’apprentissage automatique associant une prédiction (Y) à au moins une donnée d’entrée (X), chaque donnée d’entrée (X) comprenant au moins une composante numérique (Xi), le procédé de génération comprenant, pour au moins une donnée d’entrée initiale (X) choisie parmi les données d’entrée (X) issues de la base de données (12), les étapes suivantes :

- définition (220) d’une fonction de variation (F) de la donnée d’entrée initiale (X) définissant une pluralité de données d’entrée modifiées (X’) à partir de la donnée d’entrée initiale (X);

- définition (230) d’une contrainte de direction à la fonction de variation (F) de sorte que la différence entre au moins une composante (Xi’) de chaque donnée d’entrée modifiée (X’) et la composante (Xi) lui correspondant de la donnée d’entrée initiale (X) soit de signe prédéterminé (Si) ; et

- génération (260) d’une pluralité de données d’entrée modifiées (Xi’) à partir de la donnée d’entrée initiale (X) par la fonction de variation (F) contrainte ;

- génération (270) de l’exemple adversaire (EA) correspondant à la donnée d’entrée modifiée (X’) parmi la pluralité de données d’entrée modifiées (X’) maximisant la probabilité (P) qu’une prédiction modifiée (Y’) obtenue par l’application du modèle d’apprentissage automatique à cette donnée d’entrée modifiée (X’) soit différente d’une prédiction initiale (Y) obtenue par l’application du modèle d’apprentissage automatique à la donnée d’entrée initiale (X).

2. Procédé de génération (200) selon la revendication 1 , dans lequel chaque donnée d’entrée (X) est associée à un fichier numérique comprenant une suite de caractères, le procédé de génération comprenant une étape de conversion (210) de la suite de caractères en la ou les composantes numériques (Xi) de la donnée d’entrée (X).

3. Procédé de génération (200) selon la revendication 1 ou 2, comprenant en outre avant les étapes de génération (260, 270), une étape de définition (240) d’une contrainte de domaine à la fonction de variation (F), de sorte que chaque composante (Xi’) de la donnée d’entrée modifiée (X’) appartienne à un domaine de définition associé prédéterminé.

4. Procédé de génération (200) selon l’une quelconque des revendications 1 à 3, comprenant en outre avant les étapes de génération (260, 270), une étape de définition (250) d’une contrainte de seuil à la fonction de variation (F), de sorte que la différence entre chaque composante (Xi’) de la donnée d’entrée modifiée (X’) et la composante (Xi) lui correspondant de la donnée d’entrée initiale (X’) soit inférieure à un seuil (D) associé prédéterminé.

5. Procédé de génération (200) selon l’une quelconque des revendications 1 à 4, dans lequel la contrainte de direction à la fonction de variation (F) est définie de sorte que la différence entre chaque composante (Xi’) de chaque donnée d’entrée modifiée (X’) et la composante (Xi) lui correspondant de la donnée d’entrée initiale (X) soit de signe prédéterminé (Si).

6. Procédé de génération (200) selon l’une quelconque des revendications 1 à 5, dans lequel la génération (270) de l’exemple adversaire (EA) est réalisée par un algorithme d’optimisation à base de gradient.

7. Procédé de robustification (100) comprenant les étapes du procédé de génération (200) selon l’une quelconque des revendications 1 à 6, le procédé de robustification (100) comprenant en outre les étapes suivantes :

- ajout (310) de l’exemple adversaire (EA) à la base de données (12) afin d’obtenir une base de données (12) enrichie ;

- apprentissage (320) du modèle d’apprentissage automatique à partir de la base de données (12) enrichie.

8. Procédé de robustification (100) selon la revendication 7, comprenant au moins une deuxième itération de l’ensemble des étapes du procédé de robustification (100) selon la revendication 7 à partir de la base de données (12) enrichie.

9. Dispositif électronique de génération (16) d’au moins un exemple adversaire (EA) pour un modèle d’apprentissage automatique, le modèle d’apprentissage automatique étant associé à une base de données (12), le modèle d’apprentissage automatique associant à au moins une donnée d’entrée (X) une prédiction (Y), chaque donnée d’entrée (X) comprenant au moins une composante numérique (Xi),

le dispositif électronique de génération (16) étant, pour au moins une donnée d’entrée initiale (X) choisie parmi les données d’entrée (X) issue de la base de données (12), propre à :

- définir une fonction de variation (F) de la donnée d’entrée initiale (X) définissant une pluralité de données d’entrée modifiées (X’) à partir de la donnée d’entrée initiale (X);

- définir une contrainte de direction à la fonction de variation (F) de sorte que la différence entre chaque composante (Xi’) de chaque donnée d’entrée modifiée (X’) et la composante (Xi) lui correspondant de la donnée d’entrée initiale (X) soit de signe constant ; et

- générer une pluralité de données d’entrée modifiées (X’) à partir de la donnée d’entrée initiale (X) par la fonction de variation (F) contrainte ;

- générer l’exemple adversaire (EA) correspondant à la donnée d’entrée modifiée (X’) parmi la pluralité de données d’entrée modifiées (X’) maximisant la probabilité (P) qu’une prédiction modifiée (Y’) obtenue par l’application du modèle d’apprentissage automatique à cette donnée d’entrée modifiée (X’) soit différente d’une prédiction initiale (Y) obtenue par l’application du modèle d’apprentissage automatique à la donnée d’entrée initiale (Y).

10. Produit programme d’ordinateur comportant des instructions logicielles qui, lorsqu’elles sont exécutées par un ordinateur, mettent en oeuvre un procédé de génération (200) selon l’une quelconque des revendications 1 à 6.

Description:
Procédé de génération d’un exemple adversaire pour un modèle d’apprentissage automatique, procédé de robustification, dispositif de génération et programme produit ordinateur associés

La présente invention concerne un procédé de génération d’un exemple adversaire pour un modèle d’apprentissage automatique.

La présente invention concerne également un procédé de robustification du modèle d’apprentissage automatique, un dispositif de génération et un produit programme ordinateur associés.

En particulier, l’invention concerne le domaine de l’intelligence artificielle et plus particulièrement les modèles d’apprentissage automatique qui se basent sur des approches statistiques afin de permettre d’améliorer les performances du modèle à résoudre des tâches sans être explicitement programmés pour chacune de ces tâches.

L'apprentissage automatique comporte deux phases. La première phase consiste à définir un modèle à partir de données présentes dans une base de données, appelées observations. L'estimation du modèle consiste à effectuer une tâche pratique, telle que traduire un discours, estimer une densité de probabilité, reconnaître la présence d'un objet dans une image ou classer un fichier numérique, par exemple. Cette phase dite d'apprentissage est généralement réalisée préalablement à l'utilisation pratique du modèle. La seconde phase correspond à l’utilisation du modèle : le modèle étant défini, de nouvelles données hors de la base de données peuvent alors être soumises au modèle afin d'obtenir le résultat correspondant à la tâche souhaitée.

Il est connu de continuer l’apprentissage du modèle durant la deuxième phase, en prenant en compte un retour sur la qualité des tâches réalisées. Cet apprentissage continu est important pour corriger les défauts du modèle afin de rendre le modèle plus robuste et ainsi d’améliorer son fonctionnement et de prévenir les éventuelles attaques informatiques contre ce modèle.

En particulier, il est connu de déterminer des exemples adversaires du modèle d’apprentissage automatique. Un exemple adversaire est une donnée d’entrée pour lequel le résultat associé est différent du résultat associé à une autre donnée d’entrée voisine. L’exemple adversaire est donc un cas particulier problématique pour le modèle d’apprentissage automatique. En effet, une légère variation de la donnée d’entrée devrait aboutir à une prédiction semblable si le modèle était suffisamment robuste. Par exemple, le fait de modifier la luminosité d’une image ne doit pas modifier les objets identifiés sur l’image ou le fait d’ajouter quelques mots dans un fichier ne doit pas modifier le fait de savoir s’il contient un virus ou non. Toutefois, ces exemples adversaires ne donnent pas entière satisfaction, en particulier dans le domaine de la cyber-sécurité.

La présente invention a pour but de proposer un procédé permettant d’améliorer encore la pertinence des exemples adversaires du modèle d’apprentissage automatique.

À cet effet, l’invention a pour objet un procédé de génération d’au moins un exemple adversaire pour un modèle d’apprentissage automatique, le modèle d’apprentissage automatique étant associé à une base de données, le modèle d’apprentissage automatique associant une prédiction à au moins une donnée d’entrée, chaque donnée d’entrée comprenant au moins une composante numérique, le procédé de génération comprenant, pour au moins une donnée d’entrée initiale choisie parmi les données d’entrée issues de la base de données, les étapes suivantes :

- définition d’une fonction de variation de la donnée d’entrée initiale définissant une pluralité de données d’entrée modifiées à partir de la donnée d’entrée initiale;

- définition d’une contrainte de direction à la fonction de variation de sorte que la différence entre au moins une composante de chaque donnée d’entrée modifiée et la composante lui correspondant de la donnée d’entrée initiale soit de signe prédéterminé ; et

- génération d’une pluralité de données d’entrée modifiées à partir de la donnée d’entrée initiale par la fonction de variation contrainte ;

- génération de l’exemple adversaire correspondant à la donnée d’entrée modifiée parmi la pluralité de données d’entrée modifiées maximisant la probabilité qu’une prédiction modifiée obtenue par l’application du modèle d’apprentissage automatique à cette donnée d’entrée modifiée soit différente d’une prédiction initiale obtenue par l’application du modèle d’apprentissage automatique à la donnée d’entrée initiale.

Suivant d’autres aspects avantageux de l’invention, le procédé de génération comprend une ou plusieurs des caractéristiques suivantes, prise(s) isolément ou suivant toutes les combinaisons techniquement possibles :

- chaque donnée d’entrée est associée à un fichier numérique comprenant une suite de caractères, le procédé de génération comprenant une étape de conversion de la suite de caractères en la ou les composantes numériques de la donnée d’entrée ;

- le procédé comprend en outre avant les étapes de génération, une étape de définition d’une contrainte de domaine à la fonction de variation, de sorte que chaque composante de la donnée d’entrée modifiée appartienne à un domaine de définition associé prédéterminé ;

- le procédé comprend comprenant en outre avant les étapes de génération, une étape de définition d’une contrainte de seuil à la fonction de variation, de sorte que la différence entre chaque composante de la donnée d’entrée modifiée et la composante lui correspondant de la donnée d’entrée initiale soit inférieure à un seuil associé prédéterminé ;

- la contrainte de direction à la fonction de variation est définie de sorte que la différence entre chaque composante de chaque donnée d’entrée modifiée et la composante lui correspondant de la donnée d’entrée initiale soit de signe prédéterminé ; et

- la génération de l’exemple adversaire est réalisée par un algorithme d’optimisation à base de gradient.

L’invention a également pour objet un procédé de robustification du modèle d’apprentissage automatique, comprenant les étapes du procédé de génération tekl que définit ci-dessus, le procédé de robustification comprenant en outre les étapes suivantes :

- ajout de l’exemple adversaire à la base de données afin d’obtenir une base de données enrichie ; et

- apprentissage du modèle d’apprentissage automatique à partir de la base de données enrichie.

En complément avantageux, le procédé de robustification comprend une deuxième itération de l’ensemble des étapes du procédé de robustification tel que défini ci-dessus à partir de la base de données enrichie.

L’invention a également pour objet un dispositif de génération d’au moins un exemple adversaire pour un modèle d’apprentissage automatique, le modèle d’apprentissage automatique étant associé à une base de données, le modèle d’apprentissage automatique associant à au moins une donnée d’entrée une prédiction, chaque donnée d’entrée comprenant au moins une composante numérique, le dispositif électronique de génération étant, pour au moins une donnée d’entrée initiale choisie parmi les données d’entrée issue de la base de données, propre à :

- définir une fonction de variation de la donnée d’entrée initiale définissant une pluralité de données d’entrée modifiées à partir de la donnée d’entrée initiale;

- définir une contrainte de direction à la fonction de variation de sorte que la différence entre chaque composante de chaque donnée d’entrée modifiée et la composante lui correspondant de la donnée d’entrée initiale soit de signe constant ; et

- générer une pluralité de données d’entrée modifiées à partir de la donnée d’entrée initiale par la fonction de variation contrainte ;

- générer l’exemple adversaire correspondant à la donnée d’entrée modifiée parmi la pluralité de données d’entrée modifiées maximisant la probabilité qu’une prédiction modifiée obtenue par l’application du modèle d’apprentissage automatique à cette donnée d’entrée modifiée soit différente d’une prédiction initiale obtenue par l’application du modèle d’apprentissage automatique à la donnée d’entrée initiale.

L’invention a également pour objet un produit programme d'ordinateur comportant des instructions logicielles qui, lorsqu’elles sont exécutées par un ordinateur, mettent en oeuvre un procédé de génération tel que défini précédemment.

Ces caractéristiques et avantages de l’invention apparaîtront à la lecture de la description qui va suivre, donnée uniquement à titre d’exemple non limitatif, et faite en référence aux dessins annexés, sur lesquels :

- la figure 1 est une représentation schématique d’un ensemble électronique comprenant un dispositif électronique de génération selon l’invention ; et

- la figure 2 est un organigramme d’un procédé de robustification selon l’invention.

Un ensemble électronique 10 est représenté sur la figure 1. L’ensemble électronique 10 comprend au moins une base de données 12, un dispositif électronique de modélisation 14, un dispositif électronique de génération 16 et un dispositif électronique de robustification 18.

La base de données 12 est propre à stocker une pluralité de données. Chaque donnée est par exemple un fichier numérique, une image, une vidéo, un son, etc.

Le dispositif de modélisation 14 est propre à exécuter un modèle d’apprentissage automatique. En particulier le dispositif de modélisation 14 est propre à appliquer le modèle d’apprentissage automatique à au moins une donnée d’entrée X afin d’obtenir une prédiction Y associée.

Le modèle d’apprentissage automatique est par exemple un réseau de neurones bien connu de l’homme du métier.

A titre d’exemple, lorsque la donnée d’entrée X est issue d’une image, la prédiction Y associée est par exemple un texte décrivant au moins un objet présent sur l’image. Lorsque la donnée d’entrée X est issue d’un fichier numérique, la prédiction Y est par exemple une traduction dans une autre langue du texte du fichier, une classification du contenu du fichier ou une analyse anti-virus du fichier.

Chaque donnée d’entrée X est un vecteur ou un tableau comprenant au moins une composante Xi. Au moins l’une des composantes Xi est numérique. Avantageusement, toutes les composantes Xi de la donnée d’entrée X sont numériques.

Selon un exemple de réalisation, le dispositif de modélisation 14 se présente sous la forme d’un calculateur indépendant comprenant en outre au moins un processeur et une mémoire. Dans ce cas, le dispositif de modélisation 14 se présente au moins partiellement sous la forme d’un circuit logique programmable de type FPGA (de l’anglais « Field-Programmable Gâte Array ») et/ou d’un logiciel stocké dans la mémoire du calculateur et exécutable par le processeur de celui-ci.

Selon un autre exemple de réalisation, le dispositif de modélisation 14 est mis en oeuvre par un autre calculateur. Dans ce cas, le dispositif de modélisation 14 se présente au moins partiellement sous la forme d’un logiciel stocké dans une mémoire d’un tel calculateur et exécutable par un processeur de celui-ci.

Le dispositif de génération 16 est propre à générer au moins un exemple adversaire EA pour le modèle d’apprentissage automatique.

En référence à la figure 1 , le dispositif de génération 16 comprend un premier module d’acquisition 20, un premier module de traitement 22 et un premier module de sortie 24.

Le premier module d’acquisition 20 permet d’acquérir l’ensemble des données externes du dispositif de génération 16 nécessaires pour le fonctionnement de celui-ci. En particulier, le premier module d’acquisition 20 est propre à recevoir des données d’entrée X issues de la base de données 12.

Le premier module de traitement 22 est apte à traiter les données acquises par le module d’acquisition 20 à l’aide du dispositif de modélisation 14 afin de mettre en oeuvre un procédé 200 de génération de l’au moins un exemple adversaire EA pour le modèle d’apprentissage automatique.

Finalement, le premier module de sortie 24 est apte à transmettre l’ensemble des données traitées par le premier module de traitement 22 au dispositif de robustification 18.

Selon un exemple de réalisation, le dispositif de génération 16 se présente sous la forme d’un calculateur indépendant comprenant en outre au moins un processeur et une mémoire. Dans ce cas, les modules précités se présentent au moins partiellement sous la forme de circuits logiques programmables de type FPGA (de l’anglais « Field- Programmable Gâte Array ») et/ou de logiciels stockés dans la mémoire du calculateur et exécutables par le processeur de celui-ci.

Selon un autre exemple de réalisation, le dispositif de génération 16 est mis en oeuvre par un autre calculateur. Dans ce cas, les modules précités se présentent au moins partiellement sous la forme de logiciels stockés dans une mémoire d’un tel calculateur et exécutables par un processeur de celui-ci.

Le dispositif de robustification 18 est propre à mettre en oeuvre la robustification du modèle d’apprentissage automatique. Par robustification du modèle, on entend une optimisation du modèle par laquelle le modèle est rendu plus robuste et moins sensible aux effets de la variabilité dans les données et des paramètres d'entrée du modèle.

En référence à la figure 1 , le dispositif de robustification 18 comprend un deuxième module d’acquisition 26, un deuxième module de traitement 28 et un deuxième module de sortie 30.

Le deuxième module d’acquisition 26 permet d’acquérir l’ensemble des données externes du dispositif de robustification 18 nécessaires pour le fonctionnement de celui-ci. En particulier le deuxième module d’acquisition 26 est propre à recevoir l’au moins un exemple adversaire EA de la part du dispositif de génération 16.

Le deuxième module de traitement 28 est apte à traiter les données acquises par le deuxième module d’acquisition 26 afin de mettre en oeuvre un procédé 300 d’apprentissage du modèle d’apprentissage automatique à partir de la base de données 12.

Finalement, le deuxième module de sortie 30 est apte à transmettre l’ensemble des données traitées par le deuxième module de traitement 28, et en particulier à transmettre le modèle d’apprentissage automatique robustifié, au dispositif de modélisation 14.

Selon un exemple de réalisation, le dispositif de robustification 18 se présente sous la forme d’un calculateur indépendant comprenant en outre au moins un processeur et une mémoire. Dans ce cas, les modules précités se présentent au moins partiellement sous la forme de circuits logiques programmables de type FPGA (de l’anglais « Field- Programmable Gâte Array ») et/ou de logiciels stockés dans la mémoire du calculateur et exécutables par le processeur de celui-ci.

L’homme du métier comprendra que les dispositifs de modélisation 14, de génération 16 et de robustification 18 se présentent en variante sous la forme d’un calculateur unique.

Selon un autre exemple de réalisation, le dispositif de robustification 18 est mis en oeuvre par un autre calculateur. Dans ce cas, les modules précités se présentent au moins partiellement sous la forme de logiciels stockés dans une mémoire d’un tel calculateur et exécutables par un processeur de celui-ci.

Un procédé de robustification 100 sera désormais expliqué en référence à la figure 2 présentant un organigramme de ses étapes.

Le procédé de robustification 100 comprend le procédé de génération 200 suivi du procédé d’apprentissage 300. Lors d’une étape initiale optionnelle 210 de conversion, au moins donnée comprise dans la base de données 12 est convertie en une donnée d’entrée X comprenant au moins une composante numérique Xi.

Par exemple, si les données sont des fichiers numériques comprenant une suite de caractères, chaque fichier est transformé en une matrice numérique indiquant pour chaque caractère sa place dans le fragment de texte analysé.

La suite du procédé de robustification 100 est décrit pour une donnée d’entrée initiale X choisie parmi les données d’entrée X issues de la base de données 12. L’homme du métier comprendra que le procédé de robustification 100 est applicable à n’importe quelle donnée d’entrée X issue de la base de données 12.

Lors d’une étape 220, le dispositif de génération 16 définit une fonction de variation F de la donnée d’entrée initiale X définissant une pluralité de données d’entrée modifiées X’ à partir de la donnée d’entrée initiale X :

[Math 1 ]

X ! = F(X)

La fonction F permet d’obtenir une pluralité de données d’entrées modifiées X’ dans le voisinage de la donnée d’entrée initiale X en faisant varier légèrement cette dernière.

Puis le procédé de génération 200 comprend une étape 230 de définition d’une contrainte de direction à la fonction de variation F de sorte que la différence entre au moins composante Xi’ de chaque donnée d’entrée modifiée X’ et la composante Xi lui correspondant de la donnée d’entrée initiale X soit de signe prédéterminé Si. Le signe prédéterminé Si est positif ou négatif.

Avantageusement, la contrainte de direction à la fonction de variation F est définie de sorte que la différence entre chaque composante Xi’ de chaque donnée d’entrée modifiée X’ et la composante Xi lui correspondant de la donnée d’entrée initiale X soit de signe prédéterminé Si.

Dans un mode de réalisation avantageux, la contrainte de direction est définie de telle sorte que la différence entre chaque composante Xi’ de la donnée d’entrée modifiée X’ et la composante Xi lui correspondant de la donnée d’entrée initiale X soit de signe Si positif :

[Math 2]

XV - Xi > 0

On entend par « composante lui correspondant», la même composante de la donnée d’entrée modifiée X’ que celle de la donnée d’entrée initiale X. Autrement dit, on entend par « composante lui correspondant », la composante ayant le même indice. La contrainte de direction Cd est particulièrement avantageuse lorsque la donnée d’entrée X est issue d’un fichier numérique et représente un nombre d’éléments contenus dans ce fichier. En effet, enlever des données au fichier risquerait de casser la structure du fichier et de rendre ce fichier corrompu. Ainsi, avec la contrainte de direction, seul de l’ajout de contenu est possible dans le fichier, ce qui permet de garantir l’intégrité du fichier.

En variante, la contrainte de direction Cd est définie de telle sorte que la différence entre chaque composante Xi’ de la donnée d’entrée modifiée X’ et la composante Xi lui correspondant de la donnée d’entrée initiale X soit négative.

Dans un mode de réalisation avantageux, le procédé 200 comprend une étape 240 de définition d’une contrainte de domaine à la fonction de variation F, de sorte que chaque composante Xi’ de la donnée d’entrée modifiée X’ appartienne à un domaine de définition associé prédéterminé.

Le domaine de définition de chaque composante Xi’ est par exemple un intervalle numérique compris entre une valeur minimale ai et une valeur maximale bί :

[Math 3]

ai < Xi' < bϊ

En variante le domaine de définition est un ensemble discret de valeurs numériques.

Par exemple, le domaine de définition correspond à une limitation physique de la donnée d’entrée telle qu’une intensité lumineuse nécessairement positive, à une limitation structurelle telle qu’une taille maximale de fichier ou une limitation de préférence prédéterminée.

Dans un mode de réalisation avantageux, le procédé 200 comprend une étape 250 de définition d’une contrainte de seuil à la fonction de variation F, de sorte que la valeur absolue de la différence entre chaque composante Xi’ de la donnée d’entrée modifiée X’ et la composante Xi lui correspondant de la donnée d’entrée initiale X soit inférieure à un seuil Ai associé prédéterminé :

[Math 4]

\Xi' - Xi \ < Dϊ

Avantageusement, pour chaque composante numérique Xi, le seuil Ai est de valeur inférieur à 5% de la valeur de la composante numérique Xi. Par exemple, dans le cas des images, des variations de l’intensité lumineuse limitées à 5% seront généralement difficilement détectables pour l’œil humain.

Puis, le procédé 200 comprend une étape de génération 260 d’une pluralité de données d’entrée modifiées X’ à partir de la donnée d’entrée initiale X par la fonction de variation F contrainte par la contrainte de direction et avantageusement la contrainte de domaine et la contrainte de seuil.

En particulier, lorsque la contrainte de direction positive, la contrainte de domaine et la contrainte de seuil s’applique, la fonction de variation est définie comme suit :

[Math 5]

,

si Xi + Dί < bί, alors

avec r une variable réelle et G une fonction bornée dans l’intervalle [-1 ,1]. La fonction G est par exemple égale à la fonction tangente hyperbolique, à la fonction sinus ou une fonction issue de la fonction sigmoïde.

Le procédé de génération 200 comprend ensuite une étape 270 de génération de l’exemple adversaire EA correspondant à la donnée d’entrée modifiée X’ parmi la pluralité de données d’entrée modifiées X’ maximisant la probabilité P qu’une prédiction modifiée Y’ obtenue par l’application du modèle d’apprentissage automatique à cette donnée d’entrée modifiée X’ soit différente d’une prédiction initiale Y obtenue par l’application du modèle d’apprentissage automatique à la donnée d’entrée initiale X :

[Math 6]

EA = Y'tel que P(Y' ¹ Y ) soit maximale

Ainsi, l’exemple adversaire EA est la donnée d’entrée modifiée X’ pour lequel la probabilité P que la prédiction Y’ associée soit différente de la prédiction initiale Y est maximale.

Avantageusement, la génération de l’exemple adversaire EA est réalisée par un algorithme d’optimisation à base de gradient. L’algorithme d’optimisation est itératif en faisant varier la variable r et procède par améliorations successives en suivant le gradient jusqu’à trouver la probabilité maximale. En particulier, pour une valeur r donnée, l’algorithme calcule la donnée d’entrée modifiée X’ en fonction de la donnée d’entrée X. Puis, l’algorithme calcule la prédiction modifiée Y’ associée au moyen du dispositif de modélisation 14, puis l’algorithme compare la prédiction modifiée Y’ avec la prédiction initiale Y. Puis, l’algorithme détermine le gradient de variation de la probabilité que la prédiction modifiée Y’ soit différente de la prédiction initiale Y, fait varier la variable r en suivant le gradient positif et réitère les calculs jusqu’à ce que le maximum de probabilité soit atteint.

Le procédé de génération 200 est suivi par le procédé d’apprentissage 300 qui sera désormais expliqué en référence à la figure 2, afin de permettre la robustification du modèle d’apprentissage automatique. Le procédé d’apprentissage 300 comprend une première étape 310 d’ajout de l’exemple adversaire EA à la base de données 12 afin d’obtenir une base de données 12 enrichie. La base de données 12 enrichie comprend ainsi toutes les données initialement présentes ainsi que l’exemple adversaire EA ajouté.

Puis, lors d’une étape 320, le dispositif de robustification 18 met en oeuvre l’apprentissage du modèle d’apprentissage automatique à partir de la base de données 12 enrichie.

En particulier, l’apprentissage du modèle d’apprentissage automatique est réalisé par apprentissage à partir des données issues de la base de données 12, par exemple au moyen d’un algorithme itératif par correction d’erreur bien connu de l’homme du métier.

Ainsi, le modèle d’apprentissage automatique se réajuste en fonction de l’exemple adversaire EA afin que la prédiction modifiée Y’ associée à l’exemple adversaire EA ne soit plus différente de la prédiction initiale Y. Ainsi, dans l’exemple de l’image, le modèle d’apprentissage automatique est réajusté afin que le modèle détecte les mêmes objets sur l’image de l’exemple adversaire EA et l’image de la donnée d’entrée initiale.

Puis, le module de robustification 18 transmet le modèle d’apprentissage automatique ajusté au module de modélisation 14 qui est ainsi mis à jour avec la version améliorée du modèle.

Le procédé de robustification 100 comprend avantageusement une deuxième itération de l’ensemble des étapes des procédés 200 et 300 à partir de la base de données 12 enrichie. Le procédé de robustification comprend ainsi la génération d’au moins un deuxième exemple adversaire EA différent de celui de la première itération, l’ajout de ce deuxième exemple adversaire EA à la base de données 12 enrichie et l’apprentissage du modèle avec cette base de données 12 encore enrichie.

On conçoit alors que la présente invention présente un certain nombre d’avantages.

Tout d’abord, l’invention permet d’améliorer la robustification du modèle d’apprentissage automatique. En effet, la génération d’un exemple adversaire EA prenant en compte la contrainte de direction permet d’enrichir la base de données 12 avec des exemples plus pertinents.

En particulier, la contrainte de direction est particulièrement avantageuse dans le domaine de la cyber-sécurité où les données sont des fichiers numériques. La contrainte de direction permet d’éviter d’obtenir des fichiers malformés qui seraient inutiles pour le modèle d’apprentissage automatique. Le procédé selon l’invention permet ainsi de rendre le modèle d’apprentissage automatique plus robuste afin d’améliorer son fonctionnement et de prévenir les éventuelles attaques informatiques contre ce modèle.

De plus, la prise en compte des contraintes de domaine et de seuil permettent d’améliorer encore la pertinence des exemples adversaires EA générés et ajoutés à la base de données 12.