Diffusionsmodelle
Die zweite große Modellfamilie neben Transformern: entrauschen statt fortsetzen, warum das für Bilder besser passt und wo beide zusammenkommen.
Die Idee
Zwei Richtungen. Vorwärts: Man nimmt ein Bild und mischt schrittweise Rauschen hinzu, bis nichts mehr erkennbar ist. Dieser Weg ist trivial und braucht kein Modell. Rückwärts: Man lernt, einen dieser Schritte umzukehren.
Kann man einen Schritt umkehren, kann man alle umkehren. Also startet man bei reinem Rauschen und entrauscht wiederholt, bis ein Bild dasteht.
Der Unterschied zum Sprachmodell
| Sprachmodell | Diffusionsmodell | |
|---|---|---|
| Erzeugt | ein Token nach dem anderen | alles gleichzeitig, schrittweise verfeinert |
| Schrittzahl | so viele wie Token | fest gewählt, meist 20 bis 50 |
| Passend für | Sequenzen mit Reihenfolge | Bilder, Ton, alles ohne feste Reihenfolge |
| Steuerung | Prompt im Kontext | Prompt als Bedingung in jedem Schritt |
Der Rauschplan
Wie schnell das Rauschen zunimmt, ist eine Entwurfsentscheidung mit spürbarer Wirkung.
| Plan | Verlauf | Eigenschaft |
|---|---|---|
| Linear | gleichmäßig | Einfach, ursprüngliche Variante |
| Kosinus | anfangs langsam, später schnell | Bessere Detailtreue |
| Sigmoid | weich an beiden Enden | Für hohe Auflösungen |
Der Grund für den Kosinusplan: Bei linearem Verlauf ist das Bild schon nach einem Drittel der Schritte fast reines Rauschen, und die restlichen zwei Drittel tragen kaum zum Lernen bei.
Die Löser
| Löser | Schritte | Bemerkung |
|---|---|---|
| DDPM | 1.000 | Ursprünglich, stochastisch |
| DDIM | 20 bis 100 | Deterministisch, gleicher Startwert gleiches Bild |
| DPM-Solver++ | 15 bis 30 | Heute üblich |
| Destilliert | 1 bis 4 | Ein Modell lernt, mehrere Schritte auf einmal zu machen |
Vorwärts und rückwärts
Die Deterministik von DDIM ist praktisch bedeutsam: Derselbe Startwert und dieselbe Bedingung ergeben exakt dasselbe Bild, was Reproduzierbarkeit und gezielte Variation überhaupt erst ermöglicht.
Warum latent gerechnet wird
Diffusion auf Pixeln bei 1024 × 1024 × 3 bedeutet 3,1 Millionen Dimensionen je Schritt, und es sind zwanzig bis fünfzig Schritte. Ein vorgeschalteter Autoencoder komprimiert um den Faktor 8 je Kante:
| Ebene | Dimensionen | Verhältnis |
|---|---|---|
| Pixelraum 1024² × 3 | 3.145.728 | 1 |
| Latenter Raum 128² × 4 | 65.536 | 1/48 |
Der Rechenaufwand je Schritt sinkt entsprechend, bei kaum sichtbarem Qualitätsverlust. Das ist der Grund, warum Bilderzeugung auf einer Karte mit 8 GB läuft.
Wo Diffusion und Transformer zusammenkommen
Aktuelle Bildmodelle ersetzen das früher übliche U-Net durch einen Transformer über Bildkacheln. Der Diffusionsprozess bleibt derselbe, nur das Netz, das den Entrauschungsschritt vorhersagt, ist ein Transformer. Damit gelten dieselben Skalierungseigenschaften wie bei Sprachmodellen, mehr Parameter und mehr Daten verbessern das Ergebnis vorhersagbar, was bei U-Netzen weniger klar der Fall war.
Passende Kurse und Quellen
Denoising Diffusion Probabilistic Models
Rauschen schrittweise entfernen statt Bilder in einem Zug erzeugen. Die Grundlage aller heutigen Bildmodelle.
Für das Verständnis aller heutigen Bildmodelle, vom Rauschen her gedacht.
High-Resolution Image Synthesis
Diffusion nicht im Bild, sondern in einem kleineren Zwischenraum. Der Schritt, der Bildgenerierung auf gewöhnlicher Hardware möglich machte.
Für alle, die Bildgenerierung selbst betreiben wollen; erklärt, warum es auf üblicher Hardware läuft.
Understanding Deep Learning
Modernes Lehrbuch mit ungewöhnlich klaren Abbildungen, das Transformer und Diffusionsmodelle bereits vollständig behandelt. Frei als PDF.
Für den modernen Einstieg; behandelt Transformer und Diffusion bereits vollständig.