• IT-Karriere:
  • 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. L-Bank, Karlsruhe
  2. Bundesamt für Migration und Flüchtlinge, Nürnberg

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.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed
Unsupervised Learning: k-Means-Algorithmus 
  1. 1
  2. 2
  3. 3
  4. 4
  5.  


Anzeige
Hardware-Angebote
  1. (reduzierte Überstände, Restposten & Co.)

Kimmy1994 02. Nov 2018

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

bionade24 20. Okt 2018

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

Ducifacius 17. Okt 2018

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

Kein Kostverächter 16. Okt 2018

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

A. Tomic 16. Okt 2018

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


Folgen Sie uns
       


VW-Elektroautos aus Zwickau - Bericht

Der Volkswagen-Konzern will ab 2020 in Zwickau nur noch Elektroautos bauen - wir haben uns die Umstellung angesehen.

VW-Elektroautos aus Zwickau - Bericht Video aufrufen
Cloud Gaming im Test: Leise ruckelt der Stream
Cloud Gaming im Test
Leise ruckelt der Stream

Kurz vor Weihnachten werben Dienste wie Google Stadia und Playstation Now um Kunden - mit noch nicht ganz perfekter Technik. Golem.de hat Cloud Gaming bei mehreren Anbietern ausprobiert und stellt Geschäftsmodelle und Besonderheiten vor.
Von Peter Steinlechner

  1. Apple und Google Die wollen nicht nur spielen
  2. Medienbericht Twitch plant Spielestreaming ab 2020
  3. Spielestreaming Wie archiviert man Games ohne Datenträger?

Jobs: Spielebranche sucht Entwickler (m/w/d)
Jobs
Spielebranche sucht Entwickler (m/w/d)

Die Hälfte aller Gamer ist weiblich. An der Entwicklung von Spielen sind aber nach wie vor deutlich weniger Frauen beteiligt.
Von Daniel Ziegener

  1. Medizinsoftware Forscher finden "rassistische Vorurteile" in Algorithmus
  2. Mordhau Toxische Spieler und Filter für Frauenhasser

Interview: Die Liebe für den Flight Simulator war immer da
Interview
"Die Liebe für den Flight Simulator war immer da"

Die prozedural erstellte Erde, der Quellcode vom letzten MS-Flugsimulator und eine Gemeinsamkeit mit Star Citizen: Golem.de hat mit Jörg Neumann über Technik und das Fliegen gesprochen. Neumann leitet bei Microsoft die Entwicklung des Flight Simulator.
Ein Interview von Peter Steinlechner

  1. Flug-Simulation Microsoft bereitet Alphatest des Flight Simulator vor
  2. Microsoft Neuer Flight Simulator soll Fokus auf Simulation legen

    •  /