Desgraciadamente, debido a la implementación del árbol de filtros/eliminación en ECT, obtener una medida de confianza no es sencillo. Si puede sacrificar algo de velocidad, utilizando -oaa con pérdida logística y la opción -r (--raw_predictions) obtendrá puntuaciones brutas que podrá convertir en una medida normalizada de "confianza" relativa. Digamos que tiene un archivo como este en "ect.dat":
1 ex1| a
2 ex2| a b
3 ex3| c d e
2 ex4| b a
1 ex5| f g
Corremos el uno contra todos:
vw --oaa 3 ect.dat -f oaa.model --loss_function logistic
A continuación, ejecute la predicción con la salida de las puntuaciones brutas:
vw -t -i oaa.model ect.dat -p oaa.predict -r oaa.rawp
Se obtienen predicciones en oaa.predict:
1.000000 ex1
2.000000 ex2
3.000000 ex3
2.000000 ex4
1.000000 ex5
y las puntuaciones brutas de cada clase en oaa.rawp:
1:0.0345831 2:-0.0888872 3:-0.533179 ex1
1:-0.241225 2:0.170322 3:-0.749773 ex2
1:-0.426383 2:-0.502638 3:0.154067 ex3
1:-0.241225 2:0.170322 3:-0.749773 ex4
1:0.307398 2:-0.387151 3:-0.502747 ex5
Puede asignarlas utilizando 1/(1+exp(-score))
y luego normalizar de varias maneras para obtener algo como esto:
1:0.62144216 2:0.5328338 3:0.20096953 ex1
1:0.57251362 2:0.71125717 3:0.1433303 ex2
1:0.37941591 2:0.29294807 3:0.66095287 ex3
1:0.57251362 2:0.71125717 3:0.1433303 ex4
1:0.72177734 2:0.37525053 3:0.2704246 ex5
Una vez que tenga un conjunto de datos significativamente grande puntuado, puede graficar el umbral en pasos de 0,1, por ejemplo, contra el porcentaje correcto si usa ese umbral para puntuar, para tener una idea de qué umbral le dará, digamos, un 95% correcto para la clase 1, y así sucesivamente.
Este debate puede ser útil.
0 votos
¿Esta pregunta ayuda en algo? stats.stackexchange.com/questions/88502/ ? Concretamente el
-oaa
bandera mencionada en la respuesta.0 votos
Gracias por remitir ese post, pero eso describe cómo hacer una predicción multiclase. No resuelve la cuestión de la "confianza" / "precisión". Me gustaría obtener la confianza para cada predicción de la clasificación multiclase.
0 votos
La clasificación es lo mismo que la predicción sobre datos "antiguos".
0 votos
Lo sé, pero eso sigue sin mostrar un nivel de "confianza" sobre la clasificación/predicción, ¿verdad? Sólo produce clases enteras. Me gustaría saber cómo de "buena" es la predicción para ese ejemplo. ¿O me estoy perdiendo algo?