Bir karmaşıklık matrisi (confusion matrix) hesapla
Videoda gördüğün gibi, bir confusion matrix, bir modelin çıktısını kalibre etmek ve tahminlerinin tüm olası sonuçlarını (doğru pozitif, doğru negatif, yanlış pozitif, yanlış negatif) incelemek için çok kullanışlı bir araçtır.
Confusion matrix'ini oluşturmadan önce, olasılıkları sınıf tahminlerine dönüştürmek için tahmin edilen olasılıkları belirli bir eşikte "kesmen" gerekir. ifelse() ile factor()'ı aşağıdaki gibi birleştir:
pos_or_neg <- ifelse(probability_prediction > threshold, positive_class, negative_class)
p_class <- factor(pos_or_neg, levels = levels(test_values))
caret içindeki confusionMatrix(), tabloya ek olarak birçok faydalı yardımcı istatistik ekleyerek base R'deki table() fonksiyonunu geliştirir. Confusion matrix'i (ve ilişkili istatistikleri) tahmin edilen sonuçlar ile gerçek sonuçları kullanarak şu şekilde hesaplayabilirsin:
confusionMatrix(p_class, test_values)
Bu egzersiz
R ile caret kullanarak Machine Learning
kursunun bir parçasıdırEgzersiz talimatları
ifelse()kullanarak bir karakter vektörü oluştur:m_or_r.p0.5'ten büyükse pozitif sınıf"M", değilse negatif sınıf"R"olsun.m_or_r'yitest[["Class"]]ile aynı düzeylere sahip bir faktöre çevirerekp_classdeğişkenini oluştur.confusionMatrix()ile bir confusion matrix oluştur;p_classvetestveri setindeki"Class"sütununu geçir.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
# If p exceeds threshold of 0.5, M else R: m_or_r
# Convert to factor: p_class
# Create confusion matrix