Un Ge­ne­ra­tive Ad­ver­sa­rial Network (GAN), ou en français réseau an­ta­go­niste génératif, est un modèle moderne de Machine Learning qui utilise deux réseaux neuronaux pour générer des données syn­thé­tiques réalistes. Les Réseaux An­ta­go­nistes Gé­né­ra­tifs (GAN) peuvent créer des images, des textes et même de la musique. Les domaines d’ap­pli­ca­tion de ce concept vont de la création d’images et de vidéos à l’aug­men­ta­tion des données, en passant par l’art et le design.

Que signifie Ge­ne­ra­tive Ad­ver­sa­rial Network ?

Un Ge­ne­ra­tive Ad­ver­sa­rial Network ou GAN, est un framework pour la gé­né­ra­tion de données syn­thé­tiques dans le domaine du Machine Learning prin­ci­pa­le­ment utilisé pour entraîner des réseaux dans le cadre de l’ap­pren­tis­sage non supervisé. Le modèle d’ap­pren­tis­sage se compose de deux réseaux neuronaux ar­ti­fi­ciels, le gé­né­ra­teur et le dis­cri­mi­na­teur qui tra­vail­lent en con­cur­rence :

  • Gé­né­ra­teur : la tâche du gé­né­ra­teur consiste à créer de nouvelles instances de données qui sont trom­peuses, c’est-à-dire qui res­semblent le plus possible au jeu de données original. Le réseau neuronal génératif démarre avec un bruit aléatoire et réalise des amé­lio­ra­tions continues grâce à l’en­traî­ne­ment. Le gé­né­ra­teur apprend à projeter un vecteur de variables latentes dans un espace de résultats spé­ci­fique, générant ainsi des résultats selon une dis­tri­bu­tion donnée. L’objectif final du réseau génératif est de créer des données ar­ti­fi­cielles capables de tromper le dis­cri­mi­na­teur.
  • Dis­cri­mi­na­teur : ce réseau est entraîné avec l’aide d’un ensemble de données connu, à dis­tin­guer les données au­then­tiques des données syn­thé­tiques, jusqu’à ce qu’il atteigne une précision ac­cep­table. Le dis­cri­mi­na­teur évalue ensuite l’au­then­ti­cité des jeux de données qui lui sont présentés. En d’autres termes, il détermine si les instances de données fournies peuvent être at­tri­buées au jeu de données original ou si elles cons­ti­tuent une con­tre­fa­çon.

L’en­traî­ne­ment de ces réseaux con­cur­rents se fait si­mul­ta­né­ment. Le gé­né­ra­teur affronte le dis­cri­mi­na­teur jusqu’à ce qu’il produise des données que ce dernier ne reconnaît plus comme étant des faux. Grâce à une ré­tro­pro­pa­ga­tion des erreurs (back­pro­pa­ga­tion), les poids des deux réseaux sont optimisés à chaque étape d’en­traî­ne­ment. Cette méthode permet aux deux réseaux neuronaux de s’améliorer mu­tuel­le­ment de manière continue, ce qui fait que la dis­tri­bu­tion générée s’ajuste à celle des données réelles avec un temps d’en­traî­ne­ment suffisant. Une fois l’en­traî­ne­ment terminé, le gé­né­ra­teur peut être utilisé pour produire des données ar­ti­fi­cielles à l’apparence réaliste.

Note

Les Ge­ne­ra­tive Ad­ver­sa­rial Networks ont d’abord été utilisés ex­clu­si­ve­ment comme modèle pour l’ap­pren­tis­sage non supervisé mais depuis, ils ont également fait leurs preuves pour l’ap­pren­tis­sage semi-supervisé, l’ap­pren­tis­sage supervisé et l’ap­pren­tis­sage par ren­for­ce­ment.

Les GAN par rapport à d’autres modèles d’ap­pren­tis­sage au­to­ma­tique

