Einführung in Machine Learning mit Python

Book description

Machine Learning ist zu einem wichtigen Bestandteil vieler kommerzieller Anwendungen und Forschungsprojekte geworden, von der medizinischen Diagnostik bis hin zur Suche nach Freunden in sozialen Netzwerken. Um Machine Learning-Anwendungen selbst zu entwickeln, braucht es keine großen Teams: Wenn Sie Python-Grundkenntnisse mitbringen, kann Ihnen dieses Praxisbuch zeigen, wie Sie Ihre eigenen Machine Learning-Lösungen entwickeln.Mit Python und der scikit-learn-Bibliothek erarbeiten Sie sich alle Schritte, die für eine erfolgreiche Machine Learning-Anwendung notwendig sind. Die Autoren Andreas Müller und Sarah Guido konzentrieren sich bei der Verwendung von Machine Learning-Algorithmen auf die Praxis und weniger auf die Mathematik dahinter. Wenn Sie zusätzlich mit den Bibliotheken NumPy und matplotlib vertraut sind, hilft Ihnen dies, noch mehr aus diesem Buch herauszuholen.

Table of contents

  1. Cover
  2. Titel
  3. Impressum
  4. Inhalt
  5. Vorwort
  6. 1 Einführung
    1. Warum Machine Learning?
    2. Welche Probleme kann Machine Learning lösen?
    3. Ihre Aufgabe und Ihre Daten kennen
    4. Warum Python?
    5. scikit-learn
    6. Installieren von scikit-learn
    7. Grundlegende Bibliotheken und Werkzeuge
    8. Jupyter Notebook
    9. NumPy
    10. SciPy
    11. matplotlib
    12. pandas
    13. mglearn
    14. Python 2 versus Python 3
    15. In diesem Buch verwendete Versionen
    16. Eine erste Anwendung: Klassifizieren von Iris-Spezies
    17. Die Daten kennenlernen
    18. Erfolg nachweisen: Trainings- und Testdaten
    19. Das Wichtigste zuerst: Sichten Sie Ihre Daten
    20. Ihr erstes Modell konstruieren: k-nächste-Nachbarn
    21. Vorhersagen treffen
    22. Evaluieren des Modells
    23. Zusammenfassung und Ausblick
  7. 2 Überwachtes Lernen
    1. Klassifikation und Regression
    2. Verallgemeinerung, Overfitting und Underfitting
    3. Zusammenhang zwischen Modellkomplexität und Größe des Datensatzes
    4. Algorithmen zum überwachten Lernen
    5. Einige Beispieldatensätze
    6. k-nächste-Nachbarn
    7. Lineare Modelle
    8. Naive Bayes-Klassifikatoren
    9. Entscheidungsbäume
    10. Ensembles von Entscheidungsbäumen
    11. Support Vector Machines mit Kernel
    12. Neuronale Netze (Deep Learning)
    13. Schätzungen der Unsicherheit von Klassifikatoren
    14. Die Entscheidungsfunktion
    15. Vorhersagen von Wahrscheinlichkeiten
    16. Unsicherheit bei der Klassifikation mehrerer Kategorien
    17. Zusammenfassung und Ausblick
  8. 3 Unüberwachtes Lernen und Vorverarbeitung
    1. Arten von unüberwachtem Lernen
    2. Herausforderungen beim unüberwachten Lernen
    3. Vorverarbeiten und Skalieren
    4. Unterschiedliche Möglichkeiten der Vorverarbeitung
    5. Anwenden von Datentransformationen
    6. Trainings- und Testdaten in gleicher Weise skalieren
    7. Die Auswirkungen der Vorverarbeitung auf überwachtes Lernen
    8. Dimensionsreduktion, Extraktion von Merkmalen und Manifold Learning
    9. Hauptkomponentenzerlegung (PCA)
    10. Nicht-negative-Matrix-Faktorisierung (NMF)
    11. Manifold Learning mit t-SNE
    12. Clusteranalyse
    13. k-Means-Clustering
    14. Agglomeratives Clustering
    15. DBSCAN
    16. Vergleichen und Auswerten von Clusteralgorithmen
    17. Zusammenfassung der Clustering-Methoden
    18. Zusammenfassung und Ausblick
  9. 4 Repräsentation von Daten und Merkmalsgenerierung
    1. Kategorische Variablen
    2. One-Hot-Kodierung (Dummy-Variablen)
    3. Zahlen können kategorische Daten kodieren
    4. Binning, Diskretisierung, lineare Modelle und Bäume
    5. Interaktionen und Polynome
    6. Univariate nichtlineare Transformation
    7. Automatische Auswahl von Merkmalen
    8. Univariate Statistiken
    9. Modellbasierte Auswahl von Merkmalen
    10. Iterative Auswahl von Merkmalen
    11. Berücksichtigen von Expertenwissen
    12. Zusammenfassung und Ausblick
  10. 5 Evaluierung und Verbesserung von Modellen
    1. Kreuzvalidierung
    2. Kreuzvalidierung in scikit-learn
    3. Vorteile der Kreuzvalidierung
    4. Stratifizierte k-fache Kreuzvalidierung und andere Strategien
    5. Gittersuche
    6. Einfache Gittersuche
    7. Die Gefahr des Overfittings von Parametern und Validierungsdaten
    8. Gittersuche mit Kreuzvalidierung
    9. Evaluationsmetriken
    10. Das Ziel im Auge behalten
    11. Metriken zur binären Klassifikation
    12. Metriken zur Klassifikation mehrerer Kategorien
    13. Regressionsmetriken
    14. Verwenden von Metriken zur Modellauswahl
    15. Zusammenfassung und Ausblick
  11. 6 Verkettete Algorithmen und Pipelines
    1. Parameterauswahl mit Vorverarbeitung
    2. Erstellen von Pipelines
    3. Pipelines zur Gittersuche einsetzen
    4. Die allgemeine Pipeline-Schnittstelle
    5. Bequemes Erstellen von Pipelines mit make_pipeline
    6. Zugriff auf Attribute von Schritten
    7. Zugriff auf Attribute in einer Pipeline mit Gittersuche
    8. Gittersuche für Vorverarbeitungsschritte und Modellparameter
    9. Gittersuche nach dem richtigen Modell
    10. Zusammenfassung und Ausblick
  12. 7 Verarbeiten von Textdaten
    1. Arten von als Strings repräsentierter Daten
    2. Anwendungsbeispiel: Meinungsanalyse zu Filmbewertungen
    3. Repräsentation von Text als Bag-of-Words
    4. Anwenden von Bag-of-Words auf einen einfachen Datensatz
    5. Bag-of-Words der Filmbewertungen
    6. Stoppwörter
    7. Umskalieren der Daten mit tf-idf
    8. Untersuchen der Koeffizienten des Modells
    9. Bag-of-Words mit mehr als einem Wort (n-Gramme)
    10. Fortgeschrittene Tokenisierung, Stemming und Lemmatisierung
    11. Modellierung von Themen und Clustering von Dokumenten
    12. Latent Dirichlet Allocation
    13. Zusammenfassung und Ausblick
  13. 8 Zusammenfassung und weiterführende Ressourcen
    1. Herangehensweise an eine Fragestellung beim maschinellen Lernen
    2. Der menschliche Faktor
    3. Vom Prototyp zum Produktivsystem
    4. Testen von Produktivsystemen
    5. Konstruieren eines eigenen Estimators
    6. Wie geht es von hier aus weiter?
    7. Theorie
    8. Andere Umgebungen und Programmpakete zum maschinellen Lernen
    9. Ranking, Empfehlungssysteme und andere Arten von Lernen
    10. Probabilistische Modellierung, Inferenz und probabilistische Programmierung
    11. Neuronale Netze
    12. Skalieren auf größere Datensätze
    13. Verfeinern Sie Ihre Fähigkeiten
    14. Schlussbemerkung
  14. Index
  15. Über die Autoren
  16. Über die Übersetzer
  17. Kolophon
  18. Fußnoten

Product information

  • Title: Einführung in Machine Learning mit Python
  • Author(s): Sarah Guido, Andreas C. Müller
  • Release date: July 2017
  • Publisher(s): dpunkt
  • ISBN: 9783960090496