AliFallahi
AliFallahi
خواندن ۳ دقیقه·۳ سال پیش

آموزش مرحله به مرحله و با مثال معیارهای ارزیابی مدل های طبقه بندی و ماتریس درهم ریختگی (Confusion Matrix)

یکی از رایج ترین مسایل در مدل های یادگیری با ناظر (Supervised Learning) طبقه بندی داده ها (Classification) است. بدیهی است که اینگونه از مدل ها نیز نیاز به معیارهایی برای ارزیابی دارند. در این مطلب به بررسی ماتریس درهم ریختگی (Confusion Matrix) و معیارهایی که برپایه این ماتریس برای ارزیابی یک مدل طبقه بندی از آن ها استفاده می شود، می پردازیم.

معیارهای ارزیابی در کلسیفیکیشن
معیارهای ارزیابی در کلسیفیکیشن


در نظر بگیرید مدلی را پیاده سازی کرده ایم که هدف آن پیدا کردن سیب زمینی است در بین داده های ورودی است. یک مجموعه 10 عددی شامل 4 سیب زمینی و 6 پیاز را به مدل داده ایم.

معیارهای ارزیابی مدل های طبقه بندی
معیارهای ارزیابی مدل های طبقه بندی


همانطور که مشخص است عملکرد این مدل در تشخیص سیب زمینی ها دارای خطا بوده است، اما مقدار این خطا چقدر است؟

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

برای اندازه گیری خطا و یا به بیان دیگر، ارزیابی یک مدل طبقه بندی داده های خروجی را در کانفیوژن ماتریس (Confusion Matrix) وارد می کنیم. با توجه به اینکه مسئله ما فقط دارای یک حالت است (اینکه ورودی سیب زمینی است یا خیر) ماتریس درهم ریختگی از نظر تعداد سطر و ستون، به صورت زیر خواهد بود.

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


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

  • بخش True Positive

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

  • بخش False Positive

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

  • بخش False Negative

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

  • بخش True Negative

محتوای این بخش شامل تعداد گزینه های اشتباه (منفی) است که مدل به درستی آن ها را منفی تشخیص داده است.

معیارهای ارزیابی در یادگیری ماشین
معیارهای ارزیابی در یادگیری ماشین


پس با توجه به نتایج بالا، ماتریس درهم ریختگی (Confusion Matrix) در این مثال دارای مقادیر زیر است.

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

معیارهای رایج در این مسایل عبارت هستند از:

Precision, Recall, Accuracy, Specificity, F1

نتایج این فرمول ها اغلب در 100 ضرب می شود و به صورت «درصد» بیان می شوند.


  • صحت (Precision)

معیار پرسیژن، نشان می دهد که چقدر از نتایجی که توسط مدل مثبت اعلام شده اند، واقعا مثبت هستند. (چندتا از مواردی که اعلام شده سیب زمینی هستند، واقعا سیب زمینی هستند.)

فرمول محاسبه دقت و صحت در داده کاوی
فرمول محاسبه دقت و صحت در داده کاوی


  • پوشش (Recall)
Recall و precision چیست
Recall و precision چیست


معیار ریکال، نشان می دهد که چقدر از موارد مثبت داده شده به مدل، پیدا شده و به عنوان نمونه مثبت اعلام شده اند. ( از کل سیب زمینی ها چندتاشون توسط مدل به عنوان سیب زمینی شناسایی شدن.)

  • دقت (Accuracy)
Confusion matrix اموزش
Confusion matrix اموزش


معیار اکیوریسی، با محاصبه نسبت تشخیص های درست به کل داده ها، دقت مدل را محاسبه می کند.

نکته بسیار مهم و قابل توجه در مورد Accuracy این است که اگر جامعه آماری داده های ورودی دارای توزیع نرمال نباشند، این معیار نتیجه قابل اعتمادی نخواهد داشت. مثلا مدلی ارایه شده است تا در یک لیست 20 نفری که به صورت تصادفی انتخاب شده اند افراد «راست دست» را از «چپ دست» ها تشخیص دهد. ما می دانیم که در حالت عادی تعداد افراد چپ دست، کمتر از راست دست ها است. پس اینکه مدل ارایه شده خطای کمی در تفکیک این دو گروه داشته باشد، نمی تواند نشان دهنده عملکرد دقیق آن باشد. زمانی می توان از معیار Accuracy استفاده نمود که داده های ورودی دارای تقسیم بندی یکسان باشد. مثلا لیست ورودی شامل 20 نفر و متشکل از 10 نفر راست دست و 10 نفر چپ دست باشد.


  • تشخیص پذیری (Specificity)
آموزش ماتریس مجاورت
آموزش ماتریس مجاورت
  • امتیاز اف یک (F1)
تحلیل ماتریس درهم ریختگی
تحلیل ماتریس درهم ریختگی


نکته: معیار F1 Score از دو طریق قابل محاسبه است که در فرمول مشخص شده است.


مطلب تکمیلی


نکات تکمیلی:

اگر دوست داشتید، معیارهای معرفی شده را برای مسئله تشخیص سیب زمینی محاسبه کنید و در کامنت بنویسید.

سعی می کنم این مطلب رو با کدهای مربوطه هم به زودی تکمیل تر کنم :)



یادگیری ماشینماشین لرنینگ
آنچنان رفتم كه خود می خواستم
شاید از این پست‌ها خوشتان بیاید