ComenzarEmpieza gratis

Calcula una matriz de confusión

Como viste en el vídeo, una matriz de confusión es una herramienta muy útil para calibrar la salida de un modelo y examinar todos los posibles resultados de tus predicciones (verdadero positivo, verdadero negativo, falso positivo, falso negativo).

Antes de crear tu matriz de confusión, necesitas “cortar” tus probabilidades predichas en un umbral dado para convertirlas en un factor de predicciones de clase. Combina ifelse() con factor() así:

pos_or_neg <- ifelse(probability_prediction > threshold, positive_class, negative_class)
p_class <- factor(pos_or_neg, levels = levels(test_values))

confusionMatrix() en caret mejora table() de R base añadiendo muchas estadísticas auxiliares útiles además de las tasas base de la tabla. Puedes calcular la matriz de confusión (y las estadísticas asociadas) usando los resultados predichos y los reales, por ejemplo:

confusionMatrix(p_class, test_values)

Este ejercicio forma parte del curso

Machine Learning con caret en R

Ver curso

Instrucciones del ejercicio

  • Usa ifelse() para crear un vector de caracteres, m_or_r, que sea la clase positiva, "M", cuando p sea mayor que 0.5, y la clase negativa, "R", en caso contrario.
  • Convierte m_or_r a factor, p_class, con los mismos niveles que test[["Class"]].
  • Crea una matriz de confusión con confusionMatrix(), pasando p_class y la columna "Class" del conjunto test.

Ejercicio interactivo práctico

Prueba este ejercicio y completa el código de muestra.

# If p exceeds threshold of 0.5, M else R: m_or_r


# Convert to factor: p_class


# Create confusion matrix
Editar y ejecutar código