Gibt es eine Strategie zur Auswahl der Anzahl der Bäume in einem GBM? Insbesondere das ntrees
Argument in R
der gbm
Funktion.
Ich verstehe nicht, warum Sie nicht ntrees
den höchsten vernünftigen Wert einstellen sollten . Ich habe festgestellt, dass eine größere Anzahl von Bäumen die Variabilität der Ergebnisse mehrerer GBMs deutlich verringert. Ich glaube nicht, dass eine hohe Anzahl von Bäumen zu einer Überanpassung führen würde.
Irgendwelche Gedanken?
quelle
Dies ist die Arbeitsanleitung für verstärkte Regressionsbäume von Elith et al.: Http://onlinelibrary.wiley.com/doi/10.1111/j.1365-2656.2008.01390.x/full Sehr hilfreich!
Sie sollten mindestens 1000 Bäume verwenden. Soweit ich verstanden habe, sollten Sie die Kombination aus Lernrate, Baumkomplexität und Anzahl der Bäume verwenden, um den minimalen Vorhersagefehler zu erzielen. Kleinere Werte der Lernrate führen zu einem größeren Trainingsrisiko bei gleicher Anzahl von Iterationen, während jede Iteration das Trainingsrisiko verringert. Wenn die Anzahl der Bäume groß genug ist, kann das Risiko beliebig klein gemacht werden (siehe: Hastie et al., 2001, "Die Elemente des statistischen Lernens, Data Mining, Inferenz und Vorhersage" ).
quelle
Wie bei einigen Algorithmen für maschinelles Lernen üblich, unterliegt Boosting einem Bias-Varianz-Kompromiss hinsichtlich der Anzahl der Bäume. Dieser Kompromiss sagt Ihnen, dass: (i) schwache Modelle tendenziell eine hohe Verzerrung und geringe Varianz aufweisen: Sie sind zu starr, um die Variabilität im Trainingsdatensatz zu erfassen, sodass sie auch im Testsatz keine gute Leistung erbringen (hoher Test) Fehler) (ii) Sehr starke Modelle weisen tendenziell eine geringe Verzerrung und eine hohe Varianz auf: Sie sind zu flexibel und passen zu dem Trainingssatz, sodass sie im Testsatz (da sich die Datenpunkte vom Trainingssatz unterscheiden) ebenfalls keine gute Leistung erbringen (hoher Testfehler)
Das Konzept des Boosting von Bäumen besteht darin, mit flachen Bäumen (schwachen Modellen) zu beginnen und immer mehr flache Bäume hinzuzufügen, die versuchen, frühere Baumschwächen zu korrigieren. Während Sie diesen Vorgang ausführen, nimmt der Testfehler tendenziell ab (da das Gesamtmodell flexibler / leistungsfähiger wird). Wenn Sie jedoch zu viele dieser Bäume hinzufügen, werden die Trainingsdaten übermäßig angepasst, und der Testfehler steigt. Die Kreuzvalidierung hilft beim Finden des Sweet Spots
quelle