Für Machine- und Deep Learning

14 KI-Algorithmen, die Sie kennen sollten

31.01.2024
Von 
Martin Heller schreibt als freier Autor für die Schwesterpublikation InfoWorld.
Large Language Models beherrschen die Schlagzeilen. Dabei können Machine und Deep Learning weit mehr.
Diese Machine- und Deep-Learning-Algorithmen sollten Ihnen geläufig sein.
Diese Machine- und Deep-Learning-Algorithmen sollten Ihnen geläufig sein.
Foto: ArtHead - shutterstock.com

Bei all der Hysterie um ChatGPT, Bard und wie sie alle heißen, lohnt es sich, einen Schritt zurückzutreten, um sich die ganze Bandbreite der KI-Algorithmen und ihre Anwendungsfälle zu verdeutlichen. Schließlich lösen viele "traditionelle" Machine-Learning-Algorithmen schon seit Jahrzehnten diverse, bedeutende Probleme - und zwar erfolgreich. Warum sollten also lediglich die Large Language Models (LLMs) im Rampenlicht stehen?

Machine Learning (ML) ist eine Klasse von Methoden, um automatisiert Prognosemodelle aus Daten zu erstellen. ML-Algorithmen sind dabei der Motor: Sie "verwandeln" einen Datensatz in ein Modell. Welche Art von Algorithmus sich dabei am besten eignet, hängt davon ab,

  • welches Problem Sie lösen möchten,

  • wie viele Rechenressourcen zur Verfügung stehen und

  • welche Art von Daten vorliegt.

Nachfolgend stellen wir Ihnen 14 der häufigsten verwendeten Algorithmen für Machine- und Deep Learning vor - und erklären Ihnen, wie diese jeweils unter anderem mit Vorhersagemodellen, Klassifikation, Bild- und Sprachverarbeitung sowie Generative AI zusammenhängen. Die folgende Zusammenstellung erhebt keinen Anspruch auf Vollständigkeit - die Algorithmen sind (grob) aufsteigend nach Komplexität geordnet.

Beliebte Machine-Learning-Algorithmen

Linear regression

Die lineare Regression ist der simpelste (supervised) Algorithmus für maschinelles Lernen, um numerische Werte vorherzusagen. In einigen Fällen ist für die lineare Regression nicht einmal ein Optimizer erforderlich, da sie in geschlossener Form lösbar ist. Anderenfalls lässt sie sich einfach durch Gradientenabstieg (dazu später mehr) optimieren. Der Ausgangspunkt bei der linearen Regression: Die Zielfunktion korreliert linear mit den unabhängigen Variablen. Das kann für Ihre Daten zutreffen, muss es aber nicht.

Zur Verzweiflung von Datenwissenschaftlern wenden Business-Analysten lineare Regression oft unbedarft auf Prediction-Probleme an und hören dann auf, ohne Streudiagramme zu erstellen oder Korrelationen zu berechnen. Somit überprüfen sie nicht, ob die zugrundeliegende Annahme überhaupt vernünftig ist. Tappen Sie nicht in diese Falle. Es ist gar nicht so schwer, eine explorative Datenanalyse durchzuführen und dann den Computer alle sinnvollen Machine-Learning-Algorithmen ausprobieren zu lassen, um zu sehen, welche am besten funktionieren. Versuchen Sie es auf jeden Fall mit einer linearen Regression, aber betrachten Sie das Ergebnis eher als Grundlage, denn als abschließende Antwort.

Gradient descent

Optimierungsmethoden für maschinelles Lernen - einschließlich neuronaler Netze - verwenden in der Regel eine Form von Gradientenabstiegs-Algorithmus, um die Back Propagation zu steuern.

Dabei kommt oft ein Mechanismus zum Einsatz, der verhindert, dass man in lokalen Minima stecken bleibt, etwa der Optimierung zufällig ausgewählter Mini-Batches und die Anwendung von Impulskorrekturen auf den Gradienten. Einige Optimierungsalgorithmen passen auch die Lernraten der Modellparameter an, indem sie den Verlauf des Gradienten betrachten (AdaGrad, RMSProp oder Adam).

Logistic regression

Klassifizierungsalgorithmen können Lösungen für Probleme im Bereich Supervised Learning finden, bei denen eine Auswahl (oder Wahrscheinlichkeitsbestimmung) zwischen zwei oder mehr Klassen erforderlich ist.

Die logistische Regression ist eine Methode, um kategorische Klassifizierungsprobleme zu lösen, bei denen eine lineare Regression innerhalb einer Sigmoid- oder Logit-Funktion verwendet wird. Das komprimiert die Werte auf einen Bereich von 0 bis 1 und gibt eine Wahrscheinlichkeit aus. Ähnlich wie die lineare Regression für numerische Vorhersagen bildet die logistische Regression einen guten Startpunkt für kategorische Vorhersagen.

