Hola @eliyahu100 ,
(TLDR: las pruebas de arranque y aleatorización se pueden usar, de diferentes maneras, para obtener un valor p empírico para AUCroc, y a través de esto podemos ver por qué el valor p para AUCroc termina siendo la prueba del modelo completo).
Mi primera impresión es que cualquier valor p que se pueda obtener de una prueba de AUCroc es conceptualmente equivalente a la prueba del modelo completo del clasificador (ya sea regresión logística o de otro tipo). Es decir, probar si hay evidencia de que AUCroc es diferente de lo que se esperaría bajo la hipótesis nula (clasificación aleatoria) parece equivalente a si un modelo explica más error (es decir, clasifica) de lo que se esperaría solo por casualidad. Dicho esto, pude encontrar varios métodos que describen cómo se puede calcular un valor p de AUCroc (por ejemplo, Hajian-Tilaki, 2013 ), y podemos decir con seguridad que JMP no realiza estos cálculos de forma predeterminada (aunque, por supuesto, todo es posible a través de secuencias de comandos). Sin embargo, mirar estas fórmulas me hizo preguntarme sobre el rendimiento de estas pruebas de hipótesis y las suposiciones que hacen. Si tiene acceso a JMP Pro, hay algo que puede hacer en este momento que probablemente superará las fórmulas de aproximación de muestras grandes/normales utilizadas para obtener valores p para AUCroc, y eso es la prueba de arranque y/o simulación/aleatorización. Así es como lo haríamos:
1. Ajuste un modelo de clasificador. Usaré Big Class y predeciré el sexo por altura. Revela el AUCroc del Triángulo Rojo.
Open("$SAMPLE_DATA\Big Class.jmp");
Logistic(Y( :sex ),X( :height ), Positive Level( "M" ),
Logistic Plot( 0 ), ROC Curve( 1 ),
SendToReport(
Dispatch( {}, "Whole Model Test", OutlineBox, {Close( 1 )} ),
Dispatch( {}, "Parameter Estimates", OutlineBox, {Close( 1 )} )
));
2. Primero, probemos con Bootstrapping. Haga clic con el botón derecho en el valor AUCroc informado y luego seleccione Bootstrap. Use al menos 2500 muestras de arranque, y me gustan los pesos fraccionarios, especialmente si tiene categorías que tienen frecuencias relativas bajas.
Esto devolverá una tabla de valores de AUCroc de arranque: lo que obtiene al muestrear con reemplazo de su tabla y volver a calcular el modelo y AUCroc, almacenando en cada iteración el valor que obtiene. En esencia, ahora tiene la distribución de muestreo de AUCroc para su clasificador dado. Obtener un valor p ahora es solo cuestión de contar. Pero, dejemos que JMP haga eso.
3. Analizar > Distribución, luego coloque AUC como Y y marque "Solo histogramas", luego haga clic en Aceptar:

Ahora tiene los límites de confianza de arranque en AUCroc, que son excelentes para informar, además, si desea saber si su AUCroc obtenido originalmente es diferente de un valor particular, solo necesita ver si ese valor nulo está dentro del intervalo de confianza en su nivel de confianza elegido.
Pero, pediste un valor p. Literalmente podríamos contar cuántas veces de las 2500 muestras obtuvimos un AUCroc de 0,50 o menos, pero podemos hacerlo mejor. JMP está agregando una salida especial a este informe de distribución porque hay una columna BootID en su tabla. JMP sabe cómo trabajar con esa columna junto con la primera fila de su tabla (la estimación de la muestra original). Si quisiéramos, podemos cambiar las cosas para hacer de esto una especie de prueba de aleatorización en lugar de un arranque (y haremos la prueba de aleatorización adecuada más adelante para comparar). Solo necesitamos hacer dos cambios simples: cambie el nombre de la columna "BootID•" a "SimID•" y cambie el valor de la estimación original en la tabla al valor con el que desea probar... es decir, cambie el valor en la primera fila de la columna AUC a 0,50. Así es como debería verse ahora la parte superior de la mesa:
Ahora inicie Analizar > Distribución, vuelva a colocar AUC para Y y verifique solo Histrogramas. Obtendremos la siguiente salida:
Tenga en cuenta que JMP nos presenta "Resultados de simulación" en lugar de resultados de arranque. Esto se debe al cambio de la columna BootID (SimID es lo que proporciona la simulación con el botón derecho). Estamos arreglando un poco las cosas aquí, así que sepa que esta no es normalmente la forma en que JMP informa los resultados de la simulación (a continuación, veremos cómo funciona normalmente), pero en este caso, JMP ha trazado una línea para indicar dónde colocó su valor de hipótesis nula. de AUCroc (0.50), y en su valor p de Y<=Y0 puede ver la proporción de tiempo que obtuvo una muestra aleatoria (de sus datos originales) con un AUCroc menor o igual a 0.50. Este es su valor p empírico de una cola, dado 0.50 como su valor nulo. Pero, no nos detengamos aquí, ya que otro enfoque de esto puede generar algo interesante e importante.
Otra manera (y, francamente, la mejor manera) podríamos haberlo hecho si un valor p empírico es nuestro resultado deseado, es usar clic derecho> Simular en el AUCroc informado. Al igual que Bootstrapping, involucraremos el remuestreo con reemplazo de nuestra tabla (o sin reemplazo si deseamos hacer una prueba de permutación). Para hacer esto como Clic derecho > Simular, necesitamos crear una nueva columna de fórmula para el simulador que manejará el muestreo con reemplazo. Una forma sencilla de hacer esto es seleccionar la columna Y en su tabla, hacer clic con el botón derecho en la fila del encabezado > Nueva columna de fórmula > Aleatorio > Muestra con reemplazo.
Esto crea una nueva columna (Remuestreo[sexo]), y cada vez que se repite la fórmula para esta columna, las etiquetas de M y F se asignan aleatoriamente a la tabla en función de las tasas base observadas (es decir, muestreo con reemplazo).
A continuación, volvamos a nuestra regresión logística y hagamos clic con el botón derecho en AUCroc en el informe, pero en lugar de seleccionar Bootstrap, seleccionamos Simular. Se nos pedirá que elijamos una columna de fórmula para sustituir una columna utilizada en nuestro informe. En este caso, seleccionaría sex y Resample[sex]. Haga al menos 2500 muestras, pero para este ejemplo, haré 10k solo para obtener una estimación más precisa de las estadísticas resultantes.
Después de que JMP termina, se nos proporciona una tabla muy similar a la de bootstrap, pero lo que tenemos ahora no es la distribución de muestreo de AUCroc dados nuestros datos originales, sino la distribución de muestreo de AUCroc dada No relación entre sexo y altura pero respetando las tasas base de sexo (ya que estamos simulando lo que sucedería si asignáramos aleatoriamente las etiquetas de M y F a las filas de nuestra tabla; esto es la hipótesis nula).Elegiré Analizar > Distribución, colocaré AUC en Y, pero esta vez no marquemos la casilla Histogramas solo porque hay algo importante que notar aquí:

Nuestros valores de p empíricos se informan nuevamente, pero esta vez nuestras estimaciones de AUCroc se acercan a 0,50 (pero no a 0,50 en realidad, volveremos a explicar por qué), mientras que desde el arranque rondaron nuestra estimación observada. Nuevamente, en este caso, estamos simulando lo que le sucede a AUCroc bajo la hipótesis nula, por lo que esto debería tener sentido. Los valores de p empíricos aquí, entonces, informan con qué frecuencia obtenemos estimaciones de esta distribución de muestreo que exceden nuestra estimación original (que es nuestra definición típica de un valor de p: qué tan improbable es nuestra estimación dado que solo el azar es responsable de la generación de la estimación). valores). Dos cosas a notar aquí:
1. Nuestro valor p empírico es 0.0190, que es idéntico al valor p de la prueba del modelo completo original.
No es un accidente que este valor p esté cerca, aunque es una suerte que en este punto sean numéricamente idénticos a 4 decimales. De hecho, son diferentes y se obtienen de diferentes maneras, pero como dije al principio, una prueba del AUCroc frente a lo que se espera solo por casualidad es conceptualmente lo mismo que la prueba del modelo completo: ¿estamos clasificando mejor que la casualidad? .
2. Note que la distribución muestral aquí no tiene una media de 0.50. Es decir, el valor esperado aquí no es 0,50, por lo que los valores p empíricos dados no se refieren a un valor nulo de 0,50, sino a un valor nulo, en este caso, de alrededor de 0,57. Esto se debe a la proporción de hombres y mujeres en este conjunto de datos: si solo estamos adivinando al azar con respecto a la altura, pero sabemos que hay más hombres que mujeres, podemos adivinar hombres con más frecuencia y obtener una precisión de clasificación superior al 50 %. (nuestro modelo intercepta esto). Nota al margen: observe que esta distribución de muestreo es decididamente no normal y, sin embargo, los valores p obtenidos de fórmulas de aproximación de muestras grandes (como la que mencioné al principio) le harían creer que esta distribución de muestreo es normal. Si simplemente usamos la media y la desviación estándar y realizamos una búsqueda de valor p de esa manera, obtenemos p = 0.0033, no p = 0.0190. Esa es una gran diferencia y una gran razón por la cual las pruebas de aleatorización son excelentes: no hay suposiciones sobre la forma de distribución. 
Un punto más: las diferencias entre la prueba de arranque y la aleatorización son importantes, aunque pueden proporcionar lo que parece información similar. En el arranque cambiamos el BootI D columna para ser SimID para piratear JMP para darnos el informe de valor p empírico, y cambió un valor en la tabla para establecer el AUCroc nulo en exactamente 0.50. Lo que obtuvimos es un valor p empírico, pero lo hicimos desde la perspectiva de la estimación de la muestra (en la forma en que un intervalo de confianza es desde la perspectiva de la estimación de la muestra). Para la prueba de aleatorización a través de Simular con el botón derecho, tomamos la perspectiva del valor nulo y permitimos que jmp generara la distribución de muestreo bajo la hipótesis nula para AUCroc y luego comparamos nuestra estimación original con eso. Ninguno de estos es más preciso, pero terminan dándote cosas sutilmente diferentes y es bueno entender ambos.
La mayor diferencia, sin embargo, no es la diferencia conceptual de la perspectiva estadística que toma cada enfoque, es la especificación de 0.50 como el valor nulo en nuestra variante de arranque. Quizás se pregunte, ¿qué pasa si usamos la tabla de arranque y establecemos el valor de la hipótesis nula en el valor debajo del nulo que obtuvimos de la prueba de aleatorización (0.57079)?
Bueno, si cree, como yo, en que la aleatoriedad de la aleatoriedad es una certeza, debería esperar que nuestro valor p empírico generado a partir de muestras arrancadas contra el mismo valor nulo sea bastante similar a la prueba de aleatorización real. Después de todo, ¿no están estimando lo mismo conceptualmente, solo que desde diferentes perspectivas?
Bueno mira eso, p = 0.0192. Se mantiene la fe en la aleatoriedad.:)
¡Espero que esto ayude a algunos!
@Julian