Combinando modelosSi algo aprendí de Discovery Summit Americas este año, fue lo común que es promediar y / o crear modelos de conjuntos, algo de lo que había oído hablar pero que nunca había considerado (ser un novato en el modelaje). Entonces decidí hacerlo. Hacer un modelo de conjunto es fácil; Guardé el modelo como una fórmula de predicción y simplemente lo incluí como un predictor en la siguiente ronda de selección del modelo (usando la pantalla del modelo de JMP Pro 16). Lo que parecería ser más simple, promediar el modelo, me confunde. Si encuentro dos modelos que me gustan, guardo ambos como fórmulas de predicción en mi tabla de datos y luego creo una nueva columna en la que se combinan, parece que la probabilidad se combina, pero la fórmula no está en una sintaxis en la que yo podría aplicarlo a nuevos datos (solo muestra el promedio de las probabilidades). Si publico ambos modelos en Formula Depot, puedo promediarlos de esa manera con bastante facilidad, así que esa es mi solución alternativa actual, pero ¿no debería TAMBIÉN poder promediarlos en la tabla misma? Creo que el problema podría ser que, debido a que la fórmula de predicción tiene una fórmula Y una probabilidad, cuando voy a combinarlos, solo se promedia la probabilidad, cuando en realidad quiero promediar las fórmulas en sí. ¿Puedo promediar ambos de una manera que me permita copiar esa fórmula promediada en una nueva tabla de datos y probarla con nuevos datos? Si no es así, Formula Depot fue diseñado para hacer precisamente esto, por lo que no es un gran problema. ¡Solo quiero tener algunas opciones! ¿Quizás simplemente elimino la parte de probabilidad donde SOLO queda la fórmula en la celda de información de la columna?
AnalíticaRe: combinar modelosSegún su descripción, parece que desea promediar las predicciones (discretas) en lugar de las probabilidades (continuas).No lo he visto hecho de esa manera.Existe una técnica, la predicción conforme, que está diseñada para ver qué tan robustas son las predicciones de un modelo.Pero lo que está describiendo se vería así: suponga que hay 2 clases para predecir y las codifica como continuas, 0 y 1. Suponga que tiene 3 modelos: 2 de ellos predicen un 0 para un caso particular y 1 predice un 1 Entonces, su "promediado" produciría un resultado de 1/3 que supongo que tomaría como la probabilidad de obtener un 1. Idea interesante, pero no estoy seguro de qué base estadística tiene este enfoque.Además, parece que estaría limitado a clasificaciones binarias (aunque eso es solo un límite).Me interesaría ver qué otras respuestas recibes.
Re: combinar modelosHola @abmayfield ,
Me gustó tu charla, pero tuve que verla a pedido, no pude ir a la visualización en vivo y a las preguntas y respuestas.
Normalmente, podría promediar las columnas de predicción si está haciendo una fórmula de regresión típica, algo que sea numérico. Simplemente tomaría el promedio de los dos. Pero, dado que está trabajando con un valor categórico sí o no (o incluso tal vez), se vuelve más complicado porque tiene que transformar las entradas numéricas X en una función logística que luego encuentra la probabilidad y compara los resultados con un IfMax ( ) función.
Tomemos, por ejemplo, el archivo Big Class. Si intentas predecir: sexo con: altura y: peso, obtienes una función de salida logística, en mi ejemplo, estoy tratando de predecir sexo = M. Sin embargo, existen funciones intermedias que se utilizan para determinar el problema [M] y el problema [F]. La función lineal es solo eso, algo así como Lin [M] = a + b *: altura + c *: peso, donde a, byc son solo coeficientes de ajuste. Para obtener las probabilidades, JMP usa la transformación 1 / (1_exp (-Lin [M])) para Prob [M] y 1 / (1 + exp (Lin [M]) para Prob [F], que es solo 1- Problema [M]. El resultado más probable es entonces MaxIf (Prob [M] => M, Prob [F] => F) y el resultado más probable es el Prob [y] más grande, M o F.
En su caso, si trabaja con resultados categóricos, creo que necesitará promediar las funciones Lin [Y] para luego transformarlo en una probabilidad. Es la función lineal la que se ajusta a los datos, no la función de probabilidad, por eso es necesario promediar antes de transformar la función lineal.
Si puede cambiar su resultado a una respuesta continua, entonces un promedio simple de fórmulas de predicción es sencillo. Siempre que el tipo de modelado sea nominal u ordinal, JMP lo tratará como niveles discretos y realizará un modelado logístico cada vez.
Una idea que tuve para usar una escala continua es representar el porcentaje de decoloración dentro de un área determinada. Digamos que evalúa 100 cm ^ 2 (un parche de 10 cm x 10 cm) de coral y determina que aproximadamente 2 cm X 3 cm (o 6 cm ^ 2) están blanqueados, entonces el porcentaje de blanqueamiento sería del 60%. Al hacerlo de esta manera, puede obtener una representación más precisa de la cantidad de un espécimen de coral blanqueado y ahora tiene una respuesta continua que se puede modelar con regresión frente a clasificación.
¡Espero que esto ayude!,
DS
PD La Discovery Summit fue genial. Me gustaron mucho las charlas. Además, estoy actualizando mi GUI para generar automáticamente las tablas de ajuste según la entrada del usuario. Te avisaré cuando la nueva versión esté lista. Debería ayudar a automatizar aún más el proceso al generar un diseño de llenado de espacio con la cantidad de corridas que desea realizar.
Re: combinar modelos¡Sí! Creo, como de costumbre, que tiene razón con respecto a la extraña naturaleza de tratar de predecir una variable categórica, en la que efectivamente necesita dos ecuaciones, lo que complica las cosas. Lo que espero hacer es eventualmente tener un tamaño de muestra lo suficientemente grande como para tener un verdadero gradiente, ya sea 1-10, 1-5 o 1-100, la idea es la misma: 1 = terrible, el número más alto = excelente . Incluso en este caso, tengo dos categorías (resistentes a la decoloración frente a sensibles a la decoloración) o, a veces, tres (las dos primeras + "intermedio"). Podría experimentar recodificándolos como 1, 50 y 100 para susceptible, intermedio y resistente, respectivamente, y ver qué tipo de resultados obtengo. Creo que cuantas más muestras obtenga y analice, más sentido tiene que mi Y sea una variable continua. Con 20 muestras con las que estoy jugando ahora, no tengo suficientes datos para ir más allá de 2-3 contenedores esencialmente. Pero será interesante ver si mis modelos se ven muy diferentes cuando recodifico mis clasificaciones categóricas en una variable continua. Seguramente haría que la construcción de modelos fuera más fluida. Y en realidad, en la naturaleza NO será tan simple como "sano" versus "enfermo"; SÍ espero recoger un gradiente que abarque un espectro de salud como el que vería en los humanos (por ejemplo, lo que ve en el conjunto de datos de diabetes de JMP). Sin embargo, lo divertido de este ejercicio, con respecto a la puntuación de probabilidad, es que nunca los miré mucho; Fui directamente a la "suposición" de JMP. Pero ahora mirar las probabilidades reales es súper interesante porque eso es en última instancia lo que quiero informar: el coral A tiene un 95 % de probabilidad de blanquearse. Entonces, a través de este ejercicio de promedio del modelo, ¡accidentalmente capté algunos matices geniales que antes me había perdido por completo! Y como dije antes, incluso si estoy "atascado" con respuestas categóricas por el momento, la función de promedio de modelo de Formula Depot funciona bien para esto.
Le alegrará saber que, gracias a su GUI, hay más de 20 000 modelos de redes neuronales (21 450, ¡¿pero quién los cuenta?!) en mi artículo enviado recientemente (que describe esencialmente la fase 1 = el experimento de laboratorio). Obviamente, solo un puñado pasó todo el control de calidad, y aún menos se discuten extensamente en el texto, pero fue extremadamente útil ver qué parámetros NN son esencialmente más importantes para mí para ajustar. Además, quiero construir el modelo más simple (potencialmente) más parsimonioso, de modo que si un NN tiene dos capas ocultas, cada una con tres nodos de activación, mientras que un segundo modelo tiene una capa con NTANH(3), siendo todo lo demás igual, Elegiría el último, aunque supongo que esto no es realmente crítico ya que incluso el más simple es bastante complejo. Una cosa que busqué aprender este año en Discovery, lo cual hice gracias a Chris Gotwalt, es si las métricas de importancia variable en NN Profiler se pueden usar para decirle esencialmente qué analitos fueron los más influyentes en el modelo. La regla anterior era que los NN son una caja negra, y es demasiado complicado saber qué variables de respuesta eran las más importantes, pero me alegra ver que esto no es del todo cierto. ¿Son difíciles de interpretar? Si. ¿Puedes decir que el comportamiento de una proteína escala de una manera particular y fácil de definir con el poder predictivo del modelo? Tal vez no. Pero si un biólogo molecular me preguntara: "¿Qué proteínas de coral fueron las más importantes en su mejor modelo de NN?", al menos podría enumerar algunas de las características de importancia variable del perfilador de NN. En realidad, esta es la razón por la que elegí discutir el modelo gen-reg en mi charla; No estaba seguro de poder "confiar" en el generador de perfiles para un NN (!), pero ahora veo que puedo. Pero de todos modos, esta es la razón por la cual, como novata en modelaje, me beneficio tanto de este tipo de simposios. Gracias de nuevo por su bien pensada respuesta y toda su ayuda en general.