Les Ge­ne­ra­tive Ad­ver­sa­rial Networks (GAN) se dis­tin­guent à plusieurs égards des autres méthodes d’ap­pren­tis­sage au­to­ma­tique. Ils agissent comme des modèles gé­né­ra­tifs im­pli­cites, ce qui signifie qu’ils ne mo­dé­li­sent ni une fonction de vrai­sem­blance directe (li­ke­li­hood function) ni ne four­nis­sent de moyens pour trouver la variable latente. Au lieu de cela, les Ge­ne­ra­tive Ad­ver­sa­rial Networks génèrent de nouvelles instances de données par la con­cur­rence à laquelle se livrent les deux réseaux con­cur­rents.

Con­trai­re­ment à d’autres approches qui génèrent des données par étapes, les GAN par­vien­nent à créer un échan­til­lon complet en un seul passage. De plus, il n’y a pas de res­tric­tions quant au type de la fonction utilisée par le réseau.

Outils d'IA
Exploitez toute la puissance de l'in­tel­li­gence ar­ti­fi­cielle
  • Créez votre site Web en un temps record
  • Boostez votre activité grâce au marketing par IA
  • Gagnez du temps et obtenez de meilleurs résultats

Le processus d’en­traî­ne­ment : comment fonc­tion­nent les Ge­ne­ra­tive Ad­ver­sa­rial Networks ?

Le processus d’en­traî­ne­ment pour les Ge­ne­ra­tive Ad­ver­sa­rial Networks se compose de plusieurs étapes. L’aperçu suivant illustre en détail le dé­rou­le­ment de l’en­traî­ne­ment des GAN :

  1. Ini­tia­li­sa­tion : dans un premier temps, les deux réseaux neuronaux (le gé­né­ra­teur et le dis­cri­mi­na­teur) sont créés et ini­tia­li­sés avec des pa­ra­mètres aléa­toires.
  2. Gé­né­ra­tion de données fictives : le gé­né­ra­teur reçoit en entrée un vecteur aléatoire qu’il utilise pour créer des données syn­thé­tiques. En raison du manque d’en­traî­ne­ment, la sortie ressemble au début à du bruit.
  3. Éva­lua­tion par le dis­cri­mi­na­teur : le dis­cri­mi­na­teur reçoit à la fois des échan­til­lons de données au­then­tiques et des ensembles de données générés par le gé­né­ra­teur. Sa tâche consiste à dis­tin­guer les données au­then­tiques des données fal­si­fiées. Toutefois, le dis­cri­mi­na­teur doit lui aussi être entraîné pour pouvoir tra­vail­ler avec précision. Cela signifie que ce réseau démarre également avec une sortie imprécise.
  4. Feedback et mise à jour des poids : les pa­ra­mètres des deux réseaux sont ajustés par ré­tro­pro­pa­ga­tion. Tandis que le gé­né­ra­teur apprend à produire des données plus réalistes, le dis­cri­mi­na­teur améliore sa capacité à dis­tin­guer les instances de données réelles des instances de données ar­ti­fi­cielles.
  5. Itération : le Ge­ne­ra­tive Ad­ver­sa­rial Network répète les étapes 2, 3 et 4 jusqu’à ce que le gé­né­ra­teur produise des données si réalistes que le dis­cri­mi­na­teur ne peut plus les re­con­naître de manière fiable comme étant syn­thé­tiques ou jusqu’à ce que le modèle ait atteint la qualité souhaitée.

Les domaines d’ap­pli­ca­tion : dans quels contextes les GAN sont-ils utilisés ?

