Frank Harrell, entre otros, insiste en utilizar reglas de puntuación adecuadas para evaluar a los clasificadores. Esto tiene sentido. Si tenemos 500 $0$ s con $P(1)\in[0.45, 0.49]$ y 500 $1$ s con $P(1)\in[0.51, 0.55]$ podemos obtener un clasificador perfecto fijando nuestro umbral en $0.50$ . Sin embargo, ¿es realmente un clasificador mejor que uno que da la $0$ s todo $P(1)\in[0.05, 0.07]$ y el $1$ s todo $P(1)\in[0.93,0.95]$ excepto uno que tiene $P(1)=0.04?$
La puntuación Brier dice que el segundo clasificador aplasta al primero, aunque el segundo no pueda alcanzar una precisión perfecta.
set.seed(2020)
N <- 500
spam_1 <- runif(N, 0.45, 0.49) # category 0
ham_1 <- runif(N, 0.51, 0.55) # category 1
brier_score_1 <- sum((spam_1)^2) + sum((ham_1-1)^2)
spam_2 <- runif(N, 0.05, 0.07) # category 0
ham_2 <- c(0.04, runif(N-1, 0.93, 0.95)) # category 1
brier_score_2 <- sum((spam_2)^2) + sum((ham_2-1)^2)
brier_score_1 # turns out to be 221.3765
brier_score_2 # turns out to be 4.550592
Sin embargo, si optamos por el segundo clasificador, acabaremos llamando "spam" a un correo electrónico "jamón" y enviándolo a la carpeta de correo no deseado. Dependiendo del contenido del correo, esto podría ser una mala noticia. Con el primer clasificador, si utilizamos un umbral de $0.50$ Siempre clasificamos el spam como spam y el jamón como jamón. El segundo clasificador no tiene un umbral que pueda dar la precisión de clasificación perfecta que sería tan maravillosa para el filtrado de correo electrónico.
Reconozco que no conozco el funcionamiento interno de un filtro de spam, pero sospecho que hay que tomar la difícil decisión de enviar un correo electrónico a la carpeta de spam o dejarlo pasar a la bandeja de entrada. $^{\dagger}$ Aunque el ejemplo concreto de filtrado de correo electrónico no funcione así, hay situaciones en las que hay que tomar decisiones.
Como usuario de un clasificador que tiene que tomar una decisión, ¿cuál es la ventaja de utilizar una regla de puntuación adecuada frente a encontrar el umbral óptimo y luego evaluar el rendimiento cuando clasificamos según ese umbral? Claro, podemos valorar la sensibilidad o la especificidad en lugar de sólo la precisión, pero no obtenemos nada de eso de una regla de puntuación adecuada. Me imagino la siguiente conversación con un directivo.
Yo : "Así que propongo que usemos el segundo modelo, por su puntuación Brier mucho más baja".
Jefe : "¿Así que quiere optar por el modelo que [mete la pata] más a menudo? SEGURIDAD!"
Puedo ver el argumento de que el modelo con la puntuación Brier más baja (buena) pero con menor precisión (mala) podría tener un mejor rendimiento (en términos de precisión de clasificación) a largo plazo y no debería ser penalizado tan duramente por un punto de casualidad que el otro modelo obtiene a pesar de su rendimiento generalmente peor, pero sigue pareciendo una respuesta insatisfactoria para dar a un gerente si estamos haciendo pruebas fuera de la muestra y viendo cómo estos modelos funcionan con datos a los que no fueron expuestos durante el entrenamiento.
$^{\dagger}$ Una alternativa sería algún tipo de tirada de dados basada en la probabilidad determinada por el clasificador. Digamos que obtenemos $P(spam)=0.23$ . A continuación, dibuje una observación $X$ de $\text{Bernoulli}(0.23)$ y enviarlo a la carpeta de spam si $X=1$ . En algún momento, sin embargo, se toma una decisión sobre dónde enviar el correo electrónico, no "el 23% lo envía a la carpeta de spam, el 77% lo deja pasar a la bandeja de entrada".