La "curva de referencia" en un gráfico de la curva PR es una línea horizontal con una altura igual al número de ejemplos positivos $P$ sobre el número total de datos de entrenamiento $N$ es decir, la proporción de ejemplos positivos en nuestros datos ( $\frac{P}{N}$ ).
Bien, pero ¿por qué es así? Supongamos que tenemos un "clasificador de basura" $C_J$ . $C_J$ devuelve un al azar probabilidad $p_i$ a la $i$ -ésima instancia de muestra $y_i$ estar en clase $A$ . Por comodidad, digamos $p_i \sim U[0,1]$ . La implicación directa de esta asignación aleatoria de clases es que $C_J$ tendrá una precisión (esperada) igual a la proporción de ejemplos positivos en nuestros datos. Es natural; cualquier submuestra totalmente aleatoria de nuestros datos tendrá $E\{\frac{P}{N}\}$ ejemplos correctamente clasificados. Esto será cierto para cualquier umbral de probabilidad $q$ que podríamos utilizar como límite de decisión para las probabilidades de pertenencia a una clase devueltas por $C_J$ . ( $q$ denota un valor en $[0,1]$ donde los valores de probabilidad mayores o iguales a $q$ se clasifican en la clase $A$ .) Por otro lado, el rendimiento del recuerdo de $C_J$ es (en expectativa) igual a $q$ si $p_i \sim U[0,1]$ . En un umbral determinado $q$ escogeremos (aproximadamente) $(100(1-q))\%$ de nuestros datos totales que posteriormente contendrán (aproximadamente) $(100(1-q))\%$ del número total de instancias de la clase $A$ en la muestra. De ahí la línea horizontal que mencionamos al principio. Para cada valor de recuerdo ( $x$ en el gráfico PR) el valor de precisión correspondiente ( $y$ en el gráfico PR) es igual a $\frac{P}{N}$ .
Una nota rápida: el umbral $q$ es pas generalmente igual a 1 menos la recuperación esperada. Esto ocurre en el caso de un $C_J$ mencionado anteriormente sólo por la distribución uniforme aleatoria de $C_J$ para una distribución diferente (p. ej. $ p_i \sim B(2,5)$ ) esta relación de identidad aproximada entre $q$ y el recuerdo no se mantiene; $U[0,1]$ se utilizó porque es el más fácil de entender y visualizar mentalmente. Para una distribución aleatoria diferente en $[0,1]$ el perfil de relaciones públicas de $C_J$ sin embargo, no cambiará. Sólo la colocación de los valores P-R para un determinado $q$ los valores cambiarán.
Ahora con respecto a un clasificador perfecto $C_P$ se trataría de un clasificador que devuelve la probabilidad $1$ a la instancia de muestra $y_i$ ser de clase $A$ si $y_i$ es, de hecho, en la clase $A$ y además $C_P$ probabilidad de retorno $0$ si $y_i$ no es un miembro de la clase $A$ . Esto implica que para cualquier umbral $q$ tendremos $100\%$ precisión (es decir, en términos gráficos obtenemos una línea que comienza en la precisión $100\%$ ). El único punto que no entendemos $100\%$ la precisión está en $q = 0$ . Para $q=0$ la precisión se reduce a la proporción de ejemplos positivos en nuestros datos ( $\frac{P}{N}$ ) ya que (¿insensatamente?) clasificamos incluso puntos con $0$ probabilidad de ser de la clase $A$ como estar en clase $A$ . El gráfico PR de $C_P$ sólo tiene dos valores posibles para su precisión, $1$ y $\frac{P}{N}$ .
OK y un poco de código R para ver esto primero entregado con un ejemplo donde los valores positivos corresponden a $40\%$ de nuestra muestra. Obsérvese que hacemos una "asignación suave" de la categoría de clase en el sentido de que el valor de probabilidad asociado a cada punto cuantifica con nuestra confianza que este punto es de la clase $A$ .
rm(list= ls())
library(PRROC)
N = 40000
set.seed(444)
propOfPos = 0.40
trueLabels = rbinom(N,1,propOfPos)
randomProbsB = rbeta(n = N, 2, 5)
randomProbsU = runif(n = N)
# Junk classifier with beta distribution random results
pr1B <- pr.curve(scores.class0 = randomProbsB[trueLabels == 1],
scores.class1 = randomProbsB[trueLabels == 0], curve = TRUE)
# Junk classifier with uniformly distribution random results
pr1U <- pr.curve(scores.class0 = randomProbsU[trueLabels == 1],
scores.class1 = randomProbsU[trueLabels == 0], curve = TRUE)
# Perfect classifier with prob. 1 for positives and prob. 0 for negatives.
pr2 <- pr.curve(scores.class0 = rep(1, times= N*propOfPos),
scores.class1 = rep(0, times = N*(1-propOfPos)), curve = TRUE)
par(mfrow=c(1,3))
plot(pr1U, main ='"Junk" classifier (Unif(0,1))', auc.main= FALSE,
legend=FALSE, col='red', panel.first= grid(), cex.main = 1.5);
pcord = pr1U$curve[ which.min( abs(pr1U$curve[,3]- 0.50)),c(1,2)];
points( pcord[1], pcord[2], col='black', cex= 2, pch = 1)
pcord = pr1U$curve[ which.min( abs(pr1U$curve[,3]- 0.20)),c(1,2)];
points( pcord[1], pcord[2], col='black', cex= 2, pch = 17)
plot(pr1B, main ='"Junk" classifier (Beta(2,5))', auc.main= FALSE,
legend=FALSE, col='red', panel.first= grid(), cex.main = 1.5);
pcord = pr1B$curve[ which.min( abs(pr1B$curve[,3]- 0.50)),c(1,2)];
points( pcord[1], pcord[2], col='black', cex= 2, pch = 1)
pcord = pr1B$curve[ which.min( abs(pr1B$curve[,3]- 0.20)),c(1,2)];
points( pcord[1], pcord[2], col='black', cex= 2, pch = 17)
plot(pr2, main = '"Perfect" classifier', auc.main= FALSE,
legend=FALSE, col='red', panel.first= grid(), cex.main = 1.5);
donde los círculos y triángulos negros denotan $q =0.50$ y $q=0.20$ respectivamente en las dos primeras parcelas. Vemos inmediatamente que los clasificadores "basura" pasan rápidamente a una precisión igual a $\frac{P}{N}$ de la misma manera, el clasificador perfecto tiene una precisión $1$ en todas las variables de recuerdo. Como es lógico, el AUCPR para el clasificador "basura" es igual a la proporción de ejemplos positivos en nuestra muestra ( $\approx 0.40$ ) y el AUCPR para el "clasificador perfecto" es aproximadamente igual a $1$ .
Siendo realistas, el gráfico PR de un clasificador perfecto es un poco inútil porque no se puede tener $0$ recordar nunca (nunca predecimos sólo la clase negativa); simplemente empezamos a trazar la línea desde la esquina superior izquierda por una cuestión de convención. Estrictamente hablando debería mostrar sólo dos puntos, pero esto haría una curva horrible. :D
Que conste que ya ha habido alguna respuesta muy buena en CV sobre la utilidad de las curvas de PR: aquí , aquí y aquí . Sólo con leerlos detenidamente se puede comprender bien las curvas de relaciones públicas.