24 votos

¿Cuál es la forma correcta de probar la significancia de los resultados de clasificación?

Hay muchas situaciones en las que puedes entrenar varios clasificadores diferentes, o usar varios métodos de extracción de características. En la literatura, los autores suelen dar el error de clasificación promedio sobre un conjunto de divisiones aleatorias de los datos (es decir, después de una validación cruzada doblemente anidada), y a veces también dan las varianzas sobre el error en las divisiones. Sin embargo, esto por sí solo no es suficiente para decir que un clasificador es significativamente mejor que otro. He visto muchos enfoques diferentes para esto: usar pruebas de Chi-cuadrado, t-test, ANOVA con pruebas post-hoc, etc.

¿Qué método se debe utilizar para determinar la significancia estadística? Subyacente a esa pregunta está: ¿Qué suposiciones debemos hacer sobre la distribución de las puntuaciones de clasificación?

2 votos

¿Podrías publicar ejemplos con: "He visto muchos enfoques diferentes para esto, como pruebas de Chi-cuadrado, t-test, ANOVA con pruebas post hoc, etc."? Estoy muy interesado en eso.

1 votos

10voto

Dan Appleyard Puntos 223

Además de la excelente respuesta de @jb., permíteme añadir que puedes usar prueba de McNemar en el mismo conjunto de pruebas para determinar si un clasificador es significativamente mejor que el otro. Esto solo funcionará para problemas de clasificación (lo que el trabajo original de McNemar llama un "rasgo dicotómico") lo que significa que los clasificadores aciertan o fallan, sin espacio intermedio.

0 votos

¿Qué pasa en el escenario cuando el clasificador puede pasar? Como en el que dice que no sabe. ¿Aún puedes usar la prueba de McNemar entonces?

5voto

Evan Carroll Puntos 800

Dado que la distribución de errores de clasificación es una distribución binaria (o hay clasificación incorrecta o no la hay) --- diría que usar Chi-cuadrado no es sensato.

También es sensato comparar solo las eficiencias de los clasificadores que trabajan en los mismos conjuntos de datos --- El 'Teorema del almuerzo gratis' afirma que todos los modelos tienen la misma eficiencia promedio en todos los conjuntos de datos, por lo que qué modelo parecerá mejor dependerá solo de los conjuntos de datos elegidos para entrenarlos http://en.wikipedia.org/wiki/No_free_lunch_in_search_and_optimization.

Si estás comparando la eficiencia de los modelos A y B en el conjunto de datos D creo que la eficiencia promedio + la media es suficiente para tomar una decisión.

Además, si uno tiene muchos modelos que tienen una eficiencia razonable (y son linealmente independientes entre sí), prefiero construir un modelo de conjunto en lugar de simplemente elegir el mejor modelo.

0 votos

Pero para un único clasificador terminas con un conjunto de puntuaciones (por ejemplo, MSE en más de 100 divisiones), que podrían estar en el rango [0,1] por ejemplo. Creo que sería demasiado caro tomar los resultados de cada ejecución individual y analizarlos.

0 votos

Sí. Pero en este caso, "mean" + "stddev" es suficiente para probar si uno es significativamente mejor que el otro, al igual que con cualquier otra medida.

2 votos

No estoy tan seguro. Mean & stddev asume la distribución normal para empezar, y en segundo lugar esto no tiene en cuenta cuántas comparaciones se están haciendo (por ejemplo, podría ser necesario corrección de Bonferroni)

3voto

Chunkybaba Puntos 21

Recomiendo el artículo de Tom Dietterich titulado "Pruebas estadísticas aproximadas para comparar algoritmos de aprendizaje de clasificación supervisada". Aquí está el perfil del artículo en CiteSeer. Desde el resumen: "Este artículo revisa cinco pruebas estadísticas aproximadas para determinar si un algoritmo de aprendizaje supera a otro en una tarea de aprendizaje particular. Estas pruebas se comparan experimentalmente para determinar su probabilidad de detectar incorrectamente una diferencia cuando no existe (error de tipo I). ... La prueba de McNemar, se muestra tener un bajo error de Tipo I. ..."

2voto

halr9000 Puntos 3012

En mi humilde opinión, no debería haber ninguna diferencia entre la distribución de puntuaciones y la distribución de cualquier otro tipo de datos. por lo tanto, en esencia, todo lo que tienes que comprobar es si tus datos están distribuidos de manera normal o no, ver aquí. Además, hay excelentes libros que tratan a fondo esta cuestión, ver aquí (es decir, en pocas palabras: todos prueban si el resultado de dos clasificadores es significativamente diferente.. y si lo es, pueden combinarse en un modelo conjunto)

0 votos

Creo que es muy probable que no se distribuyan normalmente. En el caso habitual, las puntuaciones serán positivas y sesgadas hacia un extremo del rango (1 o 0, dependiendo de si estás utilizando la precisión o el error como medida).

0 votos

@tdc: En este caso, la distribución de la función (número de clasificaciones incorrectas) -> (número de modelos con este conteo de clasificaciones incorrectas) a menudo sería, en mi humilde opinión (IMHO), similar a una distribución de Poisson.

0 votos

@Dov: Probar cuál modelo es significativamente mejor (esa es la pregunta del OP) y probar si son diferentes es una cosa bastante diferente.

2voto

John Richardson Puntos 1197

No hay una sola prueba que sea apropiada para todas las situaciones; puedo recomendar el libro "Evaluating Learning Algorithms" de Nathalie Japkowicz y Mohak Shah, Cambridge University Press, 2011. El hecho de que se pueda escribir un libro de casi 400 páginas sobre este tema sugiere que no es un problema sencillo. A menudo me he encontrado con que no hay una prueba que realmente se ajuste a las necesidades de mi estudio, por lo que es importante tener un buen entendimiento de las ventajas y desventajas del método que finalmente se use.

Un problema común es que para conjuntos de datos grandes se puede obtener una diferencia estadísticamente significativa con un tamaño de efecto que no tiene relevancia práctica.

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