Support vector machines

Support vector machines (SVMs) sind eine Art parametrisches Klassifizierungsmodell - eine geometrische Methode, um zwei Label-Klassen zu trennen und zu klassifizieren. Im einfachsten Fall (gut getrennten Klassen mit zwei Variablen) finden SVMs die gerade Linie, die die beiden Gruppen auf einer Ebene am besten trennt. In komplizierteren Fällen können die Punkte in einen höherdimensionalen Raum projiziert werden, und die SVM findet die Ebene oder Hyperebene, die die Klassen am besten voneinander trennt. Die Projektion wird als Kernel bezeichnet - der Prozess als Kernel-Trick. Nach der Umkehrung der Projektion ist die resultierende Grenze oft nichtlinear.

Wenn es mehr als zwei Klassen gibt, werden SVMs paarweise auf die Klassen angewendet. Wenn sich die Klassen überschneiden, können Sie einen Penalty Factor für falsch klassifizierte Punkte hinzufügen ("soft margin").

Decision tree

Decision trees (DTs) oder Entscheidungsbäume sind eine nichtparametrische, überwachte Lernmethode, die sowohl für Klassifizierung als auch für Regression geeignet ist. Das Ziel: Ein Modell zu erstellen, das den Wert einer Zielvariablen vorhersagt, indem es einfache Entscheidungsregeln erlernt, die aus den Datenmerkmalen abgeleitet werden. Ein DT kann als eine stückweise konstante Annäherung betrachtet werden.

Entscheidungsbäume sind einfach zu interpretieren und kostengünstig in der Anwendung. Sie ziehen allerdings rechenintensive Trainingsprozesse nach sich und sind anfällig für Overfitting.

Random forest

Das Random-Forest-Modell erzeugt ein Ensemble von zufälligen DTs und wird ebenfalls sowohl für Klassifizierungs- als auch für Regressionszwecke verwendet. Das aggregierte Ensemble kombiniert die Votes entweder modal oder mittelt die Wahrscheinlichkeiten der Entscheidungsbäume. Random Forest ist eine Art von Bagging-Ensemble.

XGBoost

eXtreme Gradient Boosting ist ein skalierbares, durchgängiges Tree-Boosting-System, das bereits bei diversen ML-Herausforderungen hervorragende Ergebnisse erzielt hat.

Bagging und Boosting werden oft in einem Atemzug genannt. Der Unterschied besteht darin, dass Gradient Tree Boosting mit einem einzigen Entscheidungs- oder Regressionsbaum beginnt, diesen optimiert und dann den nächsten Baum aus den Überresten des ersten DT erstellt, statt ein Ensemble von randomisierten Trees zu erzeugen.

K-means clustering

K-means clustering versucht, n Beobachtungen unter Verwendung der euklidischen Abstandsmetrik in k Cluster zu unterteilen. Das Ziel ist es, die Varianz (Summe der Quadrate) innerhalb jedes Clusters zu minimieren. Es handelt sich um eine nicht überwachte Methode der Vektorquantisierung, die nützlich ist um Merkmale zu lernen und sich gut als Ausgangspunkt für andere Algorithmen eignet.

Lloyds Algorithm ist die am häufigsten verwendete Heuristik zur Lösung des Problems. Er ist relativ effizient, bietet aber keine Garantie für globale Konvergenz. Um das zu optimieren, wird der Algorithmus oft mehrmals mit zufälligen anfänglichen Clusterschwerpunkten ausgeführt, die mit der Forgy- oder anderen zufälligen Partitionierungsmethoden erzeugt werden.

K-means geht von kugelförmigen Clustern aus, die trennbar sind, so dass der Mittelwert gegen das Clusterzentrum konvergiert. Zudem geht der Algorithmus davon aus, dass die Reihenfolge der Datenpunkte keine Rolle spielt. Der Hintergrund: Es wird davon ausgegangen, dass die Cluster eine ähnliche Größe haben, so dass die Zuordnung zum nächstgelegenen Clusterzentrum korrekt ist.

Principal component analysis

Die Principal component analysis (PCA, auch Hauptkomponentenanalyse) ist ein statistisches Verfahren, das orthogonale Transformation verwendet, um eine Reihe von Beobachtungen möglicherweise korrelierter numerischer Variablen in eine Reihe von Werten linear unkorrelierter Variablen umzuwandeln.

Die PCA kann durch Eigenwertzerlegung einer Datenkovarianzmatrix (oder Korrelationsmatrix) oder durch Singulärwertzerlegung (SVD) einer Datenmatrix durchgeführt werden - in der Regel nach einem auf die Ausgangsdaten angewandten Normalisierungsschritt.