Machine Learning Kompakt
Auf knapp 190 Seiten verspricht das Buch Machine Learning Kompakt einen umfassenden Überblick über den derzeit gehypte Technik der künstlichen Intelligenz. Ich durfte das Buch für den mitp Verlag lesen und gebe euch in diesem Artikel eine objektive Übersicht und im Anschluss meine persönliche Bewertung.
Machine Learning Kompakt
Ich habe mir das Buch für den heurigen Strandurlaub ausgesucht, es wurde mir vom Verlag freundlicherweise zur Verfügung gestellt und kam noch rechtzeitig vor der Abreise an. Wo kann man besser ein Fachbuch zu dem wohl komplexesten Thema besser lesen? Das Buch behauptet Machine Learning leicht zugänglich und umfassend zu behandeln. Ob das klappt? Schließlich habe ich zuletzt schon das über 900 Seiten starke Werk zu Deep Learning rezensiert – und das war nicht einfach.
Inhalt
Das Taschenbuch hat 190 Seiten und ist in 11 Kapitel unterteilt. Informationen über den Autor sind im Buch keine zu finden, jedoch auf der Webseite des Buchs vom mitp Verlag.. In einer kurzen Einführung enttarnt der Autor den Marketing Begriff von IBM aus den 1960er Jahren „Machine Learning“ mit der Aussage: „Maschinen lernen nicht“. Somit ist die Grundlage für die weitere sehr mathematische (und weniger mystische) Themenauswahl geebnet.
- Einführung
Man lernt den Unterschied von überwachten, unüberwachten, teilüberwachten und reinvorcement Learning kennen. Überwachtes Lernen wird dann anhand eines guten Beispiels mit Formeln und Grafiken sehr einfach erklärt. - Notation und Definitionen
In diesem Kapitel lernt man Formeln lesen. Neben begriffen wie Vektoren und Matrizen als Datenstrukturen werden allerhand Begriffe kurz erklärt (zum Beispiel Schätzer, Parameter, Klassifikation,…). - Grundlegende Algorithmen
Das Um und Auf beim Machine Learning sind Algorithmen, allen voran die lineare Regression. Diese wird detailliert anhand eines Beispiels erklärt. Im Buch wird später immer wieder auf diesen einfachsten Algorithmus verwiesen. Daneben werden auch die logistische Regression, Entscheidungsbaum-Lernen, Support Vector Machine und k-Nearest-Neighbors zumindest kurz erklärt und miteinander verglichen. - Aufbau eines Lernalgorithmus
Dieses Kapitel widmet sich ganz der praktischen Herangehensweise an ein ML Problem. Man lernt den Gradientenabstieg kennen und mit Python Code bekommt man als Entwickler eine kurze Übersicht wie eine ML Implementierung mit scikit-learn umgesetzt aussehen kann. - Grundlegende Techniken
Darunter versteht der Autor die Vorbereitung der Daten (Auswahl von Merkmalen) und die Wahl des richtigen Lernalgorithmus. In der Folge geht es um die Bewertung des Ergebnisses und Probleme der Unter- oder Überanpassung. Man lernt übliche Bewertungsformeln kennen und wie man die Ergebnisse daraus interpretieren kann. - Neuronale Netze und Deep Learning
Der Gipfel an Komplexität manifestiert sich in diesem Bereich des Buchs. Es wird erklärt was ein Neuronales Netz ist und wie man dieses trainiert. Weiters werden einige spezielle Fälle (Convolutional Neural Networks und Rekurrente neuronale Netze) vorgestellt. - Aufgaben und Lösungen
Bei der Kernel-Regression geht es um die polynomiale Regression, also wenn man den Raum aus Daten nicht mit einer Gerade (Ebene oder Hyperebene) teilen kann. Daneben geht es um unterschiedliche Klassifikationsarten (Mulit-Class-, One-Class- und Multi-Label-Klassifikation) und Lernarten (Ensemble Learning, Sequenz-zu-Sequenz-Lernen, aktives Lernen, teilüberwachtes Lernen, One-Shot- und Zero-Shot-Learning). - Fortgeschrittene Techniken
Dieses Kapitel ist die Krönung des vorangegangenen erlernten Wissens. Es darum das gelernte Modell weiter zu verbessern, beispielsweise in dem man mehrere kombiniert. Interessant ist hier auch, wie man die Effizient von Algorithmen messen kann. - Unüberwachtes Lernen
Alles bisher gezeigte ging davon aus, dass man Ergebnisse bewerten kann. Beim unüberwachten Lernen geht es darum ein Modell zu trainieren ohne es anhand von richtig und falsch zu bewerten. Es werden Methoden wie die Dichteschätzung, Clustering und Dimensionsreduzierung vorgestellt. - Weitere Formen des Lernens
Dieses Kapitel behandelt noch einige andere Arten von Lernen in dem die Begriffe kurz erklärt werden. - Schlussbemerkungen
Das Buch endet mit einigen Bemerkungen. Die Essenz daraus ist, dass in dem Buch nicht alles behandelt wurde. Auch manche wichtigen Themen die nur sehr ausführlich erklärt werden können wurden ausgelassen. Der Autor erklärt zwar in einigen Sätzen Begriffe, verweist aber auf andere Literatur.
Meine persönliche Meinung
Das Buch war ohne Übertreibung das beste Fachbuch, dass ich die letzten Jahre gelesen habe. Für mich hat es mit meinem Vorwissen perfekt funktioniert. Ich hatte in fast jedem Kapitel ein „Aha-Erlebnis“. Ich habe Formeln, Algorithmen und Ideen hinter der KI endlich verstanden. Im Buch werden oft elementare Dinge erklärt, die andere Bücher gerne auslassen. Vermutlich, weil diese für einen Statistiker klar sind, für mich als Softwareentwickler aber nicht. So gesehen ist das Buch womöglich gerade für Entwickler sehr zu empfehlen.
Fazit
Machine Learning Kompakt sollte man gelesen haben, wenn man in die Welt der künstlichen Intelligent eintauchen will. Es behandelt das Thema Machine Learning auf der perfekten Flughöhe. Man bekommt ein gutes Verständnis zu Fachbegriffen, lernt Formel kennen und verstehen und dank der guten Erklärung versteht man die einzelnen Algorithmen bzw. den Aufbau des zu erstellenden Modells. Sofern man für das eigene Projekt tiefer eintauchen will, stehen andere detailliertere Quellen zur Verfügung. Diese versteht man dank dem Buch viel einfacher. Bei zahlreichen Themen findet man im Buch QR-Codes für ausführlichere Erklärungen auf einer eigenen Webseite zum Buch bzw. Dropbox PDF Links.
Welche Erfahrung hast du mit künstlicher Intelligenz gemacht? Wonach suchst du konkret, wenn es um Literatur zu dem Thema geht?