Les Ge­ne­ra­tive Ad­ver­sa­rial Networks, qui ap­par­tien­nent au domaine de l’in­tel­li­gence ar­ti­fi­cielle sont déjà utilisés avec succès dans dif­fé­rents secteurs. Les prin­ci­paux domaines d‘ap­pli­ca­tion sont les suivants :

  • Gé­né­ra­tion d’images et de vidéos : les Ge­ne­ra­tive Ad­ver­sa­rial Networks sont prin­ci­pa­le­ment utilisés dans la pro­duc­tion de films et le dé­ve­lop­pe­ment de jeux pour créer des images et des séquences vidéo hautement réalistes. Cette capacité permet également aux en­tre­prises de mieux re­pré­sen­ter leurs produits et services, comme des chaus­sures ou des vêtements. Les GAN sont également utilisés pour créer des en­vi­ron­ne­ments virtuels.
  • Médecine : dans le domaine de l’imagerie médicale, les GAN sont utilisés pour former des médecins et améliorer les pro­cé­dures de diag­nos­tic. En raison des préoc­cu­pa­tions liées à la con­fi­den­tia­lité, il est souvent difficile pour les cher­cheurs d’accéder à des images médicales à des fins de recherche. Les Ge­ne­ra­tive Ad­ver­sa­rial Networks sont désormais utilisés pour remédier à ce problème.
  • Data Aug­men­ta­tion : le framework peut être utilisé pour fournir des données d’en­traî­ne­ment sup­plé­men­taires pour les modèles de Machine Learning. Cela s’avère par­ti­cu­liè­re­ment pratique dans les si­tua­tions où il n’existe que peu d’exemples réels.
  • Re­con­nais­sance et synthèse vocale : les GAN sont utilisés pour générer du langage naturel et optimiser les systèmes de synthèse vocale. Con­trai­re­ment aux im­plé­men­ta­tions audio et vocales con­ven­tion­nelles, les Ge­ne­ra­tive Ad­ver­sa­rial Networks sont capables de générer de nouveaux échan­til­lons.
  • Science : dans le monde scien­ti­fique, les Ge­ne­ra­tive Ad­ver­sa­rial Networks apportent également un soutien précieux. Ils per­met­tent notamment de re­cons­truire des champs de vitesse et des champs scalaires dans des flux tur­bu­lents. Ce framework a également été utilisé pour générer de nouvelles molécules ciblant de nom­breuses protéines liées à des con­di­tions telles que l’in­flam­ma­tion, le cancer et la fibrose.
  • Art et design : les artistes et les designers utilisent les ar­chi­tec­tures des GAN pour créer des œuvres d’art et des designs innovants.

Avantages et in­con­vé­nients des Ge­ne­ra­tive Ad­ver­sa­rial Networks

Les Ge­ne­ra­tive Ad­ver­sa­rial Networks ouvrent des pos­si­bi­li­tés im­pres­sion­nantes en matière de gé­né­ra­tion de données ar­ti­fi­cielles réalistes, notamment dans les domaines de la création d’images et de vidéos. Un grand avantage des GAN est leur capacité à générer des données de haute qualité sans modèles de pro­ba­bi­lité ex­pli­cites, ce qui les distingue de nombreux autres modèles d’ap­pren­tis­sage génératif. De plus, une multitude de fonc­tion­na­li­tés peut être intégrée au modèle, ouvrant ainsi la voie à un large éventail de scénarios d’ap­pli­ca­tion.

Un problème central réside cependant dans la stabilité du processus d’en­traî­ne­ment. Pendant l’en­traî­ne­ment, il existe un risque d’ef­fon­dre­ment du mode ce qui entraîne une pro­duc­tion par le gé­né­ra­teur d’une diversité de données très limitée. Le problème survient surtout lorsque le gé­né­ra­teur est entraîné trop souvent sans que le dis­cri­mi­na­teur ne soit mis à jour. De plus, il existe un risque que les GAN soient détournés à des fins mal­veil­lantes, comme la création de deepfakes réalistes pour semer la dé­sin­for­ma­tion ou commettre des vols d’identité.

Avantages In­con­vé­nients
Des données de haute qualité Processus d’en­traî­ne­ment instable
Modèle flexible Également in­té­res­sant à des fins mal­veil­lantes (deepfakes, etc.)
Adapté à de nombreux types d’ap­pli­ca­tions
Aller au menu principal