Die vollständigste und detaillierteste Darstellung des Diffusionsmodells

Transformer ist in letzter Zeit im Bereich der KI-Malerei sehr beliebt geworden. KI-Maleffekte sind im Jahr 2022 aus dem Albtraum von DeepDream erwacht und haben begonnen, Illustrationseffekte und assoziative Effekte zu erstaunlichen Effekten aus OpenAIs DALL·E 2[2] anzuziehen 2022. .
Fügen Sie hier eine Bildbeschreibung ein
Aber Sie müssen verstehen: Transformer bringt KI + Kunst, ausgehend von der Sprache, der Begegnung mit Multimodalität und der Kollision mit dem Funken der Kunst. Dieses Thema erfordert viele zusätzliche Wissenspunkte. Es kann sich von der Art und Weise unterscheiden, wie Wunder erreicht werden in Bereichen wie Lebenslauf und NLP. AI + Zusätzlich zur Begegnung mit der Transformer-Struktur wird die Kunstsitzung auch eine Reihe mathematikbezogener Kenntnisse wie VAE, ELBO und Diffusionsmodell beinhalten.
In der Transformer + Art-Reihe wurde heute eine neue Grube für Diffusionsmodelle gegraben. Wie bei VAE ist das Prinzip sehr kompliziert und die Implementierung sehr grob. Es wird gesagt, dass das generative Diffusionsmodell für seine mathematische Komplexität bekannt ist und viel schwieriger zu verstehen zu sein scheint als VAE und GAN. Stimmt das? Könnten Diffusionsmodelle weniger mathematisch sein? Kann das Diffusionsmodell wirklich einen einfachen Punkt nicht verstehen?
In diesem Artikel untersuchen wir die theoretischen Grundlagen von Diffusionsmodellen und zeigen dann, wie Diffusionsmodelle in PyTorch zum Generieren von Bildern verwendet werden. Lass uns eintauchen!

1. Grundlegende Einführung in das Diffusionsmodell

Diffusionsmodelle haben seit ihrer Veröffentlichung nicht viel Beachtung gefunden, da sie nicht so einfach und leicht zu verstehen sind wie GAN. In den letzten Jahren ist jedoch das Gebiet der generativen Modelle gewachsen. Die beiden fortschrittlichsten textgenerierten Bilder, DALL·E 2 von OpenAI und Imagen von Google, basieren auf dem Diffusionsmodell.

Fügen Sie hier eine Bildbeschreibung ein
Heutzutage ist das Feuer der Generierung eines Diffusionsmodells das im Jahr 2020 vorgeschlagene DDPM (Denoising Diffusion Probabilistic Model). Allein das im Jahr 2020 veröffentlichte bahnbrechende Papier DDPM hat der Welt die Leistungsfähigkeit des Diffusionsmodells gezeigt, das sich in der Bildsynthese durchgesetzt hat. GAN, so begannen viele nachfolgende Bilderzeugungsbereiche, sich der Forschung im Bereich DDPM zuzuwenden.

Nach dem Lesen vieler Artikel im Internet wird bei der Einführung von DDPM die Wahrscheinlichkeitsübergangsverteilung eingeführt, gefolgt von der Variationsinferenz und dann der Maximum-Likelihood-Lösung und der Einführung der Evidenzuntergrenze (Evidence Lower Bound). Eine Reihe mathematischer Notationen haben mich vor einigen Wochen zum ersten Mal abgeschreckt (aus dieser Einführung können wir natürlich wieder ersehen, dass DDPM tatsächlich sehr eng mit der VAE-Theorie zusammenhängt), gepaart mit den traditionellen Diffusionsmodellen, die den Menschen inhärent sind, und bilden so die Illusion, dass „sehr tiefe mathematische Kenntnisse erforderlich“ sind.

2. Vergleich der generierten Modelle

Werfen wir zunächst einen Blick auf die kürzlich beliebten generativen Modelle GAN, VAE, Flow-based Models und Diffusion Models.

GAN besteht aus einem Generator (Generator) und einem Diskriminator (Diskriminator). Der Generator ist für die Erzeugung realistischer Daten verantwortlich, um den Diskriminator zu „betrügen“, und der Diskriminator ist für die Beurteilung verantwortlich, ob eine Probe real oder „erfunden“ ist. Das Training von GAN besteht eigentlich aus zwei Modellen, die voneinander lernen. Können wir es „Konfrontation“ nennen und harmonischer sein?

VAE möchte außerdem ein generatives Modell trainierenFügen Sie hier eine Bildbeschreibung ein

