SlideShare a Scribd company logo
1 of 12
Download to read offline
UNIVERSITÀ DEGLI STUDI DI TRIESTE
Dipartimento di Ingegneria e Architettura
Corso di Studi in Ingegneria Elettronica e Informatica
Extended Summary of
“Exploring the Evolution of GANs through
Quality Diversity”
Tesi di Laurea Triennale
A.A. 2022-2023
Laureando Relatore
Stefano Chen prof. Andrea De Lorenzo
Indice
1. Introduzione 2
2. Background 2
2.1 GAN 2
2.2 FID 3
3. Modello Proposto 3
3.1 COEGAN 3
3.2 COEGAN+NSLC 4
4. Esperimento 6
4.1 Setup 6
4.2 MNIST 7
4.3 CelebA 9
5. Conclusione 10
6. Bibliografia 11
1
Introduzione
Generative Adversarial Network (GAN) [2] è un modello di deep learning, che negli ultimi
anni ha ottenuto ottimi risultati nel campo dell'image generation. Nonostante i risultati
convincenti, la fase di training di un GAN è molto complessa ed è affetta da problemi, come
il vanishing gradient e il model collapse, che possono rendere il modello inutilizzabile.
L’articolo in questione [1], propone un nuovo modello che sia in grado di produrre risultati
migliori e meno affetti dai problemi sopracitati.
Background
GAN
Il modello GAN si compone di due reti neurali artificiali (ANN): il Generatore e il
Discriminatore. Il Generatore è addestrato per generare campioni di dati sintetici, tipicamente
immagini, che mirano a ingannare il Discriminatore, mentre il Discriminatore è addestrato per
distinguere tra campioni reali e quelli prodotti dal Generatore.
La fase di training del GAN è caratterizzata da un'interazione competitiva tra queste due reti,
dove il miglioramento delle prestazioni di una rete può influenzare negativamente le
prestazioni dell'altra. Questo processo di competizione spinge il Generatore e il
Discriminatore a migliorarsi a vicenda. Durante il processo di training, la disparità tra le
prestazioni delle due ANN può causare problemi come il vanishing gradient [3] e il model
collapse [4].
Il vanishing gradient si manifesta quando il Discriminatore raggiunge una performance
ottimale, causando una stagnazione nel processo di training del Generatore. Di conseguenza,
il Generatore potrebbe faticare ad imparare a generare immagini realistiche.
Il model collapse si verifica quando il Generatore impara solo a generare una piccola frazione
delle caratteristiche presenti nei dati di input, portando a una riduzione della varietà delle
immagini generate. Questo può comportare l'emergere di immagini ripetitive e poco
diversificate.
2
FID
Per misurare le prestazioni del Generatore, solitamente si utilizza la Fréchet Inception
Distance (FID) [5], perché in grado di misurare la qualità e la diversità del modello. La
metrica FID usa la rete neurale Inception Net per convertire un’immagine in un vettore di
features che viene interpretato come una Gaussiana multivariata continua. Questo processo
viene applicato sia alle immagini generate sia a quelle appartenenti al dataset in input.
La distanza FID è definita come:
dove e sono rispettivamente la media e la covarianza della Gaussiana del
μ𝑥
, Σ𝑥
, μ𝑔
Σ𝑔
dataset in input e dell’immagine generata .
𝑥 𝑔
Modello Proposto
Negli ultimi anni, l’impiego di algoritmi evolutivi per allenare ed evolvere i GAN ha suscitato
crescente interesse. Questa prospettiva offre un insieme variegato di strategie che mirano non
solo a superare le problematiche sopracitate, ma anche a migliorare significativamente la
qualità dei campioni generati. Seguendo questo approccio, l’articolo in questione [1] propone
un nuovo modello di Neuroevoluzione che unisce i concetti di Coevolutionary GAN
(COEGAN) [6] e Novelty Search with Local Competition (NSLC) [7].
COEGAN
COEGAN è un modello che adotta l'approccio combinato di neuroevoluzione e coevoluzione
al fine di fornire un metodo di addestramento più stabile per le reti neurali coinvolte nel
GAN.
In COEGAN, ciascuna ANN è rappresentata da un genoma (un vettore di geni).
All'interno di ciascun gene, sono codificate informazioni cruciali riguardanti il tipo di layer
(lineare, convoluzione o deconvoluzione), la funzione di attivazione e il numero di canali di
output.Questo schema genoma-gene consente di rappresentare in modo completo e specifico
la struttura delle reti neurali coinvolte.
Il Generatore è vincolato all'uso di soli layer lineari e di deconvoluzione (transpose
convolution), mentre il Discriminatore può utilizzare esclusivamente layer lineari e di
convoluzione. Questo vincolo assicura coerenza strutturale e funzionale delle reti neurali
coinvolte, rendendole adatte alle rispettive funzioni.
3
Nella fase iniziale del COEGAN, vengono create due sottopopolazioni, una per i generatori e
una per i discriminatori. Ogni individuo rappresenta una configurazione unica dell'ANN,
determinata dai geni nel suo genoma.
Il processo di training di un COEGAN è composto da 4 fasi:
- Valutazione: Ogni sottopopolazione è suddivisa in specie attraverso una funzione di
similarità che confronta i genomi di due individui. Questo meccanismo garantisce che
ogni individuo recentemente modificato venga addestrato per un numero adeguato di
generazioni prima di essere confrontato con individui più anziani in base al fitness
score. Si adotta un approccio "all vs. all", in cui ogni generatore è accoppiato con ogni
discriminatore per l'ordinario algoritmo di addestramento. Alla conclusione
dell'addestramento, ciascun individuo viene valutato attraverso una fitness function.
La fitness function per i discriminatori è associata alla loro loss function, mentre per i
generatori è misurata dalla FID.
- Crossover: Per ciascuna sottopopolazione, si procede con la selezione degli individui
migliori (genitori) in base al loro fitness score, privilegiando il crossover (incrocio)
delle soluzioni più promettenti. I pesi delle reti neurali dei genitori vengono trasferiti
ai figli, quando possibile. Questo meccanismo garantisce il mantenimento delle
informazioni apprese nella generazione precedente, contribuendo alla conservazione
delle caratteristiche positive delle soluzioni precedenti.
- Mutazione: Ogni figlio può essere soggetto a mutazioni di aggiunta, di rimozione o di
modifica dei geni. L'aggiunta introduce nuovi geni nel genoma, la rimozione elimina
casualmente geni esistenti e la modifica altera i parametri di un gene (funzione di
attivazione o il numero di canali di output).
- Sostituzione: I nuovi individui generati costituiscono la nuova popolazione,
rimpiazzando gli individui della generazione precedente, al fine di promuovere
un'evoluzione continua delle soluzioni.
L'algoritmo si ripete per un numero prefissato di generazioni.
COEGAN+NSLC
I Quality Diversity Algorithms (QD) costituiscono una categoria di Evolutionary Algorithms
(EA) orientati all'identificazione di una gamma diversificata di soluzioni a un determinato
problema. Un esempio concreto di tale categoria è rappresentato da Novelty Search with
Local Competition (NSLC), un QD che incorpora il concetto di "neighborhood" (vicinato) e
sfutta il Nondominated Sorting Genetic Algorithm II (NSGA-II) [8], un algoritmo evolutivo
multi-obiettivo (MOEA). L'obiettivo primario di NSLC è quello di promuovere
simultaneamente sia la qualità che la diversità delle soluzioni. Nel contesto dell'articolo [1], è
4
stato proposto un nuovo modello denominato COEGAN+NSLC, nel quale NSLC viene
integrato con COEGAN. Tale integrazione conserva elementi distintivi di COEGAN, quali la
struttura genoma-gene e le operazioni di mutazione.
L'integrazione di NSLC all'interno di COEGAN ha comportato modifiche rilevanti nel
processo di training. Data l'adozione di un approccio elitarista da parte di NSGA-II nella
selezione degli individui per la formazione della nuova generazione, si è optato per
un'approccio "all vs. all" che coinvolge sia l'attuale popolazione di individui sia la prole
generata. In questa configurazione, i generatori e discriminatori della popolazione corrente
(genitori) vengono anche accoppiati con i generatori e discriminatori della popolazione
derivata (figli), nell'ambito dell'ordinario algoritmo di addestramento. Questo approccio mira
a generare individui di alta qualità e diversità, sebbene ciò comporti un raddoppio del numero
di individui da valutare, con conseguente aumento dei costi computazionali dell'algoritmo.
Il processo di selezione degli individui per il crossover (genitori), avviene tramite un
Tournament (Torneo) tra gli individui di un neighborhood (vicinato) in base al loro
domination score, innovation score e competition score.
L'elemento cardine dell'algoritmo NSLC è la definizione del concetto di neighborhood.
Al fine di determinare i vicini di ciascun individuo, viene considerata la distanza tra le
architetture delle ANN dei singoli individui, distanza che è direttamente definita dalla
somiglianza tra i genomi.
Nell'algoritmo NSLC, vengono selezionati vicini di un individuo al fine di calcolare
𝑛
innovation score e competition score. L'innovazione è definita dalla distanza media tra
l'individuo e il suo vicinato. La competizione è definito dal numero di vicini che l'individuo
supera in termini di fitness score.
5
Esperimento
Al fine di condurre una valutazione accurata dell'efficacia del modello proposto, sono state
eseguite una serie di analisi sperimentali coinvolgendo due dataset di notevole rilevanza: il
MNIST dataset e il CelebA dataset.
All'interno di tali esperimenti, è stata inclusa una variante di COEGAN+NSLC che si
differenzia per l'adozione di un meccanismo di competizione globale. In questa specifica
configurazione, il concetto di "vicinato" non è limitato da una costante " ".
𝑛
Questa variante è stata denominata COEGAN+NSGC.
SETUP
La tabella sopra riportata illustra i parametri utilizzati nelle sperimentazioni. Il numero di
generazioni è stato fissato a 50, e ciascuna sottopopolazione è composta da 10 individui. Le
probabilità di applicare una mutazione di aggiunta, rimozione o modifica sono
rispettivamente del 30%, 10% e 10%. Il Genome Limit specifica il massimo numero di layer
(o geni) consentiti per ciascun individuo.
È importante notare che COEGAN+NSGC non è soggetta al vincolo “Neighborhood size”.
6
MNIST
Di seguito vengono presentati i risultati dell’esperimento condotto sul MNIST dataset.
Il grafico soprastante presenta il FID score dei migliori individui per ogni generazione.
L'analisi dei dati evidenzia che la soluzione COEGAN+NSLC supera marginalmente il
modello COEGAN fino alla metà delle generazioni, per poi raggiungere una performance
equivalente. Questo fenomeno è principalmente riconducibile all'aumentata capacità di
esplorazione offerta dall'algoritmo QD, il quale porta a una popolazione più diversificata ma
comporta una minore evoluzione mirata degli individui più idonei. È importante notare che il
modello COEGAN+NSGC mostra un andamento stabile e una performance finale
significativamente migliore rispetto agli altri modelli.
7
Nelle figure sottostanti sono riportati i numeri di campioni utilizzati nel training dei migliori
generatori e discriminatori. Il grafico a sinistra si riferisce al miglior generatore, mentre
quello a destra mostra il miglior discriminatore. Questi risultati evidenziano che, nonostante
COEGAN+NSLC ottenga una performance equiparabile a COEGAN in termini di FID score;
COEGAN+NSLC e la sua variante globale richiedono notevolmente meno training samples
rispetto a COEGAN.
Al fine di evidenziare la qualità e la diversità ottenuta dal modello proposto, viene presentata
nella figura sottostante, la distribuzione dei campioni prodotti dal miglior generatore durante
la fase di training.
8
La figura (a) rappresenta la distribuzione del MNIST dataset, ovvero la varietà dei campioni
utilizzati per il training. Nella fase iniziale (Figura b), i campioni generati presentano scarsa
somiglianza con le immagini del MNIST e mostrano una bassa diversità (alto numero di
overlapped samples). Nella generazione 10, rappresentata nella figura (c), la distribuzione dei
campioni inizia a somigliare di più a quella rappresentata nella figura (a), anche se sono
ancora presenti alcune carenze in termini di qualità. La figura (d) mostra i campioni generati
dopo l'intero processo evolutivo. Questi campioni mostrano un significativo miglioramento
sia in termini di qualità che di diversità, con solo 1077 campioni sovrapposti, in contrasto con
i 1121 presenti nel MNIST.
CelebA
Per valutare l'efficacia del modello nella generazione di immagini complesse, è stato condotto
un esperimento utilizzando il CelebA dataset. In questo contesto, sono stati confrontati due
modelli: COEGAN+NSGC e DCGAN (un GAN tradizionale che fa uso di layer di
convoluzione e deconvoluzione) [9].
I risultati del processo di training sono presentati di seguito. La figura (a) mostra immagini
caratterizzate da una qualità scadente e dalla presenza di rumore. D'altra parte, a destra, sono
presentate immagini più nitide, sebbene non siano perfette.
Per comprendere le ragioni di questa notevole discrepanza di qualità, dobbiamo esaminare la
fase di addestramento dei modelli coinvolti.
9
La figura sopra riportata evidenzia l'andamento del FID score durante la fase di training.
È possibile osservare una progressione costante del FID score nell'approccio
COEGAN+NSGC, che si conclude con una performance notevolmente migliore rispetto al
DCGAN. Nel DCGAN, al contrario, il punteggio FID varia significativamente durante il
processo di addestramento, mostrando picchi dovuti principalmente a problemi di stabilità
(model collapse), che ha portato alla generazione di immagini affette da rumore. Questi
risultati indicano che il modello proposto possiede una maggiore stabilità e una minore
suscettibilità alle problematiche tipiche dei GAN tradizionali.
Conclusione
I risultati sperimentali evidenziano come l’integrazione degli algoritmi QD abbia
significativamente migliorato la diversità e la qualità dei campioni generati.
Gli esperimenti con la competizione globale dimostrano che è sempre possibile superare i
risultati ottenuti dall’approccio COEGAN, sia in termini di qualità delle immagini che di
training samples. L'esperimento sul CelebA dataset, mette in luce una notevole stabilità nel
processo di training del modello proposto, in contrasto con quanto osservato nei GAN
tradizionali. Tale stabilità ha permesso di evitare problematiche come il model collapse e il
vanishing gradient.
In conclusione, il modello proposto rappresenta una solida alternativa ai GAN tradizionali,
sebbene ci sia ancora margine di miglioramento.
10
Bibliografia
[1]
Costa, V., Lourenço, N., Correia, J., & Machado, P. (2020, June). Exploring the evolution of GANs
through quality diversity. In Proceedings of the 2020 Genetic and Evolutionary Computation
Conference
[2]
Ian Goodfellow, Jean Pouget-Abadie, Mehdi Mirza, Bing Xu, David Warde-Farley, Sherjil Ozair, Aaron
Courville, and Yoshua Bengio. 2014. Generative Adversarial Nets. In Advances in Neural Information
Processing Systems. 2672–2680.
[3]
Andrew Brock, Jeff Donahue, and Karen Simonyan. 2019. Large Scale GAN Training for High Fidelity
Natural Image Synthesis.In 7th International Conference on Learning Representations,
ICLR 2019, New Orleans, LA, USA, May 6-9, 2019.
[4]
William Fedus, Mihaela Rosca, Balaji Lakshminarayanan, Andrew M Dai, Shakir Mohamed, and Ian
Goodfellow. 2018. Many paths to equilibrium: GANs do not need to decrease a divergence at every
step. In 6th International Conference on Learning Representations, ICLR 2018, Vancouver, BC,
Canada, April 30 - May 3, 2018, Conference Track Proceedings.
[5] Yu, Yu, Weibin Zhang, and Yun Deng. "Frechet inception distance (fid) for evaluating gans." China
University of Mining Technology Beijing Graduate School: Beijing, China (2021).
[6]
Costa, Victor, Nuno Lourenço, João Correia, and Penousal Machado. "Coegan: evaluating the
coevolution effect in generative adversarial networks." In Proceedings of the genetic and evolutionary
computation conference, pp. 374-382. 2019.
[7]
Joel Lehman and Kenneth O Stanley. 2011. Evolving a diversity of virtual creatures through novelty
search and local competition. In Proceedings of the 13th Annual Conference on Genetic and
Evolutionary Computation. 211–218.
[8]
Kalyanmoy Deb, Amrit Pratap, Sameer Agarwal, and TAMT Meyarivan. 2002. A fast and elitist
multiobjective genetic algorithm:NSGA-II. IEEE Transactions on Evolutionary Computation 6,2
(2002), 182–197.
[9] Alec Radford, Luke Metz, and Soumith Chintala. 2015. Unsupervised representation learning with deep
convolutional generative adversarial networks. arXiv preprint arXiv:1511.06434 (2015).
11

