¿Cómo medir el rendimiento de un clasificador cuando cerca del 100% de las etiquetas de clase pertenecen a una clase?


9

En mis datos, tengo una variable de clase, indicado como . Los valores de esta variable de clase son 0 , 1 (binario). Casi todas las observaciones de C son 0 (cerca del 100%, más precisamente, 97%). Me gustaría una prueba de "rendimiento" en diferentes modelos de clasificación (podría ser la precisión). Lo que temo que suceda es que si tengo un modelo de clasificación que siempre clasifica cualquier observación en la clase 0, entonces ese modelo tendrá una precisión del 97% (aunque nunca considere otras variables).C0 0,1C

¿Existen pruebas de rendimiento bien conocidas para los modelos de clasificación de datos que tratan con eventos muy raros?

Respuestas:


3

Algunas posibilidades me vienen a la mente.

Por lo general, mirar la tasa de aciertos general no es una muy buena idea, ya que dependerá de la composición del conjunto de pruebas si el rendimiento de las diferentes clases difiere. Por lo tanto, al menos, debe especificar (y justificar) la frecuencia relativa de las clases en los datos de su prueba para obtener un valor significativo.

En segundo lugar, como ya dijo @Shorack, especifique qué tipos de error son tan importantes. A menudo, el clasificador necesita cumplir ciertos criterios de rendimiento para ser útil (y la precisión general rara vez es la medida adecuada). Existen medidas como la sensibilidad, la especificidad, el valor predictivo positivo y negativo que tienen en cuenta las diferentes clases y los diferentes tipos de clasificación errónea. Puede decir que estas medidas responden diferentes preguntas sobre el clasificador:

  • sensibilidad: ¿Qué fracción de casos verdaderamente pertenecientes a la clase C se reconoce como tal?
  • especificidad: ¿Qué fracción de casos que verdaderamente no pertenecen a la clase C se reconoce como tal?
  • Valor predictivo positivo: dado que el clasificador predice la clase C, ¿cuál es la probabilidad de que esta predicción sea correcta?
  • valor predictivo negativo: dado que el clasificador predice que el caso no es de clase C, ¿cuál es la probabilidad de que esta predicción sea correcta?

Estas preguntas a menudo permiten formular especificaciones que el clasificador debe necesitar para ser útil.

Los valores predictivos son a menudo más importantes desde el punto de vista de la aplicación práctica del clasificador: están condicionados a la predicción, que es la situación en la que se encuentra al aplicar el clasificador (un paciente generalmente no está interesado en saber qué tan probable La prueba consiste en reconocer los casos de enfermedad, pero más bien la probabilidad de que el diagnóstico indicado sea correcto). Sin embargo, para calcularlos adecuadamente, debe conocer las frecuencias relativas de las diferentes clases en la población para la que se utiliza el clasificador (parece que tiene esta información, por lo que no hay nada que le impida mirar eso).

También puede ver la ganancia de información que le proporciona una predicción positiva o negativa. Esto se mide por la razón de probabilidad positiva y negativa, LR⁺ y LR⁻. Brevemente, le dicen cuánto cambia la predicción las probabilidades hacia la clase en cuestión. (Vea mi respuesta aquí para una explicación más detallada)

Para su clasificador trivial, las cosas se ven así: utilizaré la clase "0" como la clase en cuestión, por lo que "positivo" significa clase "0". De 100 casos, se predice que 100 son positivos (para pertenecer a la clase 0). 97 de ellos realmente lo hacen, 3 no. La sensibilidad para la clase 0 es del 100% (se reconocieron los 97 casos que realmente pertenecen a la clase 0), la especificidad es 0 (ninguno de los otros casos se reconoció). El valor predictivo positivo (suponiendo que la frecuencia relativa 97: 3 es representativa) es del 97%, el valor predictivo negativo no puede calcularse ya que no se produjo predicción negativa.

LR+=sensibilidad1-especificidad=1
LR-=1-sensibilidadespecificidad=0 00 0


Dirección de pensamientos completamente diferente: mencionas que te gustaría evaluar diferentes clasificadores. Eso suena un poco a comparación o selección de clasificadores. La advertencia con las medidas que analizo anteriormente es que están sujetas a una incertidumbre aleatoria muy alta (lo que significa que necesita muchos casos de prueba) si las evalúa en las etiquetas de clase "duras". Si su predicción es principalmente continua (métrica, por ejemplo, probabilidad posterior), puede usar medidas relacionadas que analicen el mismo tipo de pregunta pero no use fracciones de casos sino medidas continuas, consulte aquí . Estos también serán más adecuados para detectar pequeñas diferencias en las predicciones.

(@FrankHarrell le dirá que necesita "reglas de puntuación adecuadas", por lo que ese es otro término de búsqueda a tener en cuenta).


3

En primer lugar: ¿son todos los golpes igualmente importantes y todos los fallos igualmente importantes? Si es así, entonces no hay nada de malo en que su puntaje de modelo nulo sea tan bueno: simplemente es una solución excelente.

Si considera importante tener un buen rendimiento al predecir los 1, puede utilizar la medida F en su lugar. Básicamente es la media armónica de recuperación (qué porción de los 1 reales se ha predicho como 1) y precisión (qué porción de los 1 predichos eran en realidad un 1). Para que un modelo tenga un puntaje alto en esta medida, necesita:

  1. Encuentra la mayoría de los 1.
  2. No suele predecir un 1 cuando en realidad es 0.

Y necesita hacer ambas cosas simultáneamente. Incluso si su modelo solo hace uno de los 2 de manera casi perfecta, tendrá una puntuación baja si no cumple con el otro requisito. https://en.wikipedia.org/wiki/F1_score


Esa es una regla de puntuación incorrecta que usa solo 1 bit de información de las predicciones. Las reglas de puntuación incorrectas están optimizadas por modelos falsos.
Frank Harrell

2

CYY=1YR2χ2 para lograr eso) y no es lo suficientemente sensible como para ser usado para comparar dos modelos, es un buen resumen de un solo modelo.


1

La característica de funcionamiento del receptor (ROC) http://en.wikipedia.org/wiki/Receiver_operating_characteristic curve y los cálculos asociados (es decir, Area Under Curve-AUC) se usan comúnmente. básicamente imagina que su clasificador da una respuesta continua (por ejemplo, entre 0 y 1) y traza la sensibilidad frente a la tasa de falsa alarma (especificidad 1-) ya que el umbral de decisión varía entre 0 y 1. Estos fueron diseñados específicamente para eventos raros (detectar enemigos aviones?).


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.