ماتریس درهم ریختگی یا Confusion Matrix چیست؟ | بیان ساده

ماتریس درهم ریختگی یا همان Confusion Matrix یک جدول است که برای ارزیابی عملکرد مدل‌های طبقه‌بندی استفاده می‌شود. کاربرد این ماتریس این است که پیش‌بینی‌هایی که مدل انجام داده را با نتایج واقعی مقایسه می‌کند تا مشخص شود کدام پیش‌بینی‌ها درست یا اشتباه بوده‌اند.

وقتی ماتریس درهم ریختگی را بررسی کنید، می‌توانید اجزایی مانند TP، TN، FP و FN و معیارهایی مانندAccuracy ،Precision ، Recall و F1-Score را بشناسید و عملکرد مدل‌تان را دقیق‌تر و بهتر تحلیل کنید.

فهرست مطالب
فهرست مطالب
تصویر شاخص مقاله ماتریس درهم ریختگی یا Confusion Matrix با تمرکز بر ارزیابی مدل‌های یادگیری ماشین و معیارهای سنجش عملکرد

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

ماتریس درهم ریختگی جدولی برای ارزیابی عملکرد مدل‌های طبقه‌بندی در یادگیری ماشین است. کاربرد این ماتریکس این است که پیش‌بینی‌های مدل را با نتایج واقعیِ مجموعه‌ی داده‌هایمان مقایسه می‌کند.

در واقع کاری که این ماتریس می‌کند این است که تعداد نمونه‌های واقعیِ هر کلاس را در برابرِ تعداد نمونه‌هایی که مدل برای هر کلاس پیش‌بینی کرده است، می‌گذارد تا با هم مقایسه‌شان کند. به این ترتیب مشخص می‌شود که کدام پیش‌بینی‌های مدل درست یا اشتباه بوده‌اند. به همین دلیل به آن «ماتریس خطا» (Error Matrix) هم می‌گویند.

نمایش ماتریس درهم ریختگی یا Confusion Matrix در یادگیری ماشین برای ارزیابی عملکرد مدل طبقه‌بندی و مقایسه پیش‌بینی‌ها با مقادیر واقعی

یکی از اصلی‌ترین روش‌های ارزیابی عملکرد مدل‌های طبقه‌بندی، ساختنِ ماتریس درهم ریختگی است. چون می‌توانیم از اطلاعاتی که در آن وجود دارد، برای محاسبه معیارهای مهمی مانند Precision و Recall استفاده کنیم. این ابزار برای انواع الگوریتم‌های طبقه‌بندی مانند Naïve Bayes، رگرسیون لجستیک و درخت تصمیم کارایی دارد و کتابخانه‌هایی مانند scikit-learn در پایتون هم بسیار راحت این قابلیت را در اختیارمان می‌گذارند.

آشنایی با مبانی علوم داده
مسعود کاویانی مسعود کاویانی
علوم داده

آشنایی با مبانی علوم داده

۴,۰ (۱۵۴۵ رای) ۷۹۱۲ نفر ۱۶۰ ساعت و ۲۹ دقیقه
رایگان
بیشتر

اجزای ماتریس درهم ریختگی

اجرای ماتریس درهم ریختگی شامل چهار بخش است که پیش‌بینی‌های مدل را به چهار دسته تقسیم می‌کند:

اجزای اصلی ماتریس درهم ریختگی شامل True Positive، True Negative، False Positive و False Negative برای تحلیل عملکرد مدل

True Positive (TP)

مثبتِ درست (TP) زمانی است که مدل نتیجه مثبت را به‌درستی پیش‌بینی کرده و نتیجه واقعی نیز مثبت بوده است.

مفهوم True Positive یا TP در ماتریس درهم ریختگی که نشان‌دهنده پیش‌بینی درست نمونه‌های مثبت توسط مدل یادگیری ماشین است

True Negative (TN)

منفیِ درست (TN) زمانی است که مدل نتیجه منفی را به‌درستی پیش‌بینی کرده و نتیجه واقعی نیز منفی بوده است.

False Positive (FP)

مثبتِ کاذب (FP) زمانی است که مدل به‌اشتباه نتیجه مثبت را پیش‌بینی کرده، درحالی‌که نتیجه واقعی منفی بوده است. به این خطا خطای نوع اول (Type I Error) نیز گفته می‌شود.

False Negative (FN)

منفیِ کاذب (FN) زمانی است که مدل به‌اشتباه نتیجه منفی را پیش‌بینی کرده، درحالی‌که نتیجه واقعی در واقع مثبت بوده است. به این خطا خطای نوع دوم (Type II Error) هم گفته می‌شود.

نتیجه واقعیپیش‌بینی مثبتپیش‌بینی منفی
مثبت واقعیمثبتِ درست (TP)منفیِ کاذب (FN)
منفی واقعیمثبتِ کاذب (FP)منفیِ درست (TN)

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

