Background: Cos’è un modello generativo?

Cosa significa “generativo” nel nome “Generative Adversarial Network”? “Generativo” descrive una classe di modelli statistici che contrasta con i modelli discriminativi.

Informalmente:

  • I modelli generativi possono generare nuove istanze di dati.
  • I modelli discriminativi discriminano tra diversi tipi di dati.

Un modello generativo potrebbe generare nuove foto di animali che assomigliano ad animali reali, mentre un modello discriminativo potrebbe distinguere un cane da un gatto. Le GAN sono solo un tipo di modello generativo.

Più formalmente, dato un insieme di istanze di dati X e un insieme di etichette Y:

  • I modelli generativi catturano la probabilità congiunta p(X, Y), o solop(X) se non ci sono etichette.
  • I modelli discriminativi catturano la probabilità condizionata p(Y | X).

Un modello generativo include la distribuzione dei dati stessi, e vi dice quanto è probabile un dato esempio. Per esempio, i modelli che predicono la parola successiva in una sequenza sono tipicamente modelli generativi (di solito molto più semplici delle GAN) perché possono assegnare una probabilità a una sequenza di parole.

Un modello discriminativo ignora la questione se una data istanza è probabile, e vi dice solo quanto è probabile che un’etichetta sia applicata all’istanza.

Nota che questa è una definizione molto generale. Ci sono molti tipi di modelli generativi. Le GAN sono solo un tipo di modello generativo.

Modellare le probabilità

Nessuno dei due tipi di modello deve restituire un numero che rappresenta una probabilità. Potete modellare la distribuzione dei dati imitando quella distribuzione.

Per esempio, un classificatore discriminativo come un albero decisionale può etichettare un’istanza senza assegnare una probabilità a quell’etichetta. Tale classificatore sarebbe ancora un modello perché la distribuzione di tutte le etichette predette modellerebbe la reale distribuzione delle etichette nei dati.

Similmente, un modello generativo può modellare una distribuzione producendo dati “falsi” convincenti che sembrano essere tratti da quella distribuzione.

Generative Models Are Hard

I modelli generativi affrontano un compito più difficile degli analoghi modelli discriminativi. I modelli generativi devono modellare di più.

Un modello generativo per immagini potrebbe catturare correlazioni come “le cose che sembrano barche probabilmente appariranno vicino a cose che sembrano acqua” e “è improbabile che gli occhi appaiano sulla fronte”. Queste sono distribuzioni molto complicate.

Al contrario, un modello discriminativo potrebbe imparare la differenza tra “barca a vela” o “non barca a vela” cercando solo alcuni modelli rivelatori. Potrebbe ignorare molte delle correlazioni che il modello generativo deve azzeccare.

I modelli discriminativi cercano di tracciare i confini nello spazio dei dati, mentre i modelli generativi cercano di modellare come i dati sono collocati nello spazio. Per esempio, il seguente diagramma mostra modelli discriminativi e generativi di cifre scritte a mano:

Due grafici, uno etichettato come 'Modello Discriminativo' e l'altro come 'Modello Generativo'. Entrambi i grafici mostrano gli stessi quattro punti dati. Ogni punto è etichettato con l'immagine della cifra scritta a mano che rappresenta. Nel grafico discriminativo c'è una linea tratteggiata che separa due punti dati dagli altri due. La regione sopra la linea tratteggiata è etichettata 'y=0' e la regione sotto la linea è etichettata 'y=1'. Nel grafico generativo due cerchi con linea tratteggiata sono disegnati intorno alle due coppie di punti. Il cerchio superiore è etichettato 'y=0' e quello inferiore 'y=1

Figura 1: Modelli discriminativi e generativi di cifre scritte a mano.

Il modello discriminativo cerca di distinguere gli 0 e gli 1 scritti a mano disegnando una linea nello spazio dei dati. Se ottiene la linea giusta, può distinguere gli 0 dagli 1 senza dover modellare esattamente dove le istanze sono posizionate nello spazio dei dati su entrambi i lati della linea.

Al contrario, il modello generativo cerca di produrre 1 e 0 convincenti generando cifre che si avvicinano alle loro controparti reali nello spazio dei dati. Deve modellare la distribuzione in tutto lo spazio dei dati.

Le GAN offrono un modo efficace per addestrare modelli così ricchi da assomigliare a una distribuzione reale. Per capire come funzionano abbiamo bisogno di capire la struttura di base di una GAN.

Verifica la tua comprensione: Modelli generativi vs. modelli discriminativi

Avete i punteggi del QI di 1000 persone. Modellate la distribuzione dei punteggi del QI con la seguente procedura:

  1. Lancia tre dadi a sei facce.
  2. Moltiplica il lancio per una costante w.
  3. Ripeti 100 volte e prendi la media di tutti i risultati.

Prova diversi valori per w finché il risultato della tua procedura è uguale alla media dei punteggi reali del QI. Il tuo modello è un modello generativo o un modello discriminativo?

Modello generativo
Corretto: con ogni lancio stai effettivamente generando il QI di una persona immaginaria. Inoltre, il tuo modello generativo cattura il fatto che i punteggi del QI sono distribuiti normalmente (cioè, su una curva a campana).

Modello discriminativo
Errato: un analogo modello discriminativo cercherebbe di discriminare tra diversi tipi di punteggi di QI. Per esempio, un modello discriminativo potrebbe cercare di classificare un QI come falso o reale.

Non ci sono abbastanza informazioni per dirlo.
Questo modello corrisponde effettivamente alla definizione di uno dei nostri due tipi di modelli.

Un modello restituisce una probabilità quando gli si dà un’istanza di dati. Questo modello è un modello generativo o un modello discriminativo?
Modello generativo
Un modello generativo può stimare la probabilità dell’istanza e anche la probabilità di un’etichetta di classe.

Modello discriminativo
Un modello discriminativo può stimare la probabilità che un’istanza appartenga a una classe.

Non ci sono abbastanza informazioni per dirlo.
Entrambi i modelli generativi e discriminativi possono stimare le probabilità (ma non devono farlo).

Leave a Reply