[PYTHON] Neuronaler Netzwerkalgorithmus im Malstil (Magenta-Übersetzung, bei der künstliche Intelligenz Kunst und Musik schafft)

Einführung

Dieser Artikel ist die Dokumentation für das Magenta-Projekt von Google. Dies ist eine Übersetzung von "Ein neuronaler Algorithmus des künstlerischen Stils" (Cinjon Resnick). Dieses Dokument ist ein Übersichtsartikel von Artikel mit dem gleichen Namen von Gatys et al.. Dies ist ein Ergebnis, das unter Apache License, Version 2.0 vertrieben wird.

Google Brain hat Magenta gestartet, ein Projekt zur Erzeugung von Kunst und Musik durch tiefes Lernen. Eines der Ziele von Magenta ist es, die Forschung des Projekts vorzustellen und Übersichtsartikel für mehrere Artikel zu veröffentlichen.

In diesem Übersichtsartikel wird ein Artikel mit dem Titel "Ein neuronaler Algorithmus des künstlerischen Stils" vorgestellt. Dies ist ein Artikel, der die Forschung zur Stilkonvertierung durch tiefes Lernen beschreibt und zu einem heißen Thema geworden ist. Heutzutage wurden Forschungen wie die Videokonvertierung angekündigt, und wir können die neuen Möglichkeiten neuronaler Netze spüren.

Algorithmus für ein neuronales Netzwerk im Malstil

Kürzlich, im August 2015, veröffentlichten Gatys und Kollegen von der Universität Tübingen "Ein neuronaler Algorithmus des künstlerischen Stils". In diesem Artikel wurde erklärt, wie man ein Werk im Stil eines anderen ausdrückt, und es ging um die Facebook-Wände (Posts) auf der ganzen Welt. Es hat die Aufmerksamkeit der Öffentlichkeit auf sich gezogen und wurde als fähig anerkannt, diese Technologie in den Tools zu verwenden, die wir für Bild-Apps entwickelt haben, um kreative Kunst zu schaffen.

Du kannst das.

image

