Wat zijn Generative Adversarial Networks?

Een Generative Adversarial Network (GAN) is een AI-model dat bestaat uit twee neurale netwerken - de generator en discriminator - die concurreren om hun functies te verbeteren; de generator creëert valse gegevens die lijken op de trainingsset, terwijl de discriminator probeert te bepalen of de gegevens authentiek zijn.

Demo AI
Wat je moet weten over Generative Adversarial Networks
Waarom GAN? Wat zijn de voordelen van GAN's? Wat is de GAN-structuur? Wat zijn de verschillende categorieën GAN's? Hoe werken Generative Adversarial Networks? Hoe worden Generative Adversarial Networks geïmplementeerd? Wat zijn enkele van de uitdagingen van GAN's? ServiceNow voor Generative Adversarial Networks

Generatieve AI (GenAI) vertegenwoordigt een van de belangrijkste ontwikkelingen in artificial intelligence in de afgelopen jaren. Op het eerste gezicht kan deze sprong voorwaarts voelen alsof het van de ene op de andere dag gebeurde: een transformatie van de wereld door de introductie van krachtige, capabele en breed beschikbare AI-oplossingen. De realiteit is echter dat AI's nieuwe generatieve capaciteiten het hoogtepunt vormen van tientallen jaren onderzoek en ontwikkeling in verschillende ondersteunende technologieën. Het concept van het Generative Adversarial Network, of GAN, is een dergelijke innovatie die een centrale rol heeft gespeeld in het vormgeven van het landschap van artificial intelligence.

 

De oorsprong van GAN

GAN's werden in 2014 voor het eerst ontworpen door Ian Goodfellow en een aantal collega's. Het probleem waarmee zij werden geconfronteerd, was de vraag hoe een computersysteem kon worden ontwikkeld waarmee originele, realistische 'foto's' konden worden gemaakt op basis van de verstrekte gegevens. Toen Goodfellow geconfronteerd werd met het ontmoedigende vooruitzicht van het enorme wiskundige getalkraken dat hierbij kwam kijken, kwam hij op een idee: Waarom niet gewoon het ene netwerk de taak geven om beelden te maken en een ander netwerk fouten in de beelden laten opsporen? De twee zouden dan samenwerken, herhaaldelijk nieuwe versies presenteren en fouten vaststellen totdat de valse beelden de toets der kritiek konden doorstaan.

Het eerste Generative Adversarial Network is ontstaan uit dat idee. Zoals gesteld omvat dit innovatieve framework twee tegengestelde systemen die betrokken zijn bij een wedstrijd waarbij de winst van de één het verlies van de ander is. Na verloop van tijd verbeteren beide netwerken hun mogelijkheden, wat leidt tot steeds geavanceerdere gegevensgeneratie.

Alles uitvouwen Alles samenvouwen Waarom GAN?

Generative Adversarial Networks hebben grote belangstelling gewekt vanwege hun unieke vermogen om hoogwaardige, realistische gegevens te genereren over verschillende domeinen: van het creëren van AI-gegenereerde kunstwerken en synthetische afbeeldingen of video's, tot het assisteren bij productpersonalisatie en probabilistische distributiemodellering. Simpel gezegd, wat begon als een geïmproviseerd gedachte-experiment is uitgegroeid tot een bewezen technologie die belangrijke praktische toepassingen mogelijk maakt. Dit heeft de manier waarop machines leren en creëren veranderd, en hoe bedrijven hiervan kunnen profiteren.

Maak kennis met Now Intelligence Ontdek hoe ServiceNow analyses en AI uit de laboratoria haalt om de manier waarop bedrijven werken te transformeren en de digitale transformatie te versnellen. Download het e-book
Wat zijn de voordelen van GAN's?

De toepassing van GAN-oplossingen voor bedrijfstoepassingen biedt diverse aantrekkelijke voordelen. Denk hierbij aan het volgende:

Genereren van synthetische gegevens

GAN's blinken uit in het genereren van nieuwe gegevens die echte gegevensdistributies nabootsen. Dit is ongelooflijk handig voor gegevensuitbreiding, want modellen voor machine learning worden verbeterd zonder extra echte gegevens. Het maakt ook effectieve signalering van anomalieën mogelijk en stimuleert creativiteit bij het genereren van nieuwe ontwerpen en concepten.

Verbeterde resultaten

GAN's staan bekend om het produceren van fotorealistische en hifi-resultaten en zijn van cruciaal belang voor gebieden die gedetailleerde beeld- en videosynthese vereisen. Of het nu gaat om het genereren van realistische omgevingen in virtuele systemen of het creëren van nieuwe audiosequenties in muziek, de kwaliteit van GAN-uitvoer is vaak niet te onderscheiden van werkelijke opnamen of beelden. Dit geldt ook voor niet-mediagegevens; het GAN-proces kan synthetische informatie van alle typen verfijnen totdat deze overeenkomt met de kwaliteit van de werkelijke gegevenssets.

Minder toezicht nodig

Een van de opvallende kenmerken van GAN's is hun vermogen om te leren zonder gelabelde gegevenssets. Dit blijkt waardevol in scenario's waar gelabelde gegevens beperkt of duur zijn om te verkrijgen. De autonomie van GAN elimineert een van de belangrijkste barrières die anders bepaalde organisaties of individuen zouden kunnen verhinderen binnen het framework te werken.

Hogere gegevensproductie

GAN's hebben de unieke mogelijkheid om zelfstandig complexe gegevensdistributies te imiteren, waardoor de efficiënte productie van zeer specifieke gegevenssets mogelijk is. Deze functie is met name handig in use cases waarbij snel grote hoeveelheden gegevens moeten worden gegenereerd, waardoor de noodzaak van handmatige gegevensaanmaak aanzienlijk wordt verminderd.

Lagere arbeidskosten

Door delen van de processen voor het genereren en verbeteren van gegevens te automatiseren, kunnen GAN's de uren die gewoonlijk aan deze taken worden besteed, aanzienlijk verminderen. Deze vermindering van arbeid verlaagt niet alleen de kosten, maar maakt het ook mogelijk dat werknemers zich richten op meer strategische activiteiten. De toewijzing van personeel wordt geoptimaliseerd en de productiviteit wordt verhoogd.

Wat is de GAN-structuur?

Zoals gezegd bestaan Generative Adversarial Networks uit twee belangrijke neurale netwerkmodellen die gelijktijdig worden getraind door middel van tegengestelde processen. Deze tegengestelde netwerken worden het generatormodel en het discriminatormodel genoemd.

Generatormodel

De belangrijkste taak van de generator is het creëren van gegevens die niet te onderscheiden zijn van echte gegevens. Vanuit een willekeurige ruisinvoer wordt deze invoer gebruikt om gegevensuitvoer te genereren via een netwerk van lagen die zijn ontworpen om de details en kwaliteit van de gegevens geleidelijk te verfijnen. De generator verbetert na verloop van tijd, geleid door de feedback van de discriminator over de authenticiteit van zijn uitvoer, met als uiteindelijke doel om gegevens zo overtuigend te produceren dat het de discriminator kan misleiden en laat denken dat het echt is.

Discriminatormodel

De discriminator treedt op als rechter in de GAN-opstelling. Deze evalueert gegevens om te bepalen of ze echt zijn (op basis van de werkelijke gegevensset) of vals (op basis van de generator). Het doel van de discriminator is om de invoergegevens nauwkeurig te classificeren, waardoor kritische feedback wordt gegeven aan de generator over de kwaliteit van zijn uitvoer. Dit model helpt bij het verfijnen van de generator door deze te dwingen om betere en realistischere uitvoer te produceren.

Wat zijn de verschillende categorieën GAN's?

In het decennium dat ze bestaan, hebben Generative Adversarial Networks zich ontwikkeld tot verschillende varianten, elk geschikt voor verschillende toepassingen en uitdagingen. Nogmaals, hoewel veel van deze variaties specifiek zijn toegesneden op het genereren van beelden, kunnen ze vaak ook worden gebruikt voor andere toepassingen.

Veel voorkomende typen GAN's zijn: 

  • Vanilla GAN 
    Dit is de eenvoudigste vorm van een GAN, waarbij de generator en discriminator eenvoudige neurale netwerken zijn. Vanille GAN's leggen de basisarchitectuur voor complexere modellen, maar zijn mogelijk niet voldoende voor complexe taken.

  • Conditional GAN (cGAN) 
    Deze GAN's conditioneren zowel de generator als de discriminator met aanvullende informatie, waardoor het model gegevens kan genereren die specifiek zijn voor bepaalde labels of tags. Deze aanpak maakt het mogelijk om doelgerichter en relevanter gegevens te genereren.

  • Deep convolutional GAN (DCGAN) 
    Door convolutionele neurale netwerken te integreren, zijn DCGANs bijzonder effectief bij taken waarbij beelden betrokken zijn. Ze maken gebruik van convolutionele en convolutioneel-getransponeerde lagen in de generator en discriminator, waardoor de kwaliteit van de beeldgenerering wordt verbeterd.

  • Laplacian pyramid GAN (LAPGAN) 
    LAPGAN maakt gebruik van een reeks GAN's, gerangschikt in een piramidestructuur, om beelden te genereren van grof-tot-fijn. Elk niveau van de piramide verfijnt de details van het beeld, waardoor uitvoer met een hogere resolutie kan worden gegenereerd.

  • Super-resolution GAN (SRGAN) 
    SRGAN's zijn gericht op het omzetten van afbeeldingen met een lage resolutie naar afbeeldingen met een hoge resolutie. Ze passen een tegengestelde training toe om een toewijzing te leren van lage resolutie naar hoge resolutie, die helpt bij het herstellen van fotorealistische structuren van sterk gedownsamplede afbeeldingen.

