Back to posts

Confusion Matrix дүрслэх аргууд

Ангиллын загвар дээр бид Confusion Matrix – г дүрслэж таамагласан утгуудыг бодит утгын эсрэг харьцуулан харах хэрэгцээ шаардлага гардаг. Үүнийг Python дээр хийхдээ дараах 2 аргаар хийх боломжтой.

Арга 1. Seaborn Heatmap ашиглах

Шаардлагатай сангуудыг оруулж ирнэ.

# Шаардлагатай сангуудыг оруулж ирэх
import numpy as np
import matplotlib.pyplot as plt
from sklearn.metrics import confusion_matrix
import seaborn as sns

Жишээ өгөгдөл үүсгэх

# y_pred and y_true жишээ өгөгдөл үүсгэх
y_true = np.array([1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 0, 0, 1, 0, 1])
y_pred = np.array([1, 1, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 0, 0, 0, 1, 0, 0])

# confusion matrix бодох
cm = confusion_matrix(y_true, y_pred)

Дүрслэх

# Лабел нэр тодорхойлох
classes = ['Class 0', 'Class 1']

# Seaborn heatmap үүсгэх
sns.heatmap(cm, annot=True, cmap='Blues', fmt='g', xticklabels=classes, yticklabels=classes)

# Тэнхлэгийн нэр, гарчиг үүсгэж харуулах
plt.xlabel('Predicted labels')
plt.ylabel('True labels')
plt.title('Confusion Matrix')
plt.show()

Үр дүн:

Арга 2. ConfusionMatrixDisplay арга ашиглах

# ConfusionMatrixDisplay-г оруулж ирэх
from sklearn.metrics import ConfusionMatrixDisplay

# Графикны хэмжээг тодорхойлох
fig, ax = plt.subplots(figsize = (5,4), dpi = 100)

# Confusion matrix бодож гаргах
cm = confusion_matrix(y_true, y_pred)

# Графикыг дүрслэх
cmp = ConfusionMatrixDisplay(cm, display_labels = classes)
cmp.plot(ax=ax)
plt.title('Confusion Matrix')

Үр дүн:

error:
Back to top