Me doy cuenta de que hay 3 parámetros de ajuste en el modelo de árboles de refuerzo, es decir
- El número de árboles (número de iteraciones)
- parámetro de contracción
- Número de divisiones (tamaño de cada árbol constituyente)
Mi pregunta es: para cada uno de los parámetros de ajuste, ¿cómo debo encontrar su valor óptimo? Y que metodo?
Tenga en cuenta que: el parámetro de contracción y el parámetro de número de árboles operan juntos, es decir, un valor menor para el parámetro de contracción conduce a un valor más alto para el número de árboles. Y también debemos tener esto en cuenta.
Estoy particularmente interesado en el método para encontrar el valor óptimo para el número de divisiones. ¿Debería basarse en la validación cruzada o el conocimiento del dominio sobre el modelo detrás?
¿Y cómo se llevan a cabo estas cosas en el gbm
paquete en R?
fuente
Hay dos buenas fuentes para los árboles de regresión potenciados y el paquete gbm. Para la explicación de BRT y la optimización de la cantidad de árboles (
nt
), la tasa de aprendizaje (lr
) y la complejidad de los árboles (tc
), vea Una guía de trabajo para árboles de regresión potenciados. Aunque se está centrando en la ecología, creo que no encontrará una mejor introducción a BRT .Para la implementación de BRT en el paquete gbm, vea Árboles de regresión potenciados para modelos ecológicos
En resumen, una regla general es seleccionar una tasa de aprendizaje que permita que el modelo BRT se ajuste al menos a 1000 árboles, por lo que probablemente necesitará una tasa de aprendizaje baja, tal vez 0.001 para lograrlo. Pero depende del tamaño de sus datos, vea la fig. 2 y 3 en la Guía de trabajo para BRT. Creo que una forma posible sería configurar diferentes modelos en BRT de acuerdo con su tamaño de datos, por ejemplo, combinar diferentes lr (0.1, 0.01, 0.001), tc (1, 3, 5, 7, 9, 20) con una bolsa diferente .fracciones (0.5, 0.7, 0.9) y elija la mejor según la desviación más baja o la puntuación ROC más alta. Quizás ayudó.
fuente
BRT_MODEL$self.statistics$correlation[[1]]
es la correlación de las pruebas con los datos de entrenamiento, que es una buena métrica de prueba.