Makine Öğrenmesi - Sınıflandırma İçin Model Değerlendirmesi

Confusion Matrix

Yayın tarihi :16-Oca-22

Confusion Matrix (Karışıklık Matrisi), bir sınıflandırma algoritmasının doğruluğunu ölçmek için oluşturulan matrisdir.

Kullanabilmek için kütüphanesinin içeri aktarılması gerekmektedir.

from sklearn.metrics import confusion_matrix

Söz dizimi: confusion_matrix(y_true, y_pred, *, labels=None, sample_weight=None, normalize=None)

  • y_true, gerçek değerlerin olduğu listeyi temsil eder.
  • y_pred, tahmin edilen değerlerin olduğu listeyi temsil eder.
  • normalize, matrisi normalleştirir. 3 farklı değer alır: "true", "pred", "all". Varsayılan olarak None'dir.

Aşağıda bulunan binary(ikili) sınıflandırma da 2x2 matris oluşturacaktır. ([[TP,FN],[FP,TN]]) 

Örnek-1: 2x2 Confusion Matrix oluşturalım.

#x: gerçek değerler
#y: tahmin değerleri
x=["Kedi","Kedi","Köpek","Köpek","Kedi"]
y=["Kedi","Köpek","Köpek","Kedi","Köpek"]
confusion_matrix(x,y)

Çıktı:

array([[1, 2],
       [1, 1]], dtype=int64)

Örnek-2: 3x3 Confusion Matrix oluşturalım.

#x: gerçek değerler
#y: tahmin değerleri
x=["Kedi","Kedi","Köpek","Köpek","Kedi","Fare"]
y=["Kedi","Köpek","Köpek","Kedi","Köpek","Fare"]
confusion_matrix(x,y,normalize="all")

Çıktı:

array([[0.16666667, 0.        , 0.        ],
       [0.        , 0.16666667, 0.33333333],
       [0.        , 0.16666667, 0.16666667]])

Örnek-3: nxn Confusion Matrix oluşturalım

#x: gerçek değerler
#y: tahmin değerleri
x=[1,2,5,7,8,9,4,2,1,3,6]
y=[2,3,4,5,8,9,4,3,1,3,6]
confusion_matrix(x,y)

Çıktı:

array([[1, 1, 0, 0, 0, 0, 0, 0, 0],
       [0, 0, 2, 0, 0, 0, 0, 0, 0],
       [0, 0, 1, 0, 0, 0, 0, 0, 0],
       [0, 0, 0, 1, 0, 0, 0, 0, 0],
       [0, 0, 0, 1, 0, 0, 0, 0, 0],
       [0, 0, 0, 0, 0, 1, 0, 0, 0],
       [0, 0, 0, 0, 1, 0, 0, 0, 0],
       [0, 0, 0, 0, 0, 0, 0, 1, 0],
       [0, 0, 0, 0, 0, 0, 0, 0, 1]], dtype=int64)
Paylaş:

Yorum Yap (*Yorumunuza kod eklemek isterseniz Kod Parçacığı Ekle butonuna tıklayarak ekleyebilirsiniz.)

Yorumlar

Henüz hiç yorum yapılmamış, ilk yorum yapan sen ol.