Veröffentlicht: 21. August, 2024
Mitwirkende: Dave Bergmann, Cole Stryker
Diffusionsmodelle sind generative Modelle, die hauptsächlich für die Bilderzeugung und andere Aufgaben im Bereich Computer Vision verwendet werden. Diffusionsbasierte neuronale Netze werden durch Deep Learning trainiert, um Proben schrittweise mit zufälligem Rauschen zu „diffundieren“ und diesen Diffusionsprozess dann umzukehren, um qualitativ hochwertige Bilder zu erzeugen.
Diffusionsmodelle gehören zu den neuronalen Netzarchitekturen, die an der Spitze der generativen KI stehen. Sie werden vor allem durch beliebte Text-zu-Bild-Modelle wie Stable Diffusion von Stability AI, DALL-E (ab DALL-E-2) von OpenAI, Midjourney und Imagen von Google repräsentiert. Sie verbessern die Leistung und Stabilität anderer Architekturen für maschinelles Lernen, die für die Bildsynthese verwendet werden, wie Variational Autoencoder (VAE), Generative Adversarial Networks (GAN) und autoregressive Modelle wie PixelCNN.
Die Intuition hinter Diffusionsmodellen ist von der Physik inspiriert, wobei Pixel wie die Moleküle eines Tintentropfens behandelt werden, der sich mit der Zeit in einem Glas Wasser ausbreitet. Ähnlich wie die zufällige Bewegung der Tintenmoleküle schließlich zu ihrer gleichmäßigen Verteilung im Glas führt, führt die zufällige Einbringung von Rauschen in ein Bild schließlich zu etwas, das wie Fernsehrauschen aussieht. Durch die Modellierung dieses Diffusionsprozesses und das anschließende Erlernen, diesen Prozess irgendwie umzukehren, kann ein künstliches Intelligenzmodell neue Bilder erzeugen, indem es einfach Stichproben von zufälligem Rauschen „entrauscht“.
Diffusionsmodelle werden vor allem mit der Bilderzeugung und anderen Bildverarbeitungsaufgaben wie Inpainting und Super-Resolution in Verbindung gebracht, aber ihre Anwendungen erstrecken sich auch auf andere Bereiche wie die Audioerzeugung, das Design von Medikamenten und die Molekülgenerierung. Der Einfachheit halber konzentriert sich dieser Artikel auf die Bilderzeugung.
Erfahren Sie mehr über die wichtigsten Vorteile, die sich aus der Zusammenarbeit von generativer KI und traditionellen KI-Funktionen ergeben, und darüber, wie Unternehmen generative KI, Foundation Models und ML sicher in ihre Geschäftsabläufe integrieren können.
Newsletter von IBM abonnieren
Um Diffusionsmodelle zu erklären und zu verstehen, ist es wichtig, zunächst zu beachten, dass der generative Prozess, der heute als „Diffusion“ bezeichnet wird, unabhängig voneinander bei zwei verschiedenen Gelegenheiten durch zwei unterschiedliche mathematische Ansätze entdeckt wurde. Kurz gesagt gibt es mehrere Möglichkeiten, wie Diffusionsmodelle, die konzeptionell einfach, aber mathematisch komplex sind, „funktionieren“ können.
Spätere Entwicklungen haben Ideen aus beiden Ansätzen übernommen und die Vorteile beider Ansätze miteinander kombiniert, um schließlich die modernen Diffusionsmodelle zu entwickeln, die derzeit den Bereich der Bilderzeugung dominieren. Ein kurzer Überblick über die Geschichte und Theorie von Diffusionsmodellen erleichtert somit nicht nur das Verständnis dafür, wie Diffusionsmodelle funktionieren, sondern auch dafür, warum sie funktionieren.
Von der Physik inspirierte Diffusionsmodelle wurden erstmals von Sohl-Dickstein et al. in ihrem 2015 erschienenen Artikel „Deep Unsupervised Learning using Nonequilibrium Thermodynamics“ vorgestellt. Ihr Algorithmus wandte die Langevin-Dynamik (Link befindet sich außerhalb von ibm.com), eine Methode zur Modellierung der Bewegung molekularer Systeme, an, um die Grundvoraussetzung von Diffusionsmodellen zu untermauern: Daten in Rauschen umwandeln, damit man dann Rauschen in Daten umwandeln kann.
Ein Hinweis zu Wahrscheinlichkeitsdichtefunktionen
Wie die meisten generativen Modelle, wie z. B. Variational Autoencoders (VAEs), modellierte der Sohl-Dickstein-Algorithmus die Wahrscheinlichkeitsdichte: die relative Wahrscheinlichkeit, dass eine zufällig ausgewählte Variable, x, in einen bestimmten Wertebereich fällt. Im Wesentlichen ermöglicht die Modellierung einer Wahrscheinlichkeitsdichtefunktion für einen Trainingsdatensatz einem Algorithmus, dann Stichproben zu generieren, die mit hoher Wahrscheinlichkeit zur Trainingsdatenverteilung passen. Bei der Erzeugung eines neuen Bildes geht das Modell von einer hohen Wahrscheinlichkeit aus, dass die Pixelwerte auf diese spezifische Weise verteilt werden, basierend auf der Wahrscheinlichkeitsverteilung, die es aus Mustern in Trainingsdaten gelernt hat.
Logischerweise erfordern Wahrscheinlichkeitsdichtefunktionen, dass die Wahrscheinlichkeit aller Möglichkeiten 1 ergibt. Anders ausgedrückt: Die prozentuale Wahrscheinlichkeit aller Möglichkeiten muss genau 100 % ergeben. In der Praxis erfordert dies oft eine normalisierende Konstante: einen Wert, der in eine Wahrscheinlichkeitsfunktion integriert wird und die Gesamtwahrscheinlichkeit auf 1 reduziert.
Die Berechnung einer Normierungskonstante, die für alle möglichen Variablenwerte funktioniert, ist oft schwierig: technisch lösbar, aber mit unendlichem Rechenaufwand verbunden. In solchen Fällen müssen wahrscheinlichkeitsbasierte Modelle entweder auf bestimmte Modellarchitekturen beschränkt werden oder es müssen clevere Umgehungslösungen entwickelt werden, die die Normalisierungskonstante auf nachvollziehbare Weise approximieren.
Unabhängig von Sohl-Dicksteins Arbeit entwickelten Yang Song und Stefano Ermon in ihrem 2019 erschienenen Artikel „Generative Modeling by Estimating Gradients of the Data Distribution“ eine Art energiebasiertes Modell (Link befindet sich außerhalb von ibm.com), das sie als „Noise Conditional Score Network” bezeichneten. Ihr Algorithmus modellierte den Gradienten (∇x) des Logarithmus () der Wahrscheinlichkeitsdichtefunktion . Der Gradient der Log-Wahrscheinlichkeitsdichtefunktion, geschrieben als wird als Stein-Score oder einfach als „Score-Funktion“ bezeichnet.
Im Gegensatz zu herkömmlichen Wahrscheinlichkeitsdichtefunktionen benötigen Score-Funktionen keine Normierungskonstante, da sie die Wahrscheinlichkeitsdichte nicht direkt modellieren (und daher die Gesamtwahrscheinlichkeit nicht auf 1 normalisieren müssen). Stattdessen werden sie durch Score Matching trainiert: Lernmodellparameter, θ, die ein Modell pθ(x) ergeben, dessen Score – mit anderen Worten, dessen Gradient – mit dem der Datenverteilung q(x) der Trainingsdaten übereinstimmt.
Ein weiterer Vorteil solcher Score-basierter generativer Modelle (SGMs) besteht darin, dass sie im Gegensatz zu wahrscheinlichkeitsbasierten Modellen keine großen Einschränkungen für die Modellarchitektur von pθ(x) mit sich bringen.
Song und Ermon suchten nach Möglichkeiten, die Leistung ihres Modells zu verbessern, und stießen zufällig auf dieselben Techniken, die auch von Sohl-Dickstein et al. verwendet wurden.In ihrem Artikel stellten sie fest, dass „die Verfälschung von Daten mit zufälligem Gaußschem Rauschen die Datenverteilung für eine punktbasierte generative Modellierung zugänglicher macht“. Ihr Modell, das auf der U-Net-Architektur basiert, die ursprünglich für die Bildsegmentierung entwickelt wurde, wandte ebenfalls die Langevin-Dynamik an, um Proben zu generieren.
2020 schlugen Ho et al. in ihrem bahnbrechenden Artikel „Denoising diffusion probabilistic models“ (DDPMs) vor, Sohl-Dicksteins Ansatz zu verwenden, um mithilfe der Variationsinferenz qualitativ hochwertige Bilder zu erzeugen. In ihrer Arbeit zeigten sie, dass die Maximierung der Evidenzuntergrenze (ELBO) – eine Möglichkeit, wahrscheinlichkeitsbasierte Optimierungsprobleme so umzuschreiben, dass sie handhabbar sind – zum Trainieren von Diffusionsmodellen im Wesentlichen der Kombination von Score-Matching-Zielen entspricht, die zum Trainieren von SGMs verwendet werden.
Durch die Implementierung des Ansatzes von Sohl-Dickstein unter Verwendung von Score Matching zeigten Ho et al., dass Diffusions-Probabilistik-Modelle eine Bildqualität erreichen können, die mit GANs konkurrieren kann, die zu dieser Zeit auf dem neuesten Stand der Technik waren. Diese Zusammenhänge wurden von Song, Ermon, Sohl-Dickstein und anderen (darunter Diederik P. Kingma, dem Erfinder der VAE) in ihrem 2021 erschienenen Artikel „Score-Based Generative Modeling through Stochastic Differential Equations“ weiter untersucht.
Später im selben Jahr veröffentlichten Dhariwal und Nichol unter Nutzung der Erkenntnisse aus dem zuvor erwähnten Artikel „Diffusion Models Beat GANs on Image Synthesis“ und etablierten damit Diffusionsmodelle als neuen Stand der Technik.
DDPMs bleiben im Allgemeinen die vorherrschende Form von Diffusionsmodellen, wenn auch mit Verbesserungen, die durch nachfolgende Forschung vorangetrieben wurden. Zum Beispiel markierte die einflussreiche Arbeit „High-Resolution Image Synthesis with Latent Diffusion Models“ aus dem Jahr 2022 wichtige Fortschritte in Bezug auf Effizienz und Kosteneffektivität.
Beim Training diffundieren Diffusionsmodelle einen Datenpunkt schrittweise mit zufälligem Rauschen, bis er zerstört ist, und lernen dann, diesen Diffusionsprozess umzukehren und die ursprüngliche Datenverteilung zu rekonstruieren.
Ein trainiertes Diffusionsmodell kann dann neue Datenpunkte generieren, die den Trainingsdaten ähneln, indem es einfach eine zufällige Anfangsstichprobe reinen Rauschens von Rauschen befreit. Vom Konzept her ähnelt dies einem Denoising-Autoencoder, bei dem die verrauschten Bilder als latente Variablen fungieren.
Die direkte Umwandlung von zufälligem Rauschen in ein kohärentes Bild ist äußerst schwierig und komplex, aber die Umwandlung eines verrauschten Bildes in ein etwas weniger verrauschtes Bild ist relativ einfach und unkompliziert. Diffusionsmodelle formulieren daher den umgekehrten Diffusionsprozess als eine inkrementelle, schrittweise Umwandlung einer einfachen Verteilung (wie Gaußsches Rauschen) in eine komplexere Verteilung (wie ein kohärentes Bild).
Der Prozess des Trainings und anschließenden Bereitstellung einer Diffusion lässt sich in drei Hauptphasen unterteilen:
Der Zweck des Vorwärtsdiffusionsprozesses besteht darin, saubere Daten aus dem Trainingsdatensatz, wie z. B. ein Bild oder eine Audioaufnahme, in reines Rauschen umzuwandeln. Die gängigste Methode besteht darin, iterativ Gaußsches Rauschen einzufügen, bis die gesamte Datenverteilung gaußsch ist.
Mathematisch wird dieser schrittweise Prozess als Markow-Kette formuliert: eine Art stochastischer Prozess – ein Zufallsprozess, der bestimmten Wahrscheinlichkeitsregeln folgt – zur Modellierung sequenzieller Zeitreihendaten. In einer Markow-Kette wird das Ergebnis jedes Zeitschritts nur durch den unmittelbar vorhergehenden Zeitschritt beeinflusst. Einfach ausgedrückt: xt, der Zustand der Markow-Kette x zum Zeitpunkt t, wird nur direkt von xt-1 beeinflusst. Die mathematische Funktion, die den Übergang von einem beliebigen xt zu xt+1 definiert, wird als Übergangskern bezeichnet.
Zu jedem Zeitpunkt t wird eine kleine Menge Gaußsches Rauschen zu xt-1 hinzugefügt, und das Bild wird dann neu skaliert, um trotz der kontinuierlichen Zufügung zufälliger Pixel eine konstante Bildgröße beizubehalten. In dieser Formulierung ist x0 der ursprüngliche, saubere Datenpunkt. x1 ist der Datenpunkt nach dem ersten Zeitschritt, dem eine geringe Menge an Gaußschem Rauschen hinzugefügt wurde. xT ist der Endzustand des Vorwärtsdiffusionsprozesses. Wenn T groß genug ist – d. h. nach genügend Schritten – konvergiert xT zu reinem Gaußschen Rauschen.
Wir definieren jeden Vorwärtsschritt als den Zustand der Datenverteilung q(xt) vorhersagen, wenn q(xt-1) gegeben ist. Bei einem Standard-DDPM beinhaltet dieser Vorwärtsprozess kein maschinelles Lernen: Das Endergebnis der Markov-Kette ist immer eine Gaußsche Verteilung und erfordert daher keine Optimierung.
Bei einem DDPM ist das Gaußsche Rauschen, das bei jedem Schritt in der Markov-Kette hinzugefügt wird, weder konstant noch willkürlich. Stattdessen wird das Rauschen aus der Struktur des Originalbildes abgeleitet und die Rate, mit der es hinzugefügt wird, nimmt mit jedem aufeinanderfolgenden Schritt stetig zu.
Durch die Variation der Geräuschmenge wird sowohl die Stabilität des Modelltrainings verbessert als auch die Gesamtleistung gesteigert, indem zwei konkurrierende Prioritäten ausgeglichen werden. Wie Yang Song in seinem Blogbeitrag über Score-basierte generative Modelle feststellte (Link befindet sich außerhalb von ibm.com):
Erinnern Sie sich daran, dass jede Gaußsche (Normal-)Verteilung sowohl einen Mittelwert als auch eine Varianz, . Ein weiterer Parameter, β, dient als Skalierungsfaktor für den Mittelwert und die Varianz des Gaußschen Rauschens im Übergangskern, der jeden Schritt in der Vorwärts-Markov-Kette definiert. Wenn Sie den Wert von β in einem bestimmten Schritt ändern, ändert sich auch das in diesem Schritt hinzugefügte Gaußsche Rauschen. β1 ist die Varianz zum Zeitpunkt 1, βt ist die Varianz zum Zeitpunkt t usw. – bis βT.
Der Wert der Rate von β bei jedem Schritt wird wiederum durch den Varianzplan bestimmt.
Bei jedem Schritt t wird das Bild gegenüber seiner Iteration im vorherigen Schritt leicht verschoben (gemäß dem Mittelwert) und dieser verschobenen Version des Bildes wird Rauschen hinzugefügt (gemäß der Varianz). Das Ausmaß jeder Verschiebung und jedes zusätzlichen Lärms wird durch den Wert von : wenn dieser gemäß dem Varianzplan ansteigt, nimmt die Diffusionsrate infolgedessen stetig zu. β ist immer ein Wert zwischen 0 und 1: also 0 < β1 < β2 < … < βT < 1.
Die Wahl eines bestimmten Varianzplans für β ist eine wichtige Überlegung. Er wird in der Regel manuell als Hyperparameter festgelegt – entweder auf einen konstanten Wert fixiert oder nach einer Formel mit einem vorgegebenen Start- und Endwert für β. In dem DDPM-Papier verwendeten Ho et al. einen linearen Zeitplan mit 1.000 Schritten, wobei β1 = 10-4 und βT = 0,02. Spätere Untersuchungen ergaben Leistungs- und Effizienzsteigerungen bei anderen Typen von Zeitplänen, wie z. B. einem Cosinus-Zeitplan[1] oder der Verwendung des Zeitplans selbst als weiteren erlernten Parameter.[2]
Der Wert von βt bestimmt sowohl den Mittelwert als auch die Varianz des Gaußschen Rauschens, das in Schritt t hinzugefügt wird.
Zusammenfassend lässt sich sagen, dass bei jedem Schritt t das Bild geringfügig gegenüber seiner Iteration im vorherigen Schritt verschoben wird (gemäß dem Mittelwert) und dieser verschobenen Version des Bildes Rauschen hinzugefügt wird (gemäß der Varianz). Das Ausmaß jeder Verschiebung und jedes zusätzlichen Rauschens wird durch den Wert von βt bestimmt: Wenn βt gemäß dem Varianzplan zunimmt, steigt die Diffusionsrate infolgedessen stetig an.
Da die Hinzufügung des Gaußschen Rauschens allmählich beginnt und das Rauschen selbst immer von der wesentlichen Struktur des Originalbildes im vorherigen Schritt abgeleitet wird, bleiben die wesentlichen Eigenschaften des Originalbildes über viele Schritte hinweg erhalten. Dadurch kann das Modell während des umgekehrten Diffusionsprozesses die Muster und die Struktur der ursprünglichen Datenverteilung sinnvoll erlernen.
Ein Nachteil dieses schrittweisen Prozesses ist, dass er umständlich und rechenintensiv ist: Für jedes Bild in einem Trainingsdatensatz, der Tausende oder Millionen von Bildern enthalten kann, würde der Vorwärtsprozess Dutzende oder Hunderte von Einzelschritten erfordern.
Anstatt wiederholt Rauschen hinzuzufügen, kann die Formel für den Vorwärtsprozess auf geschickte Weise umgeschrieben werden, indem der Ausdruck von als neuer Parameter, , neu parametrisiert wird. . Durch eine „nette Eigenschaft“ von Markow-Ketten kann dieser neue Parameter weiter zu einem zusätzlichen Parameter erweitert werden, , abgeleitet aus der iterativen Multiplikation von bei jedem fortschreitenden Schritt in der Kette bis zu diesem Punkt. Dieser zusätzliche Parameter spiegelt im Wesentlichen das Signal-Rausch-Verhältnis (SNR) von xt wider: Mit anderen Worten, wie viel vom Originalbild zum Zeitpunkt t übrig bleibt.
Zum Beispiel wurde bei x1, einmal ein kleines Rauschen hinzugefügt. Der Wert von liegt nahe bei 1, was bedeutet, dass das Bild immer noch den größten Teil seines ursprünglichen „Signals“ beibehält. In einem späteren Schritt, wie x50, wurde das Rauschen viele Male hinzugefügt. Weil , der Wert von ist immer kleiner als 1. Seit , der Wert von Bei Schritt 50 liegt es viel näher an 0, was bedeutet, dass ein größerer Teil des Originalbildes durch Rauschen ersetzt wurde. Im Zeitschritt T ist xT ausschließlich Rauschen und der Wert von nähert sich 0.
Während die komplexe Herleitung der Gleichung den Rahmen dieses Artikels sprengen würde, gibt es zwei wichtige Erkenntnisse, um die Bedeutung dieses Tricks zur Neuparametrisierung zu verstehen:
In Diffusionsmodellen findet der eigentliche maschinelle Lernprozess im umgekehrten Diffusionsprozess statt. Indem das Modell lernt, die Schritte des Vorwärtsprozesses rückwärts auszuführen, lernt es im Wesentlichen, reines Gaußsches Rauschen in ein sauberes Bild umzuwandeln. Sobald das neuronale Netz trainiert wurde, kann diese Fähigkeit genutzt werden, um durch schrittweise Rückdiffusion neue Bilder aus Gaußschem Rauschen zu erzeugen.
Theoretisch kann man sich die Aufgabe des Modells als die einfache Umkehrung der Vorwärtsdiffusion vorstellen. Der Vorwärtsprozess, beginnend mit dem Datenpunkt x0, der aus der realen Datenverteilung q(x) des Trainingsdatensatzes entnommen wurde, ist definiert als : das heißt, wenn gegeben ist, wird berechnet. Das Gegenteil, die umgekehrte Diffusion, würde definiert werden als: . Doch in der Praxis ist be die Berechnung von nicht lösbar.
Stattdessen wird die Trainingsaufgabe durch zwei Umgehungslösungen formuliert:
Erinnern Sie sich noch einmal daran, dass der Mittelwert des bei der Vorwärtsdiffusion hinzugefügten Gaußschen Rauschens nicht willkürlich ist: Obwohl er tatsächlich zufällig ist, wird die Struktur des Rauschens zunächst aus der Struktur des Originalbildes x0 abgeleitet. Durch das Erlernen der genauen Vorhersage des Rauschens durch Rückdiffusion lernt das Modell daher nicht nur, das Bild zu entrauschen, sondern auch implizit die Struktur von x0.
Das spezifische Trainingsziel, das für Diffusionsmodelle verwendet wird, ist eng mit dem Rekonstruktionsverlust-Begriff verbunden, der zur Optimierung von Variational Autoencoders (VAEs) verwendet wird. Wie VAEs werden Diffusionsmodelle durch Maximierung der Varianzuntergrenze (VLB), auch Evidenzuntergrenze (ELBO) genannt, einer Kombination mehrerer Verlustterme optimiert.
Die Maximierung des VLB wird in der Variationsinferenz verwendet, um die schwer fassbare Score-Funktion zu approximieren. : Anstatt Fehler direkt zu minimieren, wird die Gleichung neu formuliert, indem die minimale Schätzung (oder untere Grenze) der Genauigkeit von Modellvorhersagen maximiert wird.
Die verwendeten Verlustbegriffe spiegeln jeweils die Kullback-Leibler-Divergenz (oder „KL-Divergenz“, üblicherweise als DKL bezeichnet) zwischen den Ergebnissen der Vorwärtsdiffusionsschritte von q und den durch pθ vorhergesagten Rückwärtsschritten wider. Die KL-Divergenz wird verwendet, um den Unterschied zwischen zwei Wahrscheinlichkeitsverteilungen zu messen – beispielsweise zwischen der Verteilung von Pixelwerten in einem Bild und der Verteilung von Pixelwerten in einem anderen.
Insbesondere kombiniert die Verlustfunktion für Diffusionsmodelle drei Verlustbedingungen: LT, Lt und L0.
Obwohl die komplexe mathematische Herleitung den Rahmen dieses Artikels sprengen würde, kann die VLB letztlich auf den mittleren quadratischen Fehler (MSE) zwischen dem vom Modell vorhergesagten Rauschen und dem im Vorwärtsprozess hinzugefügten tatsächlichen Rauschen , bei jedem Zeitschritt vereinfacht werden. Dies erklärt, warum das Modell als Ausgabe eine Vorhersage des Rauschens bei jedem Schritt liefert und nicht das entrauschte Bild selbst.
Durch die Berechnung der Steigung der Verlustfunktion während der Backpropagation und die anschließende Anpassung der Modellgewichte zur Minimierung der Verlustfunktion durch Gradientenabstieg werden die Vorhersagen des Modells über den gesamten Trainingsdatensatz hinweg genauer.
Sobald das Diffusionsmodell gelernt hat, das bei jedem Schritt zu subtrahierende Rauschen genau zu schätzen, kann es verwendet werden, um neue Bilder zu erzeugen, indem es ein zufälliges verrauschtes Bild xT aus der erlernten Datenverteilung auswählt und es für T Schritte entrauscht. Ähnlich wie bei VAEs ermöglicht die Einführung eines leichten Zufallselements in den Stichprobenprozess Diffusionsmodellen, neue Bilder zu erzeugen, die den Trainingsdaten ähneln, anstatt die Trainingsbilder direkt zu reproduzieren.
Anders als beim Rückdiffusionstraining muss die Anzahl der Schritte im Generierungsprozess nicht mit der Anzahl der Schritte im Vorwärtsprozess übereinstimmen. Dies ist möglich, weil das Modell darauf trainiert ist, das gesamte Rauschen bei jedem Bildschritt vorherzusagen, und nicht nur die spezifische Menge an Rauschen, die in diesem Schritt entfernt werden soll.
Weniger Schritte bedeuten eine höhere Geschwindigkeit und geringere Rechenanforderungen, wobei ein potenzieller Kompromiss bei den feinen Details besteht. Mehr Schritte verbessern in der Regel die Genauigkeit, allerdings auf Kosten einer geringeren Geschwindigkeit und höherer Rechenkosten.
Während ein Standard-Diffusionsmodell zufällige, qualitativ hochwertige Variationen von Trainingsbildern erzeugen kann, erfordern die praktischen Anwendungen eines Bildgenerierungsmodells in den meisten Fällen eine gewisse Kontrolle über die Ausgabe des Modells. Geführte Diffusionsmodelle ermöglichen es einem Benutzer, die erzeugten Bilder mit spezifischen Anleitungen zu bearbeiten.
Die häufigste Form des geführten Diffusionsmodells ist ein Text-zu-Bild-Diffusionsmodell, bei dem Benutzer die Ausgabe mit einem Prompt wie „eine Giraffe, die einen Zylinder trägt“ beeinflussen können. Dies beinhaltet die Kombination eines Diffusionsmodells mit einem separaten Large Language Model (LLM) zur Interpretation des Text-Prompts, das erstmals von Google in dem Artikel „Photorealistic Text-to-Image Diffusion Models with Deep Language Understanding“ vorgestellt wurde.
Standard-Diffusionsmodelle zielen auf die Vorhersage der unbedingten Score-Funktion ab : mit anderen Worten: Die Steigung des Logarithmus der Wahrscheinlichkeit, dass das vom Modell p erzeugte Bild x zu den Trainingsdaten x passt. Geführte Diffusionsmodelle führen eine bestimmte visuelle Kategorie ein, y – zum Beispiel „Giraffe“ – und sagen die bedingte Score-Funktion voraus. : oder anders ausgedrückt, die Wahrscheinlichkeit von Bild x, vorausgesetzt, es muss in Kategorie y passen.
Methoden für die geführte Diffusion können in zwei Kategorien unterteilt werden:
Trotz ihrer hochmodernen Fähigkeit, qualitativ hochwertige Bilder zu erzeugen, haben herkömmliche Diffusionsmodelle zwei wesentliche Nachteile: Sie sind langsam und rechenintensiv. Diese Nachteile wurden durch die Einführung von latenten Diffusionsmodellen, beginnend mit Stable Diffusion, erheblich reduziert.
Die Prämisse hinter latenten Diffusionsmodellen ist einfach und stützt sich erneut auf die Verbindung zu Variational Autoencoder (VAEs). Anstatt den Diffusionsprozess im hochdimensionalen Pixelraum anzuwenden – also direkt auf die Eingabebilder –, könnte das Modell die Eingaben zunächst in einen niedrigdimensionalen latenten Raum projizieren, um dort den Diffusionsprozess anzuwenden.
Im Wesentlichen verwenden latente Diffusionsmodelle eine VAE-ähnliche Autoencoder-Architektur, um einen Encoder zu trainieren, der latente Darstellungen z von Eingabedaten x ausgibt. Diese latenten Darstellungen werden dann als Eingabe für ein Standard-Diffusionsmodell verwendet, in der Regel unter Verwendung der U-Net-Architektur. Da das Diffusionsmodell mit Daten niedrigerer Dimension arbeitet, wird sein Output dann in ein Decodernetzwerk eingespeist, um die gewünschte endgültige Bildgröße zu erreichen.
Trainieren, prüfen, optimieren und implementieren Sie generative KI, Foundation Models und ML-Funktionen problemlos und erstellen Sie KI-Anwendungen in einem Bruchteil der Zeit und zu einem Bruchteil der Daten.
Erstellen Sie ganz einfach individuelle KI-Anwendungen für Ihr Unternehmen, verwalten Sie alle Datenquellen und beschleunigen Sie verantwortungsvolle KI-Workflows – alles auf einer Plattform.
Stellen Sie sich die Art und Weise, wie Sie mit KI arbeiten, neu vor: Unser vielfältiges, globales Team von mehr als 20.000 KI-Experten kann Ihnen dabei helfen, KI und Automatisierung in Ihrem Unternehmen schnell und sicher zu entwerfen und zu skalieren, indem es mit unserer eigenen IBM watsonx-Technologie und einem offenen Ökosystem von Partnern arbeitet, um jedes KI-Modell in jeder Cloud bereitzustellen, geleitet von Ethik und Vertrauen.
In dieser Arbeit schlägt IBM Prompting4Debugging (P4D) als Debugging- und Red-Team-Tool vor, das automatisch problematische Prompts für Diffusionsmodelle findet, um die Zuverlässigkeit eines bereitgestellten Sicherheitsmechanismus zu testen.
Verbreitungsmodelle können mit versteckten Hintertüren gekapert werden, die Angreifern die Kontrolle über den Bildverarbeitungsprozess ermöglichen. IBM-Forscher haben Möglichkeiten zur Überwachung und Aufrechterhaltung der Modellsicherheit untersucht.
Die Modellierung von Geräuschen, die durch Interaktionen mit physischen Objekten entstehen, ist für immersive Wahrnehmungserfahrungen in realen und virtuellen Welten von entscheidender Bedeutung. In diesem Dokument schlägt IBM ein physikbasiertes Diffusionsmodell vor, das hochpräzise Trittschallgeräusche für einen leisen Videoclip synthetisieren kann.
HINWEIS: Alle Links befinden sich außerhalb von ibm.com.
[1] „Improved Denoising Diffusion Probabilistic Models“, arXiv, 18. Februar 2021
[2] „Variational Diffusion Models“, arXiv, zuletzt überarbeitet am 14. April 2023