El problema con la precisión
La precisión estándar se define como la relación entre las clasificaciones correctas y el número de clasificaciones realizadas.
a c c u r a c y: = clasificaciones correctascantidad de clasificaciones
Por lo tanto, es una medida general sobre todas las clases y, como veremos en breve, no es una buena medida distinguir un oráculo aparte de una prueba útil real. Un oráculo es una función de clasificación que devuelve una suposición aleatoria para cada muestra. Del mismo modo, queremos poder calificar el rendimiento de clasificación de nuestra función de clasificación. La precisión \ textit {puede} ser una medida útil si tenemos la misma cantidad de muestras por clase pero si tenemos un conjunto desequilibrado de precisión de muestras no es útil en absoluto. Aún más, una prueba puede tener una alta precisión, pero en realidad funciona peor que una prueba con una precisión menor.
Si tenemos una distribución de muestras tal que el 90 \% de las muestras pertenecen a la clase UNA , 5 \% a si y otro 5 \% a C , la siguiente función de clasificación tendrá una precisión de 0.9 :
c l a s s i fy( s a m p l e ) : = { Asi ⊤
Sin embargo, es obvio dado que sabemos cómo classify obras que este no puede decir las clases separadas en absoluto. Del mismo modo, podemos construir una función de clasificación
classify(sample):=guess⎧⎩⎨ABCwith p =0.96with p =0.02with p =0.02
que tiene una precisión de 0.96⋅0.9+0.02⋅0.05⋅2=0.866 y no siempre predecir
A pero todavía Dado que sabemos cómo classify obras es obvio que no puede decir clases aparte. La precisión en este caso solo nos dice cuán buena es nuestra función de clasificación para adivinar. Esto significa que la precisión no es una buena medida para distinguir un oráculo aparte de una prueba útil.
Precisión por clase
Podemos calcular la precisión individualmente por clase dando a nuestra función de clasificación solo muestras de la misma clase y recordar y contar el número de clasificaciones correctas y clasificaciones incorrectas y luego calcular accuracy:=correct/(correct+incorrect) . Repetimos esto para cada clase. Si tenemos una función de clasificación que puede reconocer con precisión la clase
A pero generará una suposición aleatoria para las otras clases, entonces esto resulta en una precisión de 1.00 para
A y una precisión de 0.33para las otras clases Esto ya nos proporciona una forma mucho mejor de juzgar el desempeño de nuestra función de clasificación. Un oráculo que siempre adivina la misma clase producirá una precisión por clase de 1.00 para esa clase, pero 0.00 para la otra clase. Si nuestra prueba es útil, todas las precisiones por clase deberían ser > 0.5 . De lo contrario, nuestra prueba no es mejor que la casualidad. Sin embargo, la precisión por clase no tiene en cuenta los falsos positivos. Aunque nuestra función de clasificación tiene una precisión del 100 \% para la clase UNA , también habrá falsos positivos para UNA (como una si clasificada erróneamente como UNA ).
Sensibilidad y especificidad
En las pruebas médicas, la sensibilidad se define como la relación entre las personas identificadas correctamente como portadoras de la enfermedad y la cantidad de personas que realmente la padecen. La especificidad se define como la relación entre las personas identificadas correctamente como saludables y la cantidad de personas que realmente son saludables. La cantidad de personas que realmente tienen la enfermedad es la cantidad de resultados positivos verdaderos de la prueba más la cantidad de resultados negativos falsos de la prueba. La cantidad de personas realmente saludables es la cantidad de resultados negativos verdaderos de la prueba más la cantidad de resultados positivos falsos de la prueba.
Clasificación binaria
En problemas de clasificación binarios hay dos clases PAGS y norte . Tnorte refiere al número de muestras que se identificaron correctamente como pertenecientes a la clase norte y Fnorte refiere al número de muestras que se identificaron falsamente como pertenecientes a la clase norte . En este caso, la sensibilidad y la especificidad se definen de la siguiente manera:
s e n s i t i v i t y: = TPAGSTPAGS+ Fnortes p e c i fi c i t y: = TnorteTnorte+ FPAGS
TPAGS son los verdaderos positivosFnorte son los falsos negativos,Tnorte
son los verdaderos negativos yFPAGS son los falsos positivos. Sin embargo, pensar en términos negativos y positivos está bien para las pruebas médicas, pero para obtener una mejor intuición no debemos pensar en términos negativos y positivos, sino en las clases genéricasα yβ . Entonces, podemos decir que la cantidad de muestras correctamente identificadas como pertenecientes aα esTα y la cantidad de muestras que realmente pertenecen aα esTα+ Fβ. La cantidad de muestras correctamente identificadas como no pertenecientes a α es Tβ y la cantidad de muestras realmente no pertenecientes a α es
Tβ+ Fα . Esto nos da la sensibilidad y la especificidad para α pero también podemos aplicar lo mismo a la clase β . La cantidad de muestras correctamente identificadas como pertenecientes a β es
Tβ y la cantidad de muestras que realmente pertenecen a β es Tβ+ Fα . La cantidad de muestras correctamente identificadas como no pertenecientes a βes Tα y la cantidad de muestras que en realidad no pertenecen a β es Tα+ Fβ . Obtenemos así una sensibilidad y especificidad por clase:
s e n s i t i v i t yα: = TαTα+ Fβs p e c i fi c i t yα: = TβTβ+ Fαs e n s i t i v i t yβ: = TβTβ+ Fαs p e c i fi c i t yβ: = TαTα+ Fβ
Sin embargo, observamos que s e n s i t i v i t yα=specificityβ y specificityα=sensitivityβ. Esto significa que si solo tenemos dos clases, no necesitamos sensibilidad y especificidad por clase.
Clasificación N-Ary
La sensibilidad y especificidad por clase no es útil si solo tenemos dos clases, pero podemos extenderla a varias clases. La sensibilidad y especificidad se define como:
sensitivity:=true positivestrue positives+false negativesspecificity:=true negativestrue negatives+false-positives
Tn∑i(Fn,i)∑i(Fi,n)n∑i(Ti)−T(n)nn∑i(∑k(Fi,k))nn∑i(Fn,i)n∑i(Fi,n)∑i(Ti)−T(n)+∑i(∑k(Fn,i))−∑i(Fn,i)−∑i(Fi,n). Como resumen tenemos:
true positives:=Tntrue negatives:=∑i(Ti)−T(n)+∑i(∑k(Fn,i))−∑i(Fn,i)−∑i(Fi,n)false positives:=∑i(Fi,n)false negatives:=∑i(Fn,i)
sensitivity(n):=TnTn+∑i(Fn,i)specificity(n):=∑i(Ti)−Tn+∑i(∑k(Fi,k))−∑i(Fn,i)−∑i(Fi,n)∑i(Ti)−Tn+∑i(∑k(Fi,k))−∑i(Fn,i)
Introduciendo confianza
c o n fyo de n c e⊤Tnorte+ ∑yo( Fi , n)norteTnorte
c o n fyo de n c e⊤( n ) : = TnorteTnorte+ ∑yo( Fi , n)
c o n fyo de n c e⊥nortenorte
∑yo( ∑k( Fi , k) ) - ∑yo( Fi , n) + ∑yo( Tyo) - Tnorte∑yo( Fn , i)
c o n fyo de n c e⊥( n ) = ∑yo( ∑k( Fi , k) ) - ∑yo( Fi , n) + ∑yo( Tyo) - Tnorte- ∑yo( Fn , i)∑yo( ∑k( Fi , k) ) - ∑yo( Fi , n) + ∑yo( Tyo) - Tnorte