Hoe werken Generative Adversarial Networks?

GAN's functioneren door middel van een dynamisch en concurrerend proces tussen de generator- en de discriminatormodellen. Dit proces zorgt ervoor dat de gegenereerde uitvoer geleidelijk kwalitatief beter en realistischer wordt. Hier volgt een overzicht van de betrokken stappen:

  1. Initialisatie
    De generator en de discriminator worden geïnitialiseerd met willekeurige trainingsparameters om het risico van vooringenomenheid naar een bepaald resultaat te elimineren. Deze 'gewichten' worden tijdens het hele proces nauwkeurig afgestemd

  2. Generator presenteert synthetische gegevens
    De generator maakt gegevens van een willekeurige ruisinvoer, waarbij wordt geprobeerd de werkelijke gegevensdistributie na te bootsen.

  3. Discriminator evalueert en reageert
    Dit model beoordeelt zowel de werkelijke gegevens als de synthetische gegevens van de generator. Het probeert correct te classificeren welke gegevens echt zijn en welke vals.

  4. Beloningen worden verstrekt wanneer gegevens worden geïdentificeerd en feedback wordt gegeven
    Beloningen in GAN-training hebben betrekking op de aanpassingen van de modelparameters op basis van de prestaties van de discriminator. Als de discriminator echte of valse gegevens correct identificeert, wordt deze 'beloond' doordat er minder aanpassingen nodig zijn in de parameters. Maar als het niet lukt, worden er belangrijkere wijzigingen aangebracht om de nauwkeurigheid te verbeteren. Ook de generator wordt aangepast op basis van de vraag of de discriminator met succes voor de gek wordt gehouden.

  5. Iteratief leerproces gaat verder
    Het proces wordt herhaald met continu uitwisselingen tussen de generator en de discriminator, waarbij bij elke cyclus verbeteringen worden aangebracht totdat de discriminator de synthetische gegevens niet meer betrouwbaar van de werkelijke gegevens kan onderscheiden.

Hoe worden Generative Adversarial Networks geïmplementeerd?

De implementatie van GAN's omvat verschillende belangrijke processen die zijn ontworpen om ervoor te zorgen dat het netwerk effectief en efficiënt functioneert. Elk van de volgende elementen vormt een integraal onderdeel van de architectuur en functie van een GAN:

  • De vereiste bibliotheken worden geïmporteerd
    Het instellen van de coderingsomgeving door het importeren van de benodigde softwarebibliotheken biedt de tools en functies die nodig zijn voor machine learning en gegevensverwerking.

  • Een transformatie definiëren
    Transformaties worden gebruikt om de gegevens te voorverwerken in een formaat dat geschikt is voor het neurale netwerk, zodat de invoergegevens worden genormaliseerd of uitgebreid om de training te verbeteren.

  • De gegevensset wordt geladen
    Dit omvat het voorbereiden en laden van de gegevens waarvan de GAN gaat leren, zoals afbeeldingen, teksten of andere vormen van gegevens die van toepassing zijn op het probleem.

  • Parameters definiëren die in latere processen moeten worden gebruikt
    Het bepalen van belangrijke parameters, zoals leersnelheid, aantal tijdvakken en batchgrootte, helpt bepalen hoe het model traint.

  • Een nutsklasse definiëren om de generator te bouwen
    Deze klasse omvat de architectuur van de generator, met gedetailleerde informatie over de lagen en hun functies die cruciaal zijn voor het genereren van nieuwe gegevens.

  • Een nutsklasse definiëren om de discriminator te bouwen
    Net als bij de generator geeft deze klasse een overzicht van de structuur van de discriminator, die de authenticiteit van de gegenereerde gegevens gaat beoordelen.

  • De GAN bouwen
    Dit houdt in dat de generator en de discriminator worden geïntegreerd in één framework, klaar voor training.

  • Training van de GAN
    Het element ziet de discriminator en generator getraind door hun tegengestelde dynamiek, die beide verbeteren in reactie op de prestaties van de ander.

Wat zijn enkele van de uitdagingen van GAN's?

