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 | Theoretische Grundlagen
Tiefe Generative Modelle mit Python

Diffusionsmodelle 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. Man kann sich vorstellen, 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.

diffusion_architecture

Der Prozess umfasst zwei Hauptphasen:

  • Vorwärtsprozess (Diffusion): Fügt einem Bild schrittweise zufälliges Rauschen hinzu, bis es vollständig in Rauschen übergeht;
  • 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 Rauschen schrittweise 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 Varianzfolge, 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)

Umkehrprozess

Das Ziel des Modells ist es, den Umkehrprozess 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: vorhergesagter Mittelwert aus dem neuronalen Netzwerk;
  • Σθ\Sigma_\theta: vorhergesagte Varianz aus dem neuronalen Netzwerk.

Verlustfunktion

Das Training beinhaltet die Minimierung der Differenz zwischen dem tatsächlichen Rauschen und dem vom Modell vorhergesagten Rauschen mit folgendem Ziel:

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 zunehmender 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 den realen Daten ähnlicher zu werden. Diese Modelle verwenden dann eine Abtastmethode wie die Langevin-Dynamik, um verrauschte Daten schrittweise in Bereiche 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 ermöglicht hochwertige Generierungen für verschiedene Datentypen.

Anwendungen in der hochauflösenden Bildgenerierung

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

  • Stable Diffusion: ein latentes Diffusionsmodell, das Bilder aus Textanweisungen 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 qualitativ hochwertige, künstlerisch gestaltete Visualisierungen aus abstrakten oder kreativen Vorgaben bekannt ist.

Diese Modelle werden in der Kunstgenerierung, fotorealistischen Synthese, Inpainting, Super-Resolution und mehr eingesetzt.

Zusammenfassung

Diffusionsmodelle definieren eine neue Ära der generativen Modellierung, indem sie die Datengenerierung als 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 DDPM-Vorwärtsprozess, um in 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?

Wählen Sie die richtige Antwort aus

question mark

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

Wählen Sie die richtige Antwort aus

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?

Wählen Sie die richtige Antwort aus

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 2. Kapitel 9

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

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

Diffusionsmodelle und Probabilistische Generative Ansätze

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. Man kann sich vorstellen, 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.

diffusion_architecture

Der Prozess umfasst zwei Hauptphasen:

  • Vorwärtsprozess (Diffusion): Fügt einem Bild schrittweise zufälliges Rauschen hinzu, bis es vollständig in Rauschen übergeht;
  • 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 Rauschen schrittweise 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 Varianzfolge, 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)

Umkehrprozess

Das Ziel des Modells ist es, den Umkehrprozess 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: vorhergesagter Mittelwert aus dem neuronalen Netzwerk;
  • Σθ\Sigma_\theta: vorhergesagte Varianz aus dem neuronalen Netzwerk.

Verlustfunktion

Das Training beinhaltet die Minimierung der Differenz zwischen dem tatsächlichen Rauschen und dem vom Modell vorhergesagten Rauschen mit folgendem Ziel:

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 zunehmender 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 den realen Daten ähnlicher zu werden. Diese Modelle verwenden dann eine Abtastmethode wie die Langevin-Dynamik, um verrauschte Daten schrittweise in Bereiche 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 ermöglicht hochwertige Generierungen für verschiedene Datentypen.

Anwendungen in der hochauflösenden Bildgenerierung

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

  • Stable Diffusion: ein latentes Diffusionsmodell, das Bilder aus Textanweisungen 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 qualitativ hochwertige, künstlerisch gestaltete Visualisierungen aus abstrakten oder kreativen Vorgaben bekannt ist.

Diese Modelle werden in der Kunstgenerierung, fotorealistischen Synthese, Inpainting, Super-Resolution und mehr eingesetzt.

Zusammenfassung

Diffusionsmodelle definieren eine neue Ära der generativen Modellierung, indem sie die Datengenerierung als 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.

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 2. Kapitel 9
some-alt