Machine Learning (ML)
Machine Learning ist ein Teilbereich von künstlicher Intelligenz. Unter Machine Learning versteht man im Wesentlichen alle Verfahren, die es Maschinen ermöglichen, basierend auf Daten zu lernen und auf diese Weise Wissen zu generieren und daraus ggf. Schlüsse zu ziehen. Spezieller lernen Algorithmen auf Grundlage von Daten, indem sie mit der Kenntnis jedes neuen Datenpunkts sich selbst optimieren und anpassen. Machine-Learning-Verfahren können i.d.R. gut mit vielen erklärenden Variablen umgehen. Dafür benötigen sie im Vergleich zu statistischen Verfahren häufig mehr Trainingsdaten. Man unterscheidet generell zwischen Supervised und Unsupervised Learning.
Supervised und Unsupervised Learning
Supervised Learning
Bei Supervised Learning wird mit gelabelten Daten gearbeitet. Das bedeutet, dass die Lösungen, die das System erzeugen soll, im Trainings- und Testdatenset bekannt sind. Es kann also entschieden werden, ob der Algorithmus im Einzelfall mit seiner Entscheidung gut/richtig oder weniger gut/falsch liegt. So kann gemessen werden, wie gut das trainierte Modell funktioniert. Selbstverständlich wird hier ein möglichst kleiner Fehlerwert angestrebt. Zu den Supervised-Learning-Verfahren gehören beispielsweise Entscheidungsbaumverfahren (CART und Random Forests, regressive Verfahren (SVM und MARS) sowie auch Künstliche Neuronale Netze (KNNs). Die genannten Verfahren können sowohl zur Regression wie auch zur Klassifikation von Daten verwendet werden.
Unsupervised Learning
Beim Unsupervised Learning gibt es keine Labels und somit auch kein objektives Richtig oder Falsch. Neben Clustering ist die Dimensionalitätsreduktion (Komprimierung) von Daten das häufigste Ziel von Unsupervised-Learning-Verfahren. Unsupervised-Learning-Verfahren kommen im Vorhersageumfeld v. a. während der Datenaufbereitung zum Einsatz, weniger während der eigentlichen Vorhersage.
Supervised-Learning-Verfahren
Classification And Regression Tree (CART)
CART ist ein vom amerikanischen Statistiker Leo Breiman geprägter Begriff für Entscheidungsbaum-Algorithmen, bei welchen über Binärbäume die Klasse, zu der Daten gehören, bestimmt werden.
Im Fall der Zeitreihenvorhersage folgt aus dieser Klasse die Prognose.
CART-Algorithmen werden häufig auch im Machine-Learning-Bereich eingesetzt und dienen als Grundlage für Random Forests.
Random Forest
Ein Random Forest ist ein Supervised-Learning-Verfahren zur Klassifikation und Regression von Daten, in dem verschiedene, möglichst unterschiedliche Entscheidungsbäume generiert werden.
Die Werte bzw. Klassen, die aus den verschiedenen Entscheidungsbäumen resultieren (siehe hierzu auch CART), werden hierbei zu einem Ergebnis kombiniert und können dadurch genauere Ergebnisse liefern als ein einzelner Entscheidungsbaum.
Gradient Boosting Decision Tree Algorithm
Der Gradient Boosting Decision Tree Algorithm ist ein Supervised-Learning Verfahren, das zur Klassifikation und Regression von Daten verwendet werden kann. Wie auch bei einem Random Forest entsteht hierbei nach bestimmten Regeln ein Ensemble aus Entscheidungsbäumen. Der Vorteil dieser Methode ist, dass während des Trainingsprozesses weitere Entscheidungsbäume hinzugefügt werden, die darauf optimiert sind die Fehlklassifikationen des bestehenden Ensembles an Entscheidungsbäumen zu korrigieren.
Multivariate Adaptive Regression Splines (MARS)
Multivariate Adaptive Regression Splines sind ein Verfahren, das basierend auf Daten selbständig ein Modell entwickelt, in dem Nicht-Linearitäten und Interaktionen zwischen verschiedenen erklärenden Größen berücksichtigt werden.
Sukzessive wird ein Modell aus sogenannten hinge functions (und ihren Produkten) aufgebaut. Hinge functions sind bis zu einer gewissen Schwelle Null und gehen dann in eine Gerade mit positiver oder negativer Steigung über. Sie sehen aus wie ein Hockeystick. Durch eine geschickte Verkettung solcher hinge functions lassen sich komplexe Zusammenhänge besser approximieren als nur mit linearen Termen.
MARS-Verfahren besitzen eine interne Strategie, um sich für die beste Kombination aus hinge functions und zur Verfügung gestellter erklärenden Variablen zu entscheiden.
Support Vector Machine (SVM)
Support Vector Machine ist ein Supervised-Learning-Verfahren zur Klassifikation von Daten.
Um die Datenpunkte verschiedener Klassen möglichst gut voneinander zu trennen, sucht SVM nach solchen Klassengrenzen, die einen möglichst großen Abstand zu den Datenpunkten der verschiedenen Klassen besitzen und so einen möglichst breiten Bereich um die Klassengrenze frei von Datenpunkten lassen. Bei den Klassengrenzen arbeitet SVM zunächst mit Geraden oder Ebenen. Mit dem sogenannten Kernel-Trick, d.h. einer geschickten Datentransformation, lassen sich aber auch sehr gut komplexe, nicht-lineare Trennlinien oder -flächen finden.
SVM kann auch zur Regression verwendet werden. Man spricht hier auch von Support Vector Regression.
Künstliches Neuronales Netz (KNN)
Ein künstliches neuronales Netz fußt auf einem dem menschlichen Gehirn nachempfundenen Netz aus Knoten (Neuronen) und ihren Verbindungen (Synapsen). Die Knoten eines neuronalen Netzes sind in hintereinander geschalteten Schichten angeordnet. Die Inputdaten werden dabei durch die einzelnen Schichten gereicht. Jeder Knoten gewichtet die Ausgaben von Knoten vorangestellter Schichten und gibt seinen Aktivierungsgrad nach bestimmten Aktivierungsregeln an Knoten in nachfolgenden Schichten weiter. So können komplexe Zusammenhänge abgebildet und Informationen aus verschiedenen Inputgrößen verknüpft werden. Auf bekannten Daten erlernt ein neuronales Netz zunächst in einer Trainingsphase passende Gewichte und Aktivierungsregeln, bevor es auf neue, unbekannte Daten angewandt werden kann.
Liegt eine komplexe Netzarchitektur mit vielen, tief ineinander geschalteten Schichten vor, so spricht man von Deep Learning bzw. Deep Neural Networks.
Typische Anwendungsfelder von neuronalen Netzen sind z. B. die Bild- oder Spracherkennung. An dieser Stelle kommen oft sog. Convolutional Neural Networks (CNNs) zu tragen. Neuronale Netze können aber auch im Zeitreihenkontext gut zur Mustererkennung oder Prognose eingesetzt werden. Besonders zu erwähnen sind hier die Long Short-term Memory Networks (LSTMs) und Transformer-basierte Ansätze.