More Related Content

Similar to Extended Summary of “Exploring the Evolution of GANs through Quality Diversity”

Extended Summary of Self-building Neural Networks
Extended Summary of Self-building Neural NetworksExtended Summary of Self-building Neural Networks
Extended Summary of Self-building Neural Networkschiarabotter
 
Extended Summary of "Ensemble Genetic Programming"
Extended Summary of "Ensemble Genetic Programming"Extended Summary of "Ensemble Genetic Programming"
Extended Summary of "Ensemble Genetic Programming"AlessandroViol
 
Algoritmi di clustering
Algoritmi di clusteringAlgoritmi di clustering
Algoritmi di clusteringRosario Turco
 
Learning of non-homogeneous Continuous Times Bayesian Networks Thesis
Learning of non-homogeneous Continuous Times Bayesian Networks ThesisLearning of non-homogeneous Continuous Times Bayesian Networks Thesis
Learning of non-homogeneous Continuous Times Bayesian Networks ThesisGuido Colangiuli
 
Mobile price classification
Mobile price classificationMobile price classification
Mobile price classificationMircoBarbero
 
Modelli di Durata: un'analisi sull'utilizzo del portale Web dell'Università d...
Modelli di Durata: un'analisi sull'utilizzo del portale Web dell'Università d...Modelli di Durata: un'analisi sull'utilizzo del portale Web dell'Università d...
Modelli di Durata: un'analisi sull'utilizzo del portale Web dell'Università d...Nicola Procopio
 
