Autoencoder sind neuronale Netze, die ihre Eingabe über eine schmale Engstelle (Bottleneck) rekonstruieren. Dadurch lernen sie von selbst eine kompakte, verlustbehaftete Darstellung der Daten — ohne gelabelte Beispiele, also unüberwacht.
Encoder und Decoder
Ein Autoencoder besteht aus zwei Teilen: Der Encoder komprimiert die Eingabe in einen niedrigdimensionalen Latent Space (Bottleneck), der Decoder rekonstruiert daraus die ursprünglichen Daten. Das Netz wird darauf trainiert, Eingabe und Ausgabe möglichst ähnlich zu machen. Der Latent Space erzwingt, dass das Modell die wichtigsten Merkmale der Daten extrahiert — ähnlich wie eine nichtlineare Hauptkomponentenanalyse (PCA).
Einsatzgebiete
- Anomalie-Erkennung: Ein Autoencoder, der nur auf normalen Daten trainiert wurde, erzeugt für Abweichungen einen hohen Rekonstruktionsfehler — so lassen sich Fehler und Ausreißer erkennen.
- Datenkompression und Rauschunterdrückung (Denoising).
- Merkmalslernen: Der Latent Space dient als kompakte Eingabe für nachgelagerte Modelle.
Eine probabilistische Erweiterung ist der Variational Autoencoder, der statt einzelner Punkte Wahrscheinlichkeitsverteilungen im Latent Space lernt. Gemeinsam mit Generative Adversarial Networks bilden diese Modelle die klassische Familie generativer neuronaler Netze.
Verwandte Grundlagen: Convolutional Neural Network, Embedding, Transfer Learning.