Abo
  • Services:

Random Forest, k-Means, Genetik: Machine Learning anhand von drei Algorithmen erklärt

Maschinenlernen klingt innovativ und hat schier unendlich viele Einsatzzwecke, doch die Funktionsweise verstehen nur wenige. Sie basiert auf komplizierten mathematischen und statistischen Verfahren. Wir erklären sie Nichtmathematikern anhand von drei wichtigen Algorithmen.

Artikel von Miroslav Stimac veröffentlicht am
Anhand der Klassifizierung von Iris-Arten erklären wir Supervised Learning.
Anhand der Klassifizierung von Iris-Arten erklären wir Supervised Learning. (Bild: Ian Forsyth/Getty Images)

Machine-Learning-Algorithmen befähigen Computer, selbstständig zu lernen. Statt eine Vielzahl von Regeln im Quellcode zu programmieren, werden dafür statistische Algorithmen verwendet. Wer Machine Learning in seinen Programmen einsetzen will, sollte als Erstes die Funktionsweise und Einsatzzwecke der jeweiligen Algorithmen kennen. Hierzu müssen Anwender allerdings nicht unbedingt die Mathematik dahinter durchdringen, obwohl das natürlich hilfreich ist. Oft reicht es, die prinzipielle Funktionsweise der Algorithmen zu verstehen, die es als fertige Bausteine in diversen Programmiersprachenbibliotheken gibt.

Inhalt:
  1. Random Forest, k-Means, Genetik: Machine Learning anhand von drei Algorithmen erklärt
  2. Unsupervised Learning: k-Means-Algorithmus
  3. Reinforcement Learning: genetischer Algorithmus
  4. Fazit

Das zeigen wir an Algorithmen, die die drei Hauptkategorien des Maschinenlernens repräsentieren: Supervised Learning (überwachtes Lernen), Unsupervised Learning (unüberwachtes Lernen) und Reinforcement Learning (bestärkendes Lernen). Machine-Learning-Algorithmen können anhand der Art und Weise, wie sie lernen, einer dieser drei Hauptkategorien zugeordnet werden, wie Masashi Sugiyama in seinem Buch Statistical Reinforcement Learning: Modern Machine Learning Approaches schreibt. Die meisten Algorithmen, aber nicht alle, suchen nach Korrelationen, also Beziehungen und Zusammenhängen, zwischen Input-Daten untereinander oder zwischen den Input-Daten und dem Output.

Supervised Learning: Random Forest

Random Forest wird sowohl für Regressionen als auch Klassifizierungen sehr oft verwendet. Seine Anforderungen an die Hardware sind in vielen Fällen geringer als bei neuronalen Netzen, insbesondere wenn man keine Cuda-fähige Grafikkarte hat, die bei vielen Libraries für die Beschleunigung der neuronalen Netze von großer Bedeutung ist. Random Forest basiert auf sogenannten Entscheidungsbäumen (Englisch: Decision Trees).

Was sind Entscheidungsbäume? Nehmen wir für die Erklärung ein Beispiel zu Hilfe. Drei Arten von Schwertlilien (Iris) werden anhand von vier Merkmalen klassifiziert: Kelchblattlänge, Kelchblattbreite, Blütenblattlänge und Blütenblattbreite. Dieses klassische Klassifizierungsbeispiel wurde schon vom britischen Biologen und Statistiker Ronald Fisher in seinem Artikel "The use of multiple measurements in taxonomic problems" im Jahre 1936 vorgestellt.

Stellenmarkt
  1. umwerk systems GmbH, Rosenheim
  2. UDG United Digital Group, Ludwigsburg

Daten von 150 vermessenen Schwertlilien findet man im UCI Machine Learning Repository: Wir haben vier Inputvariablen (X1: Kelchblattlänge, X2: Kelchblattbreite, X3: Blütenblattlänge und X4: Blütenblattbreite) und eine Outputvariable (Y: Art der Schwertlilie). Um intuitiv zu verstehen, wie ein Decision-Tree-Algorithmus arbeitet, betrachten wir zunächst nur zwei der vier Inputvariablen, zum Beispiel Blütenblattlänge und Blütenblattbreite. Diese Daten visualisieren wir in einem zweidimensionalen Diagramm.

Wie man sehen kann, haben Iris-setosa kurze und schmale Blütenblätter. Die Iris-virginica haben mittellange bis sehr lange und mittelbreite bis sehr breite Blütenblätter. Diese zwei Sorten kann man anhand der Länge und Breite der Blütenblätter sehr gut unterscheiden. Anders sieht es mit der Iris-versicolor aus: Sie hat mittellange und mittelbreite Blütenblätter und teilt diese Eigenschaften mit einigen der Iris-virginica. Eine Unterscheidung ist hier zwar in vielen, aber nicht in allen Fällen möglich.

  • Abbildung 1 zum Random Forest: Iris-Arten mit Länge und Breite ihrer Blütenblätter (Bild: Miroslav Stimac)
  • Random Forest: Iris-Arten unterschieden nach vier Merkmalen (Bild: Miroslav Stimac)
  • Random Forest: Iris-Arten unterschieden nach vier Merkmalen (Bild: Miroslav Stimac)
  • Random Forest: Iris-Arten unterschieden nach vier Merkmalen (Bild: Miroslav Stimac)
  • Random Forest: Iris-Arten unterschieden nach vier Merkmalen (Bild: Miroslav Stimac)
  • Random Forest: Iris-Arten unterschieden nach vier Merkmalen (Bild: Miroslav Stimac)
  • Abbildung 2: Klassifizierung mit einem sehr einfachen Ereignisbaumalgorithmus (Bild: Miroslav Stimac)
Abbildung 1 zum Random Forest: Iris-Arten mit Länge und Breite ihrer Blütenblätter (Bild: Miroslav Stimac)

Die Klassifizierung mit einem sehr einfachen Ereignisbaumalgorithmus sähe in etwa so wie in Abbildung 2 aus. Die verwendeten Zahlen sind rein optisch aus Abbildung 1 abgeleitet worden, das heißt, sie wurden nicht mit einem Decision-Tree-Algorithmus mathematisch berechnet:

Abbildung 2: einfacher Entscheidungsbaum für Iris-Klassifikation anhand Blütenblattlänge und -breite Wie bereits erwähnt, kann man anhand von nur Blütenblattbreite- und -länge in manchen Fällen nicht zwischen Iris-versicolor und Iris-virginica richtig unterscheiden. Um die Wahrscheinlichkeit einer korrekten Klassifikation zu erhöhen, könnte man mehr Merkmale berücksichtigen. In unserem Beispiel haben wir zusätzlich noch die Merkmale Kelchblattlänge und Kelchblattbreite. Insgesamt haben wir somit vier Inputfaktoren: X1: Kelchblattlänge, X2: Kelchblattbreite, X3: Blütenblattlänge und X4: Blütenblattbreite.

Kombiniert man diese vier Merkmale jeweils paarweise, so ergeben sich sechs Kombinationsmöglichkeiten, die in folgenden Diagrammen visualisiert sind:

  • Abbildung 1 zum Random Forest: Iris-Arten mit Länge und Breite ihrer Blütenblätter (Bild: Miroslav Stimac)
  • Random Forest: Iris-Arten unterschieden nach vier Merkmalen (Bild: Miroslav Stimac)
  • Random Forest: Iris-Arten unterschieden nach vier Merkmalen (Bild: Miroslav Stimac)
  • Random Forest: Iris-Arten unterschieden nach vier Merkmalen (Bild: Miroslav Stimac)
  • Random Forest: Iris-Arten unterschieden nach vier Merkmalen (Bild: Miroslav Stimac)
  • Random Forest: Iris-Arten unterschieden nach vier Merkmalen (Bild: Miroslav Stimac)
  • Abbildung 2: Klassifizierung mit einem sehr einfachen Ereignisbaumalgorithmus (Bild: Miroslav Stimac)
Abbildung 2: Klassifizierung mit einem sehr einfachen Ereignisbaumalgorithmus (Bild: Miroslav Stimac)

Für eine dieser Kombinationsmöglichkeiten, nämlich Blütenblattlänge und Blütenblattbreite, haben wir schon einen Entscheidungsbaum betrachtet. Nun könnte man auch für die fünf verbleibenden Kombinationsmöglichkeiten jeweilige Entscheidungsbäume erstellen und so entsteht ein sogenannter Random Forest, also ein Wald von zufälligen Entscheidungsbäumen. Darauf wird hier aus Platzgründen verzichtet, aber der interessierte Leser kann zur Übung den einen oder anderen Entscheidungsbaum selbst erstellen.

Jeder dieser Entscheidungsbäume würde eine Schwertlilie zu einer der drei Arten klassifizieren. Was passiert nun, wenn sich die Entscheidungsbäume uneinig sind? Die Lösung ist simpel: Die Mehrheit entscheidet!