Dieses Modell ist in der Lage, die abgetastete Wahrscheinlichkeitsverteilung auf die Wahrscheinlichkeitsverteilung des Trainingssatzes abzubilden. Generieren Sie eine latente Variable z, und z enthält sowohl Dateninformationen als auch Rauschen. Zusätzlich zur Wiederherstellung der eingegebenen Beispieldaten kann es auch zum Generieren neuer Daten verwendet werden.
Fügen Sie hier eine Bildbeschreibung ein
Diffusionsmodelle basieren auf der Nichtgleichgewichts-Thermodynamik. Die Theorie definiert zunächst eine Markov-Kette von Diffusionsschritten, um den Daten langsam zufälliges Rauschen hinzuzufügen, und lernt dann einen umgekehrten Diffusionsprozess, um aus dem Rauschen die gewünschten Datenproben zu konstruieren. Im Gegensatz zu VAE- oder Strömungsmodellen werden Diffusionsmodelle durch einen festen Prozess erlernt und der latente Raum
weist eine relativ hohe Dimensionalität auf.

Im Allgemeinen befindet sich der Bereich der Diffusionsmodelle in einer Blütephase. Dieser Bereich ähnelt ein wenig dem Zeitpunkt, als GAN erstmals vorgeschlagen wurde. Die aktuelle Trainingstechnologie ermöglicht es Diffusionsmodellen, die Modellanpassungsphase im GAN-Bereich direkt zu überspringen und direkt zu verwenden für nachgelagerte Zwecke. Aufgabe.

3. Verstehen Sie das Diffusionsmodell intuitiv

Ein generatives Modell besteht im Wesentlichen aus einer Reihe von Wahrscheinlichkeitsverteilungen. Wie in der folgenden Abbildung dargestellt, befindet sich links ein Trainingsdatensatz. Alle darin enthaltenen Daten stammen von bestimmten DatenFügen Sie hier eine Bildbeschreibung ein

Eine Zufallsstichprobe aus einer unabhängigen und identischen Verteilung. Auf der rechten Seite ist das generative Modell (Wahrscheinlichkeitsverteilung) zu sehen. Finden Sie in dieser Wahrscheinlichkeitsverteilung eine Verteilung Pθ, die Pdata am nächsten kommt. Nehmen Sie dann
eine neue Probe auf und Sie erhalten einen stetigen Strom neuer Daten.
Fügen Sie hier eine Bildbeschreibung ein
Die Form von Pdata ist jedoch oft sehr komplex und die Bilddimension ist sehr hoch. Es ist für uns schwierig, den gesamten Raum zu durchqueren, und die Datenproben, die wir beobachten können, sind ebenfalls begrenzt.

Was macht Diffusion?

Wir können Rauschen zu jeder Verteilung hinzufügen, einschließlich der Pdata, an denen wir interessiert sind, sodass daraus schließlich eine reine Rauschverteilung N(0,I) wird. Wie verstehst du es?

Betrachten Sie aus der Perspektive der Wahrscheinlichkeitsverteilung die zweidimensionale gemeinsame Wahrscheinlichkeitsverteilung P (x, y) der Form der Biskuitrolle in der folgenden Abbildung. Der Diffusionsprozess q ist sehr intuitiv und die ursprünglich konzentrierten und geordneten Abtastpunkte werden gestört durch Lärm und diffundiert nach außen, bis es schließlich zu einer völlig ungeordneten Lärmverteilung kommt.
Fügen Sie hier eine Bildbeschreibung ein
Das Diffusionsmodell ist eigentlich der umgekehrte Prozess P auf dem Bild, der eine Rauschverteilung N(0,1) nach und nach entrauscht und auf Pdata abbildet. Mit einer solchen Abbildung nehmen wir eine Stichprobe aus der Rauschverteilung und erhalten schließlich ein Das gewünschte Bild kann generiert werden.

Betrachtet man diesen Prozess anhand einer einzelnen Bildprobe, besteht der Diffusionsprozess q darin, dem Bild kontinuierlich Rauschen hinzuzufügen, bis das Bild zu reinem Rauschen wird, und der umgekehrte Diffusionsprozess P ist der Prozess der Erzeugung eines Bildes aus reinem Rauschen.
Wie in der Abbildung gezeigt: Änderungen in einem einzelnen Bildbeispiel
Fügen Sie hier eine Bildbeschreibung ein

4. Formale Analyse des Diffusionsmodells

