Ein variational autoencoder (VAE) ist eine Architektur künstlicher neuronaler Netze, die 2013 von Diederik P. Kingma und Max Welling eingeführt wurde. Er gehört zu den Familien probabilistischer grafischer Modelle und variationaler Bayesscher Methoden. VAEs sind generative Modelle, die lernen, Eingabedaten in einen probabilistischen latenten Raum zu kodieren und Stichproben aus diesem Raum zurück in den ursprünglichen Datenbereich zu dekodieren, was Aufgaben wie Datengenerierung, Denoising und Repräsentationslernen ermöglicht.
Die Architektur besteht aus zwei neuronalen Netzen: einem Encoder und einem Decoder. Der Encoder bildet jeden Datenpunkt (wie ein Bild) aus einem großen komplexen Datensatz auf eine Verteilung im latenten Raum ab, anstatt auf einen einzelnen Punkt. Diese Verteilung ist typischerweise eine multivariate Gauß-Verteilung, parametrisiert durch Erwartungswert und Varianz. Der Decoder übernimmt die umgekehrte Funktion, indem er vom latenten Raum zurück in den Eingaberaum abbildet, wiederum gemäß einer Verteilung, obwohl in der Praxis bei der Dekodierung selten Rauschen hinzugefügt wird. Durch die Abbildung auf eine Verteilung statt auf einen einzelnen Punkt vermeidet das Netzwerk eine Überanpassung an die Trainingsdaten. Beide Netzwerke werden typischerweise gemeinsam mithilfe des Reparametrisierungs-Tricks trainiert, obwohl die Varianz des Rauschmodells separat gelernt werden kann.
Überblick über Architektur und Funktionsweise
Ein variational autoencoder ist ein generatives Modell mit Prior- und Rauschverteilung. Traditionelle Modelle dieser Art werden mit dem Erwartungs-Maximierungs-Meta-Algorithmus trainiert, wie etwa probabilistische PCA oder Sparse-Codierung. Diese Schemata optimieren eine untere Schranke der Datenwahrscheinlichkeit, die normalerweise rechnerisch intractable ist, und erfordern die Entdeckung von q-Verteilungen oder variationalen Posterioris. Diese q-Verteilungen werden normalerweise für jeden einzelnen Datenpunkt in einem separaten Optimierungsprozess parametrisiert.
VAEs verwenden stattdessen ein neuronales Netzwerk als amortisierten Ansatz, um gemeinsam über Datenpunkte zu optimieren. Die gleichen Parameter werden für mehrere Datenpunkte wiederverwendet, was zu massiven Speicherersparnissen führt. Das erste neuronale Netzwerk nimmt Datenpunkte als Eingabe und gibt Parameter für die variationelle Verteilung aus. Da es von einem bekannten Eingaberaum auf den niederdimensionalen latenten Raum abbildet, heißt er als der Encoder. Der Decoder ist die zweite Netzwerkeinkomponente, die vom latenten Raum auf den Eingaberaum abbildet, zum Beispiel als die Mittelwerte der Rauscherteilung. Es ist möglich, ein weiteres neuronales Netzwerk für die Varianz zu verwenden, kann jedoch zur Einfachheit weggelassen werden, mit der Varianz, die durch Gradientenabstieg optimiert wird.
Zur Optimierung des Modells sind zwei Terme erforderlich: der Rekonstruktionsfehler und die Kullback-Leibler-Divergenz. Beide werden aus dem Freie-Energie-Ausdruck des probabilistischen Modells abgeleitet und unterscheiden sich je nach Rauschenverteilung und angenommenem Prior der Daten. Beispielsweise nimmt eine Standard-VAE-Aufgabe wie IMAGENET typischerweise Gauß-Rauschen an, während Aufgaben wie binarisiertes MNIST einen Bernoulli-Rausch erfordern. Der KL-D-Term maximiert die Überlappung der q-Verteilung mit der p-Verteilung, was zu einem Modus-suchendem Verhalten führen und die Wahrscheinlichkeitsmasse reduzieren kann. Der Rekonstruktionsterm ist der Rest des Ausdrucks Freie Energie und erfordert eine approximative Stichproben-Messung, um den Erwartungswert zu berechnen. Neuere Ansätze ersetzen das KL-D durch verschiedenen statistisch Distanzen.
Formulierung
Aus der Perspektive des probabilistischen Modellierung ist das Ziel, die Likelihood der Daten x unter einer gewählten parametrierten Wahrscheinlichkeitsverteilung p_θ(x) = p(x|θ) zu maximieren. Diese Verteilung wird normalerweise als eine Gauß-Verteilung N(x|μ,σ), parametriert durch μ und σ, gewählt, die als Mitglieder der Familie exponentiell einfach zu handhaben ist. Einfache Verteilungen sind leicht zu maximieren, aber Verteilungen mit einem Prior über latente Variablen z führen zu intractable Integralen. Die Likelihood p_θ(x) wird durch das Marginalisieren über z gefunden:
p_θ(x) = ∫ p_θ(x, z) dz,
wobei p_θ(x,z) die joisés Verteilung der beobachtbaren Daten x und der latenten Kodierung z ist. Mit der Kettenregel wird dies zu:
p_θ(x) = ∫ p_θ(x|z) p_θ(z) dz.
Dieses Integral ist in der Regel intractable, so wird variational Inference verwendet. Das Encodernetzwerk approximiert den wahren Posterior p_θ(z|x) mit einer variationalen Verteilung q_φ(z|x), typisch Gauß, wart. Der Decoder modelliert p_θ(x|z). Das Trainingsoptimiert die evidence lower bound (ELBO), die Rekonstruktionsgenauigkeit und Regularisierung Richtung Prior in Einklang bringt.
Die Reparametrisierungs-Trick
Der Reparametrisierungs-Trick ist ist, die VAEs mit Backpropagation zu trainieren. Das Abtastenennausgaben-Verteilung q_φ(z|x) des Encoders ist nicht differenzierbar, was den Gradientenfluss verhindert. Der Trick drückt die latente Variable aus als z = μ + σ ⊙ ε, wobei ε aus einer Standardnormalverteilung N(0,I) Stichstich entnommen wird. Dies trennt das stochastische Teil (ε) von den deterministischen Parametern (μ und σ), sodass Gradienten durch Netz fließen. Der Trick wurde 2013 zusammen mit dem VAE eingeführt und ist Standard im variationalen Deep Learning.
ELBO und Verlustfunktion
Das Trainingsziel ist die evidence lower bound (ELBO), abgeleitet aus dem Freie-Energie-Ausdruck. Die ELBO besteht aus zwei Beteild: dem Rekonstruktionsterm und dem KL Divergenz-Term. Der Rekonstruktionsterm, der E_{q_φ(z|x)}[log p_θ(x|z)] misst, wie gut der Decoder die Eingabedaten aus der latenten Stichprobe rekonstruiert (Wiedergabe). Der KL-Term, D_KL(q_φ(z|x)||p(z)) reguliert den Encoder, indem er Abweichungen vom Prior p(z) Norm bestraft, üblich typische Gauß (Standardprior). Die Gesamtverlust ist die negative ELBO und wird per Gradient Descent minimiert. Der KL-Term fördert eine glatte und kontinuierliche latente Raum, während der Rekonstruktionsterm die Fidelity sucht Fidelity zum Daten.
Anwendungen und Erweiterungen
Obwohl ursprünglich für unüberwachtes Lernen entworfen, erwiesen sich VAEs als effektiv für semisupervised und sind supervised Lernen, Bild-Gewinnung, Anomaleckung, Drug-Discovery, Representation Learning. Varianten sind bedingte VAEs (CVAEs) und Beta-VAEs, die KL-Term gewichten für die abfgefesselte Repräsentation. Neuere Arbeiten, KL-D durch andere Distanzen, um den Moden-Kollaps zu bewältigen und die Stichprobenqualität zu verbessern. VAEs bilden die Grundlage in der Generative AI, zusammen etwa mit Large language model (obwohl sie sich in Architektur und Anwendung unterscheiden).
Verhältnis zu anderen Modellen
VAEs sind Teil der größeren Deep learning Landschaft, die mit neuronalen Netzwerk-Architekturen wie Residual Network (ResNet) und U-Net verwandt sind. Siehe konnatal Beziehungen zu Encoder-Decoder Architecture Modellen und Sequence-to-Sequence (Seq2Seq) Frameworks, wobei VAEs durch den probabilistischen latenten Raum unterschieden. Im Vergleich zu Transformer (architecture)-basierten Modellen aus KI (Artificial intelligence) Systemen wie OpenAIGPT-Serie sind VAEs typischerweise kleiner und auf Kontinuierliche Datentypen verkdot. Forscher in Instituts wie MIT CSAIL und Stanford AI Lab bringen neue Fortschritte VAE-Theorie, wobei Unternehmen wie Google DeepMind und Amazon Web Services die Produktion umsetzen.
Einschränkungen und Zukünftige Richtungen
VAEs weisen oft unscharfe (blurry) Stichproben auf, gemessen an generativen adversarialen Netzwerken GANs, wegen der Gauß-Rauschen-Annahme und der KL-Regularisierung. Kollaps kann auftreten, wenn das Modell nur wenige Modi der Daten Verteilung fokussiert. Neuere Ansätze adressieren dies über hierarchische VAEs, Normal-Normal-ären flows und alternative Divergenz maßnahmen. Bis Mitte der 2020ern Jahre bleibt das VAE aktives Forschungsfeld, mit fortlaufenden Arbeiten in Machine learning und Generative AI zur Verbesserung Sample-Qualität und Skalierbarkeit.