Cómo probar la diferencia significativa entre dos algoritmos de clasificación

Obtén buenos datos

Necesita datos que realmente representen el tipo de datos en los que trabajará su modelo (ruidoso / desequilibrado …). Además, asegúrese de que no haya pérdida de datos.

Utilice la validación cruzada [estratificada] K-fold

Asegúrese de que el rendimiento no dependa de la división de datos. Puede hacerlo utilizando la validación cruzada K-fold [estratificada]. Después de eso, tendrás K estimaciones de rendimiento.

Use la métrica apropiada

Use la métrica adecuada para su problema. Si tiene un problema desequilibrado (muchas muestras de una clase y algunas de la otra), puede usar el Área bajo la curva ROC en lugar de la precisión general. Si se trata de un problema sensible al costo, el puntaje F1 podría ser más adecuado.

Asegúrese de tener la métrica apropiada para su aplicación y su dominio.

Pruebas estadísticas

Usando esas evaluaciones K, ejecuta una prueba estadística como la Prueba de Wilcoxon. Asegúrese de seleccionar la hipótesis alternativa ideal y el nivel de significación. También puede probar Friedman Test para comparaciones múltiples. Usar una prueba estadística apropiada es casi tan importante como seleccionar una métrica de evaluación apropiada.

Gráficos

Los gerentes [generalmente] no hablan estadísticas. Quieren ver la mejora. Los gráficos son la mejor manera de mostrar eso. Si está utilizando un método de conjunto, demuestre que agregar clasificadores base aumenta el rendimiento de clasificación. Usando una red neuronal, muestre el rendimiento en las iteraciones.

En general, las gráficas de dispersión (clasificación versus tiempo de respuesta), gráficas de caja, diagramas de diferencia crítica, gráfica de ganar-empatar-perder, son una forma de comparar.

Así que básicamente:

Prepara los datos. Ejecute los clasificadores en los mismos datos. Elija una buena métrica de rendimiento (o métricas). Utiliza pruebas estadísticas.

Una forma en que sugeriría es arrancar y obtener una distribución de esas métricas en el conjunto de datos usando los modelos, y luego ver si la métrica para otro modelo está a más de 2 desviaciones estándar y luego rechazar el valor nulo diciendo que su nuevo modelo está funcionando mejor .

Como regla general, Vincent Vanhoucke de Google dice que si 30 etiquetas cambiaron debido a algunos ajustes en el modelo, ese ajuste fue significativo.

More Interesting

¿Por qué algún algoritmo tiene la misma salida?

Cómo desarrollar un algoritmo para detectar rangos de negociación horizontales / patrones de consolidación

¿Cómo se debe describir y hablar sobre la recursividad cuando se hace pizarra o se programa un par?

¿Cuál es la última actualización del algoritmo SEO de Google?

¿Cómo debo entender los "Teoremas de no almuerzo gratis para la optimización"?

¿Puede alguien sin antecedentes de cálculo aprender estructuras de datos y algoritmos leyendo CLRS?

¿El conocimiento de algoritmos codiciosos a veces influye en la forma de tomar decisiones?

¿Por qué son importantes las pruebas para estudiar algoritmos y estructuras de datos? ¿Estudiar esas pruebas complejas es realmente necesario?

¿Cómo demostramos que un gráfico conectado con n nodos y más de n-1 aristas debe contener ciclo?

¿Podemos contar una tarea como una instrucción al calcular un algoritmo?

¿Cuándo debo comenzar a aprender algoritmos de C ++?

¿Cuáles son los mejores recursos para aprender R? Tratando de construir mi propio algoritmo de predicción basado en datos anteriores que tengo en archivos csv y que solía ser un desarrollador de Ruby hace un par de años

¿Cuáles son las cosas adicionales además de DS y Algo serían buenas para la entrevista?

¿Por qué el número total de respuestas en mi cuenta de Quora disminuyó repentinamente en 10?

Para verificar que la lista vinculada es circular, ¿cuál será la condición del bucle? Conozco un proceso adicional como tomar dos punteros. Por favor sugiérame