Richten wir das Augenmerk auf das Wort "random" in Random Forest. Dies beschreibt die Art und Weise, wie Merkmale Entscheidungsbäumen zugeordnet werden. In unserem Beispiel gibt es nur vier Merkmale (Inputfaktoren) und deshalb wurden vereinfacht sechs Kombinationsmöglichkeiten mit jeweils zwei Merkmalen verwendet. Dies wurde aus pädagogischen Gründen auch deshalb gemacht, weil man zwei Dimensionen einfach in Diagrammen visualisieren kann. Doch was macht man, wenn man Hunderte Merkmale (Inputfaktoren) hätte?

Nun, es ist eigentlich ganz einfach: Man wählt für jeden Entscheidungsbaum zufällig eine Anzahl k von Merkmalen, die kleiner sein muss als die Gesamtanzahl aller Merkmale n. Die Anzahl k von Merkmalen ist ein Parameter für den Random-Forest-Algorithmus. Ein anderer, wichtiger Parameter ist die Anzahl der Bäume. Je größer diese ist, um so wahrscheinlicher ist die Klassifikation korrekt, jedoch benötigt der Algorithmus mehr RAM und eine höhere CPU-Leistung beziehungsweise eine längere Ausführungszeit.

Unsupervised Learning: k-Means-Algorithmus 
  1. 1
  2. 2
  3. 3
  4. 4
  5.  


Anzeige
Blu-ray-Angebote

Kimmy1994 02. Nov 2018 / Themenstart

Hey, seit geraumer Zeit interessiere ich mich für Entscheidungsbäume und Random Forests...

bionade24 20. Okt 2018 / Themenstart

In Bayern Gymnasium kommt in der 9. nur simple Stochastik dran, nix davon. Noch nicht...

Ducifacius 17. Okt 2018 / Themenstart

... heißt auf deutsch "Maschinelles Lernen" (groß geschrieben als Name eines...

Kein Kostverächter 16. Okt 2018 / Themenstart

Der aktuelle Zustand ist aber gerade Vurin = Vmax, was nach deinem Regelsatz ein nicht...

A. Tomic 16. Okt 2018 / Themenstart

Artikel wie diesen finde ich absolut genial. Es ist gar nicht einfach, komplizierte...

Kommentieren


Folgen Sie uns
       


Red Dead Redemption 2 - Test

Das Spiel des Jahres - in punkto Hype - kommt 2018 von den GTA-Machern Rockstar. Im Test sortieren wir es im Genre ein.

Red Dead Redemption 2 - Test Video aufrufen
Mobile-Games-Auslese: Tinder auf dem Eisernen Thron - für unterwegs
Mobile-Games-Auslese
Tinder auf dem Eisernen Thron - für unterwegs

Fantasy-Fanservice mit dem gelungenen Reigns - Game of Thrones, Musikpuzzles in Eloh und Gehirnjogging in Euclidean Skies: Die neuen Mobile Games für iOS und Android bieten Spaß für jeden Geschmack.
Von Rainer Sigl

  1. Mobile Gaming Microsoft Research stellt Gamepads für das Smartphone vor
  2. Mobile-Games-Auslese Bezahlbare Drachen und dicke Bären
  3. Mobile-Games-Auslese Städtebau und Lebenssimulation für unterwegs

E-Mail-Verschlüsselung: 90 Prozent des Enigmail-Codes sind von mir
E-Mail-Verschlüsselung
"90 Prozent des Enigmail-Codes sind von mir"

Der Entwickler des beliebten OpenPGP-Addons für Thunderbird, Patrick Brunschwig, hätte nichts gegen Unterstützung durch bezahlte Vollzeitentwickler. So könnte Enigmail vielleicht endlich fester Bestandteil von Thunderbird werden.
Ein Interview von Jan Weisensee

  1. SigSpoof Signaturen fälschen mit GnuPG
  2. Librem 5 Purism-Smartphone bekommt Smartcard für Verschlüsselung

Serverless Computing: Mehr Zeit für den Code
Serverless Computing
Mehr Zeit für den Code

Weniger Verwaltungsaufwand und mehr Automatisierung: Viele Entwickler bauen auf fertige Komponenten aus der Cloud, um die eigenen Anwendungen aufzubauen. Beim Serverless Computing verschwinden die benötigten Server unter einer dicken Abstraktionsschicht, was mehr Zeit für den eigenen Code lässt.
Von Valentin Höbel

  1. Kubernetes Cloud Discovery inventarisiert vergessene Cloud-Native-Apps
  2. T-Systems Deutsche Telekom will Cloud-Firmen kaufen
  3. Trotz hoher Gewinne Wieder Stellenabbau bei Microsoft

    •  /