Variational autoencoders vae
Probabilistisch comprimeren
Variational Autoencoders (VAE's) zijn een variant van autoencoders die een probabilistische draai geven aan het comprimeren en reconstrueren van data. In plaats van een vaste latente vector te leren, leert een VAE een verdeling over de latente ruimte, meestal een Gaussische verdeling. De encoder voorspelt het gemiddelde en de variantie van deze verdeling. Tijdens de training wordt een punt gesampled uit deze verdeling en naar de decoder gestuurd. Omdat sampling niet differentieerbaar is, wordt de reparameterisatietruc gebruikt: de sample wordt geschreven als gemiddelde plus variantie maal ruis. Hierdoor kan backpropagation worden toegepast. De verliesfunctie bestaat uit twee delen: de reconstructiefout en de Kullback-Leibler (KL) divergentie tussen de geleerde verdeling en een prior (meestal een standaard normaalverdeling). De KL-term regulariseert de latente ruimte, zodat deze continu en gestructureerd is. Hierdoor kan men nieuwe data genereren door te samplen uit de prior en de decoder toe te passen. VAE's worden gebruikt voor beeldgeneratie, het genereren van moleculen, het comprimeren van data en het leren van representaties. Ze hebben echter de neiging om wazige beelden te genereren, omdat de reconstructiefout wordt gemiddeld.
Toepassingen en vergelijking met GANs
VAE's worden toegepast in beeldgeneratie, waar ze nieuwe gezichten, cijfers of objecten kunnen creëren. Ze worden ook gebruikt in de geneeskunde voor het genereren van medische beelden en in de materiaalkunde voor het ontwerpen van nieuwe materialen. In NLP worden VAE's gebruikt voor het genereren van tekst en het leren van zinrepresentaties. Een voordeel van VAE's ten opzichte van GANs is dat ze een expliciete latente ruimte hebben die kan worden geïnterpreteerd en waarin men kan interpoleren. Ze zijn ook stabieler te trainen dan GANs, die bekend staan om hun instabiliteit. Een nadeel is dat VAE's vaak wazigere output produceren, omdat de reconstructiefout wordt gemiddeld over de verdeling. GANs produceren scherpere beelden, maar hebben geen expliciete latente ruimte en zijn moeilijker te trainen. Er bestaan hybride modellen die beide combineren. VAE's worden ook gebruikt voor het detecteren van anomalieën: datapunten met een lage waarschijnlijkheid in de latente ruimte zijn afwijkend. Ze zijn een belangrijk hulpmiddel in de generatieve AI en blijven een actief onderzoeksgebied.