Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Diffusionsmodelle und Probabilistische Generative Ansätze | Abschnitt
Generatives Deep Learning

bookDiffusionsmodelle und Probabilistische Generative Ansätze

Swipe um das Menü anzuzeigen

Verständnis der Diffusionsbasierten Generierung

Diffusionsmodelle sind eine leistungsstarke Art von KI-Modellen, die Daten – insbesondere Bilder – erzeugen, indem sie lernen, einen Prozess des Hinzufügens von zufälligem Rauschen umzukehren. Stellen Sie sich vor, Sie beobachten, wie ein klares Bild allmählich unscharf wird, ähnlich wie das Rauschen auf einem Fernseher. Ein Diffusionsmodell lernt das Gegenteil: Es nimmt verrauschte Bilder und rekonstruiert das ursprüngliche Bild, indem es Schritt für Schritt das Rauschen entfernt.

Der Prozess umfasst zwei Hauptphasen:

  • Vorwärtsprozess (Diffusion): Fügt einem Bild schrittweise zufälliges Rauschen hinzu und verfälscht es so zu reinem Rauschen;
  • Rückwärtsprozess (Denoising): Ein neuronales Netzwerk lernt, das Rauschen Schritt für Schritt zu entfernen und das ursprüngliche Bild aus der verrauschten Version zu rekonstruieren.

Diffusionsmodelle sind bekannt für ihre Fähigkeit, hochwertige, realistische Bilder zu erzeugen. Ihr Training ist in der Regel stabiler als bei Modellen wie GANs, was sie in der modernen generativen KI sehr attraktiv macht.

Denoising Diffusion Probabilistic Models (DDPMs)

Denoising Diffusion Probabilistic Models (DDPMs) sind eine beliebte Art von Diffusionsmodellen, die probabilistische Prinzipien und Deep Learning anwenden, um Schritt für Schritt Rauschen aus Bildern zu entfernen.

Vorwärtsprozess

Im Vorwärtsprozess beginnt man mit einem realen Bild x0x_0 und fügt schrittweise über TT Zeitschritte hinweg gaußsches Rauschen hinzu:

q(xtxt1)=N(xt;1βtxt1,βtI)q(x_t|x_{t-1})= \mathcal{N}(x_t;\sqrt{1-\beta_t}x_{t-1},\beta_tI)

Dabei gilt:

  • xtx_t: verrauschte Version des Eingabebildes zum jeweiligen Zeitschritt;
  • βt\beta_t: kleine Varianz, die steuert, wie viel Rauschen hinzugefügt wird;
  • N\mathcal{N}: Gaußsche Verteilung.

Die insgesamt bis zu einem Schritt hinzugefügte Rauschmenge lässt sich auch wie folgt ausdrücken:

q(xtx0)=N(xt;αˉtx0,(1αˉt)I)q(x_t|x_0)= \mathcal{N}(x_t;\sqrt{\={\alpha}_t}x_0,(1-\={\alpha}_t)I)

Dabei gilt:

  • αˉt=s=1t(1βs)\=\alpha_t=\prod_{s=1}^t(1-\beta_s)

Rückwärtsprozess

Das Ziel des Modells ist es, den umgekehrten Prozess zu erlernen. Ein neuronales Netzwerk, parametrisiert durch θ\theta, sagt den Mittelwert und die Varianz der entrauschten Verteilung voraus:

pθ(xt1xt)=N(xt1;μθ(xt,t),Σθ(xt,t))p_\theta(x_{t-1}|x_t) = \mathcal{N}(x_{t-1};\mu_\theta(x_t,t), \Sigma_\theta(x_t,t))

wobei:

  • xtx_t: verrauschtes Bild zum Zeitpunkt tt;
  • xt1x_{t-1}: vorhergesagtes, weniger verrauschtes Bild zum Zeitpunkt t1t-1;
  • μθ\mu_\theta: vom neuronalen Netzwerk vorhergesagter Mittelwert;
  • Σθ\Sigma_\theta: vom neuronalen Netzwerk vorhergesagte Varianz.

Verlustfunktion

Das Training beinhaltet die Minimierung der Differenz zwischen dem tatsächlichen Rauschen und dem vom Modell vorhergesagten Rauschen unter Verwendung des folgenden Ziels:

Lsimple=Ex0,ϵ,t[ϵϵ0(αˉtx0+1αˉtϵ,t)2]L_{simple} = \mathbb{E}_{x_0, \epsilon, t} \left[ ||\epsilon - \epsilon_0 \left( \sqrt{\=\alpha_t}x_0 + \sqrt{1-\=\alpha_t}\epsilon, t \right)||^2 \right]

