Generatives Deep Learning - Maschinen das Malen, Schreiben und Komponieren beibringen

Generatives Deep Learning - Maschinen das Malen, Schreiben und Komponieren beibringen

 

 

 

von: David Foster

O'Reilly Verlag, 2020

ISBN: 9783960103547

Sprache: Deutsch

310 Seiten, Download: 43907 KB

 
Format:  EPUB, auch als Online-Lesen

geeignet für: geeignet für alle DRM-fähigen eReader geeignet für alle DRM-fähigen eReader Apple iPad, Android Tablet PC's Apple iPod touch, iPhone und Android Smartphones Online-Lesen
Typ: BA (eingeschränkt parallel verfügbar)

 

eBook anfordern

Mehr zum Inhalt

Generatives Deep Learning - Maschinen das Malen, Schreiben und Komponieren beibringen



Vorwort


Das, was ich nicht erschaffen kann, verstehe ich nicht.

– Richard Feynman

Ein essenzieller Teil des menschlichen Wesens ist unsere Fähigkeit, Dinge zu erschaffen. Seit unseren frühesten Tagen als Höhlenbewohner haben wir nach Möglichkeiten gesucht, originelle und schöne Kreationen zu schaffen. Die Urmenschen taten dies in Form von Höhlenmalereien von wilden Tieren und abstrakten Mustern, die sie mit Pigmenten sorgfältig und methodisch auf Felsen anbrachten. Der Zeit der Romantik entstammen die meisterhaften Tschaikowsky-Symphonien, die Triumph- und Tragödiengefühle mithilfe von Klangwellen wecken, die zu schönen Melodien und Harmonien verschmelzen. Heutzutage laufen wir um Mitternacht in die Buchhandlungen, um Geschichten über einen fiktiven Zauberer zu kaufen. Denn die Kombination von Buchstaben bringt eine Geschichte hervor, die uns so sehr fesselt, dass wir unbedingt die nächsten Abenteuer unseres Helden erfahren möchten.

Daher ist es nicht verwunderlich, dass die Menschheit nun beginnt, die ultimative Frage nach der Kreativität zu stellen: Können wir etwas erzeugen, das selbst über Kreativität verfügt?

Genau diese Frage soll die generative Modellierung beantworten. Dank neuester Fortschritte in Methodik und Technologie sind wir heute dazu in der Lage, Maschinen zu bauen, die originelle Kunstwerke in einem vorgegebenen Stil malen, zusammenhängende Absätze mit übergreifender Struktur schreiben, angenehm klingende Musik komponieren und Siegerstrategien für komplexe Spiele entwickeln können, indem sie imaginäre Zukunftsszenarien generieren. Dies ist nur der Beginn einer generativen Revolution, die uns keine andere Wahl lässt, als Antworten auf einige der größten Fragen zur Wirkungsweise von Kreativität zu finden und dadurch letztlich auch zu beleuchten, was es bedeutet, ein Mensch zu sein.

Kurz gesagt, nie war die Zeit besser als jetzt, um mehr über generative Modellierung zu lernen – also lassen Sie uns loslegen!

Ziel und Ansatz


Dieses Buch behandelt die wichtigsten Methoden, die die generative Modellierungslandschaft in den letzten Jahren geprägt haben und durch die wir beeindruckende Fortschritte bei kreativen Aufgaben erzielen konnten. Zusätzlich zur Behandlung der Grundlagen der generativen Modellierung werden wir funktionsfähige Beispiele einiger der Schlüsselmodelle der Fachliteratur erstellen und bei jedem Modell Schritt für Schritt zusammen durch die Codebasis gehen.

Im gesamten Buch finden Sie kurze, sinnbildliche Geschichten, die dabei helfen sollen, die Funktionsweise einiger der Modelle zu erklären. Meiner Meinung nach besteht eine der besten Möglichkeiten, eine neue abstrakte Theorie zu lehren, darin, sie zuerst in etwas nicht ganz so Abstraktes umzuwandeln, etwa in eine Geschichte, bevor man in die technischen Details eintaucht. Dadurch wird die Theorie in diesem Zusammenhang klarer, da sie Menschen, Handlungen und Emotionen einbezieht, die alle gut nachvollziehbar sind, statt neuronaler Netze, Backpropagation und Verlustfunktionen, die allesamt abstrakte Konstrukte darstellen.

Die fiktive Geschichte und die Erklärung der Modelltheorie beschreiben beide die gleiche Funktionsweise, aber auf zwei verschiedene Arten. Sie werden es daher vielleicht nützlich finden, beim Lernen der Modelltheorie auf die jeweilige Geschichte zurückzugreifen. Sollten Sie bereits mit einer bestimmten Methode vertraut sein, werden Sie bestimmt Spaß daran finden, die Parallelen der einzelnen Modellelemente innerhalb der Geschichte zu finden!

Im ersten Teil dieses Buchs werde ich Ihnen die wichtigsten Methoden vorstellen, die wir bei der Erstellung generativer Modelle verwenden, einschließlich eines Überblicks über Deep Learning, Variational Autoencoder und Generative Adversarial Networks. Im zweiten Teil werden wir diese Methoden verwenden, um verschiedene kreative Aufgaben wie Malen, Schreiben und Komponieren von Musik mithilfe von Modellen wie CycleGAN, Encoder-Decoder-Modellen und MuseGAN zu bewältigen. Darüber hinaus werden wir sehen, wie die generative Modellierung zur Optimierung der Spielstrategie für ein Spiel eingesetzt werden kann (World Models). Außerdem werfen wir einen Blick auf topaktuelle generative Architekturen wie StyleGAN, BigGAN, BERT, GPT-2 und MuseNet.

