Ein variational autoencoder (VAE) ist eine Architektur künstlicher neuronaler Netze, die 2013 von Diederik P. Kingma und Max Welling eingeführt wurde. Sie gehört zu den Familien der probabilistischen grafischen Modelle und der variationellen Bayes-Methoden. Neben der Betrachtung als Autoencoder-Neuronennetzarchitektur können variational autoencoder auch im Rahmen der mathematischen Formulierung variationeller Bayes-Methoden untersucht werden, wobei ein neuronales Encoder-Netzwerk über einen probabilistischen latenten Raum (beispielsweise als multivariate Gauß-Verteilung) mit seinem Decoder verbunden wird, der den Parametern einer variationellen Verteilung entspricht.
Der Encoder bildet jeden Punkt (beispielsweise ein Bild) aus einem großen komplexen Datensatz auf eine Verteilung im latenten Raum ab, anstatt auf einen einzelnen Punkt in diesem Raum. Der Decoder hat die entgegengesetzte Funktion, nämlich die Abbildung vom latenten Raum auf den Eingaberaum, wiederum gemäß einer Verteilung (obwohl in der Praxis beim Dekodieren selten Rauschen hinzugefügt wird). Indem ein Punkt auf eine Verteilung statt auf einen einzelnen Punkt abgebildet wird, kann das Netzwerk eine Überanpassung an die Trainingsdaten vermeiden. Beide Netzwerke werden typischerweise gemeinsam mit dem Reparametrisierungstrick trainiert, obwohl die Varianz des Rauschmodells separat gelernt werden kann. Obwohl diese Art von Modell ursprünglich für unüberwachtes Lernen entwickelt wurde, hat sich ihre Wirksamkeit auch für halbüberwachtes Lernen und überwachtes Lernen erwiesen.
Überblick über Architektur und Funktionsweise
Ein variational autoencoder ist ein generatives Modell mit einer Prior- und einer Rauschverteilung. Üblicherweise werden solche Modelle mit dem Expectation-Maximization-Metaalgorithmus trainiert (z. B. probabilistische PCA, Sparse Coding). Ein solches Schema optimiert eine untere Schranke der Datenwahrscheinlichkeit, die rechnerisch meist nicht handhabbar ist, und erfordert dabei die Entdeckung von q-Verteilungen, auch variationelle Posteriori genannt. Diese q-Verteilungen werden normalerweise für jeden einzelnen Datenpunkt in einem separaten Optimierungsprozess parametrisiert. Variational autoencoder verwenden jedoch ein neuronales Netzwerk als amortisierten Ansatz, um gemeinsam über Datenpunkte zu optimieren. Auf diese Weise werden dieselben Parameter für mehrere Datenpunkte wiederverwendet, was zu erheblichen Speichereinsparungen führen kann. Das erste neuronale Netzwerk nimmt die Datenpunkte selbst als Eingabe und gibt Parameter für die variationelle Verteilung aus. Da es von einem bekannten Eingaberaum auf den niedrigdimensionalen latenten Raum abbildet, wird es als Encoder bezeichnet.
Der Decoder ist das zweite neuronale Netzwerk dieses Modells. Er ist eine Funktion, die vom latenten Raum auf den Eingaberaum abbildet, z. B. als Mittelwerte der Rauschverteilung. Es ist möglich, ein weiteres neuronales Netzwerk zu verwenden, das auf die Varianz abbildet, dies kann jedoch zur Vereinfachung weggelassen werden. In einem solchen Fall kann die Varianz mit Gradientenabstieg optimiert werden.
Um dieses Modell zu optimieren, müssen zwei Terme bekannt sein: der „Rekonstruktionsfehler“ und die Kullback-Leibler-Divergenz (KL-D). Beide Terme werden aus dem Freie-Energie-Ausdruck des probabilistischen Modells abgeleitet und unterscheiden sich daher je nach Rauschverteilung und angenommenem Prior der Daten, hier als p-Verteilung bezeichnet. Beispielsweise wird bei einer Standard-VAE-Aufgabe wie IMAGENET typischerweise eine gaußverteilte Rauschverteilung angenommen; Aufgaben wie binarisiertes MNIST erfordern jedoch ein Bernoulli-Rauschen. Die KL-D aus dem Freie-Energie-Ausdruck maximiert die Wahrscheinlichkeitsmasse der q-Verteilung, die mit der p-Verteilung überlappt, was leider zu modus-suchendem Verhalten führen kann. Der „Rekonstruktions“-Term ist der Rest des Freie-Energie-Ausdrucks und erfordert eine Stichprobenapproximation, um seinen Erwartungswert zu berechnen.
Neuere Ansätze ersetzen die Kullback-Leibler-Divergenz (KL-D) durch verschiedene statistische Distanzen, siehe „Statistische Distanz-VAE-Varianten“ unten.
Formulierung
Aus Sicht der probabilistischen Modellierung möchte man die Wahrscheinlichkeit der Daten \(x\) durch ihre gewählte parametrisierte Wahrscheinlichkeitsverteilung \(p_\theta(x)=p(x|\theta)\) maximieren. Diese Verteilung wird üblicherweise als Gauß-Verteilung \(N(x|\mu,\sigma)\) gewählt, die durch \(\mu\) bzw. \(\sigma\) parametrisiert ist, und als Mitglied der Exponentialfamilie ist sie als Rauschverteilung leicht zu handhaben. Einfache Verteilungen sind leicht zu maximieren, jedoch führen Verteilungen, bei denen ein Prior über die latenten Variablen \(z\) angenommen wird, zu nicht handhabbaren Integralen. Finden wir \(p_\theta(x)\) durch Marginalisierung über \(z\).
\(p_\theta(x) = \int_z p_\theta({x,z}) \, dz,\)
wobei \(p_\theta({x,z})\) die gemeinsame Verteilung unter \(p_\theta\) der beobachtbaren Daten \(x\) und ihrer latenten Darstellung oder Kodierung \(z\) darstellt. Gemäß der Kettenregel kann die Gleichung umgeschrieben werden als
\(p_\theta(x) = \int_z p_\theta({x|z}) p_\theta(z) \, dz.\)
In der Praxis ist das Integral über \(z\) nicht handhabbar, da der latente Raum hochdimensional ist und die wahre Posteriori \(p_\theta(z|x)\) unbekannt ist. Der VAE führt ein Encoder-Netzwerk \(q_\phi(z|x)\) ein, um die wahre Posteriori zu approximieren, und ein Decoder-Netzwerk \(p_\theta(x|z)\), um die Daten zu rekonstruieren. Das Trainingsziel ist die Evidenz-Untere Schranke (ELBO), die die Summe aus Rekonstruktionsterm und KL-Divergenz-Term ist. Der Reparametrisierungstrick ermöglicht die Rückpropagation durch den Stichprobenprozess, indem \(z\) als \(z = \mu + \sigma \odot \epsilon\) ausgedrückt wird, wobei \(\epsilon\) aus einer Standardnormalverteilung gezogen wird.
Training und Optimierung
Der VAE wird trainiert, indem die ELBO in Bezug auf die Parameter \(\theta\) und \(\phi\) maximiert wird. Der Rekonstruktionsterm ermutigt den Decoder, die Eingabedaten genau zu rekonstruieren, während der KL-Divergenz-Term den latenten Raum regularisiert, um nahe am Prior (typischerweise einer Standardnormalverteilung) zu liegen. Dieses Gleichgewicht hilft, Überanpassung zu vermeiden und ermöglicht die Erzeugung neuer Datenpunkte durch Stichproben aus dem Prior und Dekodieren.
Der Reparametrisierungstrick ist entscheidend für ein effizientes Training mit stochastischem Gradientenabstieg. Indem die Stochastik auf die Rauschvariable \(\epsilon\) verlagert wird, können die Gradienten durch die deterministischen Teile des Netzwerks fließen. Die Varianz des Rauschmodells kann separat gelernt werden, und der Rekonstruktionsfehler wird häufig mit dem mittleren quadratischen Fehler für kontinuierliche Daten oder der binären Kreuzentropie für binäre Daten berechnet.
Anwendungen und Auswirkungen
Der VAE ist zu einem grundlegenden Modell in Generative AI geworden und ermöglicht Aufgaben wie Bildgenerierung, Anomalieerkennung und Repräsentationslernen. Er wurde auf verschiedene Bereiche erweitert, darunter Deep learning und Machine learning, und hat die Entwicklung anderer generativer Modelle wie Large language models beeinflusst, obwohl diese typischerweise andere Architekturen verwenden. VAEs werden auch in halbüberwachten und überwachten Lernumgebungen eingesetzt, was ihre Vielseitigkeit über das unüberwachte Lernen hinaus zeigt.
Das ursprüngliche Papier von Kingma und Welling war äußerst einflussreich, und das VAE-Framework wurde auf zahlreiche Weise angepasst, beispielsweise durch die Verwendung verschiedener statistischer Distanzen anstelle der KL-Divergenz, um Moduskollaps zu adressieren. Die Fähigkeit des Modells, glatte latente Räume zu lernen, hat es für Interpolation und Manipulation von Datenattributen nützlich gemacht.
Varianten und Erweiterungen
Es wurden mehrere Varianten von VAEs vorgeschlagen, um ihre Leistung zu verbessern. Beispielsweise führt der Beta-VAE einen Gewichtungsfaktor für den KL-Divergenz-Term ein, um stärker entwirrte Repräsentationen zu fördern. Andere Varianten verwenden andere Priors, wie Gaußsche Mischmodelle, oder setzen adversariales Training ein, um die Realitätsnähe generierter Stichproben zu verbessern. Der Reparametrisierungstrick wurde auch auf andere Verteilungen verallgemeinert, wie kategoriale Variablen, unter Verwendung der Gumbel-Softmax-Approximation.
Im Kontext von Artificial intelligence werden VAEs oft mit generativen adversarialen Netzwerken (GANs) verglichen, einer weiteren Klasse generativer Modelle. Während GANs schärfere Bilder erzeugen können, sind VAEs tendenziell stabiler zu trainieren und bieten einen probabilistischen Rahmen, der für Unsicherheitsschätzung nützlich ist. Ab den frühen 2020er Jahren bleiben VAEs ein aktives Forschungsgebiet mit Anwendungen im Neural network-Design und darüber hinaus.