Umbral de probabilidad de clasificación

49

Tengo una pregunta sobre la clasificación en general. Supongamos que f es un clasificador, que genera un conjunto de probabilidades dados algunos datos D. Normalmente, uno diría: bueno, si P (c | D)> 0.5, asignaremos una clase 1, de lo contrario 0 (deje que esto sea un binario clasificación).

Mi pregunta es, ¿qué pasa si me entero que si clasifico como 1 también las probabilidades, mayores que: es decir, 0.2, el clasificador funciona mejor. ¿Es legítimo usar este nuevo umbral al hacer la clasificación?

Interpretaría la necesidad de una clasificación inferior limitada en el contexto de los datos que emiten una señal más pequeña; Sin embargo, sigue siendo importante para el problema de clasificación.

Me doy cuenta de que esta es una forma de hacerlo, pero si esto no es un pensamiento correcto, ¿cuáles serían algunas transformaciones de datos, que enfatizan las características individuales de manera similar, de modo que el umbral pueda permanecer en 0.5?

sdgaw erzswer
fuente
8
Ya tienes una excelente respuesta, así que déjame decirte esto: tu "normalmente" no es un normal que debería ser normal. No estoy seguro de dónde se convirtió el estándar de "umbral en 0.5", y sé que hay algún software excelente que fomenta la idea, pero en general es una práctica muy pobre.
Matthew Drury el
1
@MatthewDrury: a menos que, por supuesto, el puntaje sea la probabilidad posterior relevante bien calibrada de no cometer errores importantes (este último se encargaría de los diferentes costos de clasificación errónea).
cbeleites apoya a Monica el

Respuestas:

68

Frank Harrell ha escrito sobre esto en su blog: Clasificación vs. Predicción , con lo que estoy totalmente de acuerdo.

Esencialmente, su argumento es que el componente estadístico de su ejercicio termina cuando genera una probabilidad para cada clase de su nueva muestra. Elegir un umbral más allá del cual clasifique una nueva observación como 1 vs. 0 ya no es parte de las estadísticas . Es parte del componente de decisión . Y aquí, necesita el resultado probabilístico de su modelo, pero también consideraciones como:

  • ¿Cuáles son las consecuencias de decidir tratar una nueva observación como clase 1 vs. 0? ¿Entonces envío un correo de marketing barato a todos los 1s? ¿O aplico un tratamiento invasivo contra el cáncer con grandes efectos secundarios?
  • ¿Cuáles son las consecuencias de tratar un "verdadero" 0 como 1 y viceversa? ¿Voy a marcar a un cliente? ¿Someter a alguien a un tratamiento médico innecesario?
  • ¿Son mis "clases" realmente discretas? ¿O hay realmente un continuo (por ejemplo, presión arterial), donde los umbrales clínicos son en realidad solo atajos cognitivos? Si es así, ¿cuánto más allá de un umbral es el caso que estoy "clasificando" en este momento?
  • ¿O una probabilidad baja pero positiva de ser clase 1 en realidad significa "obtener más datos", "ejecutar otra prueba"?

Entonces, para responder a su pregunta: hable con el consumidor final de su clasificación y obtenga respuestas a las preguntas anteriores. O explíquele su resultado probabilístico a él o ella y déjelo caminar por los siguientes pasos.

S. Kolassa - Restablece a Monica
fuente
1
Muchas gracias por esta perspicaz respuesta. Seguiré estudiando el problema en sí mismo: estoy seguro de que de alguna manera puedo convertir esta propiedad en la parte de aprendizaje estadístico.
sdgaw erzswer
Wow, desearía poder agregar algo a esto pero no obtuve nada, ¡respuesta excepcional!
the_SJC
44
Muy buena respuesta: ¡las preguntas son acertadas! Sin embargo, mi profesión está en el lado de la aplicación, ya sea que encontrar un umbral de decisión se llame estadística o no, cae completamente dentro de mis deberes profesionales ... Y para mí es parte del modelo al igual que el "preprocesamiento" es parte de el modelo, también porque todas esas decisiones deben ser cubiertas en el proceso de validación.
cbeleites apoya a Monica el
11

La respuesta de Stephan es genial. Depende fundamentalmente de lo que quieras hacer con el clasificador.

Solo agrego algunos ejemplos.

Una forma de encontrar el mejor umbral es definir una función objetivo. Para la clasificación binaria, esto puede ser precisión o puntaje F1, por ejemplo. Dependiendo de cuál elija, el mejor umbral será diferente. Para la puntuación F1, hay una respuesta interesante aquí: ¿Qué es el Umbral óptimo F1? ¿Cómo calcularlo? . Pero decir "Quiero usar la puntuación F1" es donde realmente eliges. Si esta elección es buena o no depende del propósito final.

Otra forma de verlo es enfrentarse a la compensación entre exploración y explotación (último punto de Stephan): el bandido multi-armado es un ejemplo de tal problema: tienes que lidiar con dos objetivos conflictivos de adquirir información y elegir al mejor bandido . Una estrategia bayesiana es elegir cada bandido al azar con la probabilidad de que sea el mejor. No es exactamente una clasificación, sino que trata las probabilidades de salida de manera similar.

Si el clasificador es solo un ladrillo en el algoritmo de toma de decisiones, entonces el mejor umbral dependerá del propósito final del algoritmo. Debe evaluarse y ajustarse con respecto a la función objetivo de todo el proceso.

Benoit Sanchez
fuente
Gracias por otra gran respuesta. Si entiendo correctamente, si estoy lidiando con el paso final en la tubería, es completamente legítimo optimizar directamente el umbral.
sdgaw erzswer
@sdgawerzswer: sí. Y a) asegúrese de optimizar la respuesta a la pregunta correcta yb) asegúrese de validar esa decisión (y la búsqueda de umbral) junto con el resto del modelo.
cbeleites apoya a Monica el
3

Posiblemente haya algún valor al considerar cómo se calcula la probabilidad. En la actualidad, los clasificadores usan un vector de sesgo, que se multiplica por una matriz (álgebra lineal). Mientras haya valores distintos de cero en el vector, la probabilidad (el producto del vector y la matriz) nunca será 0.

Supongo que esto causa confusión en el mundo real de las personas que no tomaron álgebra lineal. Les molesta el hecho de que hay puntajes de probabilidad para los elementos que creen que deberían tener 0. En otras palabras, están confundiendo la entrada estadística, de la decisión basada en esa entrada. Como humanos, podríamos decir que algo con una probabilidad de 0.0002234 es igual a 0, en la mayoría de los casos de uso "prácticos". En las discusiones de ciencias cognitivas superiores, tal vez, hay una discusión interesante sobre por qué el vector de sesgo hace esto, o más bien, es válido para aplicaciones cognitivas.

Kameron Cole
fuente
2

No hay un umbral incorrecto. El umbral que elija depende de su objetivo en su predicción, o más bien de lo que desea favorecer, por ejemplo, precisión versus recuperación (intente representarlo gráficamente y medir su AUC asociado para comparar diferentes modelos de clasificación de su elección).

Le estoy dando este ejemplo de precisión frente a recuperación, porque mi propio caso problemático en el que estoy trabajando ahora, elijo mi umbral dependiendo de la precisión mínima (o valor predictivo positivo de PPV) que quiero que tenga mi modelo al predecir, pero yo No me importan mucho los negativos. Como tal, tomo el umbral que corresponde a la precisión deseada una vez que he entrenado mi modelo. La precisión es mi restricción y Recall es el rendimiento de mi modelo, cuando lo comparo con otros modelos de clasificación.

Alex F
fuente