Procedure di ottimizzazione strutturale di tipo evolutivo
Procedure di ottimizzazione strutturale di tipo evolutivoProcedure di ottimizzazione strutturale di tipo evolutivo
Procedure di ottimizzazione strutturale di tipo evolutivoFranco Bontempi Org Didattica
 
Tecniche di fattorizzazione applicate ai recommender systems
Tecniche di fattorizzazione applicate ai recommender systemsTecniche di fattorizzazione applicate ai recommender systems
Tecniche di fattorizzazione applicate ai recommender systemsGiuseppe Ricci
 
Presentazione Aggiornamento Agile Club Sviluppatori Puglia
Presentazione Aggiornamento Agile Club Sviluppatori PugliaPresentazione Aggiornamento Agile Club Sviluppatori Puglia
Presentazione Aggiornamento Agile Club Sviluppatori PugliaGiuseppe Ricci
 
Design Exploration: Sviluppo telaio per vettura formula sae
Design Exploration: Sviluppo telaio per vettura formula saeDesign Exploration: Sviluppo telaio per vettura formula sae
Design Exploration: Sviluppo telaio per vettura formula saeMarco Basilici
 
Progettazione e Sviluppo di un Sistema per Migliorare il Codice Generato da u...
Progettazione e Sviluppo di un Sistema per Migliorare il Codice Generato da u...Progettazione e Sviluppo di un Sistema per Migliorare il Codice Generato da u...
Progettazione e Sviluppo di un Sistema per Migliorare il Codice Generato da u...DamianoRavalico
 
