Zum Inhalt springen
Datenmanagement

Machine Learning Algorithmen und wie man den besten auswählt (1/3)

In den kommenden Wochen werden wir von Baitech eine Reihe von Beiträgen zu verschiedenen Algorithmen veröffentlichen, die im Machine Learning eingesetzt werden.

Arten von Machine Learning Algorithmen

Die überwiegende Mehrheit der Algorithmen im Machine Learning lässt sich in drei Hauptgruppen unterteilen:

  1. Supervised Learning oder überwachtes Lernen: Diese Art von Algorithmen ist nützlich, wenn eine bekannte Eigenschaft für eine Menge von Elementen vorliegt, dieselbe Eigenschaft bei einem konkreten Element jedoch unbekannt ist. Diese Algorithmen helfen uns dabei, vorherzusagen, um welche unbekannte Eigenschaft es sich handelt.
  2. Unsupervised Learning oder unüberwachtes Lernen: Diese Art von Algorithmen ist nützlich, um implizite, aber unbekannte Beziehungen in einem Datensatz zu entdecken. Das heißt, sie ermöglichen es, verschiedene Elemente aufgrund der Untersuchung ihrer Merkmale derselben Gruppe oder verschiedenen Gruppen zuzuordnen.
  3. Reinforcement Learning oder bestärkendes Lernen: Diese Art von Algorithmen ist eine Mischung aus den beiden vorgenannten Typen. Da dies ein Einführungsbeitrag ist, wird aufgrund der Komplexität nicht näher auf diese Art von Algorithmen eingegangen.

Im Folgenden werfen wir einen Blick auf einige der Algorithmen für überwachtes/unüberwachtes Lernen.

Algorithmen für überwachtes Lernen

Der erste und intuitivste Algorithmus, auf den wir treffen, sind die Entscheidungsbäume.

In diesem Beitrag haben wir bereits die Bedeutung und die grundlegende Funktionsweise dieser Art von Algorithmen erläutert. Entscheidungsbäume versuchen im Wesentlichen, Elemente anhand einer Reihe von Variablen zu klassifizieren.
Innerhalb dieser Gruppe von Algorithmen finden wir unter anderem:

  • CART (Classification And Regression Tree)
  • ID3 (Iterative Dichotomiser 3)
  • CHAID (CHi-squared Automatic Interaction Detector)

Ein weiterer der wichtigsten Algorithmen des überwachten Lernens ist der Klassifizierungsalgorithmus Naive Bayes.
Dieser Algorithmus ist in der Lage, basierend auf bereits bekannten Elementen ein neues Element zu klassifizieren, ohne vorher zu wissen, zu welcher Gruppe es gehört.
Dieser Algorithmus wird üblicherweise in den folgenden Fällen eingesetzt:

  • Autonome Fahrzeuge: Aufgrund seiner Fähigkeit, die Geschwindigkeit zu bestimmen, die das Fahrzeug einhalten sollte, ausgehend beispielsweise vom Zustand der Fahrbahn oder deren Neigung.
  • Lokalisierung von E-Mails, die als Spam eingestuft werden, nach der Analyse der im Text vorkommenden Wörter.
  • Klassifizierung von Artikeln nach dem Thema, das sie behandeln.

Der dritte Algorithmus innerhalb dieser Gruppe ist die gewöhnliche Kleinste-Quadrate-Regression.

Dieser Algorithmus versucht, unbekannte Werte zu schätzen. Dazu wird die mathematische Methode der linearen Regression nach der kleinsten Quadrate-Methode verwendet. Er versucht, eine Linie so gut wie möglich an eine Gruppe von Elementen anzupassen und daraus das mögliche Ergebnis für ein Element mit einer zu bestimmenden Eigenschaft zu interpretieren.

Abschließend für diese Gruppe von Algorithmen ist zu erwähnen, dass es weitere Algorithmen dieser Art gibt, wie zum Beispiel: logistische Regression, Support Vector Machines und Ensemble-Methoden.

