Aus Linux-Magazin 08/2023

Bücher über Machine Learning und C++

Ein Buch führt reich bebildert in Methoden des Machine Learning ein, das zweite erläutert Best Practices für C++-Programmierer.

Bilder statt Worte

Das Besondere an der vorliegenden Einführung in Methoden des maschinellen Lernens ist die Erklärmethode. Der Autor nutzt durchgängig Comic-artige Bildchen, oft Diagramme, aber auch plakative Abbildungen. Zwei Fantasiefiguren, Normalsaurus und StatSquatch, äußern sich mittels Sprechblasen. Alle Themenkomplexe gliedern sich in überschaubare Einheiten, meist nicht länger als eine Seite. Dabei umfasst jede Einheit wiederum meist drei oder vier prägnante Punkte, zu denen jeweils eine Illustration gehört. Oft setzen die Erklärungen bei einer Grundidee an und hangeln sich dann weiter zu den Details. Auf diese Weise kann der Leser den dargebotenen Stoff in leicht verdaulichen Häppchen aufnehmen und muss sich erst dann tiefer in die Materie wagen, wenn er die bis dahin gebotenen Erklärungen wirklich verstanden hat. Die Beispiele sind instruktiv und ähneln sich über weite Strecken, sodass der Leser an Bekanntem anknüpfen kann. Kurze Zusammenfassungen und FAQs festigen das Gelernte. Die Methode funktioniert ausgezeichnet, wenn man sich an “Bäm!!!” und ähnlichen kindlichen Stilelementen nicht allzu sehr stört.

Das Buch behandelt einführend die Grundideen des Machine Learning – Klassifizierung und Regression – und einige grundlegende Begriffe wie diskrete und kontinuierliche Daten, abhängige und unabhängige Variable, Test- und Trainingsdaten, und so weiter. Weiter geht es mit dem nötigen Fundament aus Statistik: Histogramme, Wahrscheinlichkeitsverteilungen und Modelle kommen zur Sprache. Dann folgen konkreten Techniken, darunter die lineare Regression, das Gradientenabstiegsverfahren und die logistische Regression. Daran schließt sich mit Naive Bayes ein bekanntes Klassifikationsverfahren an, dem noch Entscheidungsbäume und Support-Vektor-Klassifikatoren folgen. Das Buch endet schließlich mit einer Vorstellung neuronaler Netze. Insgesamt liegt mit dem Titel ein Werk vor, das sich ausgezeichnet auch für das Selbststudium eignet und auf didaktisch geschickte Weise in das weite Feld des maschinellen Lernens einführt. Es ist durchweg sehr gut verständlich und liest sich angenehm.

Infos

Josh Starmer

Machine Learning visuell lernen

mitp-Verlag 2022

300 Seiten, 35 Euro

ISBN: 978-3-7475-0071-2

C++ für Profis

Bei den C++ Core Guidelines handelt es sich um eine Sammlung von Regeln, Richtlinien und Empfehlungen, erarbeitet von der C++-Community und herausgegeben unter einer Open-Source-Lizenz. Sie sollen alle C++-Programmierer dazu befähigen, effizienteren Code zu schreiben, der statisch typsicher ist, keine Ressourcen-Leaks aufweist, keine Logik-Fehler aufweist und zügig läuft. Die Regeln sind allerdings sehr kurz und prägnant formuliert. Wer sie anwenden will, profitiert daher sicher von dem Projekt, das der freie Consultant, Trainer und Linux-Magazin-Autor Rainer Grimm nun in Buchform vorlegt. Sein Werk versammelt Hinweise und Erklärungen inklusive Codebeispielen zu jeder der zahlreichen Regeln.

Das englischsprachige Buch lehnt sich dabei eng an die Guidelines an und übernimmt deren Einteilung in 16 Sektionen samt deren Reihenfolge und Nummerierung. Zu jeder Regel wird konkret erläutert, was sie bedeutet und wie sie anzuwenden ist. Sehr häufig illustrieren kurze Code-Snippets die Verwendung, viele Screenshots von Terminalfenstern illustrieren die Effekte auf der Kommandozeile. Wichtige Aussagen eines jeden Abschnitts fasst ein mit Distilled überschriebener Kasten noch einmal kurz zusammen.

Nach einer Einführung geht es um die C++-Philosophie. Dabei geben 13 Regeln allgemeinere Grundsätze vor. Dazu gehören das Ziel, Ideen direkt in Code auszudrücken, die Regel, Zeit und Platz nicht zu verschwenden und die Maßgabe, Bibliotheken und unterstützende Tools zu nutzen, wo immer das angebracht ist. Das nächste Kapitel dreht sich um Interfaces als den “wahrscheinlich wichtigsten Einzelaspekt der Codeorganisation”. Es folgen eine ganze Anzahl Regeln zum Umgang mit Funktionen. Anschließend widmet sich eine umfangreiche Sektion den Klassen und Klassenhierarchien. Weiter geht es mit Enumerations und dann dem wichtigen Kapitel Ressourcenmanagement. Es folgt eine mit 65 Regeln recht umfangreiche Sektion zu Expressions und Statements. Die Best Practices reichen hier von einfachen Empfehlungen, wie der, ähnlich klingende Namen zu vermeiden, bis hin zu Ratschlägen wie dem, komplexe Initialisierungsschritte in Lambda-Funktionen zu kleiden. Die nächste Gruppe von Regeln widmet sich Performance-Problemen, dann geht es um die Konkurrenz in Umgebungen mit Multithreading. Weiter geht es mit Fehlerbehandlung, Konstanten, Templates, Programmierung im C-Stil, Source Files und der Standard-Library.

Das Buch bietet sich vor allem als übersichtliches Nachschlagewerk an, das zu einer Vielzahl Fragen der C++-Programmierung verständliche Erklärungen zu den Best-Practice-Regeln liefert.

Infos

Rainer Grimm

C++ Core Guidelines explained

Addison-Wesley 2022

460 Seiten, 45 Euro

ISBN: 978-0-13-687567-3

DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDFUmfang: 1 HeftseitePreis €0,99
(inkl. 19% MwSt.)
LINUX-MAGAZIN KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS Readly Logo
E-Mail Benachrichtigung
Benachrichtige mich zu:
0 Kommentare
Älteste
Neuste Beste Bewertung
Inline Feedbacks
Alle Kommentare anzeigen
Nach oben