Diffusionsmodelle werden generative Modelle genannt, was bedeutet, dass Diffusionsmodelle verwendet werden, um Daten zu generieren, die den Trainingsdaten ähneln. Grundsätzlich funktionieren Diffusionsmodelle, indem sie die Trainingsdaten verfälschen, indem sie kontinuierlich Gaußsches Rauschen hinzufügen, und dann lernen, die Daten durch Umkehren dieses Rauschprozesses wiederherzustellen.

Nach dem Training können Sie Diffusionsmodelle verwenden, um zufällig abgetastetes Rauschen an das Modell weiterzuleiten und Daten zu generieren, indem Sie den Entrauschungsprozess erlernen. Das ist das Grundprinzip, das dem Bild unten entspricht, aber das Bild hier ist noch etwas dick.
Fügen Sie hier eine Bildbeschreibung ein
Genauer gesagt ist das Diffusionsmodell ein latentes Variablenmodell, das mithilfe einer Markov-Kette (MC) auf den latenten Raum abgebildet wird. Durch die Markov-Kette wird bei jedem Zeitschritt t nach und nach Rauschen zu den Daten xi hinzugefügt, um die Posterior-Wahrscheinlichkeit q(x1:T|x0) zu erhalten, wobei x1,...,xT die Eingabedaten darstellen und auch den latenten Raum darstellen . Mit anderen Worten: Der latente Raum von Diffusionsmodellen hat die gleichen Abmessungen wie die Eingabedaten.

  • Posterior-Wahrscheinlichkeit. In der Bayes'schen Statistik ist die Posterior-Wahrscheinlichkeit eines zufälligen Ereignisses oder eines unsicheren Ereignisses die bedingte Wahrscheinlichkeit, die man nach Berücksichtigung und Angabe relevanter Beweise oder Daten erhält.
  • Eine Markov-Kette ist ein zufälliger Prozess im Zustandsraum, der von einem Zustand in einen anderen übergeht. Dieser Prozess erfordert „gedächtnislose“ Eigenschaften: Die Wahrscheinlichkeitsverteilung des nächsten Zustands kann nur durch den aktuellen Zustand bestimmt werden, und die vorherigen Ereignisse in der Zeitreihe haben nichts damit zu tun. Diese spezielle Art der „Gedächtnislosigkeit“ wird Markov-Eigenschaft genannt.
    Diffusionsmodelle werden in Vorwärtsdiffusionsprozesse und Rückwärtsdiffusionsprozesse unterteilt. Die folgende Abbildung zeigt den Diffusionsprozess. Von x0 bis zum endgültigen xT handelt es sich um eine Markov-Kette, die den zufälligen Übergangsprozess von einem Zustand in einen anderen im Zustandsraum darstellt. Der Index ist der Bilddiffusionsprozess, der den Diffusionsmodellen entspricht.
    Fügen Sie hier eine Bildbeschreibung ein

Schließlich wird die reale Bildeingabe von x0 nach Diffusionsmodellen asymptotisch in ein reines Gaußsches Rauschbild xT transformiert. Das Modelltraining konzentriert sich hauptsächlich auf den inversen Diffusionsprozess. Das Ziel des Trainings eines Diffusionsmodells besteht darin, die Umkehrung des Vorwärtsprozesses zu lernen, also eine Wahrscheinlichkeitsverteilung zu trainieren Fügen Sie hier eine Bildbeschreibung ein
. Neue Daten x0 können durch Rückwärtsdurchlauf entlang der Markov-Kette regeneriert werden.
Es ist etwas interessant, das zu lesen. Der größte Unterschied zwischen Diffusionsmodellen und GAN oder VAE besteht darin, dass es nicht durch ein Modell generiert wird, sondern auf der Markov-Kette basiert und Daten durch Lernen von Rauschen generiert.
Fügen Sie hier eine Bildbeschreibung ein
Diffusionsmodelle erzeugen nicht nur unterhaltsame Bilder in hoher Qualität, sondern bieten auch viele weitere Vorteile. Der wichtigste davon ist, dass es während des Trainingsprozesses keine Konfrontation gibt. Bei GAN-Netzwerkmodellen ist das gegnerische Training tatsächlich sehr schwierig zu debuggen. Weil die Zwei Modelle, die während des Trainingsprozesses miteinander konkurrieren, sind für uns eine Blackbox. Darüber hinaus ist das Diffusionsmodell im Hinblick auf die Trainingseffizienz auch skalierbar und parallelisierbar. Es wird sehr interessant sein, den Trainingsprozess zu beschleunigen, mehr mathematische Regeln und Einschränkungen hinzuzufügen und ihn auf Sprache, Text und dreidimensionale Felder auszudehnen . Viele neue Artikel.

