Curva ROC
Capacidad de un modelo para discriminar.
Definición
La curva ROC enseña, para cada umbral de un clasificador, la tasa de falsos positivos en horizontal y la de verdaderos positivos en vertical. La diagonal es lo que acertaría un modelo que decide al azar; cuanto más se aleja la curva hacia la esquina superior izquierda, mejor discrimina, y el área bajo la curva lo resume en una cifra. Se usa para evaluar y comparar modelos de clasificación.
- Datos
- x · y
- Buena para
- Ver cuánto discrimina un clasificador entre dos clases en todos sus umbrales a la vez.
- Evítala cuando
- Cuando una de las clases es muy rara: la curva puede parecer buena aunque casi todos los positivos que señala el modelo sean falsos.
- Se lee bien
- Entre 5 y 100 elementos; dibuja hasta 1000
- Datos que faltan
- Dibuja el valor ausente como cero.
- Accesibilidad
- Lector de pantalla: resumen en texto
Forma de los datos
Qué columnas pide
| Columna | Tipo | Para qué |
|---|---|---|
x · opcional | number | POSICIONAL: la 1.ª columna numérica. Falsos positivos. El AUC se integra por trapecios EN EL ORDEN EN QUE LLEGAN LAS FILAS: la pieza no ordena, así que un dato desordenado da un AUC que no significa nada y aun así se imprime. |
y · opcional | number | POSICIONAL: la 2.ª columna numérica. Verdaderos positivos. Con menos de dos columnas numéricas la pieza devuelve cero filas. |
Tamaños
Recompuesta, no encogida
El motor vuelve a componer la pieza a cada ancho: los rótulos conservan su cuerpo y la figura gana alto si lo necesita.
Cuándo usarla
Tres preguntas antes de elegirla
¿Las dos clases están más o menos equilibradas?
Si los positivos son escasos —fraude, averías—, la curva de precisión y exhaustividad enseña el coste de los falsos positivos.
Sí: quédate con curva roc
No: usa Curva precisión-exhaustividad¿Interesa el comportamiento en todos los umbrales?
Si ya se ha elegido un umbral, la matriz de confusión enseña los aciertos y errores concretos en ese punto.
Sí: quédate con curva roc
No: usa Matriz de confusión¿Basta con saber si el modelo ordena bien los casos?
Si importa que la probabilidad que da el modelo se pueda tomar como probabilidad, hace falta la curva de calibración.
Sí: quédate con curva roc
No: usa Curva de calibraciónCódigo
La misma pieza, con tus datos
import { getPreset, renderComposition } from 'visx-render/node';
const spec = await getPreset('roccurve');
spec.data.rows = misFilas; // tus columnas
const { svg, warnings } = await renderComposition(spec);También en React con Chart y prepareComposition. Guía para desarrolladores →
Dudas
¿En qué orden van las filas?
En el de los umbrales, de modo que los falsos positivos crezcan. La pieza no ordena los puntos y calcula el área en el orden en que llegan: con filas desordenadas, el área que imprime no significa nada.
¿Qué columnas necesita?
Dos numéricas, por posición: la primera es la tasa de falsos positivos y la segunda la de verdaderos positivos. Con menos de dos no dibuja nada.
¿Qué significa la diagonal?
Es lo que acertaría un modelo que decide al azar. La distancia de la curva a ella es lo que el modelo aporta.
¿Qué hace si faltan datos?
Dibuja el valor ausente como cero. Si un hueco no es un cero en tus datos, rellénalo o elimina la fila antes de dibujar.
¿Cómo se ve en el móvil?
El motor la recompone a 360 px de ancho —rótulos, leyenda y alto— en vez de encoger la versión de escritorio.
Relacionadas
Otras formas de responder «si dos cosas van juntas»
Correlograma de autocorrelaciónsi una serie se parece a sí misma con retardo
Punto de equilibriovolumen donde ingresos y costes se igualan
Gráfico de burbujastres variables: dos ejes y el tamaño
Curva de calibraciónsi las probabilidades predichas se cumplen
Tendencia con banda de confianzaajuste lineal e incertidumbre de la estimación
Dispersión conectadados variables siguiendo su trayectoria en el tiempo