„Wie funktioniert eigentlich Maschinelles Lernen?“

oder „Was für Problemstellungen kann man mit Maschinellem Lernen lösen?“ Diese und ähnliche Fragen bekommen wir fast täglich gestellt. Sei es von Entscheidern, Freunden und Bekannten oder auch von IT-Fachleuten die selbst noch keinerlei Erfahrung mit Künstlicher Intelligenz bzw. Maschinellem Lernen haben. In diesem Blog Artikel wollen wir versuchen verständlich zu erklären wie Maschinelles Lernen funktioniert und welche Problemstellungen es im Stande ist zu lösen.

(Zur Einführung lesen Sie hierzu auch: Künstliche Intelligenz: Definition und Abgrenzung)

Einfach formuliert ist Maschinelles Lernen ein Teilbereich der Künstlichen Intelligenz. Es geht dabei um die Generierung von Wissen aus Erfahrung. Das System lernt aus Bespielen um daraus dann letztendlich zu Verallgemeinern. Der Mathematiker würde hier von einer Induktion sprechen.

Es geht nicht darum dass die Beispiele bzw. die Testdaten auswendig gelernt werden, sondern vielmehr um Muster in den Daten zu erkennen und somit das Programmverhalten entsprechend anzupassen. Die Algorithmen werden hauptsächlich unterteilt in „überwachtes (supervised)“ und „unüberwachtes (unsupervised learning – s. hierzu den letzten Blogeintrag)“ Lernen unterteilt. Eine Sonderform stellt das „verstärkte Lernen (Reinforcement Learning)“ dar.

Der Unterschied besteht in der Art, wie das System lernt: Bei überwachten Algorithmen sind bereits Ergebnisse bekannt, aus denen das System lernen kann. Das System lernt dann anhand der gegebenen Daten Eingaben entsprechend des trainierten Lösungsraumes zu klassifizieren und vorherzusagen. Unüberwachte Algorithmen hingegen bauen anhand der Eingaben selbständig ein Modell auf, das versucht, die Eingaben so genau wie möglich vorherzusagen. Hierbei werden Klassifikationen nicht vorgegeben, sondern selbständig vom System, etwa durch sogenannte Clustering-Algorithmen, erarbeitet.

Vereinfacht gesagt unterstützt Maschinelles Lernen die Entwickler dabei, historische Daten zu nutzen, um bessere Entscheidungen zu treffen. ML-Algorithmen entdecken Muster in den Daten und konstruieren mathematische Modelle daraus, die diese Erkenntnisse beschreiben. Solche Modelle können eingesetzt werden, um Vorhersagen im Kontext von zukünftigen Daten zu treffen. Ein Beispiel für die Anwendung eines Machine-Learning-Modells ist eine Prognose für die Wahrscheinlichkeit, mit der ein Kunde ein bestimmtes Produkt basierend auf seinem bisherigen Verhalten kauft. Ein weiteres Beispiel könnte die Erkennung von Mustern sein, die häufig zu Ausfällen von Maschinen führen. Dieser Bereich hat mittlerweile ihre eigene Bezeichnung und zwar mit dem Begriff „Vorausschauende Wartung (Predictive Maintenance)“. Auch in der Anomalie- und Betrugserkennung (z.B. Fake News) haben sich ML-Algorithmen bereits etabliert bzw. sind von großem Nutzen. Man könnte die Anwendungsbereiche von maschinellem lernen noch schier endlos fortführen.

Entwickler müssen sich im Vorfeld klar werden, was sie klassifizieren und vorhersagen wollen (trifft natürlich nur für überwachtes lernen zu). Dafür sollte man möglichst viele Daten sammeln, ohne jedoch selber Annahmen vorweg zu nehmen, was relevant und was nicht relevant ist denn sonst könnte ein Modell entstehen, das zwar das bestehende Datenmaterial gut klassifizieren kann, sich aber bei neuen Daten nicht so verhält, dass daraus brauchbare Vorhersagen abgeleitet werden können. Diesen Zustand nennt man „Overfitting“. Um dies zu vermeiden gehört zum Lernprozess immer auch ein Validierungsprozess, bei dem ein Teil der bekannten Daten nicht zum Lernen benutzt wird, sondern nur zum realistischen Testen des Modells herangezogen wird. Das Verhältnis zwischen Lern- und Validierungsdaten beträgt meistens 80:20.

Auf der nachfolgenden Abbildung sehen sie die typischen Schritte die bei einer Machine Learning Implementierung erforderlich sind:

Abschließend möchten wir noch kurz auf die zwei wesentlichen Arten von Algorithmen für überwachtes Lernen eingehen, da diese ungemein wichtig für das Verständnis des maschinellen Lernens im Ganzen ist, nämlich Klassifikation und Regression.

Klassifikation

Das Ziel bei der Klassifikation ist es, eine Klassenbezeichnung vorherzusagen, ergo eine Auswahl aus einer vorgegebenen Liste von Möglichkeiten zu treffen. Klassifikationsverfahren unterteilt man in binäre Klassifikation (z.B. JA/NEIN o. Ist diese E-Mail Spam?) und Klassifikation mehrerer Klassen (z.B. Erkennung und Zuordnung der unterschiedlichen Personen in meiner Bilddatenbank).

Regression

Bei Regressionsproblemen ist das Ziel, eine kontinuierliche Größe oder Fließkommazahl im Programmierjargon vorherzusagen. Das jährliche Einkommen einer Person aus Bildungsgrad, Alter und Wohnort vorherzusagen, ist ein Beispiel für ein Regressionsproblem.

Klassifikations- und Regressionsaufgaben lassen sich leicht anhand der Frage unterscheiden, ob eine Art der Kontinuität bei der Aufgabe vorliegt. Wenn es Kontinuität beim Ausgabewert gibt, handelt es sich um eine Regressionsaufgabe.

Die Tabelle unten zeigt die beliebtesten Algorithmen und deren Eigenschaften:

Wir hoffen, dass Sie jetzt ein bisschen besser verstehen was sich hinter „Maschinellem Lernen“ verbirgt. (Lesen Sie hierzu auch: Künstliche Intelligenz: Definition und Abgrenzung)

Ihr AISOMA Team.

AISOMA Showreel 2018 – KI Use Cases & Demos