- Neu
Produktbeschreibung: Maschinelles Lernen in Python. Rezepte. Von der Datenaufbereitung bis zum Deep Learning. 2. Auflage - Kyle Gallatin, Chris Albon
Die zweite Auflage von Maschinelles Lernen in Python enthält über 200 bewährte Rezepte, die auf den neuesten Versionen der Python-Bibliotheken basieren. Sie enthalten vorgefertigten Code, der an die eigenen Bedürfnisse angepasst werden kann. Das Buch enthält fertige Beispiele für die Arbeit mit Daten in verschiedenen Formaten, Datenbanken und Datenspeichern sowie zahlreiche Ratschläge, die bei der Bewältigung eines breiten Spektrums von Problemen, von der Vorbereitung und dem Laden von Daten bis hin zum Training von Modellen und der Verwendung neuronaler Netze, hilfreich sein können. Die Publikation eignet sich für alle, die Algorithmen des maschinellen Lernens in der Praxis umsetzen wollen.
Ein paar Worte über die Autoren
Kyle Gallatin ist ein Ingenieur, der Software für die Plattform für maschinelles Lernen bei Etsy entwickelt. Er hat auch als Datenwissenschaftler, Datenanalytiker und Ingenieur für maschinelles Lernen gearbeitet.
Dr. Chris Albon ist seit vielen Jahren als Datenanalytiker und Politikwissenschaftler tätig. Er arbeitet derzeit für Devoted Health und war außerdem leitender Datenanalyst beim kenianischen Startup BRCK.
Maschinelles Lernen - Rezepte
Maschinelles Lernen ist einer der interessantesten und am schnellsten wachsenden Bereiche der Informationstechnologie. Das Buch bietet Informationen über die Arbeit mit Daten in verschiedenen Formaten, Datenbanken und Datenspeichern. Außerdem werden Techniken zur Dimensionalitätsreduktion und Methoden zur Modellbewertung und -auswahl erörtert. Die Veröffentlichung enthält Formulierungen zu Themen wie lineare und logistische Regression, Entscheidungsbäume und Zufallswälder sowie k-nearest neighbour Algorithmen, Support Vector Machines (SVMs), naive Bayes'sche Klassifikation und Clustering.
Über das Buch
- Originaltitel: Machine Learning with Python Cookbook: Praktische Lösungen von Preprocessing bis Deep Learning, 2.
- Autoren: Kyle Gallatin, Dr. Chris Albon
- Übersetzung: Robert Górczynski
- ISBN: 978-83-289-0811-6
- Ausgabe Jahr: 2024
- Format: 165 x 235 mm
- Bindung: weich
- Anzahl der Seiten: 398
- Herausgeber: Helion S.A.
Inhaltsübersicht
Einführung
1. Vektor, Array und Tabelle
- 1.0 Einführung
- 1.1 Erstellen eines Vektors
- 1.2 Erstellen eines Arrays
- 1.3 Erstellen einer dünnbesetzten Matrix
- 1.4 Vorab-Zuweisung eines NumPy-Arrays
- 1.5 Abrufen von Elementen
- 1.6 Beschreiben eines Arrays
- 1.7 Durchführen von Operationen auf allen Elementen
- 1.8 Finden des Maximal- und Minimalwertes
- 1.9 Berechnung von Mittelwert, Varianz und Standardabweichung
- 1.10 Umformung eines Arrays
- 1.11. Transponieren eines Vektors oder einer Matrix
- 1.12. Abflachen einer Matrix
- 1.13. Finden der Zeile einer Matrix
- 1.14. Abrufen der Diagonale einer Matrix
- 1.15. Berechnen der Spur einer Matrix
- 1.16. Berechnen des Skalarprodukts
- 1.17. Addieren und Subtrahieren einer Matrix
- 1.18. Matrix-Multiplikation
- 1.19. Invertierung einer Matrix
- 1.20. Erzeugung von Zufallszahlen
2 Laden von Daten
- 2.0 Einführung
- 2.1 Laden eines Beispieldatensatzes
- 2.2 Erstellen eines simulierten Datensatzes
- 2.3 Laden einer CSV-Datei
- 2.4 Laden einer Excel-Datei
- 2.5 Laden einer JSON-Datei
- 2.6 Laden der Parquet-Datei
- 2.7 Laden der Avro-Datei
- 2.8 Abfrage einer SQLite-Datenbank
- 2.9 Abfrage einer entfernten SQL-Datenbank
- 2.10. das Laden von Daten aus Google Sheets
- 2.11. Laden von Daten aus einem S3-Bucket
- 2.12. Laden von unstrukturierten Daten
3 Aufbereitung von Daten
- 3.0 Einführung
- 3.1 Erstellen eines Datenrahmens
- 3.2 Beschreiben der Daten
- 3.3 Navigieren im Datenrahmen
- 3.4 Abrufen von Zeilen auf der Grundlage bestimmter Bedingungen
- 3.5 Sortieren von Werten
- 3.6 Ersetzen von Werten
- 3.7 Umbenennen einer Spalte
- 3.8 Minimum, Maximum, Summe, Durchschnitt und Anzahl der Elemente in einer Spalte ermitteln
- 3.9 Suche nach eindeutigen Werten
- 3.10. Umgang mit fehlenden Werten
- 3.11. Löschen von Spalten
- 3.12. Löschen einer Zeile
- 3.13. Löschen von doppelten Zeilen
- 3.14. Zeilen nach Wert gruppieren
- 3.15. Zeilen nach der Zeit gruppieren
- 3.16. Aggregieren von Operationen und Statistiken
- 3.17. Iterieren durch eine Spalte
- 3.18. Aufrufen von Funktionen für alle Spaltenelemente
- 3.19. Funktionsaufruf für eine Gruppe
- 3.20. Verkettung von DataFrame-Objekten
- 3.21. Verkettung von DataFrame-Objekten
4 Umgang mit numerischen Daten
- 4.0 Einführung
- 4.1 Skalierung eines Merkmals
- 4.2 Normierung des Merkmals
- 4.3 Normalisierung von Beobachtungen
- 4.4 Erzeugen von Polynom- und Interaktionsmerkmalen
- 4.5 Merkmalstransformation
- 4.6 Erkennung von Ausreißern
- 4.7 Behandlung von Ausreißern
- 4.8 Diskretisierung von Merkmalen
- 4.9 Clustering von Beobachtungen mittels Clustering
- 4.10. Löschen von Beobachtungen mit fehlenden Werten
- 4.11. Auffüllen von fehlenden Werten
5 Umgang mit kategorisierten Daten
- 5.0 Einführung
- 5.1 Kodierung von nominalen kategorisierenden Merkmalen
- 5.2 Codierung von ordinalen kategorisierenden Merkmalen
- 5.3 Kodierung von Merkmalswörterbüchern
- 5.4 Einfügen von fehlenden Klassenwerten
- 5.5 Umgang mit unausgewogenen Klassen
6. die Behandlung von Text
- 6.0 Einführung
- 6.1 Bereinigung von Text
- 6.2 Verarbeitung und Bereinigung von HTML-Daten
- 6.3 Entfernen von Interpunktionszeichen
- 6.4 Tokenisierung von Text
- 6.5 Entfernen von Wörtern mit geringer Bedeutung
- 6.6 Stemming von Wörtern
- 6.7 Part-of-Speech-Tagging
- 6.8 Erkennung von benannten Entitäten
- 6.9 Kodierung von Text mit dem Bag-of-Words-Modell
- 6.10 Bestimmung der Wortgewichtung
- 6.11. Verwendung von Textvektoren zur Berechnung der Textähnlichkeit in einer Suchanfrage
- 6.12. Verwendung eines Stimmungsanalyse-Klassifikators
7 Umgang mit Datum und Uhrzeit
- 7.0 Einführung
- 7.1 Konvertieren eines Textstrings in ein Datum
- 7.2 Umgang mit Zeitzonen
- 7.3 Abrufen von Datum und Uhrzeit
- 7.4 Aufteilung von Datumsdaten in mehrere Merkmale
- 7.5 Berechnen der Differenz zwischen Datumsangaben
- 7.6 Kodierung von Wochentagen
- 7.7 Erstellen eines zeitverzögerten Merkmals
- 7.8 Verwendung von verstrichenen Zeitfenstern
- 7.9 Umgang mit fehlenden Daten in einer Datenreihe, die Datums- und Zeitwerte enthält
8 Handhabung von Bildern
- 8.0 Einführung
- 8.1 Laden eines Bildes
- 8.2 Speichern eines Bildes
- 8.3 Ändern der Bildgröße
- 8.4 Beschneiden des Bildes
- 8.5 Unschärfe des Bildes
- 8.6 Schärfen des Bildes
- 8.7 Erhöhen des Kontrasts
- 8.8 Farben isolieren
- 8.9. Schwellenwertbildung des Bildes
- 8.10. Entfernen des Bildhintergrunds
- 8.11. Randerkennung
- 8.12. Erkennen von Ecken in einem Bild
- 8.13. Erstellen von Merkmalen beim maschinellen Lernen
- 8.14. Verwendung eines Farbhistogramms als Merkmal
- 8.15. Trainierte Einbettungen als Merkmale verwenden
- 8.16. Objekterkennung mit OpenCV
- 8.17. Klassifizierung von Bildern mit PyTorch
9 Verringerung der Dimensionalität durch Merkmalsextraktion
- 9.0 Einführung
- 9.1 Merkmalsreduktion mit Hilfe von Hauptkomponenten
- 9.2 Reduktion von Merkmalen bei linear unzerlegbaren Daten
- 9.3 Merkmalsreduktion durch Maximierung der Klassentrennbarkeit
- 9.4 Merkmalsreduktion durch Matrixzersetzung
- 9.5 Reduktion von Merkmalen in spärlichen Daten
Dimensionalitätsreduktion durch Merkmalsauswahl
- 10.0 Einführung
- 10.1 Schwellenwertbildung für die Varianz eines numerischen Merkmals
- 10.2 Schwellenwertbildung für die Varianz eines binären Merkmals
- 10.3 Umgang mit hochkorrelierten Merkmalen
- 10.4 Beseitigung irrelevanter Merkmale für die Klassifikation
- 10.5 Rekursive Eliminierung von Merkmalen
11. Modellbewertung
- 11.0 Einführung
- 11.1 Kreuzvalidierungsmodelle
- 11.2 Erstellung eines Basis-Regressionsmodells
- 11.3 Erstellung des Basisklassifikationsmodells
- 11.4 Auswertung der Vorhersagen eines binären Klassifikators
- 11.5 Auswertung des Schwellenwerts eines binären Klassifikators
- 11.6 Auswertung der Vorhersagen von Mehrklassen-Klassifikatoren
- 11.7 Visualisierung der Klassifikatorleistung
- 11.8 Bewertung des Regressionsmodells
- 11.9 Bewertung des Clustermodells
- 11.10 Festlegung von Nicht-Standardkoeffizienten für die Modellbewertung
- 11.11. Visualisierung der Auswirkung der Lernmengengröße
- 11.12. Erstellen eines Textberichts über den Bewertungsfaktor
- 11.13. Visualisierung der Auswirkung einer Änderung des Wertes von Hyperparametern
12. Modellauswahl
- 12.0 Einführung
- 12.1 Auswahl der besten Modelle mittels erschöpfender Suche
- 12.2 Auswahl der besten Modelle durch zufällige Suche
- 12.3 Auswahl der besten Modelle aus mehreren Algorithmen für maschinelles Lernen
- 12.4 Auswahl der besten Modelle in der Phase der Datenaufbereitung
- 12.5 Beschleunigung der Modellauswahl durch Parallelität
- 12.6 Beschleunigung der Modellauswahl durch algorithmusspezifische Methoden
- 12.7 Leistungsbewertung nach der Modellauswahl
13. Lineare Regression
- 13.0 Einführung
- 13.1 Bestimmung von Linien
- 13.2 Umgang mit dem Effekt der Interaktion
- 13.3 Bestimmung der nichtlinearen Abhängigkeit
- 13.4 Verringerung der Varianz durch Regularisierung
- 13.5 Merkmalsreduktion durch LASSO-Regression
14 Bäume und Wälder
- 14.0 Einführung
- 14.1 Training eines Entscheidungsbaum-Klassifikators
- 14.2 Training des Entscheidungsbaum-Regressors
- 14.3 Visualisierung des Entscheidungsbaummodells
- 14.4 Training des Random-Forest-Klassifikators
- 14.5 Training des Random-Forest-Regressors
- 14.6 Evaluierung des Random Forests mit Hilfe eines Out-of-Bag-Fehlerschätzers
- 14.7 Identifizierung von wichtigen Merkmalen im Random Forest
- 14.8 Auswahl von wichtigen Merkmalen in einem Random Forest
- 14.9 Umgang mit unausgewogenen Klassen
- 14.10 Kontrolle der Baumgröße
- 14.11. Verbesserung der Leistung durch Verstärkung
- 14.12. Training des XGBoost-Modells
- 14.13. Verbesserung der Echtzeitleistung mit LightGBM
15. k-Nächste-Nachbarn-Algorithmus
- 15.0 Einführung
- 15.1 Suche nach den nächsten Nachbarn von Beobachtungen
- 15.2 Erstellen des Klassifikators mit k nächsten Nachbarn
- 15.3 Bestimmen der besten Nachbarschaftsgröße
- 15.4 Erstellen eines Klassifikators für die nächsten Nachbarn auf der Grundlage des Radius
- 15.5 Finden der ungefähren nächsten Nachbarn
- 15.6 Auswertung der ungefähren nächstgelegenen Nachbarn
16 Logistische Regression
- 16.0 Einführung
- 16.1 Training eines binären Klassifikators
- 16.2 Training eines Multiklassen-Klassifikators
- 16.3 Verringerung der Varianz durch Regularisierung
- 16.4 Training eines Klassifikators auf sehr großen Datenmengen
- 16.5 Umgang mit unausgewogenen Klassen
17 Support-Vektor-Maschine
- 17.0 Einführung
- 17.1 Training eines linearen Klassifikators
- 17.2 Behandlung linear untrennbarer Klassen mit Hilfe von Kernel-Funktionen
- 17.3 Bestimmung der vorhergesagten Wahrscheinlichkeiten
- 17.4 Identifizierung von Support-Vektoren
- 17.5 Umgang mit unbalancierten Klassen
18 Naiver Bayes'scher Klassifikator
- 18.0 Einführung
- 18.1 Training eines Klassifikators für kontinuierliche Merkmale
- 18.2 Trainieren eines Klassifikators für diskrete oder abzählbare Merkmale
- 18.3 Trainieren eines naiven Bayes'schen Klassifikators für binäre Merkmale
- 18.4 Kalibrierung der Vorhersagewahrscheinlichkeit
19 Clustering
- 19.0 Einführung
- 19.1 Clustering mit k-Durchschnitten
- 19.2 Beschleunigtes Clustering mit k-Durchschnitten
- 19.3 Clustering mit dem Mean-Shift-Algorithmus
- 19.4 Clustering mit dem DBSCAN-Algorithmus
- 19.5 Clustering mittels hierarchischer Verknüpfung
20. Tensoren in PyTorch
- 20.0 Einführung
- 20.1 Erstellen eines Tensors
- 20.2 Erstellen eines Tensors aus NumPy heraus
- 20.3 Erstellung eines spärlichen Tensors
- 20.4 Auswählen von Tensorelementen
- 20.5 Beschreiben des Tensors
- 20.6. Operationen auf Tensorelementen durchführen
- 20.7 Einen Minimal- und Maximalwert finden
- 20.8 Ändern der Form eines Tensors
- 20.9 Transponieren eines Tensors
- 20.10 Abflachen eines Tensors
- 20.11. Berechnung des Skalarprodukts
- 20.12. Multiplikation von Tensoren
21 Neuronale Netze
- 21.0 Einführung
- 21.1 Verwendung der Autograd-Engine des PyTorch-Frameworks
- 21.2 Aufbereitung von Daten für ein neuronales Netz
- 21.3 Entwurf des neuronalen Netzes
- 21.4 Trainieren eines binären Klassifizierers
- 21.5 Trainieren eines Multiklassen-Klassifikators
- 21.6 Trainieren eines Regressors
- 21.7 Generierung von Vorhersagen
- 21.8 Visualisierung des Trainingsverlaufs
- 21.9 Verringerung der Überanpassung durch Gewichtsregulierung
- 21.10 Verringerung der Überanpassung durch frühzeitige Beendigung der Lerntechnik
- 21.11. Verringerung der Überanpassung mit Hilfe der Abbruchtechnik
- 21.12. Aufzeichnung des Lernfortschritts des Modells
- 21.13 Abstimmung des neuronalen Netzes
- 21.14. Visualisierung des neuronalen Netzes
22 Neuronale Netze für unstrukturierte Daten
- 22.0 Einführung
- 22.1 Training eines neuronalen Netzes zur Bildklassifizierung
- Training eines neuronalen Netzes für die Textklassifizierung
- Abstimmung des trainierten Modells für die Bildklassifizierung
- Abstimmen des trainierten Modells für die Textklassifizierung
23 Speichern, Laden und gemeinsame Nutzung trainierter Modelle
- 23.0 Einführung
- 23.1 Speichern und Laden eines scikit-learn Bibliotheksmodells
- 23.2 Speichern und Laden des TensorFlow Bibliotheksmodells
- 23.3 Speichern und Laden des PyTorch-Modells
- 23.4 Gemeinsame Nutzung von scikit-learn Modellen
- 23.5 TensorFlow-Modelle gemeinsam nutzen
- 23.6 Gemeinsame Nutzung von PyTorch-Modellen mit Seldon
Nützliche Links |