Deep Learning Academy · Lezione

Generatore e discriminatore: il gioco

Due reti in competizione per migliorarsi

Lezione 1 di 413 passaggi

Generatore e discriminatore: il gioco è una lezione Deep Learning Academy gratuita su CoddyKit. Questa è la lezione 1 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Deep Learning Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Deep Learning Academy include 4 lezioni in totale.

Due reti, un solo gioco

Una GAN è composta da due reti neurali che giocano tra loro: una inventa dati falsi e l'altra cerca di smascherarli. È questa rivalità a farle migliorare entrambe. 🎭

Conoscere il generatore

Il generatore parte da rumore casuale e lo trasforma in qualcosa che assomiglia a dati reali, ad esempio un volto falso. Non vede mai direttamente le immagini reali.

Conoscere il discriminatore

Il discriminatore è un giudice. Osserva un campione e restituisce un numero: quanto ritiene probabile che quel campione sia reale anziché falso.

Entra il rumore, esce un'immagine

Si fornisce al generatore un vettore di numeri casuali chiamato vettore latente. Vettori diversi producono output diversi, quindi il rumore diventa il seme della creatività.

z = torch.randn(1, 100)
fake = generator(z)

Un falsario e un detective

Immagini un falsario che produce banconote false e un detective che le individua. Ciascuno spinge l'altro a diventare più preciso. Questo confronto è il cuore di una GAN.

Etichetta reale o falsa

Il discriminatore viene addestrato con le etichette: alle immagini reali viene assegnato 1 e a quelle generate 0. Impara così a distinguere le due categorie con sicurezza.

real_label = 1.0
fake_label = 0.0

L'obiettivo del generatore

Il generatore vince quando il discriminatore etichetta come reali le sue immagini false. Il suo obiettivo è quindi ingannare il giudice, non copiare esattamente una singola immagine.

Adversarial significa contrapposto

I loro obiettivi sono opposti, per questo si parla di adversarial. Il discriminatore vuole avere ragione; il generatore vuole che sbagli.

Migliorare insieme

Quando il discriminatore diventa più esigente, il generatore deve creare falsi migliori per continuare a ingannarlo. Questo ciclo di feedback fa migliorare entrambe le reti nel tempo.

Due optimizer

Poiché i due giocatori hanno obiettivi distinti, ogni rete dispone del proprio optimizer e viene aggiornata al proprio turno durante l'addestramento.

opt_g = torch.optim.Adam(G.parameters())
opt_d = torch.optim.Adam(D.parameters())

L'obiettivo: indistinguibili

Idealmente, l'addestramento termina quando il discriminatore può solo tirare a indovinare, con una probabilità vicina al 50 percento. A quel punto i falsi sono praticamente indistinguibili dai dati reali.

Verifica rapida

Verifichiamo che i ruoli siano chiari.

Riepilogo: il gioco della GAN

Ha conosciuto entrambi i giocatori: un generatore che crea dati dal rumore e un discriminatore che li giudica. La loro rivalità li spinge entrambi a migliorare. 🎉

Gratis per iniziare

Impara Python con un tutor IA — gratis

Scrivi ed esegui vero codice nel tuo browser, ricevi aiuto istantaneo da un tutor IA disponibile 24/7, e riprendi da dove hai lasciato sul web o nell'app.

Corsi
30
Lezioni
120

Domande Frequenti

La lezione «Generatore e discriminatore: il gioco» è gratuita?

Sì — il testo completo di «Generatore e discriminatore: il gioco» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Deep Learning Academy, passa a CoddyKit PRO. Il corso Deep Learning Academy include 4 lezioni in totale.

Cosa imparerò in «Generatore e discriminatore: il gioco»?

Due reti in competizione per migliorarsi Eserciti Deep Learning Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare Deep Learning Academy?

Non è richiesta alcuna esperienza precedente. Deep Learning Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 1 di 4.

Quanto tempo richiede la lezione «Generatore e discriminatore: il gioco»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione Deep Learning Academy?

Sì. Ogni lezione Deep Learning Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Generatore e discriminatore: il gioco
  2. La loss avversaria
  3. Costruire una DCGAN
  4. Mode collapse e tecniche di stabilizzazione
← Torna a Deep Learning Academy