Deep Learning kompakt für Dummies
Deep Learning kompakt für Dummies
Bibliografische Information der Deutschen Nationalbibliothek
Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie;detaillierte bibliografische Daten sind im Internet über http://dnb.d-nb.de
abrufbar.
1. Auflage 2020
© 2020 WILEY-VCH Verlag GmbH & Co. KGaA, Weinheim
Original English language edition Deep Learning For Dummies © 2019 by Wiley Publishing, Inc. All rights reserved including the right of reproduction in whole or in part in any form. This translation published by arrangement with John Wiley and Sons, Inc.
Copyright der englischsprachigen Originalausgabe Deep Learning For Dummies © 2019 by Wiley Publishing, Inc.
Alle Rechte vorbehalten inklusive des Rechtes auf Reproduktion im Ganzen oder in Teilen und in jeglicher Form. Diese Übersetzung wird mit Genehmigung von John Wiley and Sons, Inc. publiziert.
Wiley, the Wiley logo, Für Dummies, the Dummies Man logo, and related trademarks and trade dress are trademarks or registered trademarks of John Wiley & Sons, Inc. and/or its affiliates, in the United States and other countries. Used by permission.
Wiley, die Bezeichnung »Für Dummies«, das Dummies-Mann-Logo und darauf bezogene Gestaltungen sind Marken oder eingetragene Marken von John Wiley & Sons, Inc., USA, Deutschland und in anderen Ländern.
Das vorliegende Werk wurde sorgfältig erarbeitet. Dennoch übernehmen Autoren und Verlag für die Richtigkeit von Angaben, Hinweisen und Ratschlägen sowie eventuelle Druckfehler keine Haftung.
Coverfoto: ustas – stock.adobe.com
Korrektur: Claudia Lötschert
Print ISBN: 978-3-527-71687-6
ePub ISBN: 978-3-527-82597-4
John Mueller ist freiberuflicher Autor und technischer Redakteur. Das Schreiben liegt ihm offensichtlich im Blut, denn er hat bereits an 112 Büchern und mehr als 600 Artikeln mitgewirkt. Die Themen reichen vom Datenbank- und Netzwerkbetrieb über die künstliche Intelligenz bis hin zur praxisorientierten Programmierung. Zu seinen aktuellen Büchern zählen Leitfäden für die Datenwissenschaft, maschinelles Lernen und den Umgang mit Algorithmen. Als technischer Redakteur hat er schon über siebzig Autoren zu ihren Manuskripten beraten und die Herausgeber verschiedener Zeitschriften unterstützt. Neben seiner Beratertätigkeit hilft er außerdem beim Erstellen von Prüfungs- und Zertifizierungsfragen. Branchenthemen kommentiert er in seinem Blog unter http://blog.johnmuellerbooks.com/
. Er ist ebenfalls über seine Website http://www.johnmuellerbooks.com/
und per E-Mail (auf Englisch) unter der E-Mail-Adresse john@johnmuellerbooks.com
erreichbar.
Luca Massaron hat sich auf die Datenwissenschaft und Marketingforschung spezialisiert. Sein besonderes Augenmerk gilt der multivariaten Statistik, dem maschinellen Lernen und der Kundenanalyse. Seit über einem Jahrzehnt löst er knifflige Herausforderungen in der Praxis mithilfe von Algorithmen, Data-Mining und statistischen Methoden. Er gilt in Italien als einer der Pioniere der Internetzielgruppenanalyse und zählt zu den produktivsten Anwendern auf dem Data-Science-Portal kaggle.com
. Seine Erfahrungen mit Daten, Analysen und dem vielversprechenden Gebiet Knowledge Discovery gibt er gern an Experten und Laien gleichermaßen weiter. Er ist überzeugt, dass ein grundlegendes Verständnis der Datenwissenschaft zu enormen technischen Fortschritten beitragen wird. Er ist außerdem als Google Developer Expert (GDE) für maschinelles Lernen zertifiziert.
Dieses Buch widme ich Donnie und Shannon Thompson, die für mich nicht nur zwei äußerst zuvorkommende Nachbarn, sondern wahre Freunde sind.
Ich widme dieses Buch meiner Frau Yukiko und unserer Tochter Amelia, meinen Eltern Renzo und Licia sowie Yoshiki, Takayo und Makiko, der Familie von Yukiko.
Mein größter Dank gilt meiner Frau Rebecca, die auch in schweren Zeiten fest an mich geglaubt hat. Obwohl sie nicht mehr unter uns weilt, ist sie immer noch die treibende Kraft hinter all meinen Büchern, hinter jedem Wort auf dem Papier.
Russ Mullen gilt Dank für sein technisches Lektorat dieses Buchs, von dem die Genauigkeit und Vielfalt der Inhalte klar profitiert hat. Russ hat sich bei der Recherche wie immer richtig ins Zeug gelegt, die Weiten des Internets nach hilfreichen Webseiten durchsucht und nützliche Verbesserungsvorschläge unterbreitet.
Matt Wagner, meinem Agenten, verdanke ich den Auftrag zu diesem Buch. Zudem hat er sich um die formellen Details gekümmert, mit denen sich Autoren nur ungern plagen. Dafür stehe ich in seiner Schuld.
Mehrere freiwillige Testleser haben das Buch in seiner Entstehungsphase teilweise oder vollständig gelesen und die Skripte ausprobiert und mir mit wertvollen Ratschlägen zur Seite gestanden. Mehr kann sich ein Autor wirklich nicht wünschen! Ich bedanke mich besonders bei Eva Beattie, Glenn A. Russell, Osvaldo Téllez Almirall und Simone Scardapane, die dieses Projekt immer wieder selbstlos unterstützt haben.
Und zu guter Letzt gilt mein Dank natürlich auch Katie Mohr, Susan Christophersen und dem gesamten Verlagsteam.
Mein größter Dank geht an meine Familie – Yukiko und Amelia –, deren Unterstützung und liebevolle Geduld meine Mitarbeit an diesem Buch ermöglicht hat. Außerdem möchte ich mich bei Simone Scardapane, seines Zeichens Dozent an der Universität La Sapienza (Rom) und ebenfalls Google Developer Expert, für seine wertvollen Anregungen beim Schreiben dieses Buchs bedanken.
Mit dem Begriff Deep Learning kann ein Großteil der Bevölkerung noch nicht viel anfangen. Vor allem im englischsprachigen Raum vermutet manch einer gar etwas Geheimnisvolles oder Unerklärliches dahinter, da das Wörtchen »deep« in gewissen Zusammenhängen auf düstere Intrigen oder unergründliche Mysterien hinweist (»deep conspiracy«, »deep mystery«). Tatsächlich jedoch ist Deep Learning alles andere als mysteriös und aus unserem Alltag nicht mehr wegzudenken. Auch Sie nutzen schon Deep Learning – wenn Sie Ihr Smartphone mit Sprachbefehlen steuern, wenn Sie bestimmte Apps verwenden und manchmal sogar, wenn Sie einfach nur einen Einkaufsbummel machen. Deep Learning findet sich heute überall. Darum wird es Zeit, sich genauer mit diesem »tief gehenden Lernen« und seinen faszinierenden Anwendungsgebieten zu befassen.
Wie so viele neue Technologien weckt auch Deep Learning in manchen Menschen irrationale Ängste. Sie fürchten eine unabwendbare Apokalypse und außer Kontrolle geratene Killerroboter. Mit der Realität hat das eher nichts zu tun. Viel wahrscheinlicher ist wohl, dass gewiefte Ganoven mithilfe von Deep Learning täuschend echte Dokumente und Profile von erfundenen Personen erstellen werden, um ihre Mitmenschen oder den Staat hereinzulegen und um Tausende Euros zu erleichtern.
Falls auch Ihnen Deep Learning noch fremd ist – oder Sie womöglich gar zur besorgten Killerroboterfraktion gehören –, bringt Deep Learning für Dummies hoffentlich Licht ins Dunkel. Diese neue Technologie eröffnet uns im Alltag ungeahnte Möglichkeiten, hat aber auch ihre Grenzen. Nach dem Lesen des Buchs sind Sie mit den Vor- und Nachteilen besser vertraut.
Deep Learning für Dummies enthält Codebeispiele, die auf jedem standardmäßigen Mac-, Linux- und Windows-System laufen. Sie können den Code auch online testen, unter anderem mit Google Colab. (Hinweise im Buch erklären, wie Sie dies bewerkstelligen.) Mit einem Grafikprozessor oder anderer spezieller Ausstattung werden die Beispiele zwar schneller ausgeführt, aber in diesem Buch geht es ja nicht um Geschwindigkeitsrekorde. Vielmehr sollen Sie lernen, wie Sie auf jedem beliebigen Rechner Programme für Deep Learning schreiben können – selbst wenn die Ausführung dann etwas Geduld erfordert. (Falls ein Beispiel besonders lange dauert, wird an der entsprechenden Stelle darauf hingewiesen.)
Der erste Teil dieses Buchs vermittelt Grundkenntnisse, damit Sie nicht gleich zu Beginn die Orientierung verlieren. Sie erfahren, wie Sie nötige Tools installieren und welche mathematischen Methoden Sie beherrschen sollten. Die ersten Beispiele behandeln eher geläufige Regressionsaufgaben und maschinelles Lernen, aber ohne diese Grundlagen können Sie das Potenzial von Deep Learning nicht ausschöpfen.
Danach geht es richtig los: Sie lernen zum Beispiel, wie sich automatisch Kunstwerke generieren lassen und wie Sie so manch andere Aufgabe ganz ohne aufwendige Programmierung oder besondere Hardware bewältigen. Dieses Buch ersetzt zwar kein ausführlicheres Studium in diesem Fachbereich, aber es vermittelt Ihnen ein gutes Gespür für die Theorie und Praxis beim Deep Learning.
Damit Sie alle Erläuterungen im Buch besser nachvollziehen können, gelten folgende Konventionen:
Festbreitenschrift
. Falls Sie eine digitale Version dieses Buchs auf einem Gerät mit bestehender Internetverbindung lesen, können Sie Links auch anklicken oder antippen, zum Beispiel diesen hier: http://www.fuer-dummies.de
.Eigentlich soll man seinen Mitmenschen ja nichts unterstellen. Wir tun dies aber trotzdem.
Wir nehmen nämlich an, dass Sie mit Ihrem Computer und Betriebssystem vertraut sind und diesbezüglich keine Hilfestellung benötigen. (In Kapitel 3 finden Sie allerdings Installationshinweise für Anaconda, und in Kapitel 4 wird erklärt, wie Sie die TensorFlow- und Keras-Frameworks installieren.) Wir möchten uns voll und ganz auf Deep Learning mit der Programmiersprache Python konzentrieren und gehen daher nicht auf plattformspezifische Fragen ein. Sie sollten also wissen, wie Sie Anwendungen installieren und aufrufen und wie Sie generell mit Ihrem gewählten Betriebssystem arbeiten.
Zu Python finden Sie bei Bedarf unzählige Kurse und Hilfeseiten im Web. Als Beispiel seien hier https://www.w3schools.com/python/
und https://www.tutorialspoint.com/python/
(beide auf Englisch) sowie https://www.python-kurs.eu/index.php
(auf Deutsch) genannt.
Die offizielle Dokumentation der Python Software Foundation findet sich hier: https://www.python.org/doc/
.
Dieses Buch ist auch kein Auffrischungskurs in Mathe. Es enthält zwar zahlreiche komplexe Formeln, aber primär geht es um das Lösen von Problemen mittels Deep Learning und Python, nicht um die Grundlagen der theoretischen Mathematik.
Zu guter Letzt nehmen wir an, dass Sie wissen, wie man Inhalte im Internet abruft. Das Buch bietet Verweise auf weiterführende Materialien, die natürlich nur dann nützlich sind, wenn Sie sie auch tatsächlich im Web finden.
Wichtige Hinweise oder zusätzliche Informationen in diesem Buch sind durch die folgenden Symbole am Seitenrand gekennzeichnet:
Bestimmt haben Sie keine Lust, den Programmcode aus unserem Buch mühsam abzutippen und all die neuronalen Netze manuell zu rekonstruieren. Viel lieber würden Sie wahrscheinlich praktische Aufgaben lösen und testen, was mit Python, maschinellen Lernverfahren und Deep Learning tatsächlich alles möglich ist. Da haben wir gute Nachrichten: Alle Beispiele aus den verschiedenen Kapiteln stehen als Download bereit. Sie finden sie unter http://wiley-vch.de/ISBN9783527716876
.
Nun kann es losgehen! Wenn Sie sich bisher noch nie mit Python und Deep Learning befasst haben, beginnen Sie am besten mit Kapitel 1. Lesen Sie sich das Buch in Ihrem eigenen Rhythmus durch, sodass Sie alle Informationen gut verarbeiten können.
Sollten Sie es auch als Neuling ganz eilig haben und sofort Ihre ersten Deep-Learning-Programme mit Python schreiben wollen, können Sie direkt zu Kapitel 3 springen. Beschweren Sie sich aber nicht, wenn Ihnen einige Themen später etwas verwirrend vorkommen. Falls Sie Anaconda (die in diesem Buch genutzte Programmierumgebung) bereits installiert und eine aktuelle Python-Distribution zum Laufen gebracht haben, brauchen Sie Kapitel 3 nur zu überfliegen.
Die in diesem Buch erläuterten Aufgabenstellungen beim Deep Learning werden mit TensorFlow und Keras gelöst. Selbst als fortgeschrittener Anwender sollten Sie Kapitel 4 unbedingt lesen, um Ihr System korrekt zu konfigurieren. Falls Sie der Konfigurationsanleitung in diesem Buch nicht folgen, gibt es später beim Ausführen der Codebeispiele höchstwahrscheinlich Probleme und Fehler.
Teil I