Comparazione di Modelli Machine Learning
Comparazione di Modelli Machine LearningComparazione di Modelli Machine Learning
Comparazione di Modelli Machine LearningARIANET
 
Classificazione in efMRI: Un caso di studio sulla coniugazione dei verbi
Classificazione in efMRI: Un caso di studio sulla coniugazione dei verbiClassificazione in efMRI: Un caso di studio sulla coniugazione dei verbi
Classificazione in efMRI: Un caso di studio sulla coniugazione dei verbiLuca Vitale
 
Utilizzo Di Algoritmi Genetici In Ambito Seo
Utilizzo Di Algoritmi Genetici In Ambito SeoUtilizzo Di Algoritmi Genetici In Ambito Seo
Utilizzo Di Algoritmi Genetici In Ambito Seogalazzo
 
Presentazione Extended Summary of "Ensemble Genetic Programming"
Presentazione Extended Summary of "Ensemble Genetic Programming"Presentazione Extended Summary of "Ensemble Genetic Programming"
Presentazione Extended Summary of "Ensemble Genetic Programming"AlessandroViol
 
Stefano Bragaglia MSc Thesis, awarded as Best Italian thesis in AI 2009/2010
Stefano Bragaglia MSc Thesis, awarded as Best Italian thesis in AI 2009/2010Stefano Bragaglia MSc Thesis, awarded as Best Italian thesis in AI 2009/2010
Stefano Bragaglia MSc Thesis, awarded as Best Italian thesis in AI 2009/2010Stefano Bragaglia
 
Definizione e sviluppo di un algoritmo genetico multiobiettivo per problemi d...
Definizione e sviluppo di un algoritmo genetico multiobiettivo per problemi d...Definizione e sviluppo di un algoritmo genetico multiobiettivo per problemi d...
Definizione e sviluppo di un algoritmo genetico multiobiettivo per problemi d...Stefano Costanzo
 

Similar to Extended Summary of “Exploring the Evolution of GANs through Quality Diversity” (20)

Extended Summary of Self-building Neural Networks
Extended Summary of Self-building Neural NetworksExtended Summary of Self-building Neural Networks
Extended Summary of Self-building Neural Networks
 
Extended Summary of "Ensemble Genetic Programming"
Extended Summary of "Ensemble Genetic Programming"Extended Summary of "Ensemble Genetic Programming"
Extended Summary of "Ensemble Genetic Programming"
 
Algoritmi di clustering
Algoritmi di clusteringAlgoritmi di clustering
Algoritmi di clustering
 
Learning of non-homogeneous Continuous Times Bayesian Networks Thesis
Learning of non-homogeneous Continuous Times Bayesian Networks ThesisLearning of non-homogeneous Continuous Times Bayesian Networks Thesis
Learning of non-homogeneous Continuous Times Bayesian Networks Thesis
 
Mobile price classification
Mobile price classificationMobile price classification
Mobile price classification
 
Hog processing
Hog processingHog processing
Hog processing
 
Modelli di Durata: un'analisi sull'utilizzo del portale Web dell'Università d...
Modelli di Durata: un'analisi sull'utilizzo del portale Web dell'Università d...Modelli di Durata: un'analisi sull'utilizzo del portale Web dell'Università d...
Modelli di Durata: un'analisi sull'utilizzo del portale Web dell'Università d...
 
Procedure di ottimizzazione strutturale di tipo evolutivo
Procedure di ottimizzazione strutturale di tipo evolutivoProcedure di ottimizzazione strutturale di tipo evolutivo
Procedure di ottimizzazione strutturale di tipo evolutivo
 
