Die Notwendigkeit

Das Met arbeitete mit Microsoft und dem MIT zusammen, um zu untersuchen, wie Künstliche Intelligenz Menschen und Kunst verbinden könnte. Ziel war es, den Menschen weltweit neue Wege vorzustellen, eine der bedeutendsten Kunstsammlungen der Welt zu entdecken, davon und damit zu lernen und sich zu Kreativität inspirieren zu lassen.

Die Idee

Das Team begann mit zwei Fragen: Können wir Generative Adversarial Networks (GAN) nutzen, um Kunstwerke auf neue, interaktive Weise neu zu kombinieren? Wenn ja, können wir das mit der visuellen Suche kombinieren, damit jeder die Sammlung erkunden kann?

Die Lösung

Das Ergebnis war Gen Studio. Die Benutzer sind in der Lage, traumähnliche Bilder zu entdecken, die von einem GAN geschaffen und mithilfe von Künstlicher Intelligenz generiert wurden. Mit Gen Studio können wir nicht nur zufällige Werke erzeugen, sondern auch zwischen echten Werken in der Sammlung interpolieren.

Technische Details zu Gen Studio

Unsere erste Visualisierung ermöglicht es den Benutzern, einen zweidimensionalen Ausschnitt des riesigen, „unsichtbaren“ Raums des GAN zu erkunden. Die Benutzer können sich in diesem Raum bewegen und sehen, wie sich die Träume der GAN zu realen Elementen der Sammlung des Met entwickeln. Unsere zweite Visualisierung gibt dem Benutzer präzise Kontrolle darüber, wie mehrere Werke zu einem größeren Werk zusammengefügt werden können. Gen Studio zeigt die abgeleitete visuelle Struktur, die der Sammlung vom Met zugrunde liegt, und ermöglicht es Forschern, Kunstwerke zu schaffen und neu zu kombinieren, die eine Vielzahl von Stilen, Materialien und Formen nutzen.

Um diese Erfahrung zu schaffen, haben wir eine Mikrodienstarchitektur aus weit verzweigten Netzwerken, Azure-Diensten und Blob-Speicherung verwendet. Wir verwendeten Visual Studio Code zur Entwicklung einer Flask-API, um das GAN über einen Azure Kubernetes Service (AKS)-Cluster zu bedienen, der von Nvidia-GPUs betrieben wird. Diese Dienste ermöglichen es, neue Bilder in Echtzeit zu generieren. Azure Kubernetes Service optimiert den gesamten Ablauf und ermöglicht es, die Lösung schnell bereitzustellen, zu hosten und zu skalieren.

Unser GAN-Netz erzeugt Bilder aus einem Startwert oder Anfangsvektor von 140 Zahlen. Wir standen vor einer großen Herausforderung: Bilder des Met auf einen Startwert zu mappen, der sie erzeugt. Unsere Lösung basiert auf einer mit einem absteigenden Gradientenverfahren erzeugten Netzwerkinversion, um den Startwert für jedes Bild zu ermitteln. Der Schlüssel bestand darin, dem Netzwerk mitzuteilen, dass es nicht nur die Pixel des Zielbildes, sondern auch seine übergeordneten Merkmale und Inhalte abgleichen sollte.

Wir haben die Open-Access-Bilder in einen Azure Databricks-Cluster geladen. Mit Microsoft Machine Learning für Apache Spark (MMLSpark) haben zu den Bildern Anmerkungen aus der Azure Computer Vision API hinzugefügt. Wir entwickelten eine schnelle visuelle Ähnlichkeitssuche, indem wir alle Bilder mit ResNet50 kennzeichneten und einen lokal sensitiven Streuwert-Baum auf diesen Kennzeichen für die Suche nach dem näherungsweise nächsten Nachbarn erstellten. Wir haben dieses Modell in AKS eingesetzt und dann MMLSpark verwendet, um diese nächsten Nachbarn zu unserem Suchindex hinzuzufügen. Die Daten aus unserem Spark-Cluster wurden in den Azure Search Service eingetragen. Die Front-End-Anwendung wurde mit React erstellt und mit unserem App Service in Azure gehostet.

Ressourcen

Projekte im Umfeld von Gen Studio

Zu weiteren KI-Projekten im täglichen Leben

Entdecken Sie die Möglichkeiten von KI

Starten Sie Ihre eigenen KI-Innovationen mit Schulungsressourcen und Entwicklungslösungen von Microsoft AI.