¿Cómo calculo automáticamente la precisión y la puntuación F1 para modelos con datos desequilibrados?Me gusta que JMP imprima una matriz de confusión y ROC para la regresión logística (generalizada), pero parece que faltan algunas métricas importantes en los resultados: precisión y puntuación F1 .¿Hay alguna manera de incluirlos automáticamente en el resultado? O hacer que se calcule lo más "automáticamente" posible cuando vuelva a ejecutar un nuevo modelo de clasificación.Estoy tratando de evitar volver a calcularlos manualmente con cada nuevo modelo.
ACTUALIZACIÓN: Publique respuestas únicamente a las preguntas. No busco una opinión sobre si debo o no usar Precision y F1. Estoy buscando con confianza una manera de calcularlos automáticamente en JMP. Si no conoce dicha técnica, no hay razón para considerar si es factible o no, ni publicar nada a continuación. Gracias 

Investigación de Consumidores y MercadosExploración y visualización de datosModelado predictivo y aprendizaje automáticoCompartir y comunicar resultadosRe: ¿Cómo calculo automáticamente la precisión y la puntuación F1 para modelos con datos desequilibrados?Gracias Jim. Un ejemplo concreto como este es lo que estaba buscando. Ya volví a Python, pero probaré tu ejemplo de JSL más adelante.
Re: ¿Cómo calculo automáticamente la precisión y la puntuación F1 para modelos con datos desequilibrados?Los ejemplos están disponibles en File Exchange, los ejemplos de secuencias de comandos instalados cuando instala JMP, directamente en el libro Guía de secuencias de comandos, también se instalan cuando instala JMP, etc. Y además de eso, aquí hay una secuencia de comandos de muestra que lee desde una salida y lo muestra en una forma diferente como parte de una salida.
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA\Big Class.jmp" );
// Run the Fit Y by X to get the XY plot
Biv = dt << Bivariate( Y( :height ), X( :weight ) );
// Run the distributions to get the stats
Dis = dt << Distribution( Continuous Distribution( Column( :height ) ), Continuous Distribution( Column( :weight ) ) );
// Extract the stats
heightMean = Report( dis )["Height"]["Summary Statistics"][Number Col Box( 1 )][1];
weightMean = Report( dis )["Weight"]["Summary Statistics"][Number Col Box( 1 )][1];
// Create the new display object
hlb = H List Box(
Text Box( "Mean of Height = " ),
Number Edit Box( heightMean ),
Spacer Box( size( 30, 0 ) ),
Text Box( "Mean of Weight = " ),
Number Edit Box( weightMean )
);
// Add the new object to the plot
Report(Biv)[Outline Box(1)] << Append( hlb );
Dis << close window;
Re: ¿Cómo calculo automáticamente la precisión y la puntuación F1 para modelos con datos desequilibrados?Kevin, gracias por el ejemplo.
No tengo problemas para ejecutar un modelo y calcular las puntuaciones de F1 y Precisión a mano. Pero, ¿hay algún ejemplo para calcularlos automáticamente en JMP (que es lo que pregunté originalmente)?
Mientras tanto, codifiqué estos Python, lo que me llevó menos tiempo que publicar una pregunta. Si alguien proporciona una respuesta en el futuro, con gusto lo intentaré de nuevo.
Re: ¿Cómo calculo automáticamente la precisión y la puntuación F1 para modelos con datos desequilibrados?¡Hola Oleg!
No creo haber leído mal tu pregunta original... pero esa es sólo mi opinión...
Aquí tienes un ejemplo para que pruebes:
Tome Big Class.jmp. Realice algunos análisis de redes neuronales ridículamente sobreajustados con el sexo como respuesta y la edad, la altura y el peso como factores. Considere a la mujer como el caso positivo. 
Tengo una tabla de contingencia que se ve así:

Elija Convertir en tabla de datos.
TP= 16. FP=2. FN=2.
F1 se puede calcular mediante 2*TP/(2*TP+FP+FN). Obtengo F1=0,89.
Esto es muy fácil de programar (en mi opinión
, e incluso puedes incluir automáticamente esta métrica (y cualquier otra) en cualquiera de tus resultados con un script. Inténtalo e intentaré ayudarte a conseguirlo si fallas.
Buena suerte.
Re: ¿Cómo calculo automáticamente la precisión y la puntuación F1 para modelos con datos desequilibrados?Hola Kevin. 
Si este hilo de "Discusión" se parece en algo a StackOverflow, entonces esperaría respuestas claras a preguntas claras. Si me equivoco, no dudes en guiarme hacia las pautas para publicar en debates. Puedo leer las opiniones de otras personas en los periódicos. Sin embargo, en el contexto de la ciencia y con el espíritu de "hazlo", las respuestas claras y concisas tienen un valor añadido.
Por cierto, ¿acabas de admitir que recibí opiniones sobre mi pregunta? JAJAJA.
De todos modos, sería más eficaz buscar su ayuda en este caso.
¿Ha encontrado algún ejemplo de JSL que me ayude a programar F1 y Precision y, preferiblemente, agregarlo a la página de salida de regresión?
¡Salud!
o.
Re: ¿Cómo calculo automáticamente la precisión y la puntuación F1 para modelos con datos desequilibrados?¡Hola Oleg!
Quizás sea un desconocimiento del idioma, pero la palabra Discusiones (el nombre de este sitio en la Comunidad) significa mucho más que solo preguntas y respuestas. Con razón puede incluir opiniones, amonestaciones, súplicas, peroratas y muchas otras formas de diálogo, independientemente de sus deseos.
Una de las muchas cosas que me encantan de las estadísticas (¡y de JMP!) es que el trabajo realmente genial e inventivo parece ocurrir en la interfaz entre la ciencia de las aplicaciones y el arte. ¿Ver? Mi opinión.
Re: ¿Cómo calculo automáticamente la precisión y la puntuación F1 para modelos con datos desequilibrados?Kevin, es posible que hayas leído mal mi pregunta original. estaba esperando un cálculo incorporado tanto de F1 como de precisión.JSL es una alternativa razonable.
¿Tienes un ejemplo que pueda seguir?
Re: ¿Cómo calculo automáticamente la precisión y la puntuación F1 para modelos con datos desequilibrados?Gracias Jim.
1. Estoy de acuerdo
2. El soporte solicita utilizar el grupo de discusión, que es lo que estoy intentando.
3. Claro, JSL es una buena dirección. Esperaba que alguien ya lo hubiera implementado y pudiera dar un ejemplo.
Re: ¿Cómo calculo automáticamente la precisión y la puntuación F1 para modelos con datos desequilibrados?Hola Kevin. Aprecio la ayuda de Jim, lo felicité y acepté sus soluciones siempre que fue apropiado. Sin embargo, no debo estar de acuerdo con él en todos los puntos. En este hilo, espero respuestas a las preguntas formuladas, no opiniones sobre lo que está de moda en el mundo del ML.
Re: ¿Cómo calculo automáticamente la precisión y la puntuación F1 para modelos con datos desequilibrados?¡Hola Oleg!
Aquí está el panorama general: Jim Nelson ha resuelto muchos, muchos problemas en esta comunidad. Por favor, no fuerces tus opiniones sobre él.
Y esta es mi opinión: puedes obtener más ayuda con tu scripting si actúas como si lo hubieras intentado y pides ayuda con un poco menos de arrogancia. 
Re: ¿Cómo calculo automáticamente la precisión y la puntuación F1 para modelos con datos desequilibrados?Jim, así es como se desarrolla una discusión generando "buenas razones" para agregar nuevas funciones a JMP.
Re: ¿Cómo calculo automáticamente la precisión y la puntuación F1 para modelos con datos desequilibrados?Mi respuesta anterior pretendía ser mucho más simple de lo que parece haberla interpretado.
1. JMP no es perfecto, pero es bastante bueno y los desarrolladores realmente se mantienen al día con las áreas en las que están trabajando y, por lo tanto, lo que presentan merece una buena mirada.
2. La mejor manera de asegurarse de que su solicitud de mejora haya llegado a JMP es enviarla a
soporte@jmp.com
3. La solicitud de F1 ya se trató en una sección de discusión reciente, por lo que supongo que no hay ningún usuario con una solución preparada.Por lo tanto, le animo a que todavía se pueda hacer en JMP, donde se puede codificar la solución utilizando JSL.
Re: ¿Cómo calculo automáticamente la precisión y la puntuación F1 para modelos con datos desequilibrados?Hola Kevin, gracias por la respuesta. No entiendo cómo la preferencia de otros por el uso de la puntuación F1 afectará mi necesidad en esta discusión.
Todas y cada una de las métricas tienen un sesgo.Hay miles de publicaciones (más recientes) elogiando el valor de F1 y la métrica de precisión.
En resumen, en esta discusión busco ayuda para la computación automática de F1 y puntuaciones de precisión. Sí, se puede programar; y agradecería mucho la ayuda de alguien que ya lo haya implementado, para que no se reinvente esta rueda.
De hecho, ya uso ROC, pero también necesito F1 y precisión. Como mínimo, la respuesta (cuando se descubra) a la pregunta que hice ayudará a otros a calcular automáticamente no solo F1 o puntuación de precisión, sino cualquier métrica. Por favor, tenga en cuenta el panorama general 
Re: ¿Cómo calculo automáticamente la precisión y la puntuación F1 para modelos con datos desequilibrados?Hola Jim, tu respuesta implica que JMP es perfecto y contiene justo lo que necesita (por una buena razón). Es decir, cualquier cosa que falte en JMP no tiene una buena razón para estar en JMP. Una afirmación interesante
Las discusiones mismas generan muchas "buenas razones" para las nuevas características de JMP. Se publicó una pregunta sobre F1 (no precisión) y aún sigue sin respuesta; sin embargo, estas medidas se discuten y utilizan ampliamente en publicaciones científicas.
Me gusta tu sugerencia de enviar un correo electrónico al soporte, pero te piden iniciar una discusión. Mi esperanza es que la comunidad proporcione la respuesta, aunque no de inmediato.
Si cree que mi pregunta se puede mejorar, agradezco sus sugerencias.
Re: ¿Cómo calculo automáticamente la precisión y la puntuación F1 para modelos con datos desequilibrados?¡Hola Oleg!
Las puntuaciones F1 (y otras medidas populares "importantes" de precisión) han quedado obsoletas en algunos rincones de la comunidad de aprendizaje automático por su desempeño bajo sesgo. Consulte el archivo adjunto, que sugiere la utilidad de las curvas operativas del receptor y algunas otras medidas.
Y como señala Jim, puedes escribir lo que tu corazón desee.
Re: ¿Cómo calculo automáticamente la precisión y la puntuación F1 para modelos con datos desequilibrados?Si JMP no proporciona una estadística específica que desea para un análisis determinado, mi experiencia ha sido que los desarrolladores de JMP tienen una buena razón para no haberla incluido. Este grupo de discusión, aunque JMP lo supervisa, no es la mejor manera de incluir sus estadísticas en una versión futura. Debe enviar una solicitud de mejora a
soporte@jmp.com
Tienen un sistema de seguimiento formal para dichos artículos.
Pero ahora pasemos a la belleza de JMP.Muchas veces, la Comunidad de Discusión tendrá una solución a lo que necesitas.Pero, dado que este tema ya se discutió antes, no hubo respuesta sobre la F1, etc.Supongo que la solución no está disponible.Sin embargo, muchas, si no la mayoría, de estas solicitudes se pueden agregar a su análisis a través de JSL. Entonces, en respuesta a su pregunta, estoy seguro de que podría escribir un guión para agregarlos a su análisis.