Tecniche di fattorizzazione applicate ai recommender systems
Tecniche di fattorizzazione applicate ai recommender systemsTecniche di fattorizzazione applicate ai recommender systems
Tecniche di fattorizzazione applicate ai recommender systems
 
Presentazione Aggiornamento Agile Club Sviluppatori Puglia
Presentazione Aggiornamento Agile Club Sviluppatori PugliaPresentazione Aggiornamento Agile Club Sviluppatori Puglia
Presentazione Aggiornamento Agile Club Sviluppatori Puglia
 
Design Exploration: Sviluppo telaio per vettura formula sae
Design Exploration: Sviluppo telaio per vettura formula saeDesign Exploration: Sviluppo telaio per vettura formula sae
Design Exploration: Sviluppo telaio per vettura formula sae
 
Progettazione e Sviluppo di un Sistema per Migliorare il Codice Generato da u...
Progettazione e Sviluppo di un Sistema per Migliorare il Codice Generato da u...Progettazione e Sviluppo di un Sistema per Migliorare il Codice Generato da u...
Progettazione e Sviluppo di un Sistema per Migliorare il Codice Generato da u...
 
Comparazione di Modelli Machine Learning
Comparazione di Modelli Machine LearningComparazione di Modelli Machine Learning
Comparazione di Modelli Machine Learning
 
Tesi andrea cingolani
Tesi andrea cingolaniTesi andrea cingolani
Tesi andrea cingolani
 
Classificazione in efMRI: Un caso di studio sulla coniugazione dei verbi
Classificazione in efMRI: Un caso di studio sulla coniugazione dei verbiClassificazione in efMRI: Un caso di studio sulla coniugazione dei verbi
Classificazione in efMRI: Un caso di studio sulla coniugazione dei verbi
 
Utilizzo Di Algoritmi Genetici In Ambito Seo
Utilizzo Di Algoritmi Genetici In Ambito SeoUtilizzo Di Algoritmi Genetici In Ambito Seo
Utilizzo Di Algoritmi Genetici In Ambito Seo
 
Presentazione Extended Summary of "Ensemble Genetic Programming"
Presentazione Extended Summary of "Ensemble Genetic Programming"Presentazione Extended Summary of "Ensemble Genetic Programming"
Presentazione Extended Summary of "Ensemble Genetic Programming"
 
Presentazione ufficiale
Presentazione ufficialePresentazione ufficiale
Presentazione ufficiale
 
Stefano Bragaglia MSc Thesis, awarded as Best Italian thesis in AI 2009/2010
Stefano Bragaglia MSc Thesis, awarded as Best Italian thesis in AI 2009/2010Stefano Bragaglia MSc Thesis, awarded as Best Italian thesis in AI 2009/2010
Stefano Bragaglia MSc Thesis, awarded as Best Italian thesis in AI 2009/2010
 
Definizione e sviluppo di un algoritmo genetico multiobiettivo per problemi d...
Definizione e sviluppo di un algoritmo genetico multiobiettivo per problemi d...Definizione e sviluppo di un algoritmo genetico multiobiettivo per problemi d...
Definizione e sviluppo di un algoritmo genetico multiobiettivo per problemi d...
 

Recently uploaded

Lorenzo D'Emidio_Francesco Petrarca.pptx
Lorenzo D'Emidio_Francesco Petrarca.pptxLorenzo D'Emidio_Francesco Petrarca.pptx
Lorenzo D'Emidio_Francesco Petrarca.pptxlorenzodemidio01
 
Lorenzo D'Emidio_Vita e opere di Aristotele.pptx
Lorenzo D'Emidio_Vita e opere di Aristotele.pptxLorenzo D'Emidio_Vita e opere di Aristotele.pptx
Lorenzo D'Emidio_Vita e opere di Aristotele.pptxlorenzodemidio01
 
Lorenzo D'Emidio- Lavoro sulla Bioarchittetura.pptx
Lorenzo D'Emidio- Lavoro sulla Bioarchittetura.pptxLorenzo D'Emidio- Lavoro sulla Bioarchittetura.pptx
Lorenzo D'Emidio- Lavoro sulla Bioarchittetura.pptxlorenzodemidio01
 
XI Lezione - Arabo LAR Giath Rammo @ Libera Accademia Romana
XI Lezione - Arabo LAR Giath Rammo @ Libera Accademia RomanaXI Lezione - Arabo LAR Giath Rammo @ Libera Accademia Romana
XI Lezione - Arabo LAR Giath Rammo @ Libera Accademia RomanaStefano Lariccia
 
Lorenzo D'Emidio_Vita di Cristoforo Colombo.pptx
Lorenzo D'Emidio_Vita di Cristoforo Colombo.pptxLorenzo D'Emidio_Vita di Cristoforo Colombo.pptx
Lorenzo D'Emidio_Vita di Cristoforo Colombo.pptxlorenzodemidio01
 
XIII Lezione - Arabo G.Rammo @ Libera Accademia Romana
XIII Lezione - Arabo G.Rammo @ Libera Accademia RomanaXIII Lezione - Arabo G.Rammo @ Libera Accademia Romana
XIII Lezione - Arabo G.Rammo @ Libera Accademia RomanaStefano Lariccia
 

Recently uploaded (6)

Lorenzo D'Emidio_Francesco Petrarca.pptx
Lorenzo D'Emidio_Francesco Petrarca.pptxLorenzo D'Emidio_Francesco Petrarca.pptx
Lorenzo D'Emidio_Francesco Petrarca.pptx
 
Lorenzo D'Emidio_Vita e opere di Aristotele.pptx
Lorenzo D'Emidio_Vita e opere di Aristotele.pptxLorenzo D'Emidio_Vita e opere di Aristotele.pptx
Lorenzo D'Emidio_Vita e opere di Aristotele.pptx
 
Lorenzo D'Emidio- Lavoro sulla Bioarchittetura.pptx
Lorenzo D'Emidio- Lavoro sulla Bioarchittetura.pptxLorenzo D'Emidio- Lavoro sulla Bioarchittetura.pptx
Lorenzo D'Emidio- Lavoro sulla Bioarchittetura.pptx
 
