Praxiseinstieg Machine Learning mit Scikit-Learn, Keras und TensorFlow (eBook)
878 Seiten
O'Reilly Verlag
978-3-96010-761-3 (ISBN)
Aurélien Géron arbeitet als Consultant für Machine Learning. Als ehemaliger Mitarbeiter von Google hat er von 2013 bis 2016 das YouTube-Team zur Klassifikation von Videos geleitet. Er war Gründer und CTO von verschiedenen Unternehmen: von Wifirst, einem führenden Wireless ISP in Frankreich; von Polyconseil, einer Beratungsfirma mit Schwerpunkt auf Telekommunikation, Medien und Strategien; und von Kiwisoft, einem Consultingunternehmen mit Schwerpunkt auf Machine Learning und Datenschutz. Davor war er als Ingenieur in verschiedenen Bereichen tätig: Finanzen (JP Morgan und Société Générale), Verteidigung (das Department of Defense in Kanada) und Gesundheit (Bluttransfusionen). Er hat einige technische Bücher veröffentlicht (zu C++, WiFi und Internetarchitekturen) und war Dozent für Informatik in einer französischen Ingenieursschule. Sonstige wissenswerte Dinge: Er hat seinen drei Kindern beigebracht, mit den Fingern binär zu zählen (bis 1023), hat Mikrobiologie und Evolutionsgenetik studiert, bevor er sich der Softwareentwicklung zugewandt hat, und sein Fallschirm ging bei seinem zweiten Absprung nicht auf.
Aurélien Géron arbeitet als Consultant für Machine Learning. Als ehemaliger Mitarbeiter von Google hat er von 2013 bis 2016 das YouTube-Team zur Klassifikation von Videos geleitet. Er war Gründer und CTO von verschiedenen Unternehmen: von Wifirst, einem führenden Wireless ISP in Frankreich; von Polyconseil, einer Beratungsfirma mit Schwerpunkt auf Telekommunikation, Medien und Strategien; und von Kiwisoft, einem Consultingunternehmen mit Schwerpunkt auf Machine Learning und Datenschutz. Davor war er als Ingenieur in verschiedenen Bereichen tätig: Finanzen (JP Morgan und Société Générale), Verteidigung (das Department of Defense in Kanada) und Gesundheit (Bluttransfusionen). Er hat einige technische Bücher veröffentlicht (zu C++, WiFi und Internetarchitekturen) und war Dozent für Informatik in einer französischen Ingenieursschule. Sonstige wissenswerte Dinge: Er hat seinen drei Kindern beigebracht, mit den Fingern binär zu zählen (bis 1023), hat Mikrobiologie und Evolutionsgenetik studiert, bevor er sich der Softwareentwicklung zugewandt hat, und sein Fallschirm ging bei seinem zweiten Absprung nicht auf.
Vorwort
Der Machine-Learning-Tsunami
Im Jahr 2006 erschien ein Artikel (https://homl.info/136) von Geoffrey Hinton et al.1, in dem vorgestellt wurde, wie sich ein neuronales Netz zum Erkennen handgeschriebener Ziffern mit ausgezeichneter Genauigkeit (> 98%) trainieren lässt. Ein Deep Neural Network ist ein (sehr) vereinfachtes Modell unseres zerebralen Kortex, und es besteht aus einer Folge von Schichten mit künstlichen Neuronen. Die Autoren nannten diese Technik »Deep Learning«. Zu dieser Zeit wurde das Trainieren eines Deep-Learning-Netzes im Allgemeinen als unmöglich angesehen,2 und die meisten Forscher hatten die Idee in den 1990ern aufgegeben. Dieser Artikel ließ das Interesse der wissenschaftlichen Gemeinde wieder aufleben, und schon nach kurzer Zeit zeigten weitere Artikel, dass Deep Learning nicht nur möglich war, sondern umwerfende Dinge vollbringen konnte, zu denen kein anderes Machine-Learning-(ML-)Verfahren auch nur annähernd in der Lage war (mithilfe enormer Rechenleistung und riesiger Datenmengen). Dieser Enthusiasmus breitete sich schnell auf weitere Teilgebiete des Machine Learning aus.
Zehn Jahre später hat Machine Learning ganze Industriezweige erobert: Es ist zu einem Herzstück heutiger Spitzentechnologien geworden und dient dem Ranking von Suchergebnissen im Web, kümmert sich um die Spracherkennung Ihres Smartphones, gibt Empfehlungen für Videos und steuert vielleicht sogar Ihr Auto.
Machine Learning in Ihren Projekten
Deshalb interessieren Sie sich natürlich auch für Machine Learning und möchten an der Party teilnehmen!
Womöglich möchten Sie Ihrem selbst gebauten Roboter einen eigenen Denkapparat geben? Ihn Gesichter erkennen lassen? Oder ihn lernen lassen, herumzulaufen?
Oder vielleicht besitzt Ihr Unternehmen Unmengen an Daten (Logdateien, Finanzdaten, Produktionsdaten, Sensordaten, Hotline-Statistiken, Personalstatistiken und so weiter), und Sie könnten vermutlich einige verborgene Schätze heben, wenn Sie nur wüssten, wo Sie danach suchen müssten. Mit Machine Learning können Sie das Folgende (und noch viel mehr (https://homl.info/usecases)) erreichen:
- Kundensegmente finden und für jede Gruppe die beste Marketingstrategie entwickeln.
- Jedem Kunden anhand des Kaufverhaltens ähnlicher Kunden Produktempfehlungen geben.
- Betrügerische Transaktionen mit hoher Wahrscheinlichkeit erkennen.
- Den Unternehmensgewinn im nächsten Jahr vorhersagen.
Was immer der Grund ist, Sie haben beschlossen, Machine Learning zu erlernen und in Ihren Projekten umzusetzen. Eine ausgezeichnete Idee!
Ziel und Ansatz
Dieses Buch geht davon aus, dass Sie noch so gut wie nichts über Machine Learning wissen. Unser Ziel ist es, Ihnen die Grundbegriffe, ein Grundverständnis und die Werkzeuge an die Hand zu geben, mit denen Sie Programme zum Lernen aus Daten entwickeln können.
Wir werden eine Vielzahl von Techniken besprechen, von den einfachsten und am häufigsten eingesetzten (wie der linearen Regression) bis zu einigen Deep-Learning-Verfahren, die regelmäßig Wettbewerbe gewinnen. Wir werden dazu für den Produktionsbetrieb geschaffene Python-Frameworks verwenden:
- Scikit-Learn (http://scikit-learn.org/) ist sehr einfach zu verwenden, enthält aber effiziente Implementierungen vieler Machine-Learning-Algorithmen. Damit ist es ein großartiger Ausgangspunkt, um Machine Learning zu erlernen. Scikit-Learn wurde von David Cournapeau im Jahr 2007 erstellt und wird mittlerweile von einem Forschungsteam am Nationalen Forschungsinstitut für Informatik und Automatisierung (INRIA) in Frankreich betreut.
- TensorFlow (http://tensorflow.org/) ist eine komplexere Bibliothek für verteiltes Rechnen. Mit ihr können Sie sehr große neuronale Netze effizient trainieren und ausführen, indem Sie die Berechnungen auf bis zu Hunderte von Servern mit mehreren GPUs (Graphics Processing Units) verlagern. TensorFlow (TF) wurde von Google entwickelt und läuft in vielen umfangreichen Machine-Learning-Anwendungen. Die Bibliothek wurde im November 2015 als Open Source veröffentlicht, im September 2019 erschien Version 2.0.
- Keras (https://keras.io/) ist eine High-Level-Deep-Learning-API, die das Trainieren und Ausführen neuronaler Netze sehr einfach macht. Sie kommt zusammen mit TensorFlow und greift für alle rechenintensiven Aufgaben darauf zurück.
Dieses Buch verfolgt einen praxisorientierten Ansatz, bei dem Sie ein intuitives Verständnis von Machine Learning entwickeln, indem Sie sich mit konkreten Beispielen und ein klein wenig Theorie beschäftigen.
Auch wenn Sie dieses Buch lesen können, ohne Ihren Laptop in die Hand zu nehmen, empfehlen wir Ihnen, mit den Codebeispielen herumzuexperimentieren. |
Codebeispiele
Alle Codebeispiele in diesem Buch sind Open Source und stehen online unter https://github.com/ageron/handson-mls3 als Jupyter Notebooks zur Verfügung. Dabei handelt es sich um interaktive Dokumente mit Texten, Bildern und ausführbaren Codeabschnitten (in unserem Fall Python). Am einfachsten beginnen Sie damit, diese Notebooks mit Google Colab auszuführen. Das ist ein kostenloser Service, der es Ihnen ermöglicht, beliebige Jupyter Notebooks direkt online laufen zu lassen, ohne etwas auf Ihrem Rechner installieren zu müssen. Sie brauchen nur einen Webbrowser und einen Google-Account.
In diesem Buch gehe ich davon aus, dass Sie Google Colab nutzen, aber ich habe die Notebooks auch auf anderen Onlineplattformen wie Kaggle oder Binder getestet, sodass Sie sie dort ebenfalls einsetzen können, wenn Ihnen das lieber ist. Alternativ können Sie die erforderlichen Bibliotheken und Tools (oder das Docker-Image für dieses Buch) direkt auf Ihrem Computer installieren und die Notebooks dort laufen lassen. Die Anweisungen dazu finden Sie unter https://homl.info/install. |
Verwenden von Codebeispielen
Dieses Buch ist dazu da, Ihnen beim Erledigen Ihrer Arbeit zu helfen. Wollen Sie über die Codebeispiele hinaus zusätzliche Inhalte in einem Umfang verwenden, der die Regeln eines fairen Einsatzes verletzen würde (zum Beispiel der Verkauf oder Vertrieb von Inhalten aus O’Reilly-Büchern oder das Einbinden eines beträchtlichen Teils dieses Buchs in die Dokumentation Ihres Produkts), wenden Sie sich bitte für eine Erlaubnis an kommentar@oreilly.de.
Wir freuen uns über Zitate, verlangen diese aber nicht. Ein Zitat enthält Titel, Autor, Verlag und ISBN. Beispiel: »Praxiseinstieg Machine Learning mit Scikit-Learn, Keras und TensorFlow von Aurélien Géron, O’Reilly 2023, ISBN 978-3-96009-212-4.«
Voraussetzungen
Dieses Buch geht davon aus, dass Sie ein wenig Programmiererfahrung mit Python haben. Sollten Sie Python noch nicht kennen, ist http://learnpython.org/ ein ausgezeichneter Ausgangspunkt. Auch das offizielle Tutorial auf python.org (https://docs.python.org/3/tutorial/) ist recht gut.
Es setzt ebenfalls voraus, dass Sie mit den wichtigsten wissenschaftlichen Bibliotheken in Python vertraut sind, insbesondere mit NumPy (http://numpy.org/), Pandas (http://pandas.pydata.org/) und Matplotlib (http://matplotlib.org/). Falls Sie diese Bibliotheken noch nie verwendet haben, ist das nicht schlimm – ihr Einsatz lässt sich leicht erlernen, und ich habe für jede von ihnen ein Tutorial erstellt. Diese finden Sie online unter https://homl.info/tutorials.
Wenn Sie vollständig verstehen wollen, wie die Algorithmen zum Machine Learning funktionieren (und nicht nur, wie man sie einsetzt), sollten Sie ein Grundverständnis von einigen mathematischen Konzepten haben – insbesondere von linearer Algebra. Sie sollten wissen, was Vektoren und Matrizen sind und wie Sie einige einfache Operationen mit ihnen ausführen, zum Beispiel das Addieren von Vektoren oder das Transponieren und Multiplizieren von Matrizen. Sollten Sie eine kurze Einführung in die lineare Algebra benötigen (sie ist wirklich kein Hexenwerk), habe ich unter https://homl.info/tutorials ein Tutorial bereitgestellt. Sie finden dort ebenfalls eines zur Differenzialrechnung, was hilfreich sein kann, um zu verstehen, wie neuronale Netze trainiert werden, aber für das grobe Verstehen der wichtigsten Konzepte ist es nicht unbedingt von entscheidender Bedeutung. Dieses Buch greift gelegentlich auch auf andere mathematische Konzepte zurück, beispielsweise auf Exponentialfunktionen und Logarithmen, ein bisschen Wahrscheinlichkeitstheorie und ein paar Statistikaspekte, aber alles nicht zu ausgefallen. Brauchen Sie dazu Hilfe, schauen Sie mal bei https://khanacademy.org vorbei,...
Erscheint lt. Verlag | 1.9.2023 |
---|---|
Übersetzer | Kristian Rother, Thomas Demmig |
Verlagsort | Heidelberg |
Sprache | deutsch |
Themenwelt | Mathematik / Informatik ► Informatik ► Programmiersprachen / -werkzeuge |
Schlagworte | AI • Algorithmen • Artificial Intelligence • Data Science • Deep learning • Geron • KI • Künstliche Intelligenz • machine learning • Maschinelles Lernen • matplotlib • Neuronale Netze • NumPy • Python • scikit-learn • Statistische Datenanalyse • tensorflow |
ISBN-10 | 3-96010-761-7 / 3960107617 |
ISBN-13 | 978-3-96010-761-3 / 9783960107613 |
Haben Sie eine Frage zum Produkt? |
Größe: 34 MB
DRM: Digitales Wasserzeichen
Dieses eBook enthält ein digitales Wasserzeichen und ist damit für Sie personalisiert. Bei einer missbräuchlichen Weitergabe des eBooks an Dritte ist eine Rückverfolgung an die Quelle möglich.
Dateiformat: EPUB (Electronic Publication)
EPUB ist ein offener Standard für eBooks und eignet sich besonders zur Darstellung von Belletristik und Sachbüchern. Der Fließtext wird dynamisch an die Display- und Schriftgröße angepasst. Auch für mobile Lesegeräte ist EPUB daher gut geeignet.
Systemvoraussetzungen:
PC/Mac: Mit einem PC oder Mac können Sie dieses eBook lesen. Sie benötigen dafür die kostenlose Software Adobe Digital Editions.
eReader: Dieses eBook kann mit (fast) allen eBook-Readern gelesen werden. Mit dem amazon-Kindle ist es aber nicht kompatibel.
Smartphone/Tablet: Egal ob Apple oder Android, dieses eBook können Sie lesen. Sie benötigen dafür eine kostenlose App.
Geräteliste und zusätzliche Hinweise
Buying eBooks from abroad
For tax law reasons we can sell eBooks just within Germany and Switzerland. Regrettably we cannot fulfill eBook-orders from other countries.
aus dem Bereich