Random Forest
Ein Random Forest (dt. etwa „zufälliger Wald“ oder „Zufallswald“) ist ein Klassifikations- und Regressionsverfahren, das aus mehreren unkorrelierten Entscheidungsbäumen besteht. Der Algorithmus ist relativ einfach und erzielt in kurzen Trainingszeiten gute Lernergebnisse. Den Begriff Random Forest prägte im Jahr 1999 Leo Breiman, der verschiedene Methoden zur Randomisierung von Entscheidungsbäumen entwickelte.
Random Forest wird häufig im Machine Learning verwendet. Es zählt zu den überwachten Lernverfahren (Supervised Learning) und nutzt die Ergebnisse einer Vielzahl verschiedener Entscheidungsbäume, um bestmögliche Entscheidungen oder Vorhersagen zu treffen. Die Entscheidungsbäume wurden nach einem Zufallsprinzip unkorreliert erstellt. Jeder Baum trifft für sich einzelne Entscheidungen. Aus der Menge der Einzelentscheidungen liefert der Algorithmus eine endgültige Entscheidung. Random Forests können auch zur Regression eingesetzt werden.
Entscheidungsbäume und Bagging
Die Basis für Random Forest bilden viele einzelne Entscheidungsbäume (Decision Trees). Ein einzelner Baum besteht aus mehreren Verzweigungen. Die Verzweigungen entstehen, indem Daten aufgrund ihrer Eigenschaften mithilfe von Regeln einer Klasse zugeordnet werden. Ausgehend von der ersten Entscheidung entstehen immer mehr Verzweigungen, bis eine bestimmte Ergebnisebene erreicht ist. Jeder einzelne Entscheidungsbaum in einem Random Forest hat für sich gesehen nicht den Anspruch, jedem Datensatz die korrekte Klasse zuzuweisen.
Unter dem Begriff Bagging versteht man
Dabei ist „Bagging“ ein Kunstwort, das sich aus den Worten „bootstrapping“ und „aggregating“ zusammensetzt. Es meint eine bestimmte Methode, die Einzelvorhersagen verschiedener Klassifizierungsmodelle (im Fall eines Random Forest die Entscheidungsbäume) zu kombinieren. Die Einzelergebnisse der Entscheidungsbäume gehen mit einer vorgegebenen Gewichtung in das Gesamtergebnis ein.
Die Auswahl der einzelnen Bäume erfolgt zufällig nach einem Verfahren, das in der statischen Methodenlehre unter „Bootstrapping“ bezeichnet wird. Dabei werden aus der Menge aller Trainingspixel wiederholt Zufallsstichproben gezogen, wobei ein Pixel in mehreren oder sogar in keiner Stichprobe auftreten kann. Dies entspricht dem Ziehen von nummerierten Kugeln aus einer Urne, die nach der Ziehung wieder zurückgelegt werden.
Random Forest in der Fernerkundung
Nach der Trainingsphase des Klassifikationsverfahrens Random Forest, d.h. der verschiedenen Entscheidungsbäume für die Trainingspixel, durchläuft ein neues Pixel alle Entscheidungsbäume. Jeder Baum liefert für dieses Pixel eine Klassenzuordnung. Somit hat bei k Bäumen jedes Pixel k Zuordnungen. Am Ende führt eine Auswertung dieser (vorläufigen) Zuordnungen zur endgültigen Klassifizierung. Dem Pixel wird die Klasse zugewiesen, die am häufigsten gewählt wurde.
Vorteile von Random Forest gegenüber anderen Klassifikationsmethoden
- Der Klassifikator trainiert sehr schnell: Dieser Vorteil ergibt sich durch die kurze Trainings- bzw. Aufbauzeit eines einzelnen Entscheidungsbaumes und dadurch, dass die Trainingszeit bei einem Random Forest linear mit der Anzahl der Bäume steigt.
- Die Evaluierung eines Testbeispieles geschieht auf jedem Baum einzeln und ist daher parallelisierbar. Er evaluiert also schnell.
- Er ist sehr effizient für große Datenmengen (viele Klassen, viele Trainingsbeispiele, viele Merkmale).
- Wichtige Klassen können erkannt werden.
- Der Zusammenhang zwischen Klassen kann erkannt werden.
Nachteile von Random Forest
- Im Bereich der Echtzeitentscheidungen und -vorhersagen ist Random Forest nur bedingt einsetzbar.
- Die Vorhersagen und Entscheidungen beanspruchen bei einer großen Anzahl verschiedener Entscheidungsbäume eine größere Zeit. In vielen Echtzeitanwendungen werden daher andere Verfahren genutzt.
Weitere Informationen:
- Fernerkundung unterstützt Suche nach Borkenkäferschäden (LWF Bayern 2021)