Algorithmen für unüberwachtes Lernen:

Der erste der Algorithmen, auf die wir in dieser Gruppe stoßen, sind die Clustering-Algorithmen. Baitech hat bereits eine Studie zur Hauptkomponentenanalyse zusammen mit einem Clustering-Algorithmus durchgeführt: K-Means.
Diese Algorithmen werden verwendet, um Elemente, die die größte Ähnlichkeit untereinander aufweisen, gemeinsam zu gruppieren. Das heißt, es handelt sich um Algorithmen, die Elemente basierend auf einem bestimmten Merkmal gruppieren.
In dieser Gruppe finden wir verschiedene Arten von Algorithmen, wie zum Beispiel:

  • Zentroid-basierte Algorithmen (Centroid-based algorithms): Wenn wir die Elemente in einem Punktdiagramm darstellen, berechnen diese Algorithmen deren Mittelpunkt, der die Abstände minimiert. K-Means ist ein Algorithmus dieser Art.
  • Dichtebasierte Algorithmen (Density-based algorithms): Diese Algorithmen versuchen, Punkte nach ihrer Nähe zu den umliegenden Punkten zu gruppieren. Ein Algorithmus aus dieser Familie wäre K-NN (k-nearest neighbors) oder K-Nächste-Nachbarn.

Als zusätzliche Information sei die Existenz von konnektivitätsbasierten Algorithmen (Connectivity-based algorithms), probabilistischen Algorithmen (Probabilistic), Dimensionsreduktionsverfahren (Dimensionality Reduction) und neuronalen Netzen (Neural networks) erwähnt, die ebenfalls in diese Gruppe fallen.

Ein weiterer Algorithmus, der in diese Gruppe des unüberwachten Lernens passt, ist der PCA-Algorithmus (Principal Component Analysis) oder Hauptkomponentenanalyse. Dieser Algorithmus, der in diesem Beitrag behandelt wird, führt eine Reduktion von den ursprünglichen Variablen auf die kleinstmögliche Anzahl von ihnen durch. Ziel ist es, ein Maximum an Information in einem Minimum an Variablen darzustellen.

Innerhalb des unüberwachten Lernens finden wir Algorithmen wie den „Singulärwertzerlegungs-Algorithmus“ (Singular Value Decomposition) oder die Unabhängigkeitsanalyse (Independent Component Analysis: ICA).

Wie wählt man den besten Algorithmus für unser Projekt aus?

Das Erste und Wichtigste, um erfolgreich den Algorithmus auszuwählen, der am besten zu unseren Bedürfnissen passt, ist:

  • Festlegen, was wir erreichen wollen
  • Prüfen, welche Daten uns zur Verfügung stehen

Sobald diese beiden Punkte geklärt sind und man die existierenden Machine Learning Algorithmen kennt, können wir denjenigen auswählen, der am besten zu unseren Anforderungen passt.
Wenn wir beispielsweise wissen wollen, wer einen Text geschrieben hat, wäre unser Algorithmus Naive Bayes; wenn wir hingegen wissen wollen, wo geografisch zwei Krankenhäuser in einem Gebiet platziert werden sollen, damit sie so nah wie möglich an den größten Bevölkerungszentren liegen, ist unser Algorithmus K-Means.

Wenn Sie mehr über Advanced Analytics erfahren möchten, entdecken Sie unseren Bereich für Advanced Data Analytics.

Im nächsten Beitrag…

In dem Fall, den wir im nächsten Beitrag behandeln werden, führen wir eine Verbrauchsprognose durch. Ausgehend von vergangenen Verbräuchen werden wir versuchen, zukünftige vorherzusagen und zu sehen, wie gut unsere Prognose mit der Realität übereinstimmt. Wir laden Sie ein, während der Wartezeit unseren Blog zu besuchen.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert