¿Por qué hay un codo afilado en mis curvas ROC?


8

Tengo algunos conjuntos de datos de EEG que estoy probando en dos clases. Puedo obtener una tasa de error decente de LDA (las distribuciones condicionales de clase no son gaussianas, pero tienen colas similares y una separación suficientemente buena), por lo que quiero trazar el ROC del predictor LDA contra conjuntos de datos de otros sujetos.

Aquí hay un gráfico típico para el predictor probado en un solo ensayo: ingrese la descripción de la imagen aquí

He probado un par de paquetes diferentes (pROC y ROCR), y los resultados son consistentes. Mi pregunta es, ¿qué pasa con el codo afilado? ¿Es solo un artefacto de la proyección producida por la LDA, es decir, hay un 'acantilado' donde el rendimiento del clasificador se desploma?

Respuestas:


4

Se formará una "curva" ROC perfecta con una curva cerrada. El rendimiento que tiene allí es una separación casi perfecta. Además, parece que tiene una escasez de puntos que forman la curva.


Sí, cada uno de estos son solo alrededor de 7500 muestras de tiempo en 14 dimensiones (espacio no proyectado). Dicho esto, si tuviera un montón de pruebas de diferentes sujetos, ¿el ruido finalmente no suavizaría la curva alrededor del punto de inflexión?
estrella brillante

Cuando dices "cada uno de estos" no sé a qué te refieres. No está claro cuántos puntos componen la curva. Sí, tal vez se curvaría si hubiera variabilidad entre los sujetos, pero si no la hay, no lo hará. Es posible que tenga un problema de codificación de datos o solo esté trazando un par de muestras, pero es imposible saber por lo que ha publicado.
John

Lo siento, me refería a cada serie de tiempo individual (prueba experimental). Existe bastante variabilidad entre los sujetos, pero el ROC resultante para cada prueba de un solo predictor en un ensayo tiene una esquina afilada como la imagen de arriba, solo ubicada en un lugar ligeramente diferente. Verifiqué dos veces el tamaño de mis predictores y entradas de respuesta al comando roc (); ambas son etiquetas de 7500 de longitud.
estrella brillante

6

Aunque esta pregunta se hizo hace unos 3 años, me resulta útil responderla aquí después de encontrarla y dejarme perplejo por algún tiempo. Cuando su salida de verdad del terreno es 0,1 y su predicción es 0,1, obtiene un codo en forma de ángulo. Si su predicción o verdad fundamental son valores de confianza o probabilidades (digamos en el rango [0,1]), obtendrá un codo curvo.


5

Estoy de acuerdo con John, en que la curva cerrada se debe a la escasez de puntos. Específicamente, parece que usó las predicciones binarias de su modelo (es decir, 1/0) y las etiquetas observadas (es decir, 1/0). Debido a esto, tiene 3 puntos, uno supone un límite de Inf, uno supone un límite de 0 y el último supone un límite de 1 que le proporciona el TPR y FPR de su modelo y se encuentra en el ángulo agudo en tu gráfico

En su lugar, debe utilizar las probabilidades de la clase predicha (valores entre 0 y 1) y las etiquetas observadas (es decir, 1/0). Esto le dará una cantidad de puntos en el gráfico que es igual a la cantidad de probabilidades únicas que tiene (más una para Inf). Entonces, si tiene 100 probabilidades únicas, obtendrá 101 puntos en el gráfico para cada uno de los diversos límites.


Lamentablemente, no recuerdo qué cálculo o datos específicos estaba usando, por lo que no puedo volver a revisarlos. Sin embargo, eso suena como un excelente consejo.
estrella brillante
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.