Hintergrund: Was ist ein generatives Modell?

Was bedeutet „Generative“ im Namen „Generative Adversarial Network“? „Generativ“ beschreibt eine Klasse statistischer Modelle, die im Gegensatz zu diskriminativen Modellen steht.

Informell:

  • Generative Modelle können neue Dateninstanzen generieren.
  • Diskriminative Modelle unterscheiden zwischen verschiedenen Arten von Dateninstanzen.

Ein generatives Modell kann neue Fotos von Tieren generieren, die wie echte Tiere aussehen, während ein diskriminatives Modell einen Hund von einer Katze unterscheiden kann. GANs sind nur eine Art generatives Modell.

Formeller ausgedrückt: Für eine Reihe von Dateninstanzen X und eine Reihe von Labels Y gilt:

  • Generative Modelle erfassen die gemeinsame Wahrscheinlichkeit p(X, Y) oder nur p(X), wenn keine Labels vorhanden sind.
  • Diskriminative Modelle erfassen die bedingte Wahrscheinlichkeit p(Y | X).

Ein generatives Modell enthält die Verteilung der Daten selbst und gibt an, wie wahrscheinlich ein bestimmtes Beispiel ist. Modelle, die beispielsweise das nächste Wort in einer Sequenz vorhersagen, sind in der Regel generative Modelle (in der Regel viel einfacher als GANs), da sie einer Wortsequenz eine Wahrscheinlichkeit zuweisen können.

Ein diskriminatives Modell ignoriert die Frage, ob eine bestimmte Instanz wahrscheinlich ist, und gibt nur an, wie wahrscheinlich es ist, dass ein Label auf die Instanz angewendet wird.

Hinweis: Dies ist eine sehr allgemeine Definition. Es gibt viele Arten von generativen Modellen. GANs sind nur eine Art generatives Modell.

Wahrscheinlichkeiten modellieren

Bei keiner der beiden Modellarten muss eine Zahl zurückgegeben werden, die eine Wahrscheinlichkeit darstellt. Sie können die Verteilung der Daten modellieren, indem Sie diese Verteilung nachahmen.

Ein diskriminierender Klassifikator wie ein Entscheidungsbaum kann beispielsweise eine Instanz labeln, ohne diesem Label eine Wahrscheinlichkeit zuzuweisen. Ein solcher Klassifikator wäre dennoch ein Modell, da die Verteilung aller vorhergesagten Labels die tatsächliche Verteilung der Labels in den Daten simulieren würde.

Ebenso kann ein generatives Modell eine Verteilung modellieren, indem es überzeugende „gefälschte“ Daten generiert, die so aussehen, als wären sie aus dieser Verteilung gezogen.

Generative Modelle sind schwierig

Generative Modelle haben eine schwierigere Aufgabe als analoge diskriminative Modelle. Generative Modelle müssen mehr modellieren.

Ein generatives Modell für Bilder könnte Korrelationen wie „Dinge, die wie Boote aussehen, sind wahrscheinlich in der Nähe von Dingen zu sehen, die wie Wasser aussehen“ und „Augen sind unwahrscheinlich auf der Stirn zu sehen“ erfassen. Dies sind sehr komplizierte Verteilungen.

Ein diskriminatives Modell hingegen kann den Unterschied zwischen „Segelboot“ und „kein Segelboot“ lernen, indem es nur nach wenigen typischen Mustern sucht. Es könnte viele der Korrelationen ignorieren, die das generative Modell richtig bestimmen muss.

Diskriminative Modelle versuchen, Grenzen im Datenraum zu ziehen, während generative Modelle versuchen, die Platzierung von Daten im gesamten Raum zu modellieren. Das folgende Diagramm zeigt beispielsweise diskriminative und generative Modelle für handgeschriebene Ziffern:

Zwei Grafiken, eine mit der Bezeichnung „Diskriminatives Modell“ und die andere mit der Bezeichnung „Generatives Modell“. Beide Grafiken zeigen dieselben vier Datenpunkte. Jeder Punkt ist mit dem Bild der handgeschriebenen Ziffer gekennzeichnet, die er darstellt. Im diskriminativen Diagramm trennt eine gepunktete Linie zwei Datenpunkte von den verbleibenden beiden. Die Region über der gepunkteten Linie ist mit „y=0“ und die Region unter der Linie mit „y=1“ gekennzeichnet. Im generativen Graphen werden um die beiden Punktepaare zwei gepunktete Kreise gezeichnet. Der obere Kreis ist mit „y=0“ und der untere Kreis mit „y=1

Abbildung 1: Diskriminative und generative Modelle für handschriftliche Ziffern

Das diskriminative Modell versucht, zwischen handgeschriebenen Nullen und Einsen zu unterscheiden, indem es eine Linie im Datenraum zieht. Wenn die Linie richtig ist, kann es Nullen von Einsen unterscheiden, ohne genau modellieren zu müssen, wo sich die Instanzen im Datenraum auf beiden Seiten der Linie befinden.

Das generative Modell hingegen versucht, überzeugende Einsen und Nullen zu generieren, indem es Ziffern generiert, die nah an ihren realen Gegenstücken im Datenraum liegen. Es muss die Verteilung im gesamten Datenraum modellieren.

GANs bieten eine effektive Möglichkeit, solche umfangreichen Modelle so zu trainieren, dass sie einer realen Verteilung ähneln. Um zu verstehen, wie sie funktionieren, müssen wir die grundlegende Struktur eines GAN verstehen.

Wissenstest: Generative und diskriminative Modelle

Sie haben die IQ-Werte von 1.000 Personen. Sie modellieren die Verteilung der IQ-Werte mit dem folgenden Verfahren:
  1. Würfeln Sie dreimal mit einem Sechs-Seiten-Würfel.
  2. Multiplizieren Sie die Rolle mit einer Konstante w.
  3. Wiederholen Sie diesen Vorgang 100 Mal und berechnen Sie den Durchschnitt aller Ergebnisse.
Sie versuchen verschiedene Werte für w, bis das Ergebnis Ihrer Methode dem Durchschnitt der tatsächlichen IQ-Werte entspricht. Ist Ihr Modell ein generatives oder ein diskriminatives Modell?
Generatives Modell
Richtig: Mit jedem Wurf generieren Sie den IQ einer imaginären Person. Außerdem berücksichtigt Ihr generatives Modell die Tatsache, dass IQ-Werte normal verteilt sind (d. h. nach einer Glockenkurve).
Diskriminatives Modell
Falsch: Ein analoges diskriminatives Modell würde versuchen, zwischen verschiedenen Arten von IQ-Werten zu unterscheiden. Ein diskriminierendes Modell könnte beispielsweise versuchen, einen IQ als echt oder gefälscht zu klassifizieren.
Nicht genügend Informationen vorhanden.
Dieses Modell entspricht tatsächlich der Definition einer unserer beiden Modellarten.
Ein Modell gibt eine Wahrscheinlichkeit zurück, wenn Sie ihm eine Dateninstanz übergeben. Ist dieses Modell ein generatives oder ein diskriminatives Modell?
Generatives Modell
Mit einem generativen Modell lässt sich die Wahrscheinlichkeit der Instanz und auch die Wahrscheinlichkeit eines Klassenlabels schätzen.
Diskriminatives Modell
Mit einem diskriminativen Modell lässt sich die Wahrscheinlichkeit schätzen, dass eine Instanz zu einer Klasse gehört.
Nicht genügend Informationen vorhanden.
Sowohl generative als auch diskriminative Modelle können Wahrscheinlichkeiten schätzen (müssen es aber nicht).