KI News #40
Hallo und herzlich willkommen zur vierzigsten Ausgabe von KI News. Heute dreht sich alles um eines der spannendsten Themen der letzten Monate: Diffusion Models.
Es gab so viele neue Entwicklungen in diesem Bereich, dass ich mich entschieden habe, in dieser Sonderausgabe zu erklären was Diffusion Models sind, wie sie funktionieren und natürlich auch die neuesten Entwicklungen aus der Forschung zu beschreiben.
Viel Spaß beim Lesen!
Was sind Diffusion Models?
Eigentlich handelt es sich dabei nicht um eine neue Art von Modellen, sondern um eine spezielle Methode, um neuronale Netze zu trainieren und zu benutzen. Wie das funktioniert erkläre ich im nächsten Abschnitt.
Entwickelt wurden Diffusion Models im Jahr 2015, von Forscher:innen in Stanford und der University of California, Berkeley.
Der wichtigste Anwendungsfall für Diffusion Models ist heute das Erzeugen von Bildern. Und tatsächlich wurde das auch schon in der ursprünglichen Veröffentlichung beschrieben.
Es dauerte aber noch bis 2021, bis es Forscher:innen von OpenAI zum ersten Mal schafften, ein Diffusion Model zu trainieren, das besser war als der bis dahin beste Ansatz zur Bildgenerierung, die sogenannten GANs (mein Newsletter von damals dazu).
Heute gibt es einige Modelle, die auf dem Diffusion-Prinzip basieren und sehr beeindruckende Ergebnisse liefern.
Die bekanntesten Beispiele dafür sind wahrscheinlich Stable Diffusion (von Forscher:innen der LMU in München und der Uni Heidelberg), DALL-E (Open AI) und Imagen (Google).
Wie funktionieren Diffusion Models?
Die Idee für Diffusion Models kommt vom physikalischen Prozess der Diffusion. Dabei verteilt sich ein Stoff, beispielsweise ein Gas oder eine Flüssigkeit, in einem anderen, bis die Konzentration überall gleich ist.
Für Diffusion Models wird dieses Konzept auf digitale Daten übertragen, zum Beispiel Bilder.
Wie funktioniert das?
Den Bildern aus den Trainingsdaten wird Schritt für Schritt immer mehr zufälliges Rauschen hinzugefügt, bis nur noch Rauschen übrig ist - die Analogie zu einem vollständig verteilten Gas.
Mit dieser Reihe von immer stärker verrauschten Bildern wird dann ein neuronales Netz darauf trainiert, das Rauschen, das in einem Schritt hinzugefügt wurde, zu erkennen. Damit kann es dann einen dieser Schritte rückgängig machen.
So lernt es, das Rauschen Schritt für Schritt wieder zu entfernen.
Wenn man einem so trainierten neuronalen Netz jetzt kein verrauschtes Bild gibt, sondern einfach zufälliges Rauschen, dann kann man es dazu bringen, ein ganz neues Bild zu generieren.
Dazu lässt man es einfach das Rauschen Schritt für Schritt in ein Bild umwandeln.
Durch zusätzliche Eingabedaten kann das Modell außerdem darauf trainiert werden, eine bestimmte Art von Bildern zu erzeugen, die zum Beispiel zu einem Text passen.
Aktuelle Entwicklungen bei Diffusion Models
Imagen Video
Imagen Video ist ein Diffusion Modell, das ein Video passend zu einem Text generieren kann. Entwickelt wurde es von Forscher:innen bei Google Research.
Imagen Video benutzt einen mehrstufigen Prozess: Zuerst wird der Eingabetext durch ein neuronales Netz (ein "Encoder") geschickt, der ihn vorverarbeitet. Danach folgen eine Reihe von Diffusion Modellen. Das erste generiert ein Video mit geringer Auflösung und nur drei Bildern pro Sekunde. Die darauf folgenden Modelle erhöhen Schritt für Schritt sowohl Auflösung als auch Bildrate, bis am Ende ein Video mit einer Auflösung von 1280×768 Pixeln und 24 Bildern pro Sekunde steht.
3DiM: Neue Blickwinkel durch ein Diffusion Model
Dass Diffusion Modelle nicht nur Bilder und Videos generieren können, sondern auch mit dreidimensionalen Darstellungen umgehen können, zeigt ein anderes Forscher:innen-Team von Google.
Das
3DiM genannte Modell bekommt als Eingabe ein Bild von einem Gegenstand, seine aktuelle Stellung und eine Ziel-Stellung. Daraus kann es dann ein Bild des Gegenstands in der Ziel-Stellung erzeugen.
Ein Beispiel: Das Eingabebild ist ein Auto, das von vorne rechts zu sehen ist. In der Ziel-Stellung ist das Auto um 180° gedreht, so dass man es von hinten links sehen würde. Dann kann das Modell ein Bild des Autos von hinten links generieren.
Human Motion Diffusion Model
Das
Human Motion Diffusion Model wurde von Forscher:innen der Universität von Tel Aviv entwickelt. Es kann eine Animation von einem sich bewegenden Menschen generieren.
Welche Art von Bewegung der Mensch machen soll, lässt sich dabei auf verschiedene Weise beeinflussen. Der wichtigste Fall ist ein kurzer Text, der die Bewegung beschreibt, zum Beispiel "Eine Person läuft langsam rückwärts". Es kann aber auch nur eine Art von Bewegung vorgegeben werden, beispielsweise "Rennen". Außerdem kann das Modell nicht nur komplett neue Animationen erzeugen, sondern auch nur einen Teil einer bereits bestehenden Bewegung verändern.
Die Diffusion Models, die Bilder generieren, basieren üblicherweise auf einem neuronalen Netz, das auf Bilder spezialisiert ist, zum Beispiel einem
U-Net. Im Gegensatz dazu basiert das
Human Motion Diffusion Model auf einem
Transformer, der in jedem Diffusions-Schritt die Bewegung vorhersagt.
DreamFusion
Das
DreamFusion Modell, von Forscher:innen von Google und der University of California, Berkeley, kann aus einer Beschreibung ein 3D Bild erzeugen. Der Prozess dafür ist allerdings recht komplex.
Zuerst wird für jede Beschreibung ein sogenanntes
Neural Radiance Field (NeRF) trainiert, eine Art 3D-Darstellung in Form eines neuronalen Netzes.
Aus dieser Darstellung wird dann ein zufälliger Blickwinkel genommen, Licht und Schatten werden hinzugefügt und am Ende noch zufälliges Rauschen. Dann wird das
Imagen Modell benutzt, um aus dem verrauschten Bild wieder ein gutes Bild zu machen.
Der Unterschied zwischen dem Bild vor dem Verrauschen und der Ausgabe von Imagen wird dann benutzt, um das NeRF zu trainieren, aus jedem Blickwinkel genauso gute Bilder zu erzeugen wie Imagen.
Re-Imagen
Das
Re in
Re-Imagen steht für
Retrieval, also das Abrufen von Daten. Damit beheben die Forscher:innen eine Schwäche der aktuellen Diffusion Models. Diese haben Probleme, gute Bilder zu erzeugen, wenn etwas nur relativ selten in den Trainingsdaten vorkommt.
Die Lösung dafür ist, den Eingabetext nicht nur an das Modell weiterzugeben, sondern auch zu ihm passende Bilder aus einer Datenbank abzufragen. So kann man für jede Eingabe passende Bilder finden, und sie dem Modell während dem Generieren des neuen Bildes als Zusatzinformationen geben.
Dadurch konnte besonders die Qualität von Bildern verbessert werden, deren Beschreibungen nur selten in den Trainingsdaten vorkommen.
Außerdem
- Microsoft hat angekündigt, DALL-E 2 in einige seiner Programme einzubinden: 📖 Artikel bei Techcrunch
- Shutterstock hat angekündigt, neben den üblichen Stock-Fotos in Zukunft auch Bilder zu verkaufen, die von DALL-E 2 generiert wurden: 📖 Artikel bei The Verge
- Der Konkurrent Getty Images hält das Verkaufen von KI-generierten Bildern dagegen für gefährlich und möglicherweise illegal: 📖 Artikel bei The Verge
- Blogeintrag darüber, welchen Einfluss die aktuellen ML Modelle auf Pixelart Künstler haben: 📖 Blogeintrag bei Pixelparmesan
- Stability AI, die Firma, die Stable Diffusion vermarktet, hat Version 2 veröffentlicht: 📖 Blogeintrag bei Stability AI
- Kurs von Huggingface zu Diffusion Models: 📖 Kurs auf Github
« VorherigeNächste »