Ein zufälliger Wald ist eine Sammlung von Entscheidungsbäumen, die dem Absackkonzept folgen. Wenn wir von einem Entscheidungsbaum zum nächsten übergehen, wie werden dann die Informationen, die der letzte Entscheidungsbaum gelernt hat, zum nächsten weitergeleitet?
Denn meines Wissens gibt es nichts Vergleichbares wie ein trainiertes Modell, das für jeden Entscheidungsbaum erstellt und dann geladen wird, bevor der nächste Entscheidungsbaum aus dem falsch klassifizierten Fehler zu lernen beginnt.
Wie funktioniert es?
machine-learning
random-forest
cart
bagging
Abhay Raj Singh
quelle
quelle
Antworten:
Es werden keine Informationen zwischen Bäumen übertragen. In einer zufälligen Gesamtstruktur sind alle Bäume gleich verteilt, da für alle Bäume die gleiche Zufallsstrategie verwendet wird. Nehmen Sie zunächst ein Bootstrap-Beispiel der Daten und vergrößern Sie dann den Baum mithilfe von Teilungen aus einer zufällig ausgewählten Teilmenge von Features. Dies geschieht für jeden Baum einzeln, ohne auf andere Bäume im Ensemble zu achten. Die Bäume werden jedoch lediglich dadurch korreliert, dass jeder Baum anhand einer Stichprobe aus einem gemeinsamen Pool von Trainingsdaten trainiert wird. Mehrere Samples aus demselben Datensatz sind in der Regel ähnlich, sodass die Bäume einen Teil dieser Ähnlichkeit codieren.
Es kann hilfreich sein, eine Einführung in zufällige Gesamtstrukturen aus einem qualitativ hochwertigen Text zu lesen. Eines ist "Random Forests" von Leo Breiman. Es gibt auch ein Kapitel in Elemente des statistischen Lernens von Hastie et al.
Möglicherweise haben Sie zufällige Wälder mit Boosting-Methoden wie AdaBoost oder Gradienten-Boosting-Bäumen verwechselt. Boosting-Methoden sind nicht gleich Boosting-Methoden, da sie Informationen über Fehlanpassungen aus früheren Boosting-Runden verwenden, um die nächste Boosting-Runde zu informieren. Siehe: Ist Random Forest ein Boosting-Algorithmus?
quelle
Die Zufallswälder sind eine Sammlung von Mehrfachentscheidungsbäumen, die unabhängig voneinander trainiert werden . Es gibt also keine Vorstellung von sequentiell abhängigem Training (was bei Boosting-Algorithmen der Fall ist ). Infolgedessen ist es, wie in einer anderen Antwort erwähnt, möglich, ein paralleles Training der Bäume durchzuführen.
Vielleicht möchten Sie wissen, woher das "Zufällige" im zufälligen Wald kommt: Es gibt zwei Möglichkeiten, mit denen Zufälligkeit in den Prozess des Lernens der Bäume injiziert wird. Erstens die zufällige Auswahl von Datenpunkten, die zum Trainieren jedes Baums verwendet werden, und zweitens die zufällige Auswahl von Merkmalen, die zum Erstellen jedes Baums verwendet werden. Da ein einzelner Entscheidungsbaum in der Regel zu einer Überanpassung der Daten führt, führt die Zufallsinjektion auf diese Weise zu einer Reihe von Bäumen, von denen jeder eine gute Genauigkeit (und möglicherweise eine Überanpassung) für eine andere Teilmenge der verfügbaren Trainingsdaten aufweist . Wenn wir daher den Durchschnitt der Vorhersagen aller Bäume nehmen, stellen wir eine Verringerung der Überanpassung fest (im Vergleich zum Trainieren eines einzelnen Entscheidungsbaums mit allen verfügbaren Daten ).
Wenn es für eine Regressionsaufgabe verwendet wird, verwenden Sie den Durchschnitt der Vorhersagen als endgültige Vorhersage für die zufällige Gesamtstruktur.
Wenn es für eine Klassifizierungsaufgabe verwendet wird, verwenden Sie eine weiche Abstimmungsstrategie : Nehmen Sie den Durchschnitt der Wahrscheinlichkeiten, die von den Bäumen für jede Klasse vorhergesagt werden, und deklarieren Sie dann die Klasse mit der höchsten durchschnittlichen Wahrscheinlichkeit als endgültige Vorhersage der zufälligen Gesamtstruktur.
Erwähnenswert ist ferner, dass es möglich ist, die Bäume sequenziell abhängig zu trainieren, und genau das macht der Algorithmus für gradientenverstärkte Bäume , der sich von zufälligen Wäldern völlig unterscheidet.
quelle
Random Forest ist eher ein Bagging-Algorithmus als ein Boosting-Algorithmus.
Zufällige Gesamtstruktur erstellt den Baum unabhängig unter Verwendung einer zufälligen Stichprobe der Daten. Eine parallele Implementierung ist möglich.
Vielleicht möchten Sie die Gradientenverstärkung ausprobieren, bei der Bäume nacheinander erstellt werden und bei der ein neuer Baum versucht, den zuvor gemachten Fehler zu korrigieren.
quelle
Random Forest ist eine Sammlung von Entscheidungsbäumen. Die Bäume sind eigenständig gebaut. Jeder Baum wird auf eine Teilmenge von Merkmalen und eine Teilmenge einer Stichprobe trainiert, die mit Ersetzung ausgewählt wurde.
Bei der Vorhersage, beispielsweise für die Klassifizierung, werden die Eingabeparameter für jeden Baum in der Gesamtstruktur angegeben und jeder Baum "stimmt" über die Klassifizierung ab, wobei die Bezeichnung mit den meisten Stimmen gewinnt.
Warum Random Forest anstelle von Simple Decision Tree verwenden? Bias / Varianz-Kompromiss. Random Forest besteht im Vergleich zu einem einzelnen Entscheidungsbaum aus viel einfacheren Bäumen. Im Allgemeinen sorgen zufällige Wälder für eine große Verringerung des Fehlers aufgrund von Varianz und eine geringe Erhöhung des Fehlers aufgrund von Verzerrung.
quelle
Ja, wie die Autoren oben sagten, ist der Random Forest-Algorithmus ein Bagging-Algorithmus, kein Boosting-Algorithmus.
Das Absacken kann die Varianz des Klassifikators verringern, da die Basisalgorithmen, die auf verschiedene Stichproben angewendet werden, und deren Fehler bei der Abstimmung gegenseitig kompensiert werden. Beim Absacken werden leicht unterschiedliche Versionen desselben Modells gemittelt, um die Vorhersagekraft zu verbessern. Um Bagging anzuwenden, erstellen wir einfach B-Regressionsbäume mit B-Bootstrap-Trainingssätzen und mitteln die resultierenden Vorhersagen
Eine verbreitete und recht erfolgreiche Anwendung des Absackens ist der Random Forest
Wenn diese Entscheidungsbäume jedoch in einer zufälligen Gesamtstruktur erstellt werden, wird jedes Mal, wenn eine Teilung in einem Baum berücksichtigt wird, eine zufällige Stichprobe von
m
Prädiktoren als Teilungskandidaten aus dem vollständigen Satz von p Prädiktoren ausgewählt. Die Aufteilung darf nur einen dieserm
Prädiktoren verwenden.quelle