Tenía una pregunta sobre el parámetro de profundidad de interacción en gbm en R. Esta puede ser una pregunta novata, por lo que me disculpo, pero ¿cómo el parámetro, que creo que denota el número de nodos terminales en un árbol, básicamente indica X-way interacción entre los predictores? Solo trato de entender cómo funciona eso. Además, obtengo modelos bastante diferentes si tengo un conjunto de datos con, digamos, dos variables de factores diferentes versus el mismo conjunto de datos, excepto que esas dos variables de factores se combinan en un solo factor (por ejemplo, niveles X en el factor 1, niveles Y en el factor 2, la variable combinada tiene Factores X * Y). Este último es significativamente más predictivo que el primero. Pensé que aumentar la profundidad de la interacción mejoraría esta relación.
fuente
Enlace entre la profundidad de la interacción y el número de nodos terminales
interaction.depth
interaction.depth
Enlace entre la profundidad de la interacción y el orden de interacción
El vínculo entre
interaction.depth
y el orden de interacción es más tedioso.En lugar de razonar con el interaction.depth, vamos a la razón con el número de nodos terminales, que vamos a llamadas J .
Ejemplo: Supongamos que tiene J = 4 nodos terminales (Interaction.depth = 3) puede:
fuente
La respuesta anterior no es correcta.
Los tocones tendrán una profundidad de interacción de 1 (y tendrán dos hojas). Pero la interacción.depth = 2 da tres hojas.
Entonces: NumberOfLeaves = Interacción.depth + 1
fuente
En realidad, las respuestas anteriores son incorrectas.
que es equivalente a:
fuente
Puedes probar
tabla (predecir (gbm (y ~., data = TrainingData, distribution = "gaussian", verbose = FALSE, n.trees = 1, shrinkage = 0.01, bag.fraction = 1, Interaction.depth = 1), n.trees = 1))
y vea que solo hay 2 valores predichos únicos. interactive.depth = 2 le dará 3 valores predichos distintos. Y convencerte a ti mismo.
fuente