Bakgrund: Vad är en generativ modell?

Vad betyder ”generativ” i namnet ”Generative Adversarial Network”? ”Generativ” beskriver en klass av statistiska modeller som skiljer sig från diskriminerande modeller.

Informellt:

  • Generativa modeller kan generera nya dataincidenter.
  • Diskriminativa modeller skiljer mellan olika typer av datainstanser.

En generativ modell kan generera nya foton av djur som ser ut som riktiga djur, medan en diskriminativ modell kan skilja en hund från en katt. GAN är bara en typ av generativ modell.

Mer formellt sett, givet en uppsättning datainstanser X och en uppsättning etiketter Y:

  • Generativa modeller fångar den gemensamma sannolikheten p(X, Y), eller barap(X) om det inte finns några etiketter.
  • Diskriminativa modeller fångar den betingade sannolikheten p(Y | X).

En generativ modell omfattar själva datafördelningen och talar om hur sannolikt ett givet exempel är. Exempelvis är modeller som förutsäger nästa ord i en sekvens typiskt sett generativa modeller (vanligtvis mycket enklare än GAN:s) eftersom de kan tilldela en sekvens av ord en sannolikhet.

En diskriminativ modell ignorerar frågan om huruvida en viss instans är sannolik, och talar bara om hur troligt det är att en etikett gäller för instansen.

Notera att detta är en mycket allmän definition. Det finns många typer av generativa modeller. GAN är bara en typ av generativ modell.

Modellering av sannolikheter

Ingendera typen av modell behöver returnera ett tal som representerar en sannolikhet. Du kan modellera fördelningen av data genom att imitera denna fördelning.

En diskriminerande klassificerare som en beslutsträd kan t.ex. märka en instans utan att tilldela en sannolikhet till den märkningen. En sådan klassificerare skulle fortfarande vara en modell eftersom fördelningen av alla förutspådda etiketter skulle modellera den verkliga fördelningen av etiketter i data.

På samma sätt kan en generativ modell modellera en fördelning genom att producera övertygande ”falska” data som ser ut att vara hämtade från den fördelningen.

Generativa modeller är svåra

Generativa modeller tar sig an en svårare uppgift än analoga diskriminerande modeller. Generativa modeller måste modellera mer.

En generativ modell för bilder kan fånga upp korrelationer som ”saker som ser ut som båtar kommer förmodligen att dyka upp i närheten av saker som ser ut som vatten” och ”det är osannolikt att ögon dyker upp på pannor”. Detta är mycket komplicerade fördelningar.

En diskriminativ modell kan däremot lära sig skillnaden mellan ”segelbåt” och ”inte segelbåt” genom att bara leta efter några få avslöjande mönster. Den skulle kunna ignorera många av de korrelationer som den generativa modellen måste få rätt.

Diskriminativa modeller försöker dra gränser i datarummet, medan generativa modeller försöker modellera hur data placeras i hela rummet. Följande diagram visar till exempel diskriminerande och generativa modeller av handskrivna siffror:

Två grafer, den ena märkt

Figur 1: Diskriminativa och generativa modeller av handskrivna siffror.

Den diskriminativa modellen försöker skilja mellan handskrivna 0- och 1-siffror genom att dra en linje i datarummet. Om den har rätt linje kan den skilja 0:or från 1:or utan att någonsin behöva modellera exakt var de olika omständigheterna är placerade i datarummet på vardera sidan av linjen.

Däremot försöker den generativa modellen producera övertygande 1:or och 0:or genom att generera siffror som ligger nära deras verkliga motsvarigheter i datarummet. Den måste modellera fördelningen i hela datarummet.

GAN erbjuder ett effektivt sätt att träna sådana rika modeller så att de liknar en verklig fördelning. För att förstå hur de fungerar måste vi förstå den grundläggande strukturen hos en GAN.

Kontrollera din förståelse: Generativa vs. diskriminativa modeller

Du har IQ-poäng för 1000 personer. Du modellerar fördelningen av IQ-poäng med följande procedur:

  1. Rulla tre sexsidiga tärningar.
  2. Multiplicera kastet med en konstant w.
  3. Upprepa 100 gånger och ta genomsnittet av alla resultat.

Du prövar olika värden för w tills resultatet av din procedur är lika med genomsnittet av de verkliga IQ-poängen. Är din modell en generativ modell eller en diskriminativ modell?

Generativ modell
Korrekt: med varje kast genererar du effektivt IQ för en imaginär person. Dessutom fångar din generativa modell det faktum att IQ-poäng fördelas normalt (dvs. på en klockkurva).

Diskriminativ modell
Fel: en analog diskriminativ modell skulle försöka diskriminera mellan olika typer av IQ-poäng. En diskriminerande modell skulle till exempel kunna försöka klassificera en IQ som falsk eller äkta.

Inte tillräckligt med information för att avgöra det.
Denna modell passar faktiskt in på definitionen av en av våra två typer av modeller.

En modell returnerar en sannolikhet när du ger den en datainstans. Är den här modellen en generativ modell eller en diskriminativ modell?
Generativ modell
En generativ modell kan skatta sannolikheten för instansen och även sannolikheten för en klassbeteckning.

Diskriminativ modell
En diskriminativ modell kan skatta sannolikheten för att en instans tillhör en klass.

Inte tillräckligt med information för att avgöra det.
Både generativa och diskriminerande modeller kan skatta sannolikheter (men de behöver inte göra det).

Leave a Reply