Ich hatte eine Frage zum Interaktionstiefenparameter in gbm in R. Dies mag eine Noob-Frage sein, für die ich mich entschuldige, aber wie zeigt der Parameter, von dem ich glaube, dass er die Anzahl der Endknoten in einem Baum angibt, im Grunde genommen X-way an Interaktion zwischen den Prädiktoren? Ich versuche nur zu verstehen, wie das funktioniert. Außerdem erhalte ich ziemlich unterschiedliche Modelle, wenn ich einen Datensatz mit beispielsweise zwei unterschiedlichen Faktorvariablen im Vergleich zum gleichen Datensatz habe, mit der Ausnahme, dass diese beiden Faktorvariablen zu einem einzigen Faktor kombiniert werden (z. B. X-Ebenen in Faktor 1, Y-Ebenen in Faktor 2, kombinierte Variable) X * Y Faktoren). Letzteres ist wesentlich prädiktiver als Ersteres. Ich hatte gedacht, eine zunehmende Interaktionstiefe würde diese Beziehung aufgreifen.
quelle
Verknüpfung zwischen interactions.depth und der Anzahl der Endknoten
interaction.depth
interaction.depth
Verknüpfung zwischen interact.depth und der Interaktionsreihenfolge
Die Verbindung zwischen
interaction.depth
und Interaktionsreihenfolge ist mühsamer.Anstatt mit dem Interaction.depth zu argumentieren, wollen wir mit der Anzahl der Endknoten argumentieren, die wir J nennen werden .
Beispiel: Nehmen wir an, Sie haben J = 4 Endknoten (interaction.depth = 3). Sie können entweder:
quelle
Die vorherige Antwort ist nicht korrekt.
Stümpfe haben eine Interaction.depth von 1 (und zwei Blätter). Aber Interaction.depth = 2 gibt drei Blätter.
Also: NumberOfLeaves = interaction.depth + 1
quelle
Tatsächlich sind die vorherigen Antworten falsch.
was äquivalent ist zu:
quelle
Du kannst es versuchen
table (predict (gbm (y ~., data = TrainingData, distribution = "gaussian", verbose = FALSE, n.trees = 1, shrinkage = 0.01, bag.fraction = 1, interaction.depth = 1), n.trees = 1))
und sehen, dass es nur 2 eindeutige vorhergesagte Werte gibt. Mit interaction.depth = 2 erhalten Sie 3 verschiedene vorhergesagte Werte. Und überzeugen Sie sich.
quelle