XI Lezione - Arabo LAR Giath Rammo @ Libera Accademia Romana
XI Lezione - Arabo LAR Giath Rammo @ Libera Accademia RomanaXI Lezione - Arabo LAR Giath Rammo @ Libera Accademia Romana
XI Lezione - Arabo LAR Giath Rammo @ Libera Accademia Romana
 
Lorenzo D'Emidio_Vita di Cristoforo Colombo.pptx
Lorenzo D'Emidio_Vita di Cristoforo Colombo.pptxLorenzo D'Emidio_Vita di Cristoforo Colombo.pptx
Lorenzo D'Emidio_Vita di Cristoforo Colombo.pptx
 
XIII Lezione - Arabo G.Rammo @ Libera Accademia Romana
XIII Lezione - Arabo G.Rammo @ Libera Accademia RomanaXIII Lezione - Arabo G.Rammo @ Libera Accademia Romana
XIII Lezione - Arabo G.Rammo @ Libera Accademia Romana
 

Extended Summary of “Exploring the Evolution of GANs through Quality Diversity”

  • 1. UNIVERSITÀ DEGLI STUDI DI TRIESTE Dipartimento di Ingegneria e Architettura Corso di Studi in Ingegneria Elettronica e Informatica Extended Summary of “Exploring the Evolution of GANs through Quality Diversity” Tesi di Laurea Triennale A.A. 2022-2023 Laureando Relatore Stefano Chen prof. Andrea De Lorenzo
  • 2. Indice 1. Introduzione 2 2. Background 2 2.1 GAN 2 2.2 FID 3 3. Modello Proposto 3 3.1 COEGAN 3 3.2 COEGAN+NSLC 4 4. Esperimento 6 4.1 Setup 6 4.2 MNIST 7 4.3 CelebA 9 5. Conclusione 10 6. Bibliografia 11 1
  • 3. Introduzione Generative Adversarial Network (GAN) [2] è un modello di deep learning, che negli ultimi anni ha ottenuto ottimi risultati nel campo dell'image generation. Nonostante i risultati convincenti, la fase di training di un GAN è molto complessa ed è affetta da problemi, come il vanishing gradient e il model collapse, che possono rendere il modello inutilizzabile. L’articolo in questione [1], propone un nuovo modello che sia in grado di produrre risultati migliori e meno affetti dai problemi sopracitati. Background GAN Il modello GAN si compone di due reti neurali artificiali (ANN): il Generatore e il Discriminatore. Il Generatore è addestrato per generare campioni di dati sintetici, tipicamente immagini, che mirano a ingannare il Discriminatore, mentre il Discriminatore è addestrato per distinguere tra campioni reali e quelli prodotti dal Generatore. La fase di training del GAN è caratterizzata da un'interazione competitiva tra queste due reti, dove il miglioramento delle prestazioni di una rete può influenzare negativamente le prestazioni dell'altra. Questo processo di competizione spinge il Generatore e il Discriminatore a migliorarsi a vicenda. Durante il processo di training, la disparità tra le prestazioni delle due ANN può causare problemi come il vanishing gradient [3] e il model collapse [4]. Il vanishing gradient si manifesta quando il Discriminatore raggiunge una performance ottimale, causando una stagnazione nel processo di training del Generatore. Di conseguenza, il Generatore potrebbe faticare ad imparare a generare immagini realistiche. Il model collapse si verifica quando il Generatore impara solo a generare una piccola frazione delle caratteristiche presenti nei dati di input, portando a una riduzione della varietà delle immagini generate. Questo può comportare l'emergere di immagini ripetitive e poco diversificate. 2
  • 4. FID Per misurare le prestazioni del Generatore, solitamente si utilizza la Fréchet Inception Distance (FID) [5], perché in grado di misurare la qualità e la diversità del modello. La metrica FID usa la rete neurale Inception Net per convertire un’immagine in un vettore di features che viene interpretato come una Gaussiana multivariata continua. Questo processo viene applicato sia alle immagini generate sia a quelle appartenenti al dataset in input. La distanza FID è definita come: dove e sono rispettivamente la media e la covarianza della Gaussiana del μ𝑥 , Σ𝑥 , μ𝑔 Σ𝑔 dataset in input e dell’immagine generata . 𝑥 𝑔 Modello Proposto Negli ultimi anni, l’impiego di algoritmi evolutivi per allenare ed evolvere i GAN ha suscitato crescente interesse. Questa prospettiva offre un insieme variegato di strategie che mirano non solo a superare le problematiche sopracitate, ma anche a migliorare significativamente la qualità dei campioni generati. Seguendo questo approccio, l’articolo in questione [1] propone un nuovo modello di Neuroevoluzione che unisce i concetti di Coevolutionary GAN (COEGAN) [6] e Novelty Search with Local Competition (NSLC) [7]. COEGAN COEGAN è un modello che adotta l'approccio combinato di neuroevoluzione e coevoluzione al fine di fornire un metodo di addestramento più stabile per le reti neurali coinvolte nel GAN. In COEGAN, ciascuna ANN è rappresentata da un genoma (un vettore di geni). All'interno di ciascun gene, sono codificate informazioni cruciali riguardanti il tipo di layer (lineare, convoluzione o deconvoluzione), la funzione di attivazione e il numero di canali di output.Questo schema genoma-gene consente di rappresentare in modo completo e specifico la struttura delle reti neurali coinvolte. Il Generatore è vincolato all'uso di soli layer lineari e di deconvoluzione (transpose convolution), mentre il Discriminatore può utilizzare esclusivamente layer lineari e di convoluzione. Questo vincolo assicura coerenza strutturale e funzionale delle reti neurali coinvolte, rendendole adatte alle rispettive funzioni. 3
  • 5. Nella fase iniziale del COEGAN, vengono create due sottopopolazioni, una per i generatori e una per i discriminatori. Ogni individuo rappresenta una configurazione unica dell'ANN, determinata dai geni nel suo genoma. Il processo di training di un COEGAN è composto da 4 fasi: - Valutazione: Ogni sottopopolazione è suddivisa in specie attraverso una funzione di similarità che confronta i genomi di due individui. Questo meccanismo garantisce che ogni individuo recentemente modificato venga addestrato per un numero adeguato di generazioni prima di essere confrontato con individui più anziani in base al fitness score. Si adotta un approccio "all vs. all", in cui ogni generatore è accoppiato con ogni discriminatore per l'ordinario algoritmo di addestramento. Alla conclusione dell'addestramento, ciascun individuo viene valutato attraverso una fitness function. La fitness function per i discriminatori è associata alla loro loss function, mentre per i generatori è misurata dalla FID. - Crossover: Per ciascuna sottopopolazione, si procede con la selezione degli individui migliori (genitori) in base al loro fitness score, privilegiando il crossover (incrocio) delle soluzioni più promettenti. I pesi delle reti neurali dei genitori vengono trasferiti ai figli, quando possibile. Questo meccanismo garantisce il mantenimento delle informazioni apprese nella generazione precedente, contribuendo alla conservazione delle caratteristiche positive delle soluzioni precedenti. - Mutazione: Ogni figlio può essere soggetto a mutazioni di aggiunta, di rimozione o di modifica dei geni. L'aggiunta introduce nuovi geni nel genoma, la rimozione elimina casualmente geni esistenti e la modifica altera i parametri di un gene (funzione di attivazione o il numero di canali di output). - Sostituzione: I nuovi individui generati costituiscono la nuova popolazione, rimpiazzando gli individui della generazione precedente, al fine di promuovere un'evoluzione continua delle soluzioni. L'algoritmo si ripete per un numero prefissato di generazioni. COEGAN+NSLC I Quality Diversity Algorithms (QD) costituiscono una categoria di Evolutionary Algorithms (EA) orientati all'identificazione di una gamma diversificata di soluzioni a un determinato problema. Un esempio concreto di tale categoria è rappresentato da Novelty Search with Local Competition (NSLC), un QD che incorpora il concetto di "neighborhood" (vicinato) e sfutta il Nondominated Sorting Genetic Algorithm II (NSGA-II) [8], un algoritmo evolutivo multi-obiettivo (MOEA). L'obiettivo primario di NSLC è quello di promuovere simultaneamente sia la qualità che la diversità delle soluzioni. Nel contesto dell'articolo [1], è 4
  • 6. stato proposto un nuovo modello denominato COEGAN+NSLC, nel quale NSLC viene integrato con COEGAN. Tale integrazione conserva elementi distintivi di COEGAN, quali la struttura genoma-gene e le operazioni di mutazione. L'integrazione di NSLC all'interno di COEGAN ha comportato modifiche rilevanti nel processo di training. Data l'adozione di un approccio elitarista da parte di NSGA-II nella selezione degli individui per la formazione della nuova generazione, si è optato per un'approccio "all vs. all" che coinvolge sia l'attuale popolazione di individui sia la prole generata. In questa configurazione, i generatori e discriminatori della popolazione corrente (genitori) vengono anche accoppiati con i generatori e discriminatori della popolazione derivata (figli), nell'ambito dell'ordinario algoritmo di addestramento. Questo approccio mira a generare individui di alta qualità e diversità, sebbene ciò comporti un raddoppio del numero di individui da valutare, con conseguente aumento dei costi computazionali dell'algoritmo. Il processo di selezione degli individui per il crossover (genitori), avviene tramite un Tournament (Torneo) tra gli individui di un neighborhood (vicinato) in base al loro domination score, innovation score e competition score. L'elemento cardine dell'algoritmo NSLC è la definizione del concetto di neighborhood. Al fine di determinare i vicini di ciascun individuo, viene considerata la distanza tra le architetture delle ANN dei singoli individui, distanza che è direttamente definita dalla somiglianza tra i genomi. Nell'algoritmo NSLC, vengono selezionati vicini di un individuo al fine di calcolare 𝑛 innovation score e competition score. L'innovazione è definita dalla distanza media tra l'individuo e il suo vicinato. La competizione è definito dal numero di vicini che l'individuo supera in termini di fitness score. 5
  • 7. Esperimento Al fine di condurre una valutazione accurata dell'efficacia del modello proposto, sono state eseguite una serie di analisi sperimentali coinvolgendo due dataset di notevole rilevanza: il MNIST dataset e il CelebA dataset. All'interno di tali esperimenti, è stata inclusa una variante di COEGAN+NSLC che si differenzia per l'adozione di un meccanismo di competizione globale. In questa specifica configurazione, il concetto di "vicinato" non è limitato da una costante " ". 𝑛 Questa variante è stata denominata COEGAN+NSGC. SETUP La tabella sopra riportata illustra i parametri utilizzati nelle sperimentazioni. Il numero di generazioni è stato fissato a 50, e ciascuna sottopopolazione è composta da 10 individui. Le probabilità di applicare una mutazione di aggiunta, rimozione o modifica sono rispettivamente del 30%, 10% e 10%. Il Genome Limit specifica il massimo numero di layer (o geni) consentiti per ciascun individuo. È importante notare che COEGAN+NSGC non è soggetta al vincolo “Neighborhood size”. 6
  • 8. MNIST Di seguito vengono presentati i risultati dell’esperimento condotto sul MNIST dataset. Il grafico soprastante presenta il FID score dei migliori individui per ogni generazione. L'analisi dei dati evidenzia che la soluzione COEGAN+NSLC supera marginalmente il modello COEGAN fino alla metà delle generazioni, per poi raggiungere una performance equivalente. Questo fenomeno è principalmente riconducibile all'aumentata capacità di esplorazione offerta dall'algoritmo QD, il quale porta a una popolazione più diversificata ma comporta una minore evoluzione mirata degli individui più idonei. È importante notare che il modello COEGAN+NSGC mostra un andamento stabile e una performance finale significativamente migliore rispetto agli altri modelli. 7
  • 9. Nelle figure sottostanti sono riportati i numeri di campioni utilizzati nel training dei migliori generatori e discriminatori. Il grafico a sinistra si riferisce al miglior generatore, mentre quello a destra mostra il miglior discriminatore. Questi risultati evidenziano che, nonostante COEGAN+NSLC ottenga una performance equiparabile a COEGAN in termini di FID score; COEGAN+NSLC e la sua variante globale richiedono notevolmente meno training samples rispetto a COEGAN. Al fine di evidenziare la qualità e la diversità ottenuta dal modello proposto, viene presentata nella figura sottostante, la distribuzione dei campioni prodotti dal miglior generatore durante la fase di training. 8
  • 10. La figura (a) rappresenta la distribuzione del MNIST dataset, ovvero la varietà dei campioni utilizzati per il training. Nella fase iniziale (Figura b), i campioni generati presentano scarsa somiglianza con le immagini del MNIST e mostrano una bassa diversità (alto numero di overlapped samples). Nella generazione 10, rappresentata nella figura (c), la distribuzione dei campioni inizia a somigliare di più a quella rappresentata nella figura (a), anche se sono ancora presenti alcune carenze in termini di qualità. La figura (d) mostra i campioni generati dopo l'intero processo evolutivo. Questi campioni mostrano un significativo miglioramento sia in termini di qualità che di diversità, con solo 1077 campioni sovrapposti, in contrasto con i 1121 presenti nel MNIST. CelebA Per valutare l'efficacia del modello nella generazione di immagini complesse, è stato condotto un esperimento utilizzando il CelebA dataset. In questo contesto, sono stati confrontati due modelli: COEGAN+NSGC e DCGAN (un GAN tradizionale che fa uso di layer di convoluzione e deconvoluzione) [9]. I risultati del processo di training sono presentati di seguito. La figura (a) mostra immagini caratterizzate da una qualità scadente e dalla presenza di rumore. D'altra parte, a destra, sono presentate immagini più nitide, sebbene non siano perfette. Per comprendere le ragioni di questa notevole discrepanza di qualità, dobbiamo esaminare la fase di addestramento dei modelli coinvolti. 9
  • 11. La figura sopra riportata evidenzia l'andamento del FID score durante la fase di training. È possibile osservare una progressione costante del FID score nell'approccio COEGAN+NSGC, che si conclude con una performance notevolmente migliore rispetto al DCGAN. Nel DCGAN, al contrario, il punteggio FID varia significativamente durante il processo di addestramento, mostrando picchi dovuti principalmente a problemi di stabilità (model collapse), che ha portato alla generazione di immagini affette da rumore. Questi risultati indicano che il modello proposto possiede una maggiore stabilità e una minore suscettibilità alle problematiche tipiche dei GAN tradizionali. Conclusione I risultati sperimentali evidenziano come l’integrazione degli algoritmi QD abbia significativamente migliorato la diversità e la qualità dei campioni generati. Gli esperimenti con la competizione globale dimostrano che è sempre possibile superare i risultati ottenuti dall’approccio COEGAN, sia in termini di qualità delle immagini che di training samples. L'esperimento sul CelebA dataset, mette in luce una notevole stabilità nel processo di training del modello proposto, in contrasto con quanto osservato nei GAN tradizionali. Tale stabilità ha permesso di evitare problematiche come il model collapse e il vanishing gradient. In conclusione, il modello proposto rappresenta una solida alternativa ai GAN tradizionali, sebbene ci sia ancora margine di miglioramento. 10
  • 12. Bibliografia [1] Costa, V., Lourenço, N., Correia, J., & Machado, P. (2020, June). Exploring the evolution of GANs through quality diversity. In Proceedings of the 2020 Genetic and Evolutionary Computation Conference [2] Ian Goodfellow, Jean Pouget-Abadie, Mehdi Mirza, Bing Xu, David Warde-Farley, Sherjil Ozair, Aaron Courville, and Yoshua Bengio. 2014. Generative Adversarial Nets. In Advances in Neural Information Processing Systems. 2672–2680. [3] Andrew Brock, Jeff Donahue, and Karen Simonyan. 2019. Large Scale GAN Training for High Fidelity Natural Image Synthesis.In 7th International Conference on Learning Representations, ICLR 2019, New Orleans, LA, USA, May 6-9, 2019. [4] William Fedus, Mihaela Rosca, Balaji Lakshminarayanan, Andrew M Dai, Shakir Mohamed, and Ian Goodfellow. 2018. Many paths to equilibrium: GANs do not need to decrease a divergence at every step. In 6th International Conference on Learning Representations, ICLR 2018, Vancouver, BC, Canada, April 30 - May 3, 2018, Conference Track Proceedings. [5] Yu, Yu, Weibin Zhang, and Yun Deng. "Frechet inception distance (fid) for evaluating gans." China University of Mining Technology Beijing Graduate School: Beijing, China (2021). [6] Costa, Victor, Nuno Lourenço, João Correia, and Penousal Machado. "Coegan: evaluating the coevolution effect in generative adversarial networks." In Proceedings of the genetic and evolutionary computation conference, pp. 374-382. 2019. [7] Joel Lehman and Kenneth O Stanley. 2011. Evolving a diversity of virtual creatures through novelty search and local competition. In Proceedings of the 13th Annual Conference on Genetic and Evolutionary Computation. 211–218. [8] Kalyanmoy Deb, Amrit Pratap, Sameer Agarwal, and TAMT Meyarivan. 2002. A fast and elitist multiobjective genetic algorithm:NSGA-II. IEEE Transactions on Evolutionary Computation 6,2 (2002), 182–197. [9] Alec Radford, Luke Metz, and Soumith Chintala. 2015. Unsupervised representation learning with deep convolutional generative adversarial networks. arXiv preprint arXiv:1511.06434 (2015). 11