5. Detaillierte Erläuterung des Diffusionsmodells

Es wurde oben klar dargelegt, dass Diffusionsmodelle aus einem Vorwärtsprozess (oder Diffusionsprozess) und einem Rückwärtsprozess (oder umgekehrten Diffusionsprozess) bestehen, bei dem die Eingabedaten allmählich verrauscht werden und das Rauschen dann wieder in Abtastwerte umgewandelt wird Quell-Ziel-Verteilung.
Als nächstes wird es ein bisschen Mathematik geben. Ich kann nur sagen, dass ich versuchen werde, es so einfach wie möglich zu machen, nämlich eine Markov-Kette + bedingte Wahrscheinlichkeitsverteilung. Der Kern besteht darin, wie das neuronale Netzwerkmodell verwendet wird, um die Wahrscheinlichkeitsverteilung des Markov-Prozesses zu lösen.

5.1 Diffusionsvorwärtsprozess (Diffusionsprozess)

Die Trainingsdaten von ChatGPT basieren auf massiven Textdaten in der Internetwelt. Wenn die Textdaten selbst ungenau sind oder eine gewisse Verzerrung aufweisen, kann das aktuelle ChatGPT sie nicht unterscheiden, sodass sie zwangsläufig bei der Beantwortung von Fragen verwendet werden. Genauigkeit auch als Voreingenommenheit vermittelt werden.
Fügen Sie hier eine Bildbeschreibung ein
Fügen Sie hier eine Bildbeschreibung ein
Fügen Sie hier eine Bildbeschreibung ein
Fügen Sie hier eine Bildbeschreibung ein

5.2 Diffusion umgekehrter Diffusionsprozess

Fügen Sie hier eine Bildbeschreibung ein
Fügen Sie hier eine Bildbeschreibung ein
Fügen Sie hier eine Bildbeschreibung ein
Fügen Sie hier eine Bildbeschreibung ein
Fügen Sie hier eine Bildbeschreibung ein

5.3 Trainingsausfall

Fügen Sie hier eine Bildbeschreibung ein
Fügen Sie hier eine Bildbeschreibung ein
Fügen Sie hier eine Bildbeschreibung ein
Fügen Sie hier eine Bildbeschreibung ein
Fügen Sie hier eine Bildbeschreibung ein
Fügen Sie hier eine Bildbeschreibung ein

5.4 Schulungsprozess

Benutzer geben bei der Verwendung von ChatGPT Informationen ein. Aufgrund der leistungsstarken Funktionen von ChatGPT verwenden einige Mitarbeiter ChatGPT zur Unterstützung ihrer Arbeit, was bei dem Unternehmen zu Bedenken hinsichtlich der Offenlegung von Geschäftsgeheimnissen geführt hat. Denn die Eingabeinformationen können als Trainingsdaten für weitere Iterationen von ChatGPT verwendet werden.
Fügen Sie hier eine Bildbeschreibung ein

6. Zusammenfassung

Fügen Sie hier eine Bildbeschreibung ein

Verweise

https://zhuanlan.zhihu.com/p/549623622
https://zhuanlan.zhihu.com/p/449284962
https://zhuanlan.zhihu.com/p/532736667
https://zhuanlan.zhihu.com/p /525106459
https://lilianweng.github.io/posts/2021-07-11-diffusion-models/
Entrauschen von Diffusions-Wahrscheinlichkeitsmodellen
Diffusionsmodelle schlagen GANs bei der Bildsynthese
Deep Unsupervised Learning mit Nichtgleichgewichts-Thermodynamik
Generative Modellierung durch Schätzung von Gradienten der Datenverteilung
Entrauschende Diffusions-Wahrscheinlichkeitsmodelle

7. Begrüßen Sie alle, sich der Kolumne [Artificial Intelligence Algorithm Frontier] anzuschließen.

Diese Kolumne behandelt Computer Vision, Verarbeitung natürlicher Sprache, maschinelles Lernen und andere Bereiche im Zusammenhang mit künstlicher Intelligenz.

In dieser Kolumne werden die Prinzipien des Hot-Algorithmus in verschiedenen Bereichen ausführlich und umfassend erläutert und der Papiercode Schritt für Schritt von Grund auf reproduziert.

Supongo que te gusta

Origin blog.csdn.net/DFCED/article/details/132394895
Recomendado
Clasificación