در یک ماتریس درهم ریختگی، ستون‌ها نشان‌دهنده مقادیر پیش‌بینی‌شده برای هر کلاس هستند و سطرها مقادیر واقعیِ همان کلاس را نشان می‌دهند. البته توجه داشته باشید که در بعضی مقاله‌ها و پژوهش‌ها ممکن است جای سطرها و ستون‌ها برعکس باشد.

خانه‌هایی که روی قطر اصلی ماتریس قرار دارند، همان پیش‌بینی‌های درستِ مدل برای هر کلاس هستند. بقیه خانه‌های ماتریس هم به ما نشان می‌دهند که مدل دقیقا کجاها کلاس‌ها را درست تشخیص نداده و نمونه‌ها را اشتباهی به کلاس دیگری نسبت داده است.

معیارهای ارزیابی بر اساس ماتریس درهم ریختگی

ماتریس درهم ریختگی نتایج پیش‌بینی مدل طبقه‌بندی را به ما نمایش می‌دهد و می‌توان از مقادیری که در آن وجود دارد، برای محاسبه معیارهای مختلف ارزیابی مدل استفاده کرد. مثلا Accuracy ،Precision ،Recall و F1-Score از معیارهایی هستند که با استفاده از همین مقادیر محاسبه می‌شوند.

Accuracy

معیار Accuracy به ما نشان می‌دهد که مدل چند درصد از پیش‌بینی‌هایش را درست انجام داده است. این معیار دیدِ کلی از عملکرد مدل می‌دهد، ولی اگر تعداد نمونه‌های کلاس‌ها با هم تفاوت زیادی داشته باشند (نامتوازن باشند)، Accuracy ممکنه گمراه‌کننده باشد.

مثلا فرض کنید مدل اکثر نمونه‌های یک کلاسِ پرتعداد را درست حدس می‌زند، در این صورت Accuracy بالایی می‌گیرد، اما ممکن است نتواند نمونه‌های کلاس دیگر را درست تشخیص دهد. برای همین، Accuracy به‌تنهایی معیار کاملی برای ارزیابی مدل‌های طبقه‌بندی نیست.

فرمول Accuracy:

Accuracy = (TP + TN) / (TP + TN + FP + FN)

Precision

معیار Precision نشان می‌دهد از بین تمام مواردی که مدل برای یک کلاس خاص پیش‌بینی کرده است، چندتایشان واقعا متعلق به آن کلاس بوده‌اند. به این معیار «ارزش پیش‌بینی مثبت» (Positive Predictive Value یا همان PPV) هم می‌گویند.

Precision وقتی اهمیت زیادی پیدا می‌کند که کاهش مثبت‌های کاذب (FP) مهم باشد. یعنی می‌خواهیم مواردِ مثبتِ کاذب یا همان FP را تا جای ممکن کم کنیم. مثلا در تشخیص ایمیل‌های هرز یا سیستم‌های شناسایی تقلب، Precision نقش کلیدی دارد.

فرمول Precision:

Precision = TP / (TP + FP)

نمونه کاربرد ماتریس درهم ریختگی در تشخیص ایمیل اسپم برای بررسی عملکرد مدل طبقه‌بندی در شناسایی پیام‌های ناخواسته

Recall

Recall معیاری است که به ما می‌گوید مدل چه نسبتی از نمونه‌های واقعیِ یک کلاس را توانسته درست شناسایی کند. به این معیار، «حساسیت» (Sensitivity) یا «نرخ مثبت واقعی» (True Positive Rate یا TPR) هم گفته می‌شود.

نقش Recall زمانی مهم می‌شود که از دست دادنِ نمونه‌های مثبت، پیامدهای خیلی بد داشته باشد. به فرض مثال در تست‌های پزشکی اصلا نمی‌خواهیم یک بیمار را اشتباهی سالم تشخیص دهیم.

فرمول Recall:

Recall = TP / (TP + FN)

معیار Recall در ماتریس درهم ریختگی برای اندازه‌گیری توانایی مدل در شناسایی نمونه‌های مثبت واقعی در مسائل طبقه‌بندی

F1-Score

معیار F1-Score کاری که می‌کند این است که Precision و Recall را با هم ترکیب می‌کند تا بین این دو معیار، تعادل منطقی برقرار شود. این معیار مخصوصا در مواقعی کاربرد دارد که مجموعه‌داده‌‌هایمان نامتوازن باشد و تعداد نمونه‌های کلاس‌ها در آن‌ برابر نباشد.

به خاطر داشته باشید که وقتی می‌خواهیم Recall را بالا ببریم، ممکن است مدل بعضی نمونه‌هایی را که به یک کلاس تعلق ندارند، به اشتباه در همان کلاس قرار دهد. این مثبت‌های کاذب (FP) می‌توانند باعث کاهش Precision شوند. F1-Score با ترکیب Precision و Recall، دید کلی‌تری از عملکرد مدل ارائه می‌دهد.

