FR3133937A1 - Procédé et dispositif d’entraînement d’une structure de neurones artificiels et programme d’ordinateur associé - Google Patents

Procédé et dispositif d’entraînement d’une structure de neurones artificiels et programme d’ordinateur associé Download PDF

Info

Publication number
FR3133937A1
FR3133937A1 FR2202665A FR2202665A FR3133937A1 FR 3133937 A1 FR3133937 A1 FR 3133937A1 FR 2202665 A FR2202665 A FR 2202665A FR 2202665 A FR2202665 A FR 2202665A FR 3133937 A1 FR3133937 A1 FR 3133937A1
Authority
FR
France
Prior art keywords
data
images
reference images
network
discriminator network
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
FR2202665A
Other languages
English (en)
Inventor
Amine Kacete
Luc LE MAGOAROU
Stéphane Paquelet
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fondation B Com
Original Assignee
Fondation B Com
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fondation B Com filed Critical Fondation B Com
Priority to FR2202665A priority Critical patent/FR3133937A1/fr
Priority to PCT/EP2023/057097 priority patent/WO2023180257A1/fr
Publication of FR3133937A1 publication Critical patent/FR3133937A1/fr
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/088Non-supervised learning, e.g. competitive learning
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0475Generative networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Probability & Statistics with Applications (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Algebra (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Image Analysis (AREA)
  • Character Discrimination (AREA)

Abstract

Un procédé d’entraînement d’une structure (1) de réseaux de neurones au moyen de données de référence (x), comprend une étape de regroupement des données de référence pour déterminer des données de classification (c) associées aux données de référence, et au moins deux cycles des étapes suivantes : - fourniture, en entrée d’un réseau générateur (10), de données initiales (z) et des données de classification pour obtenir des données générées (G(zi|ci)),- fourniture, en entrée d’un réseau discriminateur (20), des données de référence (x), des données de classification et des données générées pour obtenir, pour chaque donnée reçue par le réseau discriminateur une donnée de contrôle (m), et - mise à jour des paramètres du réseau générateur et du réseau discriminateur, pour que les données de contrôle obtenues pour les données de référence convergent vers une première valeur et que les données de contrôle obtenues pour les données générées convergent vers une seconde valeur. Figure pour l’abrégé : 4

Description

Procédé et dispositif d’entraînement d’une structure de neurones artificiels et programme d’ordinateur associé Domaine technique de l'invention
La présente invention concerne le domaine technique des réseaux de neurones artificiels, et plus particulièrement l’entraînement de ces réseaux de neurones artificiels.
Elle concerne en particulier un procédé et un dispositif d’entraînement d’une structure de réseaux de neurones artificiels et un programme d’ordinateur associé.
Etat de la technique
Les algorithmes d’apprentissage automatique (ou «machine learning» selon l’expression anglosaxonne couramment utilisée) nécessitent de plus en plus l’utilisation de données dites synthétiques, c’est-à-dire créées spécifiquement pour la phase d’entraînement de cet algorithme. Ces données synthétiques sont par exemple des images.
Les réseaux adverses génératifs (ou GAN pour «Generative Adversarial Networks») forment un type d’algorithmes d’apprentissage automatique non supervisé. Ils permettent de générer des données synthétiques.
Un réseau adverse génératif comprend deux réseaux de neurones artificiels, un premier réseau dit générateur et un deuxième réseau dit discriminateur, adversaire du réseau générateur.
Le réseau générateur est un réseau de neurones artificiels permettant de créer de nouvelles données sans pouvoir distinguer si ces nouvelles données sont authentiques ou pas. Ces nouvelles données sont transmises au réseau discriminateur, au côté de véritables données (c’est-à-dire non créées par le réseau générateur).
Le réseau discriminateur est un autre réseau de neurones artificiels qui évalue l’authenticité des données qui lui sont fournies en entrée et identifie donc les fausses données. En particulier, le réseau discriminateur essaie alors de distinguer les données synthétiques (c’est-à-dire créées par le réseau générateur) des données réelles. C’est ce fonctionnement qui témoigne du côté « adversaire » du réseau discriminateur par rapport au réseau générateur.
Cependant, la phase d’entraînement des réseaux adverses génératifs est souvent lente car elle nécessite l’utilisation d’un grand nombre de données et présente notamment des difficultés de convergence étant donné la fonction adversaire du réseau discriminateur.
Il est alors connu d’utiliser des réseaux adverses génératifs dits conditionnels. Un tel réseau adverse génératif conditionnel est par exemple connu du document «Diverse Image Generation via Self- Conditioned GANs» de Steven Liu et al., Conference on Computer Vision and Pattern Recognition, pp. 14286-14295, 2020. Ces réseaux adverses génératifs conditionnels sont particulièrement intéressants car ils permettent de générer des données en tenant compte de conditions préalables imposées. Par exemple, ils seront capables de générer des images de visages conditionnées par le genre de la personne et l’expression observée sur son visage, par exemple des images de visages féminins souriants.
Cependant, la mise en œuvre de tels réseaux adverses génératifs conditionnels est assez complexe notamment car le réseau discriminateur, en plus de sa tâche classique décrite précédemment, détermine conjointement la condition communiquée en entrée du réseau adverse génératif lors de la phase d’entraînement.
Présentation de l'invention
Dans ce contexte, la présente invention propose d’améliorer la phase d’entraînement des réseaux adverses génératifs conditionnels.
Plus particulièrement, on propose selon l’invention un procédé d’entraînement d’une structure de réseaux de neurones artificiels au moyen de données de référence, ladite structure comprenant un réseau générateur et un réseau discriminateur, le procédé comprenant une étape préliminaire de regroupement des données de référence en groupes de données de référence afin de déterminer des données de classification respectivement associées aux données de référence, chaque donnée de classification étant représentative du groupe de données de référence auquel appartient la donnée de référence concernée, le procédé comprenant au moins deux cycles des étapes suivantes :
- fourniture, en entrée du réseau générateur, de données initiales et des données de classification déterminées de manière à obtenir, en sortie du réseau générateur, des données générées,
- fourniture, en entrée du réseau discriminateur, des données de référence, des données de classification et des données générées de manière à obtenir, en sortie du réseau discriminateur, pour chaque donnée reçue par le réseau discriminateur parmi les données de référence et les données générées, une donnée de contrôle, et
- mise à jour des paramètres du réseau générateur et des paramètres du réseau discriminateur, de manière à ce que les données de contrôle obtenues pour les données de référence convergent vers une première valeur et que les données de contrôle obtenues pour les données générées convergent vers une seconde valeur distincte de la première valeur.
Ainsi, de manière avantageuse selon l’invention, les données de classification, utilisées pendant l’entraînement de la structure de réseaux de neurones artificiels, sont dérivées directement des données dites de référence, c’est-à-dire des données réelles. De plus, ces données de classification sont déterminées en amont des étapes d’entraînement exécutant les réseaux générateur et discriminateur.
Toutes les étapes d’entraînement sont donc mises en œuvre à partir des mêmes données de classification. Cela permet alors d’améliorer l’entraînement de la structure de réseaux de neurones artificiels, notamment en permettant une meilleure qualité de résultats obtenus en sortie du réseau discriminateur.
De plus, il a été observé que l’utilisation de telles données de classification permet l’accélération de la phase d’entraînement de la structure de réseaux de neurones artificiels. Plus particulièrement, la demanderesse a observé une accélération de 50% de la phase d’entraînement grâce à l’invention, en comparaison à la phase d’entraînement classique d’un réseau adverse génératif classique.
D’autres caractéristiques non limitatives et avantageuses du procédé conforme à l’invention, prises individuellement ou selon toutes les combinaisons techniquement possibles, sont les suivantes :
- l’étape préliminaire de regroupement des données de référence comprend la détermination d’un estimateur de regroupement desdites données de référence, ledit estimateur étant défini à partir de paramètres de pondération, ledit estimateur mettant en œuvre une optimisation d’une fonction de vraisemblance dépendant des données de référence et des paramètres de pondération dudit estimateur ;
- l’estimateur de regroupement met en œuvre une maximisation de probabilités associées aux données de référence ;
- l’estimateur de regroupement met en œuvre une minimisation d’une distance entre chaque donnée de référence et une donnée centrale ;
- il est prévu au moins 100 cycles des étapes de fourniture en entrée du réseau générateur, de fourniture en entrée du réseau discriminateur et de mise à jour utilisant les données de classification déterminées ;
- les données de classification sont des nombres entiers, chaque nombre entier étant associé à un groupe des données de référence ;
- les données de référence sont des images ;
- il est prévu au moins 8 données de référence :
- à l’étape de fourniture en entrée du réseau discriminateur, il est prévu la fourniture des données de référence et des données générées sous la forme d’ensembles de données, l’étape de fourniture en entrée du réseau discriminateur étant répétée autant de fois que le nombre d’ensembles de données ; et
- l’étape de mise à jour est répétée autant de fois que le nombre d’ensembles de données.
Ainsi, chaque cycle introduit précédemment présente plusieurs itérations des étapes de fourniture en entrée du réseau discriminateur et de mise à jour, de manière à analyser tous les ensembles de données. Il y a donc, par cycle, autant d’itérations de ces étapes qu’il y a d’ensembles de données.
La présente invention concerne également un dispositif d’entraînement d’une structure de réseaux de neurones artificiels au moyen de données de référence, ladite structure comprenant un réseau générateur et un réseau discriminateur, le dispositif comprenant :
- un module de regroupement configuré pour regrouper les données de référence en groupes de données de référence afin de déterminer des données de classification respectivement associées aux données de référence, chaque donnée de classification étant représentative du groupe de données de référence auquel appartient la donnée de référence concernée,
- le réseau générateur étant configuré pour recevoir, en entrée, des données initiales et les données de classification et pour fournir, en sortie, des données générées,
- le réseau discriminateur étant configuré pour recevoir, en entrée, les données de référence, les données de classification et les données générées et pour fournir, en sortie, pour chaque donnée reçue par le réseau discriminateur parmi les données de référence et les données générées, une donnée de contrôle,
- un module de mise à jour des paramètres du réseau générateur et des paramètres du réseau discriminateur, de manière à ce que les données de contrôle obtenues pour les données de référence convergent vers une première valeur et que les données de contrôle obtenues pour les données générées convergent vers une seconde valeur distincte de la première valeur, et
- une unité de commande configurée pour activer le module de regroupement lors d’une étape préliminaire et pour mettre en œuvre au moins deux cycles comprenant chacun l’application des données de référence et des données de classification au réseau générateur, l’application des données de référence, des données de classification et des données générées au réseau discriminateur, et une activation du module de mise à jour.
La présente invention concerne enfin un programme d’ordinateur comprenant des instructions exécutables par un processeur et conçues pour mettre en œuvre un procédé tel qu’introduit précédemment lorsque ces instructions sont exécutées par le processeur.
Bien entendu, les différentes caractéristiques, variantes et formes de réalisation de l'invention peuvent être associées les unes avec les autres selon diverses combinaisons dans la mesure où elles ne sont pas incompatibles ou exclusives les unes des autres.
Description détaillée de l'invention
De plus, diverses autres caractéristiques de l'invention ressortent de la description annexée effectuée en référence aux dessins qui illustrent des formes, non limitatives, de réalisation de l'invention et où :
représente une structure de réseaux de neurones artificiels mise en jeu dans la présente invention,
représente, sous forme fonctionnelle, un dispositif d’entraînement configuré pour mettre en œuvre le procédé d’entraînement de la structure de réseaux de neurones artificiels conforme à l’invention,
représente, sous forme de logigramme, un exemple de procédé d’entraînement de la structure de réseaux de neurones conforme à l’invention, et
représente les données impliquées dans la structure de réseaux de neurones artificiels lors de la mise en œuvre du procédé d’entraînement conforme à l’invention.
La représente un exemple de structure 1 de réseaux de neurones artificiels mise en jeu dans la présente invention. Cette structure 1 de réseaux de neurones artificiels comprend ici deux réseaux de neurones artificiels 10, 20 : un premier réseau 10 de neurones artificiels, dit réseau générateur 10, et un deuxième réseau 20 de neurones artificiels, dit réseau discriminateur 20.
Cette structure 1 de réseaux de neurones artificiels est par exemple du type de celle utilisée dans les réseaux adverses génératifs tels que présentés précédemment. Elle est configurée pour traiter différents types de données, par exemple des données audios, des données textuelles ou des images.
Dans la suite de la description, la structure 1 de réseaux de neurones artificiels est présentée pour manipuler des images mais le fonctionnement s’appliquera de la même manière aux autres types de données connus. Pour la suite, on note que chaque image est représentée, en utilisant une pluralité de pixels, par une pluralité de composantes pour chaque pixel. Généralement, chaque image est représentée par trois composantes couleur pour chaque pixel (une composante rouge R, une composante verte G et une composante bleue B).
Comme le montre la , le réseau générateur 10 comprend ici quatre couches 12, 14, 16, 18. Chaque couche 12, 14, 16, 18 est par exemple une couche de convolution combinée à une fonction de normalisation et une fonction de non-linéarité.
On considère des données u. Ces données u se présentent par exemple ici sous la forme d’un vecteur de 100 composantes. Avant d’être fournies en entrée du réseau générateur 10, ces données u sont converties, par un module de conversion 11 mettant en œuvre une cascade d’opérations de convolution inverse, sous la forme d’un bloc de données image dinitdont la résolution est de 4 pixels par 4 pixels par 1024 pixels (4x4x1024).
Partant de ce bloc de données dinitfourni en entrée du réseau générateur 10 (et donc en entrée de la première couche 12), la première couche 12 fournit en sortie un bloc de données d1, de résolution 8 pixels par 8 pixels par 512 pixels (8x8x512).
La deuxième couche 14 reçoit en entrée de bloc de données d1et fournit en sortie un bloc de données d2, de résolution 16 pixels par 16 pixels par 256 pixels (16x16x256). Puis, la troisième couche 16 reçoit en entrée ce bloc de données d2et fournit en sortie un bloc de données d3, de résolution 32 pixels par 32 pixels par 128 pixels (32x32x128).
Enfin, la quatrième couche 18 reçoit en entrée le bloc de données d3et fournit en sortie une image Ifin, de résolution 64 pixels par 64 pixels par 3 pixels (64x64x3).
Finalement, le réseau générateur 10 permet d’obtenir, à partir des données u, une image Ifin, ici de résolution 64 pixels par 64 pixels par 3 pixels. La donnée obtenue, ici une image, est par exemple formée de données élémentaires (64x64x3), qui sont ici les valeurs des pixels de cette image.
De manière similaire, le réseau discriminateur 20 comprend ici aussi quatre couches 22, 24, 26, 28. Chaque couche 22, 24, 26, 28 est par exemple une couche de convolution combinée à une fonction de normalisation et une fonction de non-linéarité.
On considère des données v fournies en entrée du réseau discriminateur 20. Ces données v sont par exemple formées d’images, ici de résolution 64 pixels par 64 pixels par 3 pixels (64x64x3), telles que celles obtenues en sortie du réseau générateur 10. Chaque donnée v peut ainsi être formée de données élémentaires (ici les valeurs des pixels de l’image concernée).
Partant d’une image v fournie en entrée du réseau discriminateur 20 (donc en entrée de la première couche 22), la première couche 22 fournit en sortie un bloc de données J1, de résolution 32 pixels par 32 pixels par 128 pixels (32x32x128).
La deuxième couche 24 reçoit en entrée ce bloc de données J1et fournit en sortie un bloc de données J2, de résolution 16 pixels par 16 pixels par 256 pixels (16x16x256). Puis, la troisième couche 26 reçoit en entrée ce bloc de données J2et fournit en sortie un bloc de données J3, de résolution 8 pixels par 8 pixels par 512 pixels (8x8x512).
Enfin, la quatrième couche 28 reçoit en entrée le bloc de données J3et fournit en sortie un bloc de données Jfin, de résolution 4 pixels par 4 pixels par 1024 pixels (4x4x1024). Ce bloc de données Jfinest ensuite converti, par un autre module de conversion 21 mettant en œuvre une cascade d’opérations de convolution, en un nombre réel r.
Finalement, le réseau discriminateur 20 permet d’obtenir, à partir d’une donnée v sous la forme d’une image, ici de résolution 64 pixels par 64 pixels par 3 pixels, un nombre réel r, associé à cette donnée v.
La présente invention concerne plus particulièrement la phase d’entraînement de cette structure 1 de réseaux de neurones artificiels. Pour cela, l’invention concerne un dispositif 30 d’entraînement de la structure 1 de réseaux de neurones artificiels. La représente, sous forme fonctionnelle, un tel dispositif 30 d’entraînement conforme à la mise en œuvre de l’invention.
Ce dispositif 30 d’entraînement comprend une unité de commande 32 munie d’un processeur 34 et une mémoire 36.
Ce dispositif 30 d’entraînement comprend également un ensemble de modules fonctionnels. Par exemple, il comprend un module de regroupement et un module de mise à jour. Chacun des différents modules décrits est par exemple réalisé au moyen d’instructions de programme d’ordinateur mémorisées par la mémoire 36 de l’unité de commande 32 et conçues pour mettre en œuvre le module concerné lorsque ces instructions sont exécutées par le processeur 34 de l’unité de commande 32.
La est un logigramme représentant un exemple de procédé d’entraînement de la structure 1 de réseaux de neurones artificiels. Ce procédé vise à permettre l’entraînement de la structure 1 de réseaux de neurones artificiels avant que celle-ci ne soit utilisée, par exemple dans le contexte des réseaux adverses génératifs tels que décrits précédemment.
D’une manière générale, ce procédé d’entraînement repose sur l’utilisation de données de référence x. Ces données de référence x sont par exemple ici des images. En variante, les données de référence peuvent être des données audio ou des données de texte (comme des mots ou des portions de phrase).
Ici, on considère que, de manière préalable à la mise en œuvre du procédé, on dispose d’une pluralité d’images x. On utilise ici la notation suivante x = (x1, …, xn) pour illustrer cette pluralité de données de référence, avec n un nombre entier.
Par exemple, au moins 8 images x sont utilisées dans le procédé d’entraînement conforme à l’invention (donc n=8). Dans une application particulière de reconnaissance faciale, ces images représentent par exemple des visages de personnes.
Comme le montre la , le procédé débute par une étape E0 préliminaire de regroupement des données de référence x. Cette étape E0 préliminaire vise à regrouper les données de références x, en différents groupes, sur la base de similarités partagées entre ces données de référence x. Ces différents groupes des données de référence x sont par exemple disjoints, de manière à former un partitionnement de ces données de référence.
Par exemple, dans le cas de données de référence correspondant à des images représentant des visages de personnes, on cherchera à regrouper, en un premier groupe, les personnes aux cheveux longs qui sourient, en un autre groupe, les personnes aux cheveux courts qui sourient, etc.
En pratique, l’étape E0 comprend la détermination d’un estimateur de regroupement des données de référence x. De manière générale, cet estimateur de regroupement est défini à partir de paramètres de pondération qui sont ajustables pour mettre en œuvre ce regroupement. En pratique, cet estimateur de regroupement correspond par exemple au processeur 34 qui met en œuvre les étapes de regroupement telles que décrites ci-après pour former les groupes de données de référence.
Plus particulièrement, afin de réaliser le regroupement des données de référence x, l’estimateur de regroupement met en œuvre une optimisation d’une fonction de vraisemblance dépendant des données de référence et des paramètres de pondération de l’estimateur. Cette fonction de vraisemblance se présente par exemple sous la forme d’une probabilité ou d’une distance.
En d’autres termes, la détermination des différents groupes des données de référence x est mise en œuvre par optimisation d’une fonction de vraisemblance tenant compte des données de référence elles-mêmes et de paramètres de pondération permettant d’ajuster au mieux ce regroupement.
On décrit ci-dessous deux modes de réalisation envisageables pour mettre en œuvre ce regroupement.
Un premier mode de réalisation repose sur le principe d’un modèle de mélange gaussien (ou GMM pour « Gaussian Mixture Model »). Plus de détails sur ce modèle peuvent par exemple être trouvés dans l’article de McLachlan, G. J., & Basford, K. E., «Mixture models : Inference and applications to clustering», Vol. 38, New York: M. Dekke, 1988.
Selon ce premier mode de réalisation, afin de regrouper les données de référence en plusieurs groupes, on considère, dans ce premier mode de réalisation, que les données de référence x se répartissent selon plusieurs distributions normales des données de référence, chaque distribution normale correspondant à un groupe de données de référence.
Plus précisément, on définit, selon ce premier mode de réalisation, une probabilitép data (x)dépendant des données de référence x et modélisant la distribution correspondant aux données de référence x comme une somme pondérée de K distributions normales, K étant un nombre entier correspondant au nombre de groupes des données de référence x. Cette probabilitép data (x)est donnée par l’expression suivante :
avec
et x les données de référence, μket Σkrespectivement la moyenne et la covariance associée à chaque distribution normale k et αkune constante représentant le poids associé à la distribution normale concernée.
Dans ce cas, la fonction de vraisemblance s’écrit sous la forme suivante :
avec ψ l’ensemble de paramètres suivants ψ={(αk, μk, Σk)}k=1..Kà optimiser et x1, …, xnles différentes données de références. Dans ce premier mode de réalisation les paramètres ψ={(αk, μk, Σk)}k=1..Kcorrespondent aux paramètres de l’estimateur de regroupement tels qu’introduits précédemment.
L’optimisation de cette fonction de vraisemblance est ici une maximisation. En d’autres termes, les groupes de données de référence x sont obtenus en déterminant les paramètres ψ* qui maximisent la fonction de vraisemblance introduite.
En pratique, on introduit la fonctionlsuivante, dérivée de la fonction de vraisemblance de l’équation [Math. 3] par application de la fonction logarithme décimal (notée log) à cette équation [Math. 3] :
Ainsi, la détermination des paramètres ψ* est obtenue par maximisation de cette fonction l(ψ|x1, .., xn) :
En pratique, la détermination des paramètres ψ* est mise en œuvre de manière itérative grâce à un algorithme de maximum de vraisemblance. Cet algorithme repose sur l’itération des deux étapes suivantes : une étape de détermination de la probabilité à partir des paramètres ψ obtenus à l’itération précédente et une étape de maximisation de la fonction de vraisemblance en tenant compte de la probabilité déterminée. Ainsi, à l’issue de chaque itération, les paramètres ψ sont actualisés.
Finalement, selon ce premier mode de réalisation, le processeur 34 détermine les paramètres ψ={(αk, μk, Σk)}k=1..Kpermettant de maximiser la probabilité associée. Chaque donnée de référence xiest alors associée au groupe qui maximise la probabilité cisuivante, à partir des paramètres ψ déterminés :
Un deuxième mode de réalisation de mise en œuvre du regroupement des données de référence repose sur la méthode de partitionnement de données en k-moyennes (ou «K - means» selon l’appellation d’origine anglo-saxonne). De manière générale, cette méthode vise à regrouper les données de référence selon k groupes de manière à minimiser, pour chaque groupe, une distance entre une donnée de référence et la moyenne des données de référence appartenant à ce groupe.
Ici, les données de référence x sont considérées comme étant une distribution de moyenne μk.
Cette méthode est itérative. A chaque itération, le processeur 34 définit une donnée centrale o1, ..., oKassociée à chaque donnée de référence x1, …, xn. Puis, chaque donnée centrale est actualisée en déterminant une fonction de coûtLcaractérisant la qualité du regroupement effectué. Cette fonction de coûtLest définie par l’expression suivante :
avec ωikdes paramètres représentant des noyaux de regroupement (représentatifs de chaque regroupement mis en œuvre) et la notation ||…||2 2correspondant à la distance euclidienne.
Les paramètres ωikprennent ici la valeur 1 si la donnée de référence xiconcernée appartient effectivement au groupe k. Sinon, leur valeur est fixée à 0.
Dans ce mode de réalisation, le processeur 34 optimise les paramètres ψ={μk}k =1..K.
Selon ce deuxième mode de réalisation, chaque donnée centrale o1, ..., oKest actualisée de manière itérative en minimisant la fonction de coûtL. A l’issue de chaque itération, la moyenne μkassociée à chaque donnée de référence xiest ainsi actualisée.
Une fois que la fonction de coûtLatteint sa valeur de convergence, chaque donnée de référence xiest associée à la donnée centrale correspondante minimisant la distance euclidienne entre la donnée de référence xiconcernée et la donnée centrale associée. En d’autres termes, le processeur 34 détermine le groupe de données de référence vérifiant l’égalité suivante :
avec la notation ||…||2 2correspondant à la distance euclidienne.
Quelle que soit la méthode utilisée, à l’issue de l’étape E0, les données de référence x sont regroupées selon K groupes déterminés à partir des méthodes décrites précédemment. De manière avantageuse selon l’invention, grâce aux méthodes utilisées, cette étape E0 permet un regroupement précis des données de référence.
Comme le montre la , le procédé se poursuit à l’étape E2. Lors de cette étape, le processeur 34 utilise les groupes déterminés à l’étape E0, et les données de classification c associées à chaque groupe pour attribuer, à chacune des données de références xi, la donnée de classification ci correspondante.
Ces données de classification c sont directement dérivées des données de référence x (et de leur regroupement). Les données de classification c sont donc des données inférées des données de référence. Chaque donnée de classification ciest obtenue à l’issue de l’optimisation de la fonction de vraisemblance décrite précédemment.
En d’autres termes ici, chaque donnée de classification ciest représentative du groupe k de données de référence déterminé.
Chaque donnée de classification est ici un nombre entier compris entre 1 et K, K étant le nombre de groupes de données de référence déterminés à l’étape E0.
Le procédé se poursuit ensuite à l’étape E4 lors de laquelle le processeur 34 fournit en entrée, du réseau générateur 10, des données initiales z et les données de classification c déterminées à l’étape E2. On utilise ici la notation suivante z = (z1, …, zn) pour illustrer la pluralité de données initiales, avec n un nombre entier.
Ici, la donnée de classification ciest celle associée à une donnée de référence xiqui sera fournie au réseau discriminateur (20), à l’étape E6 décrite ci-après, en même temps que la donnée générée G(zi|ci) à partir d’une donnée initiale ziet correspondant à cette même donnée de classification ci.
Les données initiales z sont ici des données aléatoires. Dans l’exemple mentionné précédemment, les données initiales z sont par exemple représentées sous la forme d’un vecteur dont les composantes sont générées de manière aléatoire préalablement à la mise en œuvre du procédé.
Par exemple ici, les données initiales z sont des données aléatoires distribuées selon une loi normale centrée (i.e. de moyenne nulle) et réduite (i.e. de variance égale à 1).
A partir de ces données initiales z et des données de classification c, le réseau générateur 10 fournit, en sortie, des données générées G(zi|ci) ( ). Ces données générées G(zi|ci) sont obtenues à partir des données initiales z en tenant compte des données de classification c. En d’autres termes, pour des images, chaque image générée est associée à une condition correspondant à une donnée de classification concernée.
Ainsi, étant donné le fonctionnement du réseau générateur décrit précédemment, à l’issue de l’étape E4, des données « factices », les données générées G(zi|ci), sont obtenues, en sortie du réseau générateur 10, à partir des données initiales z et des données de classification c utilisées comme conditionnement pour déterminer ces données générées G(zi|ci).
Le procédé se poursuit ensuite à l’étape E6. Lors de cette étape, le processeur 34 fournit, en entrée du réseau discriminateur 20, les données de référence x, les données de classification c et les données générées G(zi|ci). En d’autres termes, en entrée du réseau discriminateur 20, le processeur 34 fournit des images réelles, les données de référence x, associées à leurs données de classifications c, et des images factices, les données générées G(zi|ci), associées aux mêmes données de classification c.
Toutes les données de référence et les données générées sont analysées par le réseau discriminateur 20. En pratique ici, les données de référence et les données générées sont traitées sous forme d’ensembles de données (ou « batch » selon l’appellation d’origine anglo-saxonne). Dans ces ensembles de données, chaque donnée de référence xiest associée à la donnée de classification cicorrespondante et chaque donnée générée G(zi|ci) est également associée à la donnée de classification correspondante.
Chaque ensemble de données comprend par exemple ici 16 images qui pourront être traitées simultanément.
En pratique, l’étape E6 est mise en œuvre par ensemble de données. Le processeur 34 l’exécute donc autant de fois qu’il y a d’ensembles de données. En d’autres termes, l’étape E6 est itérée autant de fois qu’il y a d’ensembles de données.
Pour chaque donnée reçue par le réseau discriminateur 20 parmi les données de référence x et les données générées G(zi|ci), le réseau discriminateur 20 fournit, en sortie, une donnée de contrôle m ( ).
Chaque donnée de contrôle est par exemple comprise entre une première valeur m1et une deuxième valeur m2. La deuxième valeur m2est distincte de la première valeur m1. Par exemple, elle est comprise entre 0 (la deuxième valeur) et 1 (la première valeur). En pratique, cela signifie que, pour les données réelles, le réseau discriminateur 20 obtient D(xi|ci) = 1 et, pour les données factices, il obtient D(G(zi|ci)|ci) = 0.
Le procédé se poursuit ensuite à l’étape E8. Lors de cette étape, le processeur 34 analyse chaque donnée de contrôle m obtenue pour chacune donnée xides données de référence x et des données générées G(zi|ci). Plus particulièrement, cette étape vise à s’assurer que le réseau discriminateur 20 effectue convenablement sa fonction lui permettant de faire la distinction entre une donnée factice et une donnée réelle.
En pratique, l’étape E8 est mise en œuvre par ensemble de données. Le processeur 34 l’exécute donc autant de fois qu’il y a d’ensembles de données. En d’autres termes, l’étape E8 est itérée autant de fois qu’il y a d’ensemble de données.
Lors de cette étape E8, pour une donnée de référence xi, donc une donnée réelle, il est attendue que la donnée de contrôle m converge vers la première valeur m1. A l’inverse, pour une donnée générée, donc factice, il est attendu que la donnée de contrôle converge vers la deuxième valeur m2.
L’entraînement de la structure 1 de réseaux de neurones artificiels vise donc à s’assurer que ces deux caractéristiques sont vérifiées.
Ainsi, lors de l’étape E8, le processeur 34 met en œuvre une mise à jour des paramètres du réseau générateur 10 et des paramètres du réseau discriminateur 20 de manière à ce que chaque donnée de contrôle m obtenue pour une donnée de référence x converge vers la première valeur m1et que chaque donnée de contrôle m obtenue pour une donnée générée G(zi|ci) converge vers la deuxième valeur m2.
En particulier, le processeur 34 détermine ici des coefficients de pondération des nœuds du réseau générateur 10 et des coefficients de pondération des nœuds du réseau discriminateur 20 permettant d’obtenir une convergence convenable des données de contrôle en fonction de la donnée concernée (parmi les données de référence x et les données générées G(zi|ci)). Une telle méthode de convergence est par exemple dans l’article de Kingma, D. P., & Ba, J., « Adam: A method for stochastic optimization », arXiv preprint arXiv:1412.6980, 2014.
Comme le montre la , le procédé reprend ensuite à l’étape E4.
Le cycle d’étapes E4 à E8 est ici au moins répété deux fois. Chaque cycle permet le balayage de l’ensemble des données de référence x et des données générées G(zi|ci). Comme les données sont organisées sous forme d’ensembles de données, chaque cycle présente un certain nombre d’itérations des étapes E6 et E8, de manière à balayer, lors de chaque cycle, tous les ensembles de données.
De manière avantageuse selon l’invention, ce sont toujours les mêmes données de classification, déterminées au début de la mise en œuvre du procédé (étapes E0 et E2), qui sont utilisées à chaque cycle.
Il est par exemple ici prévu la mise en œuvre d’au moins 100 cycles des étapes E4 à E8 pour l’entraînement de la structure 1 de réseaux de neurones artificiels. Tous ces cycles répétés utilisent donc les mêmes données de classification déterminées à partir des étapes E0 et E2 décrites précédemment (donc en amont de la mise en œuvre des différents cycles).
La présente invention présente une application particulièrement avantageuse dans le cadre de la reconnaissance faciale. En particulier, elle permet d’entraîner de manière judicieuse la structure de réseaux de neurones artificiels afin de s’assurer que les images factices soient identifiées à chaque fois, notamment dans le cadre d’attaques dites du « loup » capables de générer des images synthétiques pouvant correspondre à un grand nombre d’utilisateurs. Le procédé d’entraînement selon l’invention permet alors de renforcer le processus de reconnaissance faciale.

Claims (10)

  1. Procédé d’entraînement d’une structure (1) de réseaux de neurones artificiels au moyen d’images de référence (x), ladite structure (1) comprenant un réseau générateur (10) et un réseau discriminateur (20), le procédé comprenant une étape préliminaire (E0) de regroupement des images de référence (x) en groupes d’images de référence afin de déterminer des données de classification (c) respectivement associées aux images de référence (x), chaque donnée de classification (ci) étant représentative du groupe d’images de référence (x) auquel appartient l’image de référence concernée, le procédé comprenant au moins deux cycles des étapes suivantes :
    - fourniture (E4), en entrée du réseau générateur (10), d’images initiales (z) et des données de classification (c) déterminées de manière à obtenir, en sortie du réseau générateur (10), des images générées (G(zi|ci)),
    - fourniture (E6), en entrée du réseau discriminateur (20), des images de référence (x), des données de classification (c) et des images générées (G(zi|ci)) de manière à obtenir, en sortie du réseau discriminateur (20), pour chaque image reçue par le réseau discriminateur (20) parmi les images de référence (x) et les images générées (G(zi|ci)), une donnée de contrôle (m), et
    - mise à jour (E8) des paramètres du réseau générateur (10) et des paramètres du réseau discriminateur (20), de manière à ce que les données de contrôle (m) obtenues pour les images de référence (x) convergent vers une première valeur et que les données de contrôle (m) obtenues pour les images générées (G(zi|ci)) convergent vers une seconde valeur distincte de la première valeur.
  2. Procédé selon la revendication 1, dans lequel l’étape préliminaire (E0) de regroupement des images de référence (x) comprend la détermination d’un estimateur de regroupement desdites images de référence (x), ledit estimateur étant défini à partir de paramètres de pondération, ledit estimateur mettant en œuvre une optimisation d’une fonction de vraisemblance dépendant des images de référence (x) et des paramètres de pondération dudit estimateur.
  3. Procédé selon la revendication 2, dans lequel l’estimateur de regroupement met en œuvre une maximisation de probabilités associées aux images de référence (x).
  4. Procédé selon la revendication 2, dans lequel l’estimateur de regroupement met en œuvre une minimisation d’une distance entre chaque image de référence et une donnée centrale.
  5. Procédé selon l’une quelconque des revendications 1 à 4, dans lequel il est prévu au moins 100 cycles des étapes de fourniture (E4) en entrée du réseau générateur (10), de fourniture (E6) en entrée du réseau discriminateur (20) et de mise à jour (E8) utilisant les données de classification (c) déterminées.
  6. Procédé selon l’une quelconque des revendications 1 à 5, dans lequel, à l’étape de fourniture (E6) en entrée du réseau discriminateur (20), il est prévu la fourniture des images de référence (x) et des images générées (G(zi|ci)) sous la forme d’ensembles d’images, l’étape de fourniture (E6) en entrée du réseau discriminateur (20) étant répétée autant de fois que le nombre d’ensembles d’images.
  7. Procédé selon l’une quelconque des revendications 1 à 6, dans lequel les données de classification (c) sont des nombres entiers, chaque nombre entier étant associé à un groupe d’images de référence (x).
  8. Procédé selon l’une quelconque des revendications 1 à 7, dans lequel il est prévu au moins 8 images de référence (x).
  9. Dispositif d’entraînement (30) d’une structure (1) de réseaux de neurones artificiels au moyen d’images de référence (x), ladite structure (1) comprenant un réseau générateur (10) et un réseau discriminateur (20), le dispositif (30) comprenant :
    - un module de regroupement configuré pour regrouper les images de référence (x) en groupes d’images de référence (x) afin de déterminer des données de classification (c) respectivement associées aux images de référence (x), chaque donnée de classification (ci) étant représentative du groupe d’images de référence (x) auquel appartient l’image de référence concernée,
    - le réseau générateur (10) étant configuré pour recevoir, en entrée, des images initiales (z) et les données de classification (c) et pour fournir, en sortie, des images générées (G(zi|ci)),
    - le réseau discriminateur (20) étant configuré pour recevoir, en entrée, les images de référence (x), les données de classification (c) et les images générées (G(zi|ci)) et pour fournir, en sortie, pour chaque image reçue par le réseau discriminateur (20) parmi les images de référence (x) et les images générées (G(zi|ci)), une donnée de contrôle (m),
    - un module de mise à jour des paramètres du réseau générateur (10) et des paramètres du réseau discriminateur (20), de manière à ce que les données de contrôle (m) obtenues pour les images de référence (x) convergent vers une première valeur et que les données de contrôle (m) obtenues pour les images générées (G(zi|ci)) convergent vers une seconde valeur distincte de la première valeur, et
    - une unité de commande (32) configurée pour activer le module de regroupement lors d’une étape préliminaire et pour mettre en œuvre au moins deux cycles comprenant chacun l’application des images de référence (x) et des données de classification (c) au réseau générateur (10), l’application des images de référence (x), des données de classification (c) et des images générées (G(zi|ci)) au réseau discriminateur (20), et une activation du module de mise à jour.
  10. Programme d’ordinateur comprenant des instructions exécutables par un processeur (34) et conçues pour mettre en œuvre un procédé selon l’une des revendications 1 à 8 lorsque ces instructions sont exécutées par le processeur (34).
FR2202665A 2022-03-25 2022-03-25 Procédé et dispositif d’entraînement d’une structure de neurones artificiels et programme d’ordinateur associé Pending FR3133937A1 (fr)

Priority Applications (2)

Application Number Priority Date Filing Date Title
FR2202665A FR3133937A1 (fr) 2022-03-25 2022-03-25 Procédé et dispositif d’entraînement d’une structure de neurones artificiels et programme d’ordinateur associé
PCT/EP2023/057097 WO2023180257A1 (fr) 2022-03-25 2023-03-20 Procédé et dispositif d'entraînement d'une structure de neurones artificiels et programme d'ordinateur associé

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR2202665A FR3133937A1 (fr) 2022-03-25 2022-03-25 Procédé et dispositif d’entraînement d’une structure de neurones artificiels et programme d’ordinateur associé
FR2202665 2022-03-25

Publications (1)

Publication Number Publication Date
FR3133937A1 true FR3133937A1 (fr) 2023-09-29

Family

ID=83188135

Family Applications (1)

Application Number Title Priority Date Filing Date
FR2202665A Pending FR3133937A1 (fr) 2022-03-25 2022-03-25 Procédé et dispositif d’entraînement d’une structure de neurones artificiels et programme d’ordinateur associé

Country Status (2)

Country Link
FR (1) FR3133937A1 (fr)
WO (1) WO2023180257A1 (fr)

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
HE JIANGPENG ET AL: "Unsupervised Continual Learning via Pseudo Labels", 19 August 2021, PATTERN RECOGNITION : 5TH ASIAN CONFERENCE, ACPR 2019, AUCKLAND, NEW ZEALAND, NOVEMBER 26-29, 2019, REVISED SELECTED PAPERS, PART II; [LECTURE NOTES IN COMPUTER SCIENCE], PAGE(S) 15 - 32, ISBN: 978-3-030-41298-2, ISSN: 0302-9743, XP047634780 *
MCLACHLAN, G. J.BASFORD, K. E., MIXTURE MODELS: INFERENCE AND APPLICATIONS TO CLUSTERING, vol. 38
ODENA AUGUSTUS ET AL: "Conditional Image Synthesis with Auxiliary Classifier GANs", PROCEEDINGS OF THE 34TH INTERNATIONAL CONFERENCE ON MACHINE LEARNING, 1 January 2017 (2017-01-01), pages 2642 - 2651, XP055936569, Retrieved from the Internet <URL:https://dl.acm.org/doi/10.5555/3305890.3305954> [retrieved on 20220629] *
STEVEN LIU ET AL.: "Diverse Image Génération via Self-Conditioned GANs", CONFÉRENCE ON COMPUTER VISION AND PATTERN RÉCOGNITION, pages 14286 - 14295
STEVEN LIU ET AL: "Diverse Image Generation via Self-Conditioned GANs", ARXIV.ORG, CORNELL UNIVERSITY LIBRARY, 201 OLIN LIBRARY CORNELL UNIVERSITY ITHACA, NY 14853, 18 June 2020 (2020-06-18), XP081698762 *
YUKI HAGIWARA ET AL: "YuruGAN: Yuru-Chara Mascot Generator Using Generative Adversarial Networks With Clustering Small Dataset", ARXIV.ORG, CORNELL UNIVERSITY LIBRARY, 201 OLIN LIBRARY CORNELL UNIVERSITY ITHACA, NY 14853, 17 April 2020 (2020-04-17), XP081646731 *

Also Published As

Publication number Publication date
WO2023180257A1 (fr) 2023-09-28

Similar Documents

Publication Publication Date Title
EP3640843B1 (fr) Procédé d&#39;extraction de caractéristiques d&#39;une empreinte digitale représentée par une image d&#39;entrée
WO2025035926A1 (fr) Procédé d&#39;entraînement de modèle de génération d&#39;image, procédé de génération d&#39;image, appareil, dispositif et support de stockage
EP3582141B1 (fr) Procédé d&#39;apprentissage de paramètres d&#39;un réseau de neurones à convolution
FR3095537A1 (fr) Méthode et système de classification confidentielle de données
EP3736744A1 (fr) Procédé de classification sécurisée d&#39;une donnée d&#39;entrée au moyen d&#39;un réseau de neurones à convolution
WO2010076260A1 (fr) Procede et systeme pour classifier des donnees issues de base de donnees
EP4386657A1 (fr) Procédé et appareil de traitement d&#39;image, dispositif électronique, support et produit de programme
EP4099228A1 (fr) Apprentissage automatique sans annotation ameliore par regroupements adaptatifs en ensemble ouvert de classes
Chen et al. Coupled end-to-end transfer learning with generalized fisher information
EP0449353B1 (fr) Dispositif de traitement de données et procédé pour sélectionner des mots de données contenus dans un dictionnaire
Hurault Convergent plug-and-play methods for image inverse problems with explicit and nonconvex deep regularization
Patil et al. Deep hyperparameter transfer learning for diabetic retinopathy classification
EP3966739A1 (fr) Procédé d&#39;analyse automatique d&#39;images pour reconnaître automatiquement au moins une caractéristique rare
FR3133937A1 (fr) Procédé et dispositif d’entraînement d’une structure de neurones artificiels et programme d’ordinateur associé
JP7818141B2 (ja) 拡散を使用した画像からの空間的変動ノイズ除去
FR3005776A1 (fr) Procede de reconnaissance vocale visuelle par suivi des deformations locales d&#39;un ensemble de points d&#39;interet de la bouche du locuteur
EP2804129A1 (fr) Procédé de reconnaissance vocale visuelle avec sélection de groupes de points d&#39;intérêts les plus pertinents
EP4202770A1 (fr) Reseau de neurones avec generation a la volee des parametres du reseau
WO2023118768A1 (fr) Dispositif et procédé de traitement de données d&#39;images de visages d&#39;êtres humains
WO2021234252A1 (fr) Procédés d&#39;utilisation sécurisée d&#39;un premier réseau de neurones sur une donnée d&#39;entrée, et d&#39;apprentissage de paramètres d&#39;un deuxième réseau de neurones
FR3136299A1 (fr) Procédé d’optimisation des hyperparamètres d’un modèle d’apprentissage automatique
EP4165605A1 (fr) Procédé de génération d&#39;images d&#39;une caméra intérieure de véhicule
EP4607479A1 (fr) Méthode et système d&#39;encodage d&#39;une liste de minuties d&#39;un dactylogramme
FR3137475A1 (fr) Procédé et dispositif d’estimation de l’authenticité d’un contenu audio ou vidéo et programme d’ordinateur associé
WO2025186322A1 (fr) Procédé et dispositif d&#39;estimation du pitch d&#39;une voix humaine d&#39;un signal audio

Legal Events

Date Code Title Description
PLFP Fee payment

Year of fee payment: 2

PLSC Publication of the preliminary search report

Effective date: 20230929

PLFP Fee payment

Year of fee payment: 3

PLFP Fee payment

Year of fee payment: 4

PLFP Fee payment

Year of fee payment: 5