Ich habe verstanden, dass sich zufällige Wälder und extrem zufällige Bäume in dem Sinne unterscheiden, dass die Teilung der Bäume im zufälligen Wald ist deterministisch, während sie im Fall von extrem randomisierten Bäumen zufällig sind (um genauer zu sein, ist die nächste Aufteilung die beste Aufteilung unter zufälligen gleichmäßigen Aufteilungen in den ausgewählten Variablen für den aktuellen Baum). Aber ich verstehe die Auswirkungen dieser unterschiedlichen Spaltungen in verschiedenen Situationen nicht vollständig.
- Wie vergleichen sie sich in Bezug auf Voreingenommenheit / Varianz?
- Wie vergleichen sie sich in Vorhandensein irrelevanter Variablen?
- Wie werden sie bei Vorhandensein korrelierter Variablen verglichen?
Kommentare
- ( a) ERT kann manchmal aufgrund weniger optimaler Teilungen voreingenommener sein / ERT verringert manchmal die Varianz aufgrund einer weiteren Dekorrelation von Bäumen; (b) Ich denke dasselbe, nicht sicher; (c) Ich denke dasselbe, nicht sicher. Extra: Ich würde die Aufteilung von RF aufgrund von Stichproben mit zufälligen Variablen nicht als deterministisch bezeichnen, und die Bäume sind natürlich auch nicht aufgrund von Bootstrapping.
- Was ist eine
uniform split
?
Antwort
Die extra- (randomisierten) Bäume (ET) article enthält eine Bias-Varianz-Analyse. Auf Seite 16 sehen Sie einen Vergleich mit mehreren Methoden, einschließlich RF für sechs Tests (Baum c Lassifizierung und drei Regressionen.
Beide Methoden sind ungefähr gleich, wobei die ET etwas schlechter ist, wenn eine hohe Anzahl von verrauschten Merkmalen (in hochdimensionalen Datensätzen) vorhanden ist.
Das heißt, vorausgesetzt, die (möglicherweise manuelle) Funktionsauswahl ist nahezu optimal, die Leistung ist ungefähr gleich, jedoch können ETs rechnerisch schneller sein.
Aus dem Artikel selbst:
Die Analyse des Algorithmus und die Bestimmung des optimalen Wertes von K an mehreren Testproblemvarianten haben gezeigt, dass der Wert im Prinzip von Problemspezifikationen abhängt, insbesondere von der Anteil der irrelevanten Attribute . […] Die Bias / Varianz-Analyse hat gezeigt, dass Extra-Bäume die Varianz verringern und gleichzeitig die Bias erhöhen. […] Wenn die Randomisierung über das optimale Niveau angehoben wird, nimmt die Varianz geringfügig ab, während die Vorspannung häufig erheblich zunimmt.
Wie immer keine Silberkugel.
Pierre Geurts, Damien Ernst, Louis Wehenke. „Extrem randomisierte Bäume“
Kommentare
- Alle Referenzen (entweder empirisch oder theoretisch) bezüglich ET sind etwas schlechter, wenn es eine hohe Anzahl von Rauschen gibt Eigenschaften? Oder basiert dies auf Erfahrung?
- Nach meiner Erfahrung ist das Gegenteil der Fall: Extra-Trees ist mit vielen lauten Funktionen besser. Mit der Einschränkung, dass Sie eine große Gesamtstruktur haben müssen (viele Schätzer, n_ Schätzer in sklearn) und die Anzahl der Features optimieren müssen, die bei jedem Split berücksichtigt werden (max_features in sklearn), damit dies funktioniert. Ein einzelner Extra-Baum passt mehr als ein einzelner zufälliger Waldbaum, aber wenn Sie viele Extra-Bäume haben, neigen sie dazu, auf unterschiedliche Weise zu passen und nicht zu passen. Bis zu 3000 Schätzer werden häufig erheblich verbessert.
- Wie @ramhiser hervorhob, scheint ET bei verrauschten Funktionen eine höhere Leistung zu erzielen. Können Sie Ihrer Antwort einige Verweise hinzufügen?
- Sind Bäume in zusätzlichen Bäumen immer ein ‚ -Stumpf ‚ (nur) eine Aufteilung) ?? Das Lesen anderer Artikel vermittelt einen solchen Eindruck.
Antwort
ExtraTreesClassifier ist wie ein Bruder von RandomForest, aber mit 2 wichtigen Unterschiede.
Wir sind Erstellen mehrerer Entscheidungsbäume. Zum Erstellen mehrerer Bäume benötigen wir mehrere Datensätze. Die beste Vorgehensweise ist, dass wir die Entscheidungsbäume nicht für den gesamten Datensatz trainieren, sondern nur für einen Bruchteil der Daten (ca. 80%) für jeden Baum. In einem zufälligen Wald zeichnen wir Beobachtungen mit Ersatz. So können wir Wiederholungen durchführen Beobachtungen in einer zufälligen Gesamtstruktur. In einem ExtraTreesClassifier zeichnen wir Beobachtungen ohne Ersatz, sodass sich Beobachtungen nicht wie in einer zufälligen Gesamtstruktur wiederholen.
Bei der Aufteilung wird ein inhomogener übergeordneter Knoten konvertiert in RandomForest wird die beste Aufteilung ausgewählt, um das übergeordnete Element in die zwei homogensten untergeordneten Knoten umzuwandeln. In einem ExtraTreesClassifier wird eine zufällige Aufteilung ausgewählt, um den übergeordneten Knoten in zwei zufällige untergeordnete Knoten zu unterteilen.
Sehen wir uns einige Ensemble-Methoden an, die von hoher bis niedriger Varianz geordnet sind und mit ExtraTreesClassifier enden.
1.Entscheidungsbaum (hohe Varianz)
Ein einzelner Entscheidungsbaum passt normalerweise zu den Daten, aus denen er lernt, weil er nur aus einem Pfad von lernt Entscheidungen. Vorhersagen aus einem einzelnen Entscheidungsbaum machen normalerweise keine genauen Vorhersagen für neue Daten.
2. Zufällige Gesamtstruktur (mittlere Varianz)
Zufällige Gesamtstrukturmodelle verringern das Risiko einer Überanpassung, indem sie Zufälligkeit einführen durch:
- Erstellen mehrerer Bäume (n_estimators)
- Zeichnen von Beobachtungen mit Ersetzung (dh einer Bootstrap-Stichprobe)
- Aufteilen von Knoten auf die beste Aufteilung unter einer zufälligen Teilmenge der an jedem Knoten ausgewählten Features . Split ist ein Prozess zum Konvertieren eines inhomogenen übergeordneten Knotens in einen 2 homogenen untergeordneten Knoten (bestmöglich).
3. Zusätzliche Bäume (geringe Varianz)
Zusätzliche Bäume ähneln einer zufälligen Gesamtstruktur, da sie mehrere Bäume erstellen und Knoten mithilfe zufälliger Teilmengen von aufteilen Funktionen, jedoch mit zwei Hauptunterschieden: Es werden keine Bootstrap-Beobachtungen durchgeführt (dh es werden ersatzlose Stichproben erstellt), und die Knoten werden nach zufälligen Teilungen aufgeteilt, nicht nach besten Teilungen. Zusammenfassend lässt sich sagen, dass ExtraTrees:
- standardmäßig mehrere Bäume mit bootstrap = False erstellt. Dies bedeutet, dass ersatzlose Stichproben
- Knoten basierend auf zufälligen Aufteilungen auf eine zufällige Teilmenge aufgeteilt werden der an jedem Knoten ausgewählten Features
In Extra Trees ergibt sich die Zufälligkeit nicht aus dem Bootstrapping der Daten, sondern aus den zufälligen Aufteilungen aller Beobachtungen. ExtraTrees ist nach (extrem zufällig ausgewählten Bäumen) benannt.
Kommentare
- [Bootstrapping] ( en .wikipedia.org / wiki / Bootstrapping_ (Statistik) tastet mit Ersatz ab.
Antwort
Vielen Dank für die Antworten! Da ich noch Fragen hatte, führte ich einige numerische Simulationen durch, um mehr Einblicke in das Verhalten dieser beiden Methoden zu erhalten.
- Extra Bäume scheinen bei verrauschten Merkmalen eine höhere Leistung zu erzielen.
Das folgende Bild zeigt die Leistung (bewertet mit Kreuzvalidierung), wenn zufällige Spalten, die für das Ziel irrelevant sind, zum Datensatz hinzugefügt werden Ziel ist nur eine lineare Kombination der ersten drei Spalten.
-
Wenn alle Variablen relevant sind, scheinen beide Methoden die gleiche Leistung zu erzielen ce,
-
Zusätzliche Bäume scheinen dreimal schneller zu sein als die zufällige Gesamtstruktur (zumindest in der Implementierung von Scikit Learn)
Quellen
Link zum vollständigen Artikel: Zufälliger Wald gegen zusätzliche Bäume .
Kommentare
- Aus Ihrem verlinkten Artikel: “ In Blau werden die Ergebnisse aus dem zufälligen Wald und in Rot für die zusätzlichen Bäume dargestellt. “
Antwort
Die Antwort ist, dass es darauf ankommt. Ich schlage vor, Sie versuchen sowohl zufällige Wald- als auch zusätzliche Bäume für Ihr Problem. Probieren Sie einen großen Wald aus (1000 – 3000 Bäume / Schätzer, n_ Schätzer in sklearn) und optimieren Sie die Anzahl der bei jedem Split berücksichtigten Features (max_features in sklearn) sowie die minimalen Stichproben pro Split (min_samples_split in sklearn) und die maximale Baumtiefe ( max_depth in sklearn). Das heißt, Sie sollten bedenken, dass Überabstimmung eine Form der Überanpassung sein kann.
Hier sind zwei Probleme, an denen ich persönlich gearbeitet habe, wo Zusätzliche Bäume erwiesen sich bei sehr verrauschten Daten als nützlich:
Eine effiziente Vorhersage verteilter Proteinstörungen mit eingefügten Proben