¿Ha cambiado el bosque de arranque en JMP Pro18?He utilizado el bosque bootstrap en diversos conjuntos de datos (tanto variables continuas como de respuesta nominal) durante varios años y, en general, comprendo la configuración de ese algoritmo; suelo usar los valores predeterminados. Entiendo que los bosques aleatorios (bootstrap) implican que cada árbol se ejecuta utilizando una selección aleatoria de factores y observaciones (con reemplazo). Anteriormente, al analizar los árboles individuales, siempre había algunos que usaban solo un par de variables y tenían árboles muy dispersos; otros eran mucho más complejos. En la docencia, he utilizado esto para mostrar cómo los árboles individuales a menudo carecen de sentido: es el promedio lo que produce buenas predicciones.
Sin embargo, al ejecutar bosques de bootstrap en JMP Pro 18, todos los conjuntos de datos que utilizo muestran todos los árboles con cientos de divisiones. Antes había algunos árboles con menos de 10 divisiones, pero ahora no hay árboles simples. ¿Ha cambiado el método de implementación del modelo?
Modelado predictivo y aprendizaje automáticoRe: ¿Ha cambiado el bosque de arranque en JMP Pro18?Hola @dlehman1
La plataforma Bootstrap Forest ajusta un modelo de conjunto promediando varios árboles de decisión, cada uno de los cuales se ajusta a una muestra bootstrap (con reemplazo) de los datos de entrenamiento. Cada división de cada árbol considera un subconjunto aleatorio de los predictores (de Bosque Bootstrap ).
Esta aleatorización en la selección de muestras de entrenamiento y selección de subconjuntos de características permite reducir el riesgo de sobreajuste (al crear múltiples árboles independientes basados en datos de entrenamiento ligeramente diferentes), mejorar la precisión y la robustez al ruido, y permite manejar valores faltantes, valores atípicos y características correlacionadas/colinealidad (gracias a la selección de características de subconjuntos en cada división de cada árbol).
En cuanto a tu pregunta original, como ya no tengo JMP 17 en mi ordenador, no podré comparar los resultados. En cuanto a la documentación de JMP 17 y JMP 18 sobre los hiperparámetros predeterminados utilizados al iniciar Bootstrap Forest, no parece haber diferencia en la configuración predeterminada.
Si los árboles individuales parecen demasiado complejos, puedes modificar algunos de los hiperparámetros predeterminados:
- Divisiones mínimas por árbol : de manera predeterminada, está en 10, pero en conjuntos de datos pequeños tiendo a reducir siempre este valor a 2. Tener un valor grande en las divisiones mínimas por árbol tiende a crear árboles individuales complejos, lo que puede no ser beneficioso y puede ser propenso al sobreajuste.
- Máximo de divisiones por árbol : El valor predeterminado es 2000, pero, como se mencionó, un máximo de 2000 divisiones en un árbol individual es mucho (y puede causar problemas similares a los mencionados anteriormente). Suelo reducir este valor según el tamaño del conjunto de datos y la complejidad de la tarea, a alrededor de 100-1000.
- Tamaño mínimo de división : de manera predeterminada, está en 5 (número mínimo de muestras para tener una división candidata), pero en conjuntos de datos pequeños puede no ser relevante (y puede reducir este número, incluso si esto puede generar un mayor riesgo de sobreajuste), mientras que en conjuntos de datos más grandes es posible que desee aumentar este valor para aumentar la robustez de cada árbol individual.
- Detención anticipada : asegúrese de que esta opción esté marcada si ha utilizado un conjunto de validación, para asegurarse de que la creación de árboles se detenga si las métricas de validación no mejoran con la creación de nuevos árboles.
Disculpe la falta de respuestas más precisas a sus preguntas. ¿Tiene capturas de pantalla, conjuntos de datos o algo que muestre las diferencias? Podría ayudar a depurar la situación.
Mejor,
Re: ¿Ha cambiado el bosque de arranque en JMP Pro18?Tu descripción refleja exactamente lo que entiendo y tengo una buena idea de cómo esos parámetros de ajuste afectarán los árboles que se construyen. No encuentro ninguno de mis ejemplos anteriores, pero sé que he demostrado en clases que los árboles individuales no tienen sentido, pero el promedio de árboles independientes es lo que hace que el bosque bootstrap sea un buen predictor. Sin embargo, la parte de la descripción que parece contradecir los árboles resultantes es: «Cada división en cada árbol considera un subconjunto aleatorio de predictores». Esperaría que los predictores en cada árbol varíen, no solo en la selección aleatoria, sino también en la cantidad de ellos seleccionados. Esto parece coincidir con lo que solía obtener del bosque bootstrap: algunos árboles usaban dos predictores, otros diez, etc. Ahora todos los árboles parecen tener el mismo número de divisiones (y, por lo tanto, usan un número similar de predictores en cada árbol). Y el número de divisiones es del orden de cientos en todos los conjuntos de datos que he analizado (tamaños modestos, alrededor de 10 000 a 100 000 filas). Sé que antes tenía árboles que solo tenían unas pocas rajaduras, y ya no me pasa. De ahí mi pregunta.
Re: ¿Ha cambiado el bosque de arranque en JMP Pro18?Hola @dlehman1 ,
Intenté jugar con dos conjuntos de datos de muestra, Diamonds Data.jmp (tarea de regresión) y Mushroom.jmp (tarea de clasificación).
Tuve la misma impresión que tú con la tarea de regresión; incluso al jugar con hiperparámetros, los árboles individuales eran bastante complejos. Sin embargo, con la tarea de clasificación, obtuve árboles individuales más simples y satisfactorios, con diferentes profundidades y complejidades:

Nuevamente, esto no responderá directamente a su pregunta sobre un posible cambio en el algoritmo del bosque de arranque entre las versiones de JMP (esto puede ser algo que el personal técnico de JMP, @Mark_Bailey ?) pueda responder mejor), pero creo que la complejidad de los árboles individuales está vinculada a la precisión necesaria para la tarea (regresión equivalente a una cantidad muy grande de clases frente a clasificación) y los datos disponibles (cantidad y calidad).
Espero que esta respuesta todavía pueda ayudarte.
Re: ¿Ha cambiado el bosque de arranque en JMP Pro18?Adjunto un ejemplo diferente: tamaño similar al conjunto de datos de hongos, modelo de clasificación, número similar de variables (pero algunos factores continuos, mientras que todos los factores de los hongos son nominales). Los árboles del bosque bootstrap tienen cientos de divisiones. Sigo desconcertado.
Re: ¿Ha cambiado el bosque de arranque en JMP Pro18?No doy soporte directo a esta plataforma, por lo que no puedo ofrecer ninguna explicación ni ayuda inmediata. Además, estoy comprometido a finalizar el desarrollo de una nueva plataforma y nuevas funciones en JMP 19, así que creo que la solución más rápida será contactar con el soporte de JMP ( soporte@jmp.com ) para obtener respuestas. Por favor, responda aquí con cualquier información que reciba.
Re: ¿Ha cambiado el bosque de arranque en JMP Pro18?Hola a todos,
Hasta el momento, nuestras pruebas no han revelado ninguna evidencia de diferencias metodológicas entre las versiones JMP 17 y 18. Si tiene alguna otra pregunta o inquietud relacionada con el comportamiento observado, por favor, envíela a support@jmp.com . Si es posible, adjunte un ejemplo que muestre cómo el comportamiento de división de árbol difiere del esperado. Con gusto continuaremos las pruebas e investigaciones.
-Soporte técnico de JMP
Re: ¿Ha cambiado el bosque de arranque en JMP Pro18?¡La compatibilidad con JMP ha vuelto! La razón por la que obtenía resultados diferentes se debía a:
"El valor predeterminado "antiguo" (anterior a 16) para "términos muestreados por división" era floor(nX/4), donde nX es la cantidad de X variables ingresadas".
Pensé que el comportamiento había cambiado de JMP 17 a JMP 18, pero aparentemente es anterior. No me di cuenta de que, en mi ejemplo, los términos muestreados por división arrojaron un valor predeterminado de 1, mientras que en JMP 18 (y, al parecer, en 17, 16 y 15) el valor predeterminado es 5. Esto explica la diferencia.