In diesem Artikel wird eine Technologie angenommen, die den Stil des Eingabebilds S mit dem Inhalt des Eingabebilds C (was auf das Bild übertragen wird) verbindet. Das Bild oben ist "Star Moon Tubingen", S ist ein Foto von Van Gochs Star Moon Night und C ist ein Foto der Universität Tübingen. Diese Technologie besteht aus Stilverlust Ls und Inhaltsverlust Lc [Energieminimierungsproblem](https://ja.wikipedia.org/wiki/%E6%9C%80%E9%81%A9%E5% Es ist notwendig, 8C% 96% E5% 95% 8F% E9% A1% 8C) zusammenzubauen. Die Schlüsselidee besteht darin, ein tiefes Faltungsnetzwerk (VGG-19) zu verwenden, das ein hierarchisches Verständnis von Bildern ermöglicht. Das ist. Als Index für den Malstil wird die Korrelation mehrschichtiger Merkmale aus VGG extrahiert. Andererseits entspricht das, was Inhalt darstellt, der Ausdrucksmenge einer bestimmten Ebene.

Der Inhaltsverlust wurde durch den rohen L2-Fehler einer bestimmten Schicht definiert. Um klarer zu sein, haben wir die Conv4_2-Schicht für Lc verwendet und den quadratischen Fehlerverlust berechnet, indem wir die Ausgabe der Schicht bei Verwendung von X und die Ausgabe der Schicht bei Verwendung von C halbiert haben.

Andererseits verwendete dieses Papier als Bildverlust die Gramm-Matrix. Diese Matrix ist ein internes Produkt der vektorisierten Merkmale einer gegebenen Schicht. Empirisch gesehen sind dies sehr gute Substitute für die Merkmalskorrelation, und der L2-Fehler zwischen der Grammmatrix eines Bildes und der Grammmatrix eines anderen Bildes ist ein sehr guter Weg, um zu vergleichen, wie nahe ihre Stile sind. Es klappt. Wenn Algorithmen wie die Texturmodellierung betrachtet werden, kann die Gramm-Matrix intuitiver als eine Statistik betrachtet werden, die den Raum innerhalb dessen, was das Merkmal darstellt, zusammenfasst. Die Verwendung dieser Funktionen ist ein guter Ersatz für ähnliche Stile.

Schließlich wird Ls unter Verwendung des mittleren quadratischen Fehlers zwischen Grammmatrizen berechnet. Berechnen Sie den mittleren quadratischen Fehler der X- und S-Gramm-Matrizen für jede Schicht von Conv1_1, conv2_2, conv3_1, conv4_1, conv5_1. Die Summe dieser Fehler ist der Verlust des Stils Ls.

Machen Sie X zum ersten Bild mit weißem Rauschen und kombinieren Sie diese Verluste mit der [L-BFGS-Methode](https://ja.wikipedia.org/wiki/%E6%BA%96%E3%83%8B%E3%83] % A5% E3% 83% BC% E3% 83% 88% E3% 83% B3% E6% B3% 95), um einen Stilumwandlungseffekt zu minimieren und zu erzeugen. Natürlich müssen Sie möglicherweise Anpassungen vornehmen, und die Gewichtsparameter Lc und Ls sind etwas C- und S-abhängig. Das Initialisieren von X mit einem S- oder C-Bild wird wahrscheinlich funktionieren, jedoch mit deterministischen Ergebnissen. In der Praxis passt sich das Netzwerk zunächst an Funktionen im Low-Level-Stil an und ändert dann schrittweise den Inhalt des Bildes. Auf der GPU dauert es 3-5 Minuten, um jedes Image fertigzustellen. Es sollte auch erwähnt werden, dass die Auswirkung auf andere Bilder davon abhängt, welches Faltungsnetzwerk verwendet wird. Ein für die Gesichtserkennung geschultes Netzwerk eignet sich beispielsweise gut für die Konvertierung des Gesichtsstils.

Der Beitrag dieser Forschung geht über die Grenzen des maschinellen Lernens hinaus. In der Öffentlichkeit bekannt, zog es ein vielfältiges und neues Spektrum von Fachleuten an. Seit seinem Debüt und seinem Wegbereiter hat er viele Erfolge erzielt, sowohl bei der Verbesserung der Effektivität als auch bei der Anpassung an neue Bereiche. Hier werde ich drei davon kurz erläutern. Farberhaltende Stilkonvertierung, Videostilkonvertierung und sofortige Stilkonvertierung.

Farberhaltende Stilkonvertierung

Beginnen wir mit den neuesten Innovationen in diesem Bereich. Dieser Artikel von Gatys et al. Überarbeitete die erste Methode zur Stilkonvertierung, indem die Farbe des Inhaltsbilds beibehalten wurde. Zwei Techniken werden erklärt. Das erste besteht darin, das Farbschema des Stilbildes so zu konvertieren, dass es mit dem Farbschema des Inhaltsbilds übereinstimmt. Dieses neue S wird anstelle des vorherigen S als Stileingabe verwendet. Um dies zu erreichen, werden in diesem Artikel zwei verschiedene lineare Transformationen beschrieben.

Eine andere beschriebene Technik ist die Umwandlung nur im Helligkeitsraum. Zunächst wird der Helligkeitskanal aus S und C extrahiert, die Stilkonvertierung in diesem Helligkeitsbereich durchgeführt und der Farbkanal zur Ausgabe der Stilkonvertierung hinzugefügt. Es gibt auch eine kurze Debatte über diese Techniken, in der ihre Vor- und Nachteile verglichen werden. Sie können die Ausgabe im Bild unten sehen. Ich habe Picassos "Seated Nude" verwendet, um das Bild von New York bei Nacht in diesen Stil umzuwandeln, und das Farbschema des Originalbilds bleibt erhalten.

image

Konvertierung des Videostils

Der [Artikel] von Ruder et al. (Https://arxiv.org/abs/1604.08610) zeigt, was passiert, wenn Sie versuchen, die Stilkonvertierung auf Videos anzuwenden. Wenn Sie den Gatys-Algorithmus einfach unabhängig auf die Zeitreihen des Frames anwenden, ist das Ergebnis der Stilkonvertierung hier nicht stabil, sodass es möglicherweise flackert oder falsche Unterbrechungen aufweist. In diesem Artikel wird daher erklärt, wie die Transformation mithilfe einer als optischer Fluss bezeichneten Technik regelmäßig durchgeführt werden kann. Zu diesem Zweck verwenden wir modernste Schätzalgorithmen wie DeepFlow und EpicFlow.

Zusätzlich wurden verschiedene Techniken verwendet, um die Konsistenz im gesamten Rahmen weiter zu verbessern. Dies umfasst das Erfassen von Bereichen und Bewegungsgrenzen durch Bewegen von optischen Flüssen in beide Richtungen. In ähnlicher Weise wird auch die langfristige Konsistenz gesteuert, indem Abweichungen von zeitlich entfernten Frames bestraft werden.

Immerhin war das Ergebnis sehr beeindruckend. Obwohl nicht nahtlos, ist der Rahmen konsistent und beeindruckend. Sie können das Operationsbeispiel auf [Youtube] sehen (https://www.youtube.com/watch?v=Khuj4ASldmU).

Sofortige Stilkonvertierung

Johnson et al. Paper stellt und beantwortet die Frage nach der Geschwindigkeit. Die Arbeit von Gatys und Ruder umfasst lange Optimierungsschritte, deren Berechnung 3 bis 5 Minuten pro Frame dauert. Ich habe die Konfiguration geändert und vor VGG ein weiteres Deep-Netzwerk namens „Image Transformer Network“ (ITN) hinzugefügt. Infolgedessen wurde es mit nur einer Vorwärtsausbreitung erzeugt, einer Abbildung, die die Optimierungsschritte von Gatys erfüllen würde.

Bei der Methode dieser Untersuchung wird das Stilbild S im Voraus erstellt, und VGG wird als Black Box behandelt, die die Summe des von S angegebenen Stil- und Inhaltsverlusts zurückgibt. Die Eingabe von ITN ist das Bild C des Inhalts, den Sie konvertieren möchten. Trainieren Sie Ihr Netzwerk, um C in C umzuwandeln, indem Sie Stil und Inhaltsverlust optimieren. Da S auf alle Cs festgelegt ist, ist es möglich, eine Stilkonvertierung ohne die lange Optimierung unter Verwendung von Vorwärtsausbreitung und Rückwärtsausbreitung zu erreichen, die in Gatys 'ursprünglicher Forschung verwendet wurden. Ich kann es schaffen

Es wird diskutiert, ob sich die Qualität verschlechtern oder verbessern wird. Klar ist jedoch, dass es derzeit das einzige Modell ist, das Stilkonvertierungen von 15 Bildern pro Sekunde durchführen kann.

Zukunftsaussichten

Dies ist ein wirklich interessanter Bereich. Weil Sie sich verschiedene Richtlinien vorstellen und erstellen können. Wie wäre es, mit dem zu beginnen, was Sie wissen, und besser zu werden, wie dem optischen Fluss in Echtzeit? Wie wäre es mit der Entwicklung neuer Kunst, um Charaktere aus Videoszenen nahtlos zu transformieren? Was ist mit neuen Bereichen wie Musik? Ich würde gerne hören, wie Dylan wie Disney aussieht.

Recommended Posts

Neuronaler Netzwerkalgorithmus im Malstil (Magenta-Übersetzung, bei der künstliche Intelligenz Kunst und Musik schafft)
Generierung von Zeitreihen durch wiederkehrende neuronale Netze (Magenta-Übersetzung, bei der künstliche Intelligenz Kunst und Musik macht)