ComeçarComece de graça

Calcular uma matriz de confusão

Como você viu no vídeo, uma matriz de confusão é uma ferramenta muito útil para calibrar a saída de um modelo e examinar todos os possíveis resultados das suas previsões (verdadeiro positivo, verdadeiro negativo, falso positivo, falso negativo).

Antes de criar sua matriz de confusão, você precisa “cortar” as probabilidades previstas em um determinado limiar para transformar probabilidades em um fator de previsões de classe. Combine ifelse() com factor() da seguinte forma:

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

confusionMatrix() no caret aperfeiçoa a função table() do R base ao adicionar várias estatísticas auxiliares úteis, além das taxas básicas na tabela. Você pode calcular a matriz de confusão (e as estatísticas associadas) usando os resultados previstos e os resultados reais, por exemplo:

confusionMatrix(p_class, test_values)

Este exercício faz parte do curso

Machine Learning com caret em R

Ver curso

Instruções do exercício

  • Use ifelse() para criar um vetor de caracteres, m_or_r, que seja a classe positiva, "M", quando p for maior que 0,5, e a classe negativa, "R", caso contrário.
  • Converta m_or_r em um fator, p_class, com níveis iguais aos de test[["Class"]].
  • Crie uma matriz de confusão com confusionMatrix(), passando p_class e a coluna "Class" do conjunto de dados test.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

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


# Convert to factor: p_class


# Create confusion matrix
Editar e executar o código