Generative adversarial networks zijn krachtige tools in AI, en hebben geholpen de basis te leggen voor moderne generatieve oplossingen, maar ze zijn niet zonder fouten. GAN's brengt verschillende uitdagingen met zich mee die van invloed kunnen zijn op hun effectiviteit en toepassing. De volgende potentiële obstakels vereisen een doordachte afweging en een aanpak op maat om ervoor te zorgen dat GAN's zowel effectief als verantwoord worden gebruikt:

Instabiliteit van de training

GAN's zijn gevoelig voor instabiliteit tijdens de training, wanneer de generator en de discriminator mogelijk niet effectief leren. Om dit aan te pakken, passen onderzoekers meestal verliesfuncties aan en optimaliseren ze de architectuur om beter aan de behoeften van het netwerk te voldoen.

Computerkosten

Hoewel GAN's organisaties kunnen helpen geld te besparen in termen van arbeidsuren en hogere productiviteit, kunnen de aanzienlijke computerinvesteringen die nodig zijn voor de training van GAN's, met name bij grote en complexe gegevenssets, een belemmering vormen. Het gebruik van efficiëntere netwerkontwerpen en hardwareversnellingen om aan deze eisen tegemoet te komen, kan een oplossing bieden.

Overfitting

Net als veel andere modellen voor machine learning, kunnen GAN's overfit zijn voor trainingsgegevens (vooral als de diversiteit van gegevens laag is), waardoor ze minder effectief zijn voor nieuwe, onzichtbare gegevens. Regularisatietechnieken, gegevensuitbreiding en een grotere diversiteit aan gegevenssets kunnen dit risico helpen beperken.

Vooringenomenheid en eerlijkheid

Het gevaar bestaat dat GAN's vooroordelen in de trainingsgegevens repliceren of versterken, wat leidt tot oneerlijkheid of discriminatie. Om dit tegen te gaan, moeten organisaties en onderzoekers prioriteit geven aan diverse gegevenssets voor training en tegelijkertijd algoritmes implementeren die zijn ontworpen om mogelijke vooroordelen vast te stellen en te corrigeren.

Interpreteerbaarheid en verantwoordelijkheid

Het 'black box'-karakter van GAN's kan het moeilijk maken om hun besluitvormingsprocessen te interpreteren, wat met name problematisch kan zijn bij bepaalde gevoelige toepassingen. Het ontwikkelen van methoden voor het beter traceren, begrijpen en uitleggen van het gedrag van GAN's is essentieel voor het waarborgen van verantwoordelijkheid en vertrouwen in hun toepassingen.

Prijzen van ServiceNow ServiceNow biedt concurrerende productpakketten die met je meegroeien naarmate je bedrijf groeit en je behoeften veranderen. Bekijk prijzen
ServiceNow voor Generative Adversarial Networks

Als basistechnologie van moderne GenAI hebben Generative Adversarial Networks een aanzienlijk potentieel aangetoond in een breed scala van branches en gebieden: van gegevensuitbreiding en de generering van synthetische gegevens tot complexere toepassingen zoals leren zonder toezicht. Deze netwerken bieden veelbelovende vooruitzichten voor bedrijven die het realisme en de diversiteit van gegevens willen verbeteren.

Het Now Platform® van ServiceNow bevat geavanceerde AI-mogelijkheden die ideaal zijn voor het ondersteunen van GAN's en andere AI-gestuurde initiatieven. Het biedt functies zoals Natural Language Understanding, voorspellende analyses en intelligente automatisering, waardoor de besluitvorming en operationele efficiëntie worden gestroomlijnd, zodat bedrijven meer tijd en resources kunnen besteden aan groei. Bovendien zorgt de mogelijkheid van het platform om complexe AI-taken veilig en op schaal te hanteren ervoor dat bedrijven het volledige potentieel van GenAI-technologieën kunnen benutten zonder dat dit ten koste gaat van de prestaties of beveiliging.

Ontdek zelf hoe ServiceNow en AI je bedrijf kunnen transformeren; bekijk de demo van ServiceNow vandaag nog!

Duik dieper in generatieve AI Verhoog de productiviteit met Now Assist: generatieve AI die rechtstreeks in het Now Platform is ingebouwd. Ontdek AI Neem contact met ons op
Resources Artikelen Wat is AI? Wat is generatieve AI? Wat is een LLM? Onderzoeksrapporten IDC-infobrief: Maximaliseer AI-waarde met een digitaal platform Generatieve AI in IT-activiteiten Implementatie van GenAI in de telecommunicatiebranche Datasheets AI-zoeken Voorspel en voorkom onderbrekingen met ServiceNow® Voorspellende AIOps E-books Moderniseer IT-services en -activiteiten met AI GenAI: Is het echt zo belangrijk? Ontketen bedrijfsproductiviteit met GenAI Whitepapers Enterprise AI Maturity Index GenAI voor Telco