Voraussetzungen


Dieses Buch setzt voraus, dass Sie eine gewisse Erfahrung in der Programmierung mit Python mitbringen. Wenn Sie mit Python nicht vertraut sind, gelingt der Einstieg über LearnPython.org (https://www.learnpython.org) am besten. Darüber hinaus gibt es unzählige kostenlose Onlineressourcen, die es Ihnen ermöglichen, sich genügend Python-Wissen anzueignen, um mit den Beispielen in diesem Buch arbeiten zu können.

Da einige der Modelle in mathematischer Notation beschrieben werden, ist es sinnvoll, grundlegende Kenntnisse in linearer Algebra (z. B. Matrixmultiplikation etc.) und der Wahrscheinlichkeitstheorie zu haben.

Schließlich benötigen Sie noch eine Rechenumgebung, in der Sie die Codebeispiele aus dem GitHub-Repository (https://github.com/davidADSP/GDL_code) des Buchs ausführen können. Ich habe bewusst darauf geachtet, dass alle Beispiele in diesem Buch eine nicht zu große Menge an Rechenressourcen für das Trainieren der Modelle benötigen. Es gibt den Mythos, dass Sie eine GPU benötigen, um Deep-Learning-Modelle zu trainieren – dies ist natürlich hilfreich und beschleunigt das Trainieren, aber es ist keineswegs unbedingt notwendig. Wenn Sie noch neu im Deep Learning unterwegs sind, ermutige ich Sie, sich zunächst mit den Grundlagen zu befassen, indem Sie mit kleinen Beispielen auf Ihrem Laptop experimentieren, bevor Sie Geld und Zeit für die Recherche von Hardware ausgeben, um das Trainieren der Modelle zu beschleunigen.

Weitere Ressourcen


Die folgenden zwei Bücher kann ich Ihnen wärmstens empfehlen als allgemeine Einführung in Machine Learning und Deep Learning:

  • Praxiseinstieg Machine Learning mit Scikit-Learn, Keras und TensorFlow: Konzepte, Tools und Techniken für intelligente Systeme von Aurelien Geron, Übersetzung von Kristian Rother und Thomas Demmig (O’Reilly)
  • Deep Learning mit Python und Keras von Francois Chollet (mitp)

Die meisten der Forschungsartikel in diesem Buch kommen von arXiv (https://arxiv.org), einem kostenlosen Archiv für wissenschaftliche Forschungsarbeiten. Es ist heutzutage üblich, dass Autoren ihre Forschungsarbeiten in arXiv posten, bevor sie vollständig begutachtet werden. Indem Sie dort die jüngsten Veröffentlichungen verfolgen, können Sie sich hervorragend über die neuesten Entwicklungen in diesem Bereich informieren.

Darüber hinaus kann ich Ihnen auch die Webseite Papers with Code (https://paperswithcode.com) empfehlen, auf der Sie die neuesten Ergebnisse in einer Vielzahl von Aufgaben des maschinellen Lernens finden können, sowie Links zu den Forschungspapieren und offiziellen GitHub-Repositories. Dies ist eine ausgezeichnete Ressource, um herauszufinden, welche Methoden derzeit die besten Ergebnisse in einer Reihe von Aufgaben erzielen, und sie hat mir bei der Entscheidung geholfen, welche Methoden in diesem Buch behandelt werden sollen.

Zu guter Letzt ist Google Colaboratory (https://colab.research.google.com) eine nützliche Ressource für das Trainieren von Deep-Learning-Modellen auf schnellerer Hardware. Dies ist eine kostenlose Jupyter-Notebook-Umgebung, die keine Einrichtung erfordert und vollständig in der Cloud läuft. Sie können dem Notebook sagen, dass es auf einer kostenlos zur Verfügung gestellten GPU laufen soll, und das für bis zu zwölf Stunden Laufzeit. Es ist zwar nicht unbedingt notwendig, die Beispiele in diesem Buch auf einem Grafikprozessor auszuführen, es kann aber helfen, den Trainingsprozess zu beschleunigen. So oder so, Colab bietet Ihnen die großartige Möglichkeit, kostenlos auf GPU-Ressourcen zuzugreifen.

In diesem Buch verwendete Konventionen


Die folgenden typografischen Konventionen werden in diesem Buch verwendet:

Kursiv

Kennzeichnet neue Begriffe, URLs, E-Mail-Adressen, Dateinamen und Dateiendungen.

Konstante Zeichenbreite

Wird für Programmlistings und für Programmelemente in Textabschnitten wie Namen von Variablen und Funktionen, Datenbanken, Datentypen und Umgebungsvariablen sowie für Anweisungen und Schlüsselwörter verwendet.

Konstante Zeichenbreite, fett

Kennzeichnet Befehle oder anderen Text, den der Nutzer wörtlich eingeben sollte.

Konstante Zeichenbreite, kursiv

Kennzeichnet Text, den der Nutzer je nach Kontext durch entsprechende Werte ersetzen...

Kategorien

Service

Info/Kontakt

  Info
Hier gelangen Sie wieder zum Online-Auftritt Ihrer Bibliothek