6 votos

Calcular la probabilidad de que la etiqueta de clasificador proporcionado es correcta

Un binario clasificador SVM proporciona una etiqueta $y_c^{(i)}$ por cada $i$-ésimo ejemplo. Esto no es garantizado correspondiente a su verdadera etiqueta $y^{(i)}$, ya que el clasificador podría haber calculado un límite que misclassifies algunas muestras.

Supongamos que de alguna manera, en caso de lineal del núcleo, por ejemplo, soy capaz de encontrar la distancia a $d$ entre el $i$-ésimo de la muestra y en el límite, como se muestra en la figura.

enter image description here

Esta distancia de alguna manera me dice cómo de fiable es el clasificador en el que indica que el $i$-ésimo de la muestra pertenece a la clase seleccionada (positivo o negativo).

Mi problema

Cuando una clase $C$ (es decir, $C='Y'$ o $C='N'$ para la clasificación binaria), cómo calcular los siguientes probabilidad?

$Pr(y^{(i)} = C\quad |\quad y_c^{(i)})$

Que es: la probabilidad de que $C$ es el verdadero sello de la $i$-ésimo de la muestra, dado que el clasificador dio el dictamen $y_c^{(i)}$ sobre la muestra.

Mi solución (y por eso no funciona)

He intentado generalizar mediante la verdadera tasa positiva del clasificador, que es:

$Pr(y^{(i)} = C\quad |\quad y_c^{(i)}) = \frac{n_{C,y_c^{(i)}}}{\sum_{C'}n_{C',y_c^{(i)}}}$

donde $n_{C,y_c^{(i)}}$ es el número de muestras de la clase $C$ que el clasificador clasificados como $y_c^{(i)}$. Sin embargo, esta medida queda como lo es para cada una de las muestras en el conjunto.

Lo que me gustaría tener

Me gustaría, en cambio, una medida que depende del grado de confianza del clasificador, o, de alguna manera, en la distancia $d$ calculado sobre el límite.

Podría por favor proporcionar algunas sugerencias?

Gracias.

8voto

Qwerty Puntos 206

SVMs hacer producir una decisión de la función, pero no se corresponde directamente con la probabilidad. Hay una manera en LibSVM (y sklearn que los usos que bajo el capó) para obtener las probabilidades de uso de Platt escala que suena como lo que usted está buscando. Algunos detalles más acerca de cómo funciona eso están aquí:

¿Cómo sklearn.svm.svc función de predict_proba() trabajar internamente?

La conversión de LinearSVC decisión de la función de probabilidades

2voto

Marc Claesen Puntos 9818

Lo que usted quiere que suena parecido a una precisión de recuperación (PR) de la curva. PR curvas muestran la precisión (TP / (TP + FP)) como una función de la recuperación (TP / (TP + FN)). Cada PR punto corresponde a un umbral de $T$ en la SVM salida del $d$ (firmado distancia a la hyperplane), que es positiva si $d \geq T$ y negativa en caso contrario.

Como tal, usted podría crear una figura que representa la precisión como una función de los umbrales de decisión. La forma general de esta figura es similar al de un PR curva, excepto que se estira horizontalmente (porque no todos los de la única decisión valor corresponde a un único recuerdo, el PR de la curva es más densa en horizontal).

Se debe señalar que, tal vez contrario a la intuición, la precisión no es necesariamente más alto para el más grande de los valores de la decisión ($d$).

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X