Demo-PYx: Machine Learning mit Python

Machine Learning-Modelle und Algorithmen haben im weitesten Sinne das Ziel, aus Input-Daten sinnvolle Zusammenhänge zu erkennen und daraus Regeln abzuleiten. Z.B. Objekte erkennen, Vorhersagen treffen, Trends erkennen, Daten nach bestimmten Kriterien gruppieren.

Die Demo- und Tutorial-Reihe rund um das Thema Machine Learning mit Python zeigt den Einstieg in Modelle und Algorithmen des Machine Learning mit Hilfe der Programmiersprache Python und der Python-Pakete für Datenanalyse und Maschinelles Lernen: Scikit-Learn, Keras, Pandas, Numpy, Matplotlib.

Der Übersichts-Artikel Maschinelles Lernen: Konzepte, Methoden, Tools bietet eine vereinfachte Übersicht über die wichtigsten Methoden und Tools des Machine Learning, sowie Hinweise über die Verwendung der elab2go-Demonstratoren, die diese illustrieren.

Demo-PY1: Python-Tutorial - Der Einstieg mit Jupyter Notebook bietet einen Einstieg in die Programmiersprache Python. Die grundlegende Syntax wird vorgestellt, inklusive objektorientierte Programmierung mit Klassen, sowie die wichtigsten Python-Bibliotheken für Datenanalyse. Dieses Tutorial eignet sich auch für Umsteiger, die bisher mit C-ähnlichen Sprachen oder MATLAB programmiert haben: die Gemeinsamkeiten und Unterschiede zwischen den Sprachen werden hervorgehoben und in einem letzten Abschnitt zusammengefasst.

Demo-PY1: Jupyter Notebook verwenden zeigt, wie man interaktive Jupyter Notebook-Skripte mit Markdown-Zellen und Codezellen erstellt. Jupyter Notebook ist eine webbasierte Umgebung, die das Erstellen, Dokumentieren und Teilen von Python- und R-Demonstratoren im Umfeld des Maschinellen Lernens unterstützt. Wir verwenden in dieser Tutorial-Reihe Jupyter Notebook, damit die Machine Learning-Modellierung in einfache Schritte mit sichtbaren dokumentierten Zwischenergebnissen heruntergebrochen werden kann.

Demo-PY1: Jupyter Notebook Widgets erstellen zeigt, wie man in ein Jupyter Notebook-Skript Widgets einbaut, entweder explizit als Steuerelemente mit Eventhandling, oder implizit als Steuerelemente, die durch die interact()-Funktionalität mit einer benutzerdefinierten Funktion generiert werden.

Demo-PY2: Datenverwaltung und - Visualisierung mit Pandas zeigt am Beispiel eines Open Power System-Datensatzes wie die Datenstrukturen und Funktionen der Python-Pakete Pandas und Matplotlib zur Datenaufbereitung und graphischen Darstellung großer Zeitreihen-Daten verwendet werden.

Demo-PY3: Clusteranalyse mit scikit-learn zeigt am Beispiel eines Mini-Datensatzes mit Raumklima-Messungen, wie eine Clusteranalyse mit Hilfe der Python-Bibliothek Scikit-Learn für maschinelles Lernen durchgeführt wird.

Demo-PY3: Clusteranalyse "Automotive in 3D" zeigt einen Anwendungs­fall der Clustera­nalyse im 3-dimensionalen Raum anhand des Automobildatensatzes, der in den Predictive Maintenance-Datenanalysen Demo-PY4 und Demo4 verwendet wird. Die Cluster werden auf Basis von drei Merkmalen des Datensatzes erstellt, die am stärksten zum Ausfall beigetragen haben.

Demo-PY3: Clusteranalyse "Automotive in 3D" zeigt einen Anwendungs­fall der Clustera­nalyse im 3-dimensionalen Raum anhand des Automobildatensatzes, der in den Predictive Maintenance-Datenanalysen Demo-PY4 und Demo4 verwendet wird. Die Cluster werden auf Basis von drei Merkmalen des Datensatzes erstellt, die am stärksten zum Ausfall beigetragen haben.

Demo-PY4: Predictive Maintenance mit scikit-learn zeigt, wie eine Ausfall-Prognose im Rahmen eines Predictive Maintenance-Szenarios mit Hilfe des Entscheidungsbaum-Verfahrens der Python-Bibliothek scikit-learn für maschinelles Lernen durchgeführt wird. Wir verwenden denselben Automobildatensatz, der in den Demos des Predictive Maintenance-Zyklus verwendet wird: eine csv-Datei automotive_data.csv mit 136 Beobachtungen. Die Fragestellung lautet: "Bei welcher Kombination von Merkmalen tritt ein Ausfall ein?".

Demo-PY5: Machine Learning-Modellierung mit Keras und Tensorflow zeigt die Erstellung und Verwendung eines Künstlichen Neuronalen Netzwerks für die Zeitreihenprognose von Stromverbrauchsdaten mit Hilfe der Python-Bibliotheken Keras und Tensorflow.

Das Diagramm "Machine Learning mit Python" zeigt eine Übersicht der wichtigsten Modelle des Maschinellen Lernens, gruppiert nach Art des Lernverfahrens, die Python-Pakete und Klassen, mit denen sie jeweils implementiert werden, sowie die elab2go-Demonstratoren, die sie veranschaulichen.

Übersicht: Machine Learning mit Python
Machine Learning mit Python-Übersicht

Autoren, Tools und Quellen

Mit Beiträgen von:
 Prof. Dr. Eva Maria Kiss
 M. Sc. Anke Welz, M. Sc. Franc Pouhela

Tools
Python, Anaconda, Jupyter Notebook

elab2go-Links