Hola a todos,
Esta es una publicación para comenzar a hacer preguntas sobre este complemento y para ser más sincero sobre las preguntas y respuestas.
Aquí están mis preguntas en general y en lo que respecta a JMP Genomics (que también está obteniendo este complemento):
- ¿Cuál es el principal problema que se supone que XGBoost debe abordar? (p. ej., ¿modelos de bajo rendimiento? ¿Abordar datos dispersos que no se pueden tratar fácilmente con otros métodos? ¿Problemas de precisión?).
- ¿Cómo se aplica esto a los datos genómicos?
- ¿Cuál es el beneficio real (beneficio personal y comercial)? El objetivo es ayudar a las SE a comunicar el beneficio a una organización de por qué desearían invertir en el tiempo (y / o $) para implementar.
- ¿Cuál es el impacto y la magnitud en un problema empresarial?
- Fuera de Kaggle, ¿alguien ha implementado XGBoost y cuál fue el resultado?
Gracias,
Gracias Chris por plantear estos.
1) ¿Cuál es el principal problema que se supone que XGBoost debe abordar? (p. ej., ¿modelos de bajo rendimiento? ¿Abordar datos dispersos que no se pueden tratar fácilmente con otros métodos? ¿Problemas de precisión?).
XGBoost es en su mayor parte una muy buena plataforma de modelado predictivo de propósito general; Una variación sobrealimentada de la plataforma JMP Pro Boosted Tree actual. Al igual que Boosted Tree y Bootstrap Forest, produce estadísticas de importancia variable, por lo que también se puede usar en un modo más explicativo para determinar predictores más fuertes y eliminar los más pobres. Maneja automáticamente los datos faltantes en los predictores y tiene funciones objetivas para todos los tipos comunes de objetivos Y. Es relativamente rápido y, de forma predeterminada, debe usar todos los núcleos de su máquina durante la instalación, y opcionalmente puede usar una GPU NVIDIA en Windows. El complemento viene con dos ejemplos básicos y un documento que los explica. Con las capacidades avanzadas de manipulación de datos, limpieza e ingeniería de características en JMP Pro, proporciona una forma formidable de realizar el aprendizaje automático moderno en datos tabulares sin tener que escribir código.
2) ¿Cómo se aplica esto a los datos genómicos?
No hay nada específico en XGBoost relacionado con los conjuntos de datos genómicos, pero puede funcionar bien para ellos y otros problemas de datos generales. Luciano Silva (desarrollador de JMP Genomics) y yo hemos hecho algunas comparaciones con algunas de las mejores rutinas de selección genómica actuales (p. Ej. BLUP genómico) y tiende a funcionar igualmente bien pero no significativamente mejor.
3) ¿Cuál es el beneficio real (beneficio personal y comercial)? El objetivo es ayudar a las SE a comunicar el beneficio a una organización de por qué desearían invertir en el tiempo (y / o $) para implementar.
XGBoost es más directamente aplicable a problemas comerciales que se pueden convertir como problemas de predicción, aunque también puede usarlo para analizar datos de experimentos diseñados. Se escala bien a conjuntos de datos más grandes. Para los nuevos usuarios hay algo de aprendizaje involucrado para comprender los parámetros de ajuste, y hemos agregado funcionalidad que utiliza DOE para ayudar a ajustar estos parámetros. También utilizamos DOE de una manera novedosa en una rutina complementaria Hacer columnas plegadas en K para crear divisiones de datos óptimamente equilibradas para usar para la validación cruzada. Consulte el documento con el complemento para obtener una lista completa de los valores agregados JMP Pro ofrece la funcionalidad estándar XGBoost.
4) ¿Cuál es el impacto y la magnitud en un problema empresarial?
Depende mucho del problema! A veces, pequeñas mejoras en las predicciones y la comprensión de un sistema pueden tener grandes impactos, otras veces no tanto.
5) Fuera de Kaggle, ¿alguien ha implementado XGBoost y cuál fue el resultado?
Tengo entendido que numerosas organizaciones han implementado modelos XGBoost con éxito en la producción, pero no tengo buenas referencias para usted. Hay muchas discusiones sobre XGBoost en línea. La mayoría de la gente ejecuta e implementa XGBoost desde Python o R. Existe una opción de triángulo rojo para guardar el código de Python, que en realidad es un código completo para validar de forma cruzada el modelo desde cero.
Para todos: Actualmente estamos en el modo Early Adopter y tenemos un nuevo grupo de la comunidad JMP configurado. Mia Stephens y Stephanie Mencia están amablemente ayudando, y ya hemos recibido algunos comentarios fantásticos. Avíseme si desea ser agregado al grupo o simplemente desea probar el complemento.
Hola Mike, el futuro en esto aún está por resolverse y estamos abiertos a sugerencias. Esta es la primera vez que hemos integrado análisis de terceros de núcleo duro en JMP a nivel C ++ y, como primer paso, queremos mantener cierta distancia y flexibilidad a través de un complemento. Dudo seriamente que se convierta en un nuevo producto JMP, pero espero que ayude a mejorar las ventas de JMP Pro y nos brinde información valiosa sobre algunos de los cambios tectónicos que suceden con el software de análisis.
Otro punto para agregar a esta discusión: XGBoost tiene una licencia LGPL3. En resumen, no se nos permite distribuirlo incrustado como parte del software JMP normal, no sea que tengamos que proporcionar JMP esencialmente gratis para todos. La única forma es que el usuario descargue voluntariamente el paquete que contiene este módulo y asuma la responsabilidad personal de adherirse a la licencia LGPL.
Brian