Utente:PoliFL/Sandbox
Nel campo dell'apprendimento automatico, si definisce rete antagonista generativa, o in inglese generative adversarial network (GAN), una classe di metodi, introdotta per la prima volta da Ian Goodfellow[1], in cui due reti neurali vengono addestrate in maniera competitiva all'interno di un framework di gioco minimax. Questo tipo di framework permette alla rete neurale di apprendere come generare nuovi dati aventi la stessa distribuzione dei dati usati in fase di addestramento. Ad esempio, è possibile ottenere una rete neurale in grado di generare volti umani iperrealistici[2], come dimostrato nel 2018 da NVIDIA Corporation, azienda produttrice di GPU.
Metodo
Nella sua versione originale, una rete antagonista generativa è composta da due componenti: un modello generativo, o generatore , e un modello discriminativo, o discriminatore , entrambi realizzati tramite reti neurali. Lo scopo del modello generativo è quello di produrre nuovi dati, mentre il modello discriminativo apprende come distinguere i dati reali da quelli generati. In particolare, dato uno spazio latente , avente una distribuzione a priori , il generatore rappresenta una funzione differenziabile che fornisce in output i nuovi dati secondo una certa distribuzione , dove sono i parametri del modello generativo. Il discriminatore rappresenta una funzione differenziabile , dove sono i parametri del modello discriminativo, che produce in output la probabilità che provenga dalla distribuzione dei dati di addestramento . Lo scopo è quello di ottenere un generatore che sia un buon stimatore di . Quando questo avviene, il discriminatore viene "ingannato" e non riesce più a distinguere i campioni provenienti da da quelli provenienti da .
La chiave per raggiungere questa situazione è l'addestramento competitivo. la rete discriminativa viene addestrata in modo da massimizzare la probabilità di classificare correttamente i campioni provenienti dai dati di addestramento e i campioni generati.
Allo stesso tempo, la rete generativa viene addestrata minimizzando
- ,
massimizzando quindi la probabilità del discriminatore di considerare i campioni come provenienti da .
L'ottimizzazione consiste quindi in un gioco minimax a due giocatori (D e G):
- ,
che ha un ottimo globale per [1].
Varianti
Negli ultimi anni si è assistito ad un rapido sviluppo di metodi che rappresentano versioni modificate del framework originale.
Rete antagonista generativa condizionale, o cGAN dall'inglese conditional generative adversarial network
Applicazioni
Note
- ^ a b Generative Adversarial Nets (PDF), in Advances in Neural Information Processing Systems 27, Curran Associates, Inc., 2014, pp. 2672–2680. URL consultato il 2 luglio 2019.
- ^ A Style-Based Generator Architecture for Generative Adversarial Networks, in arXiv:1812.04948 [cs, stat], 12 dicembre 2018. URL consultato il 2 luglio 2019.