Vocero
|
Transcripción
|
| Mia Stephens |
cribado de modelos. |
| |
Si trabaja con el modelado predictivo, encontrará que la selección de modelos lo ayuda a optimizar su flujo de trabajo de modelado predictivo. |
| |
Entonces, en esta charla, proporcionaré una descripción general del modelado predictivo, hablaré sobre los diferentes tipos de modelos predictivos que podemos usar en JMP. |
| |
Hablaremos sobre el flujo de trabajo de modelado predictivo dentro del flujo de trabajo de análisis más amplio y veremos cómo la selección de modelos puede ayudarnos a optimizar este flujo de trabajo. |
| |
Hablaré sobre algunas métricas para comparar modelos de la competencia utilizando datos de validación y veremos un par de ejemplos en JMP Pro. |
| |
Primero, hablemos un poco sobre el modelado predictivo y qué es el modelado predictivo. |
| |
Probablemente ha estado expuesto al análisis de regresión, y la regresión es un ejemplo de modelado explicativo. Y en la regresión normalmente nos interesa construir un modelo |
| |
para una respuesta, o Y, en función de una o más X, y podríamos tener diferentes objetivos de modelado. Podríamos estar interesados en identificar variables importantes. Entonces, ¿cuáles son las X clave, o las variables de entrada clave, |
| |
por ejemplo, en un entorno de resolución de problemas en el que podríamos centrarnos para abordar el problema? |
| |
Podríamos estar interesados en comprender cómo cambia la respuesta, en promedio, en función de las variables de entrada. |
| |
un cambio de una unidad en X está asociado con un cambio de cinco unidades en Y. Entonces, este es un modelo explicativo clásico y, si ha tomado estadísticas en la escuela, probablemente así es como aprende sobre la regresión. |
| |
Ahora, para contrastar, el modelado predictivo tiene un objetivo ligeramente diferente. En el modelado predictivo, nuestro objetivo es predecir o clasificar con precisión los resultados futuros. |
| |
Entonces, si nuestra respuesta es continua, queremos poder predecir la próxima observación, el próximo resultado, con la mayor precisión o precisión posible. |
| |
Y si nuestra respuesta es categórica, entonces nos interesa la clasificación. Y de nuevo estamos interesados en usar datos actuales para predecir lo que sucederá a nivel individual en el futuro. |
| |
Y podríamos ajustar y comparar muchos modelos diferentes, y en el modelado predictivo también podríamos usar algunos modelos más avanzados. Podríamos usar algunas técnicas de aprendizaje automático como redes neuronales. |
| |
Y algunos de estos modelos pueden no ser tan fáciles de interpretar y muchos de ellos tienen muchos parámetros de ajuste diferentes que podemos configurar. Y como resultado, con el modelado predictivo podemos tener un problema con el sobreajuste. |
| |
Lo que significa sobreajuste es que ajustamos un modelo que es más complejo de lo que debe ser. |
| |
Entonces, con el modelado predictivo, generalmente usamos la validación y hay varias formas diferentes de validación que podemos usar. |
| |
Utilizamos la validación para la comparación y selección de modelos y, fundamentalmente, protege contra el ajuste excesivo pero también contra el ajuste insuficiente. |
| |
Y underfitting es cuando ajustamos un modelo que no es tan complejo como debe ser. Realmente no está capturando la estructura en nuestros datos. |
| |
Ahora, en el apéndice al final de las diapositivas, saqué algunas diapositivas que ilustran por qué la validación es importante, pero para el enfoque de esta charla simplemente usaré la validación cuando ajuste modelos predictivos. |
| |
Hay muchos tipos diferentes de modelos que podemos incluir en JMP Pro, y esta no es una lista exhaustiva. |
| |
Podemos ajustar varios tipos diferentes de modelos de regresión. Si tenemos una respuesta continua, podemos ajustar un modelo de regresión lineal. |
| |
Si nuestra respuesta es categórica, un modelo de regresión logística, pero también podemos ajustar modelos lineales generalizados y penalizar métodos de regresión, y todos estos son de la plataforma de modelo de ajuste. |
| |
Hay muchas opciones en la plataforma de modelado predictivo, por lo que las redes neuronales, las redes neuronales con refuerzo y diferentes números de capas y nodos, |
| |
árboles de clasificación y regresión, y métodos basados en árboles más avanzados, y varias otras técnicas. |
| |
Y también hay un par de opciones de modelado predictivo de la plataforma de métodos multivariados, por lo que el análisis discrimina |
| |
y los mínimos cuadrados parciales son dos diferentes... dos tipos adicionales de modelos que podemos usar para el modelado predictivo. Y, por cierto, los mínimos cuadrados parciales también están disponibles en el modelo de ajuste. |
| |
¿Y por qué tenemos tantos modelos? |
| |
En el modelado predictivo, a menudo encontrará que ningún modelo |
| |
o tipo de modelado siempre funciona mejor. En ciertas situaciones, una red neuronal puede ser mejor y las redes neuronales generalmente tienen un desempeño bastante bueno. |
| |
Pero es posible que en otros casos descubra que un modelo más simple en realidad funciona mejor, por lo que el tipo de modelo que se ajusta mejor a sus datos y predice con mayor precisión se basa en gran medida en su respuesta, pero también en la estructura de sus datos. |
| |
Por lo tanto, puede ajustar varios tipos diferentes de modelos y comparar estos modelos antes de encontrar el modelo que se ajusta con mayor precisión o predice con mayor precisión. |
| |
Entonces, dentro del flujo de trabajo analítico más amplio, donde comienza con algún tipo de problema que está tratando de resolver, y compila datos, prepara los datos y explora los datos, |
| |
el modelado predictivo está inactivo en analizar y construir modelos. Y el flujo de trabajo de modelado predictivo típico podría verse así, donde ajusta un modelo con validación. |
| |
Luego guarda esa fórmula en una tabla de datos o la publica en el almacén de fórmulas. |
| |
Y luego ajusta otro modelo y repite esto, por lo que puede ajustar varios modelos diferentes |
| |
y luego comparar estos modelos. Y en JMP Pro, puede usar la plataforma de comparación de modelos para hacer esto, y compara el rendimiento de los modelos en los datos de validación, y luego elige el mejor modelo o la mejor combinación de modelos y luego implementa el modelo. |
| |
Y lo que es diferente con la selección de modelos es que todo el ajuste y la comparación de modelos, esta selección se realiza dentro de una plataforma, la plataforma de selección de modelos. |
| |
Así que vamos a usar un ejemplo con el que quizás esté familiarizado, y hay un blog sobre el modelo de evaluación que usa estos datos que se publica en la Comunidad, y estos son los datos de la diabetes. |
| |
Entonces, el escenario es que los investigadores quieren predecir la tasa de progresión de la enfermedad, un año después de la línea de base. |
| |
Así que hay varias medidas de referencia y luego hay dos tipos diferentes de respuestas. |
| |
La respuesta Y es la medida cuantitativa, una medida continua, por lo que esta es la tasa de progresión de la enfermedad y luego hay una segunda respuesta, Y Binaria, que es alta o baja. |
| |
Entonces Y Binary puede representar una alta tasa de progresión alta o una baja tasa de progresión. |
| |
Y el objetivo del modelo predictivo aquí es predecir los pacientes que tienen más probabilidades de tener una alta tasa de progresión de la enfermedad, de modo que se puedan tomar las medidas correctivas. |
| |
Para prevenir esto. Así que vamos a... vamos a echar un vistazo a los modelos de ajuste en JMP Pro para estas dos respuestas, y veremos cómo ajustar los mismos modelos usando la selección de modelos. |
| |
Y antes de ir a JMP, solo quiero hablar un poco sobre cómo comparamos los modelos predictivos. |
| |
Comparamos modelos predictivos en el conjunto de validación o conjunto de prueba. Básicamente, lo que estamos haciendo es ajustar un modelo a un subconjunto de nuestros datos llamados datos de entrenamiento. |
| |
Y luego ajustamos ese modelo a los datos que se mantuvieron (por lo general, los llamamos datos de validación) para ver qué tan bien funciona el modelo. |
| |
Y si tenemos respuestas continuas, podemos usar medidas de error, por lo que la raíz significa error cuadrático (RMSE) o RASE, que es el error cuadrático promedio de la ruta, por lo que esta es la medida del error de predicción. |
| |
AAE, MAD, MAE, estas son medidas de error promedio y hay diferentes medidas R cuadradas que podríamos usar. |
| |
Para obtener respuestas categóricas, a menudo nos interesan las medidas de error o clasificación errónea. |
| |
También podríamos estar interesados en observar una curva ROC, observar el AUC (área bajo la curva) o la sensibilidad, o la especificidad, los falsos positivos, la tasa de falsos negativos. |
| |
el F1-Score y MCC, que es el coeficiente de correlación de Matthews. |
| |
Así que permítanme cambiar a JMP. |
| |
Guarde eso y abriré los datos de diabetes. |
| |
Y déjame hacer esto grande para que puedas verlo. |
| |
Así que estos son los datos. Hay... hay información sobre 442 pacientes, y nuevamente, tenemos una respuesta Y, que es continua y esta es la cantidad de progresión de la enfermedad después de un año. Y comenzaremos mirando Y, pero luego también tenemos la segunda variable, Y Binary. |
| |
Tenemos información de referencia. |
| |
Y hay una columna de validación. Entonces, de nuevo, validación, cuando ajustemos modelos, ajustaremos los modelos solo usando los datos de entrenamiento y usaremos los datos de validación para decirnos cuándo dejar de crecer el modelo y darnos medidas de qué tan bueno es el modelo realmente encaja. |
| |
Ahora, para construir esta columna, hay una utilidad bajo el modelado predictivo llamada columna de validación del modelo. |
| |
Y esto nos brinda muchas opciones para crear una columna de validación, de modo que podamos dividir sus datos en validación de entrenamiento y un conjunto de prueba. |
| |
Y, en la mayoría de los casos, si usamos este tipo de técnica de dividir nuestros datos en subconjuntos, |
| |
Se recomienda tener un equipo de prueba. Tener un conjunto de prueba le permite tener una evaluación del rendimiento del modelo en datos que no se usaron para construir los modelos o para detener el crecimiento del modelo, por lo que lo recomiendo, aunque no tenemos un conjunto de prueba en este caso. |
| |
Así que digamos que quiero... Quiero encontrar un modelo que prediga la respuesta con mayor precisión. Entonces, como viste, hay muchos modelos diferentes para elegir. |
| |
Comenzaré con el modelo de ajuste. |
| |
Y este suele ser un buen punto de partida. |
| |
Así que voy a construir un modelo de regresión con Y como nuestra respuesta, las X como efectos del modelo, y solo pondré los efectos principales en este punto. Y voy a agregar una columna de validación. |
| |
Ahora, desde el modelo de ajuste, el valor predeterminado aquí será mínimos cuadrados estándar, pero hay muchos tipos diferentes de modelos que podemos ajustar. |
| |
Simplemente voy a ejecutar el modelo de mínimos cuadrados. |
| |
Un par de cosas para señalar aquí. Observe el marcador aquí, V. |
| |
Recuerde que ajustamos nuestro modelo a los datos de entrenamiento, pero también queremos ver qué tan bien se desempeña el modelo en los datos de validación, por lo que todos estos marcadores con una V son observaciones en el conjunto de validación. |
| |
Debido a que tenemos validación, aquí hay una sección de validación cruzada, por lo que podemos ver R cuadrado en el conjunto de entrenamiento y también en el conjunto de validación y luego RASE. |
| |
Y a menudo, lo que verá es que las estadísticas de validación serán algo peores que las estadísticas de entrenamiento, y cuanto más alejadas estén, mejor indicación de que su modelo está sobreajustado o no. |
| |
Quiero señalar otra cosa aquí que realmente está más allá del alcance de esta charla, y es este generador de perfiles de predicción. |
| |
Y el generador de perfiles de predicción |
| |
es en realidad una de las razones por las que comencé a usar JMP. Es una forma realmente poderosa de entender su modelo. |
| |
Entonces, puedo cambiar los valores de cualquier X y ver qué sucede con la respuesta predicha, y este es el promedio, así que con |
| |
estos modelos, estamos prediciendo el promedio. Pero observe cómo estas bandas se abren en abanico para el colesterol total y LDL, HDL, ¿verdad? Y esto se debe a que no tenemos ningún dato en esas regiones. |
| |
Entonces, la nueva característica, quiero señalar muy rápidamente y nuevamente esto está más allá del alcance de esta charla, es esta cosa llamada control de extrapolación. Y si enciendo una advertencia y arrastro |
| |
colesterol total, fíjate que me dice que hay una posible extrapolación. Esto me dice que estoy tratando de predecir en una región donde realmente no tengo ningún dato, y si giro |
| |
este control de extrapolación activado, observe que trunca esta barra, esta línea, así que básicamente dice que no puede hacer predicciones en esa región. Por lo tanto, es algo que tal vez desee verificar si está ajustando modelos. Es una herramienta realmente poderosa. |
| |
Así que digamos que he hecho todo el trabajo de diagnóstico. He reducido este modelo y quiero poder guardar mis resultados. |
| |
Bueno, hay un par de maneras de hacer esto. Puedo ir a la columna roja, guardar columnas, guardar la fórmula de predicción. |
| |
Así que esto guarda el modelo lineal que acabo de construir en la tabla de datos. Así que puedes verlo aquí en el fondo. Y luego, si agrego nuevos valores a esta tabla de datos, predecirá automáticamente la respuesta. |
| |
Pero podría querer guardar el modelo en otra forma, así que para hacer esto, podría publicar |
| |
esta fórmula al depósito de fórmulas. Y el almacén de fórmulas es en realidad independiente de mi tabla de datos, pero lo que esto me permite hacer es copiar el script y pegarlo en otra tabla de datos con nuevos datos para obtener nuevos datos. |
| |
O podría querer generar código en un idioma diferente que me permita implementar esto dentro de algún tipo de sistema de producción. |
| |
Voy a seguir adelante y cerrar esto. Este es solo un modelo. Ahora bien, ¿es posible que, si coloco un modelo más complicado o sofisticado, obtenga un mejor rendimiento? |
| |
Así que podría encajar otro modelo. Así que, por ejemplo, yo podría... Voy a presionar recordar. Podría cambiar la personalidad de los mínimos cuadrados estándar para generalizar la regresión. |
| |
Y esto me permite especificar diferentes distribuciones de respuesta. Y me quedaré con lo normal y haré clic en ejecutar. |
| |
Esto me permitirá ajustar diferentes métodos penalizados y también usar diferentes técnicas de selección de variables. Y si no ha comprobado la regresión generalizada, |
| |
es una plataforma de modelado moderna súper poderosa y súper flexible. Solo voy a hacer clic en ir. Y digamos que encajo en este modelo |
| |
y quiero poder comparar este modelo con el modelo que ya guardé. Así que podría guardar la fórmula de predicción en la tabla de datos. Así que ahora tengo otra columna en segundo plano en la tabla de datos. |
| |
O podría volver a querer publicar esto |
| |
a |
| |
el detalle de la fórmula, así que ahora tengo dos modelos diferentes aquí. Y puedo seguir. Entonces, este es solo un modelo de regresión generalizada. También puedo encajar varios tipos diferentes de |
| |
modelos predictivos del menú de modelado predictivo, por ejemplo, redes neuronales o partición o bosque de arranque o árboles potenciados. |
| |
Ahora, normalmente lo que tendría que hacer es ajustar todos estos modelos, guardar los resultados en la tabla de datos o en el almacén de fórmulas, y si los guardo en |
| |
la tabla de datos, puedo usar esta plataforma de comparación de modelos para comparar los diferentes modelos de la competencia. Y puede que tenga muchos modelos, aquí solo tengo dos. |
| |
Y en realidad ni siquiera tengo que especificar cuáles son los modelos, solo necesito especificar la validación. Y en realidad me gusta poner la validación aquí en el campo por. |
| |
Así que esto me da mis estadísticas de ajuste tanto para el conjunto de entrenamiento como para el conjunto de validación, y solo miraré las estadísticas para el paso de validación. Así que usaría esto para ayudarme a elegir el modelo con mejor rendimiento. |
| |
Y lo que me interesa es un valor más alto de R cuadrado, un valor más bajo de RASE (el error cuadrático promedio de la raíz) y un error absoluto promedio más bajo. Y entre estos dos modelos, parece que este modelo de regresión de mínimos cuadrados ajustados es el mejor. |
| |
Ahora, si tuviera que encajar todos los modelos posibles, esto puede... esto puede llevar mucho tiempo. Entonces, en lugar de hacer esto, lo nuevo en JMP Pro 16 es una plataforma llamada selección de modelos. |
| |
Y cuando lanzo la selección de modelos, tiene un diálogo en la parte superior, tal como lo hemos visto, así que continuaré y lo completaré. |
| |
Y agregaré una validación, pero al costado, lo que ven es que puedo seleccionar varios modelos diferentes y ajustar estos modelos diferentes al mismo tiempo. |
| |
Entonces, árbol de decisión, bosque de arranque, árbol potenciado, K vecinos más cercanos, a la derecha, puedo ajustar todos estos modelos. |
| |
Y no ejecutará modelos que no tengan sentido, así que tengo una regresión logística de respuesta continua como una de mis opciones, no ejecutará un modelo de regresión logística |
| |
con una respuesta continua. Tenga en cuenta que también tengo esta opción aquí abajo, XGBoost. |
| |
Y la razón por la que aparece es que hay un complemento y en realidad usa bibliotecas de código abierto, y si instala este complemento (está disponible en nuestra comunidad de usuarios de JMP, |
| |
se llama XGBoost y solo funciona en JMP Pro), pero si instala este complemento, aparecerá automáticamente en el diálogo de evaluación del modelo. |
| |
Así que voy a hacer clic en Aceptar, y cuando haga clic en Aceptar, lo que va a hacer es salir y lanzar cada una de estas plataformas. |
| |
Y luego va a sacar todos los resultados en una sola ventana. Así que hice clic en Aceptar. No tengo muchos datos aquí, así que es muy rápido. |
| |
Y debajo de los detalles, estos son todos los modelos individuales que encajaron. Y si abro cualquiera de estos diálogos, puedo ver los resultados y tengo acceso a opciones adicionales que estarán disponibles en ese menú. |
| |
Así que voy a esconder los detalles. Y de forma predeterminada, lo que hace es informar las estadísticas de los datos de entrenamiento, pero me muestra los resultados de los datos de validación, así que puedo ver R cuadrado y puedo ver RASE. |
| |
Y por defecto está ordenando en orden de RASE donde el más bajo es el mejor. |
| |
Pero tengo algunas pequeñas opciones de acceso directo aquí abajo, así que si quisiera encontrar los mejores modelos y podría ser que R cuadrado sea mejor para algunos modelos, pero RASE es mejor para otros, haré clic en seleccionar dominante . |
| |
Y este caso, seleccionó el impulso neuronal, por lo que en todos estos modelos, el mejor modelo es el impulso neuronal. Y si quiero echar un vistazo más de cerca a este modelo, puedo ver los detalles aquí en neural |
| |
o, simplemente puedo decir, ejecutar seleccionado. |
| |
Ahora no hablé de esto, pero en la ventana de diálogo hay una opción para establecer una semilla aleatoria. |
| |
Y si configuro esa semilla aleatoria, los resultados que se lanzan aquí serán idénticos a los que veo aquí. Así que esto es un... esto es un |
| |
modelo neuronal con tres nodos que usa la función TanH, pero también usa impulso. Entonces, al diseñar esta plataforma, los desarrolladores realizaron muchas simulaciones para determinar el mejor punto de partida y la mejor configuración predeterminada para los diferentes modelos. |
| |
Entonces, el refuerzo neuronal es lo mejor. |
| |
Y |
| |
si quiero poder implementar este modelo, ahora lo que puedo hacer es guardar el script |
| |
o puedo ejecutarlo, o puedo guardarlo en la fórmula más profunda. |
| |
Esto es con una respuesta continua y hay otras opciones debajo del triángulo rojo. ¿Qué pasa si tengo una respuesta categórica? Para una respuesta categórica, puedo usar la misma plataforma. Entonces, de nuevo, iré a la selección de modelos. |
| |
Haré clic en recordar, pero en lugar de usar Y, usaré Y Binary. |
| |
Y no voy a cambiar ninguno de los métodos predeterminados. Pondré una semilla aleatoria, por ejemplo, 12345, solo estoy tomando un número aleatorio. |
| |
Y lo que esto hará es darme repetibilidad. Entonces, si guardo cualquier modelo en la tabla de datos o en el almacén de fórmulas, |
| |
las estadísticas serán las mismas en el modelo, el ajuste será el mismo. Algunas otras opciones aquí. Es posible que queramos desactivar algunas cosas como los informes. |
| |
Es posible que deseemos usar un método de validación cruzada diferente, por lo que esta plataforma incluye la validación cruzada K, pero también usa la validación cruzada anidada. |
| |
Y podemos repetir esto. Así que muy agradable. A veces, dividir nuestros datos en validación de entrenamiento y prueba no es lo mejor y K fold |
| |
en realidad puede ser un poco mejor. Y hay algunas opciones adicionales en la parte inferior. Así que podríamos querer agregar interacciones de dos vías. Podríamos querer agregar efectos cuadráticos. |
| |
Bajo métodos adicionales, esto se ajustará a métodos de regresión generalizados adicionales. Así que voy a seguir adelante y hacer clic en Aceptar. |
| |
DE ACUERDO. Ejecuta todos los modelos y, de nuevo, este es un pequeño conjunto de datos. es muy rápido |
| |
Correcto, la apariencia es la misma, pero ahora las estadísticas son diferentes. Así que tengo la tasa de clasificación errónea. Tengo un área bajo la curva. También tengo algunas medidas R cuadradas y luego el error cuadrático promedio de la raíz. |
| |
Voy a hacer clic en seleccionar dominante y, de nuevo, el método dominante es potenciado neuronal. |
| |
Ahora, ¿qué pasa si quiero poder explorar algunos de estos diferentes modelos? Así que la clasificación errónea aquí es bastante más baja que la clasificación paso a paso. |
| |
El AUC es algo similar, es el más bajo en general, pero quizás no mucho mejor. Y déjame tomar algunos de estos. Entonces, si hago clic en algunos de estos, tal vez... tal vez seleccione estos cuatro, estos cinco. |
| |
Puedo mirar las curvas ROC, si estoy interesado en mirar las curvas ROC para comparar los modelos. |
| |
Y hay algunos buenos controles aquí que me permiten apagar modelos y enfocarme en ciertos modelos. |
| |
Y una nueva característica que me entusiasma mucho es esto llamado umbral de decisión. |
| |
Y lo que el umbral de decisión nos permite mirar, |
| |
y comienza mirando los datos de entrenamiento, es decir, nos está dando una instantánea de nuestros datos. |
| |
Y la tasa de clasificación errónea se basa en un límite de 0,5 para la clasificación. Entonces, para cada uno de los modelos, me muestra los puntos que en realidad eran altos y bajos. Y si nos enfocamos en lo alto, los puntos verdes se clasificaron correctamente como alto. |
| |
Y los que están en el área roja estaban mal clasificados, por lo que nos muestra clasificaciones correctas y clasificaciones incorrectas, y luego informa todas las estadísticas aquí al costado. |
| |
Y luego, debajo, vemos varias métricas diferentes además de muchos gráficos que nos permiten ver clasificaciones falsas y también clasificaciones verdaderas. |
| |
Voy a cerrar esto y mirar el |
| |
datos de validación. |
| |
Entonces, ¿por qué es esto útil? Bueno, es posible que tenga un escenario particular en el que esté interesado en maximizar la sensibilidad |
| |
manteniendo una cierta especificidad. Y sensibilidad... y hay algunas definiciones aquí. La sensibilidad es la verdadera tasa positiva; |
| |
la especificidad es la verdadera tasa negativa. Este es un... este es un escenario en el que queremos observar la progresión de la enfermedad, por lo que queremos asegurarnos de que estamos... mantenemos una alta tasa de sensibilidad. |
| |
al mismo tiempo que nos aseguramos de que nuestra especificidad sea alta, está bien. Entonces, lo que podemos hacer con esto es que hay un control deslizante aquí, y podemos agarrar este control deslizante, |
| |
y podemos ver cómo cambian las clasificaciones a medida que cambiamos el límite de clasificación. |
| |
Así que creo que esta es una herramienta realmente poderosa cuando buscas modelos de la competencia, porque es posible que tengas algunos modelos que tengan un límite general de 0,5, es posible que tengan la mejor tasa de clasificación errónea. |
| |
Pero también puede tener escenarios en los que, si cambia el corte de clasificación, diferentes modelos pueden funcionar de manera diferente. Entonces, por ejemplo, si estoy en una determinada región aquí, podría encontrar que el modelo paso a paso es realmente mejor. |
| |
Ahora, para ilustrar mejor esto, quiero abrir un ejemplo diferente. |
| |
Y este ejemplo se llama marketing de tarjetas de crédito. |
| |
Y si vuelvo a mis diapositivas solo para presentar este escenario. |
| |
Este es un escenario donde |
| |
tenemos muchos datos basados en estudios de mercado sobre la aceptación de ofertas de tarjetas de crédito. |
| |
La respuesta es si se aceptó la oferta. Y este es un escenario en el que solo el 5,5% de las ofertas en el estudio fueron realmente aceptadas. |
| |
Ahora bien, hay factores que nos interesan, por lo que se ofrecen diferentes tipos de recompensas, |
| |
y hay diferentes tipos de anuncios publicitarios. Así que esto es en realidad un experimento diseñado. Vamos a, en cierto modo, realmente, ignorar esa parte... ese aspecto de este estudio. |
| |
Y también hay información financiera, así que nos apegaremos a un objetivo en este ejemplo, y ese es el objetivo de identificar a los clientes que tienen más probabilidades de aceptar la oferta. |
| |
Y si podemos identificar a los clientes que son más probables, en este escenario podríamos enviar ofertas solo al subconjunto que es más probable que acepte la oferta e ignorar al resto. Así que ese es el escenario aquí. |
| |
Y voy a abrir estos datos. |
| |
Tengo 10.000 observaciones y mi respuesta es oferta aceptada. |
| |
Y ya guardé el guión en la tabla de datos, así que tengo millas aéreas, tipo de correo, nivel de ingresos, calificación crediticia y algunas otras piezas de información financiera. |
| |
Está pasando... Ejecuté un script de guardado. Está pasando por ejecutar todos los modelos. Y el neural, en este caso, tomará la mayor parte del tiempo porque está ejecutando un neural potenciado. |
| |
Tardará unos segundos más. Está ejecutando máquinas de vectores de soporte. Las máquinas de vectores de soporte expirarán y en realidad no funcionarán si tengo más de 10,000 observaciones. |
| |
Voy a darle otro segundo. Estoy usando la validación, así que estoy usando la validación estándar para esto, donde tengo una columna de validación. Y en este caso, tengo una columna de ceros y unos y JMP reconocerá los ceros para los datos de entrenamiento y los de los datos de validación. |
| |
Bueno. Ahí vamos. De acuerdo, se ejecutó, y si se trata de una tabla de datos grande, hay un... hay un informe que puede ejecutar |
| |
para ver los tiempos transcurridos. Y para este escenario, la máquina de vectores de soporte en realidad tomó más tiempo, y es por eso que, a veces, no funciona si tenemos más de 10,000 observaciones. |
| |
Así que echemos un vistazo a estos. Así que nuestro mejor modelo, si selecciono dominante, es un árbol de decisión y potenciado neuronal, pero quiero señalar algo aquí. Observe la tasa de clasificación errónea. |
| |
La tasa de clasificación errónea es idéntica para todos los modelos, excepto las máquinas de vectores de soporte. ¿Y por qué es este el caso? Bueno, si ejecuto una distribución de oferta aceptada |
| |
(permítanme hacer esto un poco más grande para que podamos verlo) y solo concéntrese en los datos de validación, observe que el punto .063% de nuestras observaciones fue Sí. Esto es exactamente lo que predijo nuestro modelo. |
| |
¿Y por qué está haciendo esto? |
| |
Voy a volver a pedir el umbral de decisión. |
| |
Y enfocándonos en este gráfico aquí, y este gráfico tiene muchos usos, y en este caso, lo que nos muestra es que nuestro límite para la clasificación es .5 |
| |
pero ninguna de nuestras probabilidades ajustadas estuvo siquiera cerca de eso, ¿verdad? Entonces, como resultado, el modelo clasificó los no correctamente como no |
| |
o clasificar los síes como noes. Nunca clasificó nada como un sí, porque ninguna de las probabilidades fue mayor a .5. Entonces, si estiro a este tipo, |
| |
Bien, puedo ver la diferencia en estos dos modelos. De modo que la probabilidad máxima fue de alrededor de 0,25 para el refuerzo neuronal y para el árbol de decisión fue de alrededor de 0,15. |
| |
Y observe que para el árbol de decisión, el árbol de decisión básicamente está haciendo una serie de divisiones binarias y básicamente tengo varios valores predictivos, mientras que un refuerzo neuronal me muestra un buen patrón aleatorio en los puntos. Así que permítanme cambiar esto a algo como .12. |
| |
Correcto, y se cortó en .12, de hecho, si deslizo esto, observe que cuanto más bajo, en realidad empiezo a obtener (voy a activar las métricas aquí) empiezo a obtener algunos verdaderos positivos. |
| |
Y empiezo a obtener algunos falsos positivos. Mientras arrastro esto, pueden verlo en la barra, pero la barra es un poco pequeña, ¿verdad? Impulsado neuronal, estoy empezando a ver algunos verdaderos positivos y algunos falsos positivos. |
| |
Y ahora empiezas a verlos. Tan pronto como supero este primer conjunto de puntos, empiezo a verlo para el árbol de decisiones. |
| |
Por lo tanto, usar un punto de corte de .5 no tiene sentido para estos datos, y nuevamente podría... podría tratar de encontrar un punto de corte que me proporcione la mayor sensibilidad, manteniendo un nivel de especificidad decente. |
| |
En este caso, voy a señalar estas otras dos estadísticas. |
| |
F1 es el puntaje de F1, y esta es realmente una medida de qué tan bien podemos capturar los verdaderos aspectos positivos. |
| |
MCC es el coeficiente de correlación de Matthews, y esta es una buena medida de qué tan bien clasifica dentro de cada una de las cuatro posibilidades. Así que tengo... |
| |
Puedo tener un falso positivo, un falso negativo, un verdadero positivo, un verdadero negativo. |
| |
Y en realidad no dije eso correspondiente a los recuadros aquí, pero tengo cuatro opciones diferentes. MCC es un coeficiente de correlación que cae entre menos uno y más uno, que mide cómo voy a predecir en cada cuatro... en cada una de esas cuatro casillas. |
| |
Así que podría querer explorar el corte que le da el valor máximo de F1 o el valor máximo de MCC. Y digamos que arrastro de esta manera hacia abajo. Fíjate que |
| |
la sensibilidad está creciendo rápidamente y la especificidad está empezando a disminuir, así que tal vez alrededor de 0,5, cierto, llego a un punto en el que estoy empezando a caer demasiado en la especificidad. |
| |
Podría encontrar un corte y en la parte inferior está esta opción para establecer una matriz de ganancias. Si configuro esto como mi matriz de ganancias, básicamente, lo que sucederá es que me permitirá obtener nuevos datos utilizando este corte. |
| |
Entonces, si configuro esto aquí y presiono OK, correcto, cualquier predicción futura que haga, si guardo esto en la tabla de datos o en el almacén de fórmulas, usará ese corte. |
| |
Y este es un escenario en el que en realidad podría tener alguna información financiera que podría incorporar a la matriz de ganancias. |
| |
Entonces, por ejemplo, en lugar de usar el control deslizante para elegir el límite, tal vez tenga algún conocimiento del valor en dólares asociado con mis clasificaciones. Y tal vez si la respuesta real es un no, |
| |
pero les envío una oferta, entonces hay un sí, creo que van a ser sí y les envío una oferta. Tal vez esto me cueste $ 5, así que tengo un valor negativo allí. |
| |
Y tal vez tengo una idea de la ganancia potencial, entonces tal vez las ganancias... la ganancia potencial durante este período de tiempo es de $100 y tal vez tengo alguna oportunidad perdida. Tal vez digo, ya sabes, es -100 si |
| |
la persona habría respondido, pero yo no le envié la oferta. Así que tal vez esta es una oportunidad perdida y, a veces, dejamos esto en blanco. Ahora, si uso esto en su lugar, |
| |
Tengo información adicional que aparece, por lo que reconoce que tengo una matriz de ganancias. Y ahora, si observo las métricas, puedo tomar decisiones sobre mi mejor modelo en función de esta ganancia. |
| |
Así que estoy aportando esta información adicional a la toma de decisiones y, a veces, tenemos una matriz de ganancias y podemos usarla directamente y, a veces, no. Y este es uno de esos casos en los que puedo ver que el modelo potenciado neuronal me dará las mejores ganancias generales. |
| |
Este es un adelanto de la selección de modelos y déjame volver a mis diapositivas. |
| |
¿Y qué hemos visto aquí? Bueno, hablamos sobre el modelado predictivo. |
| |
y cómo el modelado predictivo tiene un objetivo diferente al modelado explicativo. Entonces, nuestro objetivo aquí es predecir o clasificar con precisión los resultados futuros, por lo que queremos calificar las observaciones futuras. |
| |
Y, por lo general, ajustaremos y compararemos muchos modelos mediante la validación y elegiremos el modelo o la combinación de modelos que hace el mejor trabajo, que predice con mayor precisión. |
| |
La selección de modelos realmente agiliza este flujo de trabajo para que pueda adaptarse a muchos modelos diferentes, al mismo tiempo, con una plataforma. |
| |
Y realmente solo opté por el valor predeterminado, por lo que puedo adaptarme a modelos mucho más sofisticados de los que realmente encajo allí. Hace que sea realmente fácil seleccionar los modelos dominantes, explorar los detalles del modelo. Podemos adaptar nuevos modelos. |
| |
de los detalles Este umbral de decisión, si se trata de datos categóricos, le permite explorar puntos de corte para la clasificación y también integra la capacidad de incluir una matriz de beneficios. |
| |
Y para cualquier modelo seleccionado, podemos implementar el modelo en el depósito de fórmulas o guardarlo en la tabla de datos. Entonces, una nueva herramienta realmente poderosa. |
| |
Para más información. Las métricas de clasificación, sé que antes de ver la puntuación de F1 y el coeficiente de correlación de Matthews, esas estadísticas eran relativamente nuevas para mí. |
| |
Para dar sentido a la sensibilidad y la especificidad, esta publicación de Wikipedia tiene algunos ejemplos muy, muy buenos y una discusión muy agradable. |
| |
También hay algunos recursos realmente buenos para el modelado predictivo y también la detección de modelos. En la comunidad de usuarios de JMP, hay una nueva ruta, Learn JMP, que tiene acceso a videos, |
| |
Masterización de vídeos de la serie JMP. Hubo una charla muy agradable el año pasado en el JMP Discovery en Tucson por parte de Ruth Hummel y Mary Loveless sobre qué modelo y cuándo. |
| |
Y esto hace un buen trabajo al hablar sobre diferentes objetivos de modelado y cuándo es posible que desee utilizar cada uno de los modelos. |
| |
Si es nuevo en el modelado predictivo, nuestro curso en línea gratuito, STIPS, que es Pensamiento estadístico para la resolución de problemas industriales, Módulo 7 es una introducción al modelado predictivo. |
| |
Así que recomendaría esto. Hay un blog de detección de modelos que usa los datos de diabetes que señalaré, y también quiero señalar que hay una segunda edición de este libro, Building Better Models with JMP Pro, |
| |
eso saldrá en los próximos dos meses. Todavía no tienen una nueva portada, pero van a... incluirán una proyección de modelo en ese libro. |
| |
Así que eso es todo lo que tengo. Siéntase libre de publicar comentarios para esta publicación o hacer preguntas, y espero que disfrute el resto de la conferencia. Gracias. |