Machine Learning mit TensorFlow

Durch ständige Schulungen und Fortbildungen halten wir unsere Mitarbeiter laufend am neuesten Stand der Technik. Über die e-Learning Platform Udacity konnte sich Markus in einem Nanodegree Programm zum Thema „Machine Learning“ weiterbilden.
Der Kurs vermittelte erste Grundkenntnisse über Maschinenlernen und vertiefte sich dann in drei Modulen auf „Supervised Learning“, „Deep Learning“ und „Unsupervised Learning“. Die einzelnen Module lehren die theoretischen Grundkenntnisse und in zahlreichen Übungen werden diese dann anhand von praktischen Beispielen geübt und detailliert. Der ca. 3-monatige Kurs lässt sich den eigenen Bedürfnissen entsprechend zeitlich frei einteilen und setzt Basiskenntnisse in Statistik und der Programmiersprache Python voraus.

Der erste Abschnitt – Supervised Learning – verschaffte einen Überblick über die Möglichkeiten mit maschinellem Lernen, sozusagen das große Ganze zu erkennen und vertiefte sich dann in die verschiedenen Algorithmen für das Training und die Auswertung von ML-Modellen. Inhalt waren unter anderem Linear Regression, Perceptron Algorithm, Decision Trees, Naive Bayes, Support Vector Machines, Ensemble Methods, Model Evaluation Metrics und vieles mehr. Bei all diesen Methoden wird das erstellte Modell mit einem „gelabelten“ Datensatz gefüttert, das heißt die Daten enthalten ein Label mit dem gewünschten Ergebnis, sodass das Modell nach dem Lernvorgang das Label von neuen Daten selbständig erkennt und ausgibt.

Im zweite Abschnitt ging es dann um Deep Learning mit TensorFlow, eines von mehreren Frameworks für Maschinenlernen, welches perfekt in Python integrierbar ist. Deep Learning Modelle in TensorFlow zu entwickeln und an einem praktischen Beispiel anzuwenden war der Hauptfokus dieses Moduls. Hier werden meist mehrere der Grund-Algorithmen in einem komplexen Modell kombiniert, um ein optimales Ergebnis zu erzielen.

Der letzte Abschnitt beschäftigte sich mit „Unsupervised Learning“, auch als Clustering bezeichnet und der Optimierung der Datensätze (Principal Component Analysis – PCA und Independent Component Analysis – ICA), um die Lernzeit zu verkürzen. Beim Unsupervised Learning sind in den Lerndaten keine Labels enthalten. Die Algorithmen erkennen selbständig Zusammenhänge in den Daten und fügen diese zu sogenannten Clustern zusammen.

 

„Ein besonderer Vorteil dieser Online-Schulung, war die freie Zeiteinteilung. Sobald man einen Internet Zugang hatte, konnte man sich einloggen und die Schulungsvideos ansehen oder an den Übungen weiterarbeiten.“

-Markus-