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, kursun bir parçasıdır
R ile caret kullanarak Machine Learning
Egzersiz 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ı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
# If p exceeds threshold of 0.5, M else R: m_or_r
# Convert to factor: p_class
# Create confusion matrix