F1-Score با نام‌های F-Score و F-Measure شناخته می‌شود و میانگین هارمونیک Precision و Recall است.

فرمول F1-Score:

F1-Score = ۲ × (Precision × Recall) / (Precision + Recall)

معیار F1-Score در ماتریس درهم ریختگی برای ارزیابی عملکرد مدل‌های یادگیری ماشین با ترکیب Precision و Recall

مسیر یادگیری علم داده با آکادمی همراه اول

یادگیری علم داده به شما کمک می‌کند که بتوانید داده‌ها را تحلیل کنید، الگوهای پنهان در آن‌ها را شناسایی و  از این نتایج برای تصمیم‌گیری‌های بهتر استفاده کنید. مفاهیمی مانند «ماتریس درهم ریختگی» هم دقیقا در همین مسیر یادگیری ماشین قرار دارند و برای ارزیابی مدل‌های طبقه‌بندی به‌کار می‌روند. در واقع، یاد گرفتن این مهارت‌ها می‌تواند راهتان را برای ورود به حوزه‌هایی نظیرِ تحلیل‌گری داده، مهندسی داده و علم داده باز کند.

آکادمی همراه اول برای یادگیری علم داده، ۳ مسیر شامل «دانشمند داده»، «مهندس داده» و «تحلیل‌گر داده» را طراحی کرده است که در مجموع ۳۰ دوره هستند. اگر تازه می‌خواهید وارد این حوزه شوید، دوره «آشنایی با مبانی علوم داده» دوره‌ای مقدماتی و بدون پیش‌نیاز است که می‌تواند شروع خوبی برای آشنایی با این حوزه باشد.

اگر می‌خواهید یادگیری علم داده را از مباحث پایه شروع کنید، پیشنهاد می‌کنیم این مسیر یادگیری را با دانلود آموزش‌های زیر شروع کنید:

📥 دوره آشنایی با مبانی علوم داده

📥 مسیرهای آموزشی علوم داده

وبینار معرفی مسیر شغلی مهندس داده
آکادمی همراه
علوم داده

وبینار معرفی مسیر شغلی مهندس داده

(کمتر از ۵ رای) ۳۹۹ نفر ۶۰ ساعت و ۲۵ دقیقه
رایگان
بیشتر

مثال ساده از ماتریس درهم ریختگی

فرض کنید یک مدل برای تشخیص تصویر «سگ» یا «غیرسگ» استفاده می‌شود. در این مثال، ۱۰ تصویر بررسی شده است:

شمارهنتیجه واقعیپیش بینی مدلنتیجه
۱سگسگTP
۲سگغیرسگFN
۳سگسگTP
۴غیرسگغیرسگTN
۵سگسگTP
۶غیرسگسگFP
۷سگسگTP
۸سگسگTP
۹غیرسگغیرسگTN
۱۰غیرسگغیرسگTN

نتایج این مثال:

  • تعداد واقعی تصاویر سگ: ۶
  • تعداد واقعی تصاویر غیرسگ: ۴
  • True Positive (TP): ۵
  • False Positive (FP): ۱
  • True Negative (TN): ۳
  • False Negative (FN): ۱

در نتیجه، ماتریس نهایی به این شکل است:

واقعیتپیش‌بینی: سگپیش‌بینی: غیرسگ
سگTP = ۵FN = ۱
سگFP = ۱TN = ۳

پیوند یکتا: confusion-matrix
نام فایل: confusion-matrix.png
متن جایگزین: نمایش ماتریس درهم‌ریختگی برای تشخیص سگ و غیرسگ با مقادیر TP، TN، FP و FN

در این ماتریس، سطرها نتیجه واقعی و ستون‌ها پیش‌بینی مدل را نشان می‌دهند. در قطر اصلی، پیش‌بینی‌های درست قرار دارند. یعنی ۵ مورد سگ که به‌درستی سگ تشخیص داده شده‌اند (TP) و ۳ مورد غیرسگ که به‌درستی غیرسگ تشخیص داده شده‌اند (TN). دو خانه دیگر، پیش‌بینی‌های اشتباه را نشان می‌دهند، یعنی ۱ مورد سگ که غیرسگ پیش‌بینی شده است (FN) و ۱ مورد غیرسگ که سگ پیش‌بینی شده است (FP).

محدودیت‌های ماتریس درهم ریختگی

یکی از محدودیت‌هایی که می‌توانیم به آن اشاره کنیم، مربوط به معیار Accuracy است. همان‌طور که پیش‌تر هم اشاره کردیم، این معیار به‌تنهایی معیار کاملی برای ارزیابی مدل‌های طبقه‌بندی نیست. چون زمانی که تعداد نمونه‌های کلاس‌ها تفاوت زیادی داشته باشد، Accuracy ممکن است گمراه‌کننده باشد.

