ماتریس درهم‌ریختگی (Confusion Matrix)

آموزش ماتریس درهم‌ریختگی: TP، FP، FN، TN و خواندن صحیح خطاهای مدل دسته‌بندی

ماتریس درهم‌ریختگی چیست؟

ابزار اصلی برای دیدن جزئیات خطاهای مدل دسته‌بندی. به‌جای یک عدد Accuracy، نشان می‌دهد مدل «کجا» و «چطور» اشتباه می‌کند.

ساختار ماتریس (باینری)

پیش‌بینی: مثبتپیش‌بینی: منفی
واقعی: مثبتTP ✅FN ❌
واقعی: منفیFP ❌TN ✅

چهار حالت

کدام خطا بدتر است؟

بستگی به مسئله دارد:

پیاده‌سازی

from sklearn.metrics import confusion_matrix

cm = confusion_matrix(y_test, y_pred)
print(cm)

# مصورسازی
from sklearn.metrics import ConfusionMatrixDisplay
ConfusionMatrixDisplay(cm).plot()

مثال خواندن ماتریس

برای ۱۰۰ بیمار (۲۰ بیمار واقعی، ۸۰ سالم):

[[70, 10],   # سالم: ۷۰ درست، ۱۰ FP
 [ 3, 17]]   # بیمار: ۳ FN، ۱۷ درست (TP)

مدل ۸۷٪ درست دارد ولی ۳ بیمار را از دست داده — در پزشکی این ۳ نفر مهم‌ترین عدد گزارش‌اند!

همیشه ماتریس درهم‌ریختگی را ببینید؛ Accuracy ۹۵٪ ممکن است پشتش، همه کلاس کم‌نما را اشتباه گفته باشد!

جمع‌بندی

این مبحث بخشی از دوره آموزش کامل ماشین لرنینگ است.

ابزارهای مرتبط