Stable Diffusion ist ein Deep-Learning-Modell zur Text-zu-Bild-Generierung, das 2022 auf Basis von Diffusionstechniken veröffentlicht wurde. Die generative KI-Technologie ist das Hauptprodukt von Stability AI und gilt als Teil des anhaltenden KI-Booms. Sie wird hauptsächlich verwendet, um detaillierte Bilder zu erzeugen, die durch Textbeschreibungen konditioniert werden, kann aber auch für andere Aufgaben wie Inpainting, Outpainting und die Generierung von Bild-zu-Bild-Übersetzungen eingesetzt werden, die durch einen Textprompt gesteuert werden. An der Entwicklung waren Forscher der CompVis-Gruppe der LMU München und Runway beteiligt, mit einer Rechenspende von Stability und Trainingsdaten von gemeinnützigen Organisationen.
Stable Diffusion ist ein latentes Diffusionsmodell, eine Art tiefes generatives künstliches neuronales Netz. Sein Code und seine Modellgewichte wurden öffentlich freigegeben, und eine optimierte Version kann auf den meisten Consumer-Hardware mit einer bescheidenen GPU mit nur 2,4 GB VRAM ausgeführt werden. Dies markierte eine Abkehr von früheren proprietären Text-zu-Bild-Modellen wie DALL-E und Midjourney, die nur über Cloud-Dienste zugänglich waren.
Entwicklung
Stable Diffusion entstand aus einem Projekt namens latente Diffusion, das in Deutschland von Forschern der LMU München und der Universität Heidelberg entwickelt wurde. Vier der ursprünglich fünf Autoren (Robin Rombach, Andreas Blattmann, Patrick Esser und Dominik Lorenz) traten später Stability AI bei und veröffentlichten nachfolgende Versionen von Stable Diffusion. Die technische Lizenz für das Modell wurde von der CompVis-Gruppe an der LMU München freigegeben. Die Entwicklung wurde von Patrick Esser von Runway und Robin Rombach von CompVis geleitet, die zu den Forschern gehörten, die zuvor die latente Diffusionsmodell-Architektur erfunden hatten, die Stable Diffusion verwendet. Stability AI nannte auch EleutherAI und LAION, eine deutsche gemeinnützige Organisation, die den Datensatz zusammenstellte, mit dem Stable Diffusion trainiert wurde, als Unterstützer des Projekts.
Die Veröffentlichung von Stable Diffusion im Jahr 2022 markierte eine bedeutende Verschiebung in der Zugänglichkeit von generativen KI-Werkzeugen. Im Gegensatz zu früheren Modellen, die Cloud-Zugriff erforderten, konnte Stable Diffusion lokal ausgeführt werden, was einer breiteren Gemeinschaft von Künstlern und Entwicklern ermöglichte, mit Text-zu-Bild-Generierung zu experimentieren. Dies trug zu seiner schnellen Verbreitung und der Zunahme KI-generierter Kunst auf verschiedenen Online-Plattformen bei.
Technologie
Architektur
Diffusionsmodelle, die 2015 eingeführt wurden, werden mit dem Ziel trainiert, aufeinanderfolgende Anwendungen von Gaußschem Rauschen auf Trainingsbildern zu entfernen, was als eine Sequenz von Denoising-Autoencodern betrachtet werden kann. Der Name Diffusion stammt von der thermodynamischen Diffusion, da sie zuerst mit Inspiration aus der Thermodynamik entwickelt wurden. Modelle der Stable-Diffusion-Serie vor SD 3 verwendeten alle eine Variante von Diffusionsmodellen, das latente Diffusionsmodell (LDM), das 2021 von der CompVis-Gruppe (Computer Vision & Learning) an der LMU München entwickelt wurde.
Stable Diffusion besteht aus drei Teilen: dem variationalen Autoencoder (VAE), U-Net und einem optionalen Textencoder. Der VAE-Encoder komprimiert das Bild vom Pixelraum in einen kleineren latenten Raum und erfasst dabei eine grundlegendere semantische Bedeutung des Bildes. Gaußsches Rauschen wird während der Vorwärtsdiffusion iterativ auf die komprimierte latente Darstellung angewendet. Der U-Net-Block, der aus einem ResNet-Backbone besteht, entfernt das Rauschen aus der Ausgabe der Vorwärtsdiffusion rückwärts, um eine latente Darstellung zu erhalten. Schließlich erzeugt der VAE-Decoder das endgültige Bild, indem er die Darstellung zurück in den Pixelraum umwandelt.
Der Denoising-Schritt kann flexibel durch eine Textzeichenfolge, ein Bild oder eine andere Modalität konditioniert werden. Die kodierten Konditionierungsdaten werden über einen Cross-Attention-Mechanismus den Denoising-U-Nets ausgesetzt. Für die Konditionierung auf Text wird der feste, vortrainierte CLIP-ViT-L/14-Textencoder verwendet, um Textprompts in einen Einbettungsraum zu transformieren. Forscher weisen auf eine erhöhte Recheneffizienz für Training und Generierung als Vorteil von LDMs hin. Mit 860 Millionen Parametern im U-Net und 123 Millionen im Textencoder gilt Stable Diffusion nach den Standards von 2022 als relativ leichtgewichtig, und im Gegensatz zu anderen Diffusionsmodellen kann es auf Consumer-GPUs und sogar nur mit CPU ausgeführt werden, wenn die OpenVINO-Version von Stable Diffusion verwendet wird.
#### SD XL
Die XL-Version verwendet dieselbe LDM-Architektur wie frühere Versionen, nur größer: ein größeres UNet-Backbone, einen größeren Cross-Attention-Kontext, zwei Textencoder statt einem und wurde mit mehreren Seitenverhältnissen trainiert (nicht nur dem quadratischen Seitenverhältnis wie frühere Versionen). Der SD-XL-Refiner, der gleichzeitig veröffentlicht wurde, hat dieselbe Architektur wie SD XL, wurde jedoch darauf trainiert, feine Details zu bereits vorhandenen Bildern über textbedingtes img2img hinzuzufügen.
#### SD 3.0
Die 3.0-Version ändert das Backbone vollständig. Nicht ein UNet, sondern ein Rectified-Flow-Transformer, der die Rectified-Flow-Methode mit einem Transformer implementiert. Die für SD 3.0 verwendete Transformer-Architektur hat drei "Spuren" für ursprüngliche Textkodierung, transformierte Textkodierung und Bildkodierung (im latenten Raum). Die transformierte Textkodierung und die Bildkodierung werden während jedes Transformer-Blocks gemischt. Die Architektur wird als "multimodaler Diffusionstransformer (MMDiT)" bezeichnet, wobei "multimodal" bedeutet, dass sie Text- und Bildkodierungen in ihren Operationen mischt. Dies unterscheidet sich von früheren Versionen von DiT, bei denen die Textkodierung die Bildkodierung beeinflusst, aber nicht umgekehrt.
Trainingsdaten
Stable Diffusion wurde mit Paaren von Bildern und Bildunterschriften aus LAION-5B trainiert, einem öffentlich verfügbaren Datensatz, der aus Common-Crawl-Daten stammt, die aus dem Web gescrapt wurden, wobei 5 Milliarden Bild-Text-Paare nach Sprache klassifiziert und in separate Datensätze nach Auflösung, einer vorhergesagten Wahrscheinlichkeit, ein Wasserzeichen zu enthalten, und einem vorhergesagten "ästhetischen" Score (z. B. subjektive visuelle Qualität) gefiltert wurden. Der Datensatz wurde von LAION erstellt, einer deutschen gemeinnützigen Organisation, die Mittel von Stability AI erhält. Das Stable-Diffusion-Modell wurde mit drei Teilmengen von LAION-5B trainiert: laion2B-en, laion-high-resolution und laion-aesthetics v2 5+. Eine Drittanbieter-Analyse der Trainingsdaten des Modells ergab, dass von einer kleineren Teilmenge von 12 Millionen Bildern aus dem ursprünglichen breiteren Datensatz etwa 47 % der Bildstichprobe aus 100 verschiedenen Domänen stammten, wobei Pinterest 8,5 % der Teilmenge ausmachte, gefolgt von Websites wie WordPress, Blogspot, Flickr, DeviantArt und Wikimedia Commons. Eine Untersuchung des Bayerischen Rundfunks zeigte, dass die LAION-Datensätze, die auf Hugging Face gehostet werden, große Mengen privater und sensibler Daten enthalten.
Trainingsverfahren
Das Modell wurde zunächst mit den Teilmengen laion2B-en und laion-high-resolution trainiert, wobei die letzten Trainingsrunden mit LAION-Aesthetics v2 5+ durchgeführt wurden, einer Teilmenge von 600 Millionen beschrifteten Bildern, bei denen der LAION-Aesthetics-Predictor V2 vorhersagte, dass Menschen ihnen im Durchschnitt eine Punktzahl von mindestens 5 von 10 geben würden, wenn sie gefragt würden, wie sehr sie sie mögen. Die Teilmenge LAION-Aesthetics v2 5+ schloss auch Bilder mit niedriger Auflösung und Bilder aus, die von LAION-5B-WatermarkDetection mit einer Wahrscheinlichkeit von mehr als 80 % als mit einem Wasserzeichen versehen identifiziert wurden. In den letzten Trainingsrunden wurden zusätzlich 10 % der Textkonditionierung entfernt, um die klassifikatorfreie Diffusionsführung zu verbessern. Das Modell wurde mit 256 Nvidia-A100-GPUs auf Amazon Web Services für insgesamt 150.000 GPU-Stunden zu einem Preis von 600.000 US-Dollar trainiert.
Auswirkungen und Vermächtnis
Die öffentliche Veröffentlichung von Stable Diffusions Code und Gewichten hatte einen tiefgreifenden Einfluss auf das Feld der künstlichen Intelligenz und der digitalen Kunst. Sie demokratisierte den Zugang zu leistungsstarker Text-zu-Bild-Generierung und ermöglichte Einzelpersonen und kleinen Teams, hochwertige Bilder ohne teure Cloud-Infrastruktur zu erstellen. Dies führte zu einem Anstieg kreativer Anwendungen, von Konzeptkunst und Illustration bis hin zu Werbung und Spieldesign. Das Modell förderte auch weitere Forschung im Bereich maschinelles Lernen, insbesondere in Bereichen wie Modellkompression und effizienter Inferenz, da Entwickler versuchten, das Modell auf zunehmend bescheidener Hardware auszuführen.
Stable Diffusion warf auch wichtige ethische und rechtliche Fragen zu Urheberrecht, Datenschutz und dem Potenzial für Missbrauch auf. Die Verwendung gescrappter Webdaten für das Training, einschließlich urheberrechtlich geschützter Bilder und persönlicher Informationen, wurde Gegenstand von Debatten und Rechtsstreitigkeiten. Diese Bedenken führten zu Diskussionen über die Notwendigkeit transparenterer und verantwortungsvollerer Datenpraktiken bei der Entwicklung generativer Modelle und beeinflussten nachfolgende Arbeiten in diesem Bereich.
Einschränkungen
Stable Diffusion hat Probleme mit Degradation und Artefakten, insbesondere bei der Generierung komplexer Szenen oder Texte. Es kann Schwierigkeiten mit anatomischer Korrektheit haben und Bilder mit verzerrten Händen oder Gesichtern erzeugen, und es kann Text in Bildern möglicherweise nicht genau darstellen. Die Leistung des Modells hängt auch von der Qualität und Vielfalt seiner Trainingsdaten ab, was zu Verzerrungen in den generierten Bildern führen kann. Darüber hinaus bleiben die Rechenkosten für das Training und die Feinabstimmung großer Modelle wie SD 3.0 erheblich, was die Experimente einiger Forscher und Entwickler einschränkt.