wobei:

  • xtx_t: ursprüngliches Eingabebild;
  • ϵ\epsilon: zufälliges gaußsches Rauschen;
  • tt: Zeitschritt während der Diffusion;
  • ϵθ\epsilon_\theta: Vorhersage des Rauschens durch das neuronale Netzwerk;
  • αˉt\={\alpha}_t: Produkt der Rauschplan-Parameter bis zum Schritt tt.

Dies hilft dem Modell, besser beim Entrauschen zu werden und verbessert seine Fähigkeit, realistische Daten zu generieren.

Score-basierte generative Modellierung

Score-basierte Modelle sind eine weitere Klasse von Diffusionsmodellen. Anstatt den umgekehrten Rauschprozess direkt zu erlernen, lernen sie die Score-Funktion:

xlogp(x)\nabla_x\log{p(x)}

wobei:

  • xlogp(x)\nabla_x\log{p(x)}: der Gradient der Log-Wahrscheinlichkeitsdichte bezüglich des Eingabewerts xx. Dieser zeigt in die Richtung der steigenden Wahrscheinlichkeit unter der Datenverteilung;
  • p(x)p(x): die Wahrscheinlichkeitsverteilung der Daten.

Diese Funktion gibt dem Modell an, in welche Richtung das Bild verändert werden sollte, um mehr echten Daten zu ähneln. Diese Modelle verwenden dann eine Abtastmethode wie Langevin-Dynamik, um verrauschte Daten schrittweise in Bereiche mit hoher Wahrscheinlichkeit zu bewegen.

Score-basierte Modelle arbeiten häufig in kontinuierlicher Zeit unter Verwendung von stochastischen Differentialgleichungen (SDEs). Dieser kontinuierliche Ansatz bietet Flexibilität und kann qualitativ hochwertige Generierungen für verschiedene Datentypen ermöglichen.

Anwendungen in der hochauflösenden Bildgenerierung

Diffusionsmodelle haben generative Aufgaben, insbesondere bei der hochauflösenden visuellen Generierung, revolutioniert. Bedeutende Anwendungen umfassen:

  • Stable Diffusion: Ein latentes Diffusionsmodell, das Bilder aus Texteingaben generiert. Es kombiniert ein U-Net-basiertes Denoising-Modell mit einem Variational Autoencoder (VAE), um im latenten Raum zu arbeiten;
  • DALL·E 2: Kombiniert CLIP-Embeddings und diffusionsbasierte Dekodierung, um hochrealistische und semantische Bilder aus Text zu erzeugen;
  • MidJourney: Eine diffusionsbasierte Bildgenerierungsplattform, die für die Erstellung hochwertiger, künstlerisch gestalteter Visualisierungen aus abstrakten oder kreativen Eingaben bekannt ist.

Diese Modelle werden in der Kunstgenerierung, fotorealistischen Synthese, Inpainting, Superauflösung und mehr eingesetzt.

Zusammenfassung

Diffusionsmodelle definieren eine neue Ära des generativen Modellierens, indem sie die Datengenerierung als einen stochastischen Prozess in umgekehrter Zeit betrachten. Durch DDPMs und score-basierte Modelle erreichen sie robustes Training, hohe Stichprobenqualität und überzeugende Ergebnisse über verschiedene Modalitäten hinweg. Ihre Verankerung in probabilistischen und thermodynamischen Prinzipien macht sie sowohl mathematisch elegant als auch praktisch leistungsfähig.

1. Was ist die Hauptidee hinter diffusionsbasierten generativen Modellen?

2. Was verwendet der Vorwärtsprozess von DDPM, um bei jedem Schritt Rauschen hinzuzufügen?

3. Welche der folgenden Aussagen beschreibt am besten die Rolle der Score-Funktion xlogp(x)\nabla_x\log{p(x)} im score-basierten generativen Modellieren?

question mark

Was ist die Hauptidee hinter diffusionsbasierten generativen Modellen?

Select the correct answer

question mark

Was verwendet der Vorwärtsprozess von DDPM, um bei jedem Schritt Rauschen hinzuzufügen?

Select the correct answer

question mark

Welche der folgenden Aussagen beschreibt am besten die Rolle der Score-Funktion xlogp(x)\nabla_x\log{p(x)} im score-basierten generativen Modellieren?

Select the correct answer

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 1. Kapitel 10

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen

Abschnitt 1. Kapitel 10
some-alt