Mit dem Caret-Paket können Sie die Parameterauswahl für Ihr Problem optimieren. Die caretTrain-Vignette zeigt, wie Sie die gbm-Parameter mithilfe der 10-fach wiederholten Kreuzvalidierung optimieren können. Weitere Optimierungsansätze stehen zur Verfügung, die alle mithilfe des foreach-Pakets parallel ausgeführt werden können. Verwenden Sie vignette("caretTrain", package="caret")
das Dokument zu lesen.
Das Paket unterstützt Tuning shrinkage
, n.trees
und interaction.depth
Parameter für das GBM - Modell, wenn Sie Ihre eigenen hinzufügen.
Für die Heuristik ist dies mein erster Ansatz:
shrinkage
: So klein wie du Zeit dafür hast (das gbm-Handbuch hat mehr dazu, aber im Allgemeinen kannst du mit einem kleineren Wert nichts falsch machen). Ihr Datensatz ist klein, also würde ich wahrscheinlich mit 1e-3 beginnen
n.trees
: Normalerweise züchte ich ein erstes Modell, indem ich immer mehr Bäume hinzufüge, bis gbm.perf
ich genug habe (normalerweise bis zum 1,2-fachen dieses Wertes), und verwende das dann als Richtlinie für die weitere Analyse.
interaction.depth
: du hast schon eine idee dazu. Versuchen Sie es auch mit kleineren Werten. Maximalwert ist Floor (sqrt (NCOL (Daten)).
n.minobsinnode
: Ich finde es wirklich wichtig, diese Variable zu stimmen. Sie möchten nicht, dass der Algorithmus zu viele falsche Merkmale findet.