مثلا فرض کنید مدلی بیشتر نمونه‌های یک کلاس پرتعداد را به‌درستی پیش‌بینی می‌کند. این مدل ممکن است Accuracy بالایی داشته باشد، اما در تشخیص نمونه‌های کلاس دیگر عملکرد مناسبی نداشته باشد.

دومین محدودیت هم مربوط به F1-Score است. چون F1-Score به Precision و Recall وزن یکسانی می‌دهد، درحالی‌که این دو معیار ممکن است در همه مجموعه‌داده‌ها اهمیت یکسانی نداشته باشند. به‌عنوان راه‌حل، می‌توان از انواع اصلاح‌شده F1-Score استفاده کرد.

نتیجه‌گیری

ماتریس درهم‌ریختگی یکی از روش‌های ارزیابی مدل‌های طبقه‌بندی است که پیش‌بینی‌های درست و نادرست مدل را به ما نشان می‌دهد.

ما از مقادیر همین ماتریس استفاده می‌کنیم تا معیارهای کلیدی ارزیابی مثل Accuracy ،Precision ،Recall و F1-Score را حساب کنیم. البته این ماتریس فقط محدود به مسائلِ دو کلاسه نیست. ماتریس درهم ریختگی را می‌توان در مسائل طبقه‌بندی دودویی و چندکلاسه نیز استفاده کرد.

داستان سرایی داده
مهدی  ناصری مهدی ناصری
علوم داده

داستان سرایی داده

(کمتر از ۵ رای) ۶۷ نفر ۳۰۵ ساعت و ۱۳ دقیقه
بیشتر

پرسش‌های متداول (FAQ)

مطالعه پاسخ پرسش‌های متداول کمک‌تان می‌کند تا دید روشن‌تر نسبت به موضوع پیدا کنید. علاوه‌براین پیشنهاد می‌کنیم شما هم نظرات و سوالات‌تان را در بخش دیدگاه‌ها با ما به اشتراک بگذارید.

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

ماتریس درهم ریختگی یک جدول است که برای ارزیابی عملکرد مدل‌های طبقه‌بندی از آن استفاده می‌شود. کار این ماتریکس این است که نتایج واقعی یک مجموعه‌داده را با پیش‌بینی‌های مدل مقایسه می‌کند و پیش‌بینی‌های درست و نادرست را نشان می‌دهد.

۲- چهار جزء اصلی Confusion Matrix کدام‌اند؟

چهار جزء اصلی ماتریس درهم ریختگی شامل True Positive (TP) یا مثبتِ درست، True Negative (TN) یا منفیِ درست، False Positive (FP) یا مثبتِ کاذب و False Negative (FN) یا منفیِ کاذب هستند.

۳- تفاوت Precision و Recall چیست؟

Precision نشان می‌دهد چه نسبتی از نمونه‌هایی که مدل برای یک کلاس پیش‌بینی کرده، واقعا به همان کلاس تعلق دارند. اما Recall به ما می‌گوید که مدل چه نسبتی از نمونه‌های واقعی یک کلاس را توانسته شناسایی کند.

۴- ماتریس درهم‌ریختگی چه کاربردی دارد؟

اصلی‌ترین کاربرد ماتریس درهم ریختگی، همان ارزیابی عملکرد مدل‌های طبقه‌بندی است. می‌توان از مقادیری که در آن وجود دارد برای محاسبه معیارهایی مانند Accuracy ،Precision ،Recall و F1-Score استفاده کرد.

کاربردهای ماتریس درهم ریختگی در یادگیری ماشین برای ارزیابی مدل‌های طبقه‌بندی، تحلیل خطاها و بهبود عملکرد الگوریتم‌ها

۵- آیا Confusion Matrix فقط برای مسائل طبقه‌بندی استفاده می‌شود؟

ماتریس درهم ریختگی ابزاری برای مسائل طبقه‌بندی است و در در طبقه‌بندی دودویی و هم در طبقه‌بندی چندکلاسه خیلی خوب جواب می‌دهد و می‌توانید از آن استفاده کنید.

منبع:

دیدگاهتان را بنویسید

برای ثبت دیدگاه، تأیید امنیتی را انجام دهید.

Picture of فرشته واحدی

فرشته واحدی

من در حوزه فناوری و مهارت‌های دیجیتال، محتوای آموزشی و تخصصی برای وبلاگ آکادمی همراه اول می‌نویسم. با بررسی منابع معتبر، اطلاعات مفید و به روز جمع‌آوری می‌کنم. سعی دارم مطالب تخصصی را به شکلی ساده و قابل درک در اختیارتان قرار دهم.

مطالب مرتبط