ارزیابی نتایج

از آنجایی که خوشه بندی بدون نظارت است، هیچ حقیقت پایه ای برای تأیید نتایج در دسترس نیست. فقدان حقیقت، ارزیابی کیفیت را پیچیده می کند. علاوه بر این، مجموعه داده های دنیای واقعی معمولاً خوشه های واضحی از نمونه ها را مانند مثال نشان داده شده در شکل 1 ارائه نمی دهند.

نموداری که سه گروه واضح از نقاط داده را نشان می دهد
شکل 1: نمودار داده ایده آل. داده های دنیای واقعی به ندرت به این شکل به نظر می رسند.

در عوض، داده‌های دنیای واقعی اغلب بیشتر شبیه شکل 2 هستند و ارزیابی بصری کیفیت خوشه‌بندی را دشوار می‌کند.

نموداری با نقاط داده تصادفی
شکل 2: نمودار داده های واقعی تر

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

فلوچارت تصویری از فرآیند تأیید
برای دیدن نسخه بزرگتر این نمودار اینجا را کلیک کنید.

مرحله 1: ارزیابی کیفیت خوشه بندی

ابتدا بررسی کنید که خوشه‌ها همانطور که انتظار دارید به نظر می‌رسند و نمونه‌هایی که مشابه یکدیگر در نظر می‌گیرید در همان خوشه ظاهر شوند.

سپس این معیارهای رایج مورد استفاده را بررسی کنید (نه یک لیست جامع):

  • کاردینالیته خوشه
  • قدر خوشه
  • عملکرد پایین دست

کاردینالیته خوشه

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

نمودار نموداری که کاردینالیته چندین خوشه را نشان می دهد. خوشه 5 کوچکتر از بقیه است.
شکل 2: کاردینالیته چند خوشه.

قدر خوشه

قدر خوشه مجموع فواصل تمام نمونه های یک خوشه تا مرکز خوشه است. قدر خوشه را برای همه خوشه ها ترسیم کنید و نقاط پرت را بررسی کنید. در شکل 3، خوشه 0 پرت است.

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

نمودار نمودار بزرگی چند خوشه را نشان می دهد. خوشه 0 بسیار بزرگتر از خوشه های دیگر است.
شکل 3: بزرگی چند خوشه.

بزرگی در مقابل اصلی بودن

ممکن است متوجه شده باشید که یک کاردینالیته خوشه بالاتر با قدر خوشه بالاتر مطابقت دارد، که منطقی به نظر می رسد، زیرا هر چه نقاط بیشتر در یک خوشه (کاردینالیته)، مجموع احتمالی فاصله آن نقاط از مرکز (قدر) بیشتر باشد. همچنین می‌توانید خوشه‌های غیرعادی را با جست‌وجوی خوشه‌هایی شناسایی کنید که این رابطه بین اصلی و بزرگی بسیار متفاوت از خوشه‌های دیگر است. در شکل 4، برازش یک خط به نمودار اصلی و بزرگی نشان می دهد که خوشه 0 غیرعادی است. (خوشه 5 نیز از خط فاصله زیادی دارد، اما اگر خوشه 0 حذف شود، خط برازش جدید به خوشه 5 بسیار نزدیکتر خواهد بود.)

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

عملکرد پایین دست

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

مرحله 2: سنجش شباهت خود را مجدداً ارزیابی کنید

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

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

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

مرحله 3: تعداد بهینه خوشه ها را پیدا کنید

k-means از شما می خواهد که تعداد خوشه های \(k\) را از قبل تعیین کنید. چگونه یک \(k\)بهینه را تعیین می کنید؟ سعی کنید الگوریتم را با افزایش مقادیر \(k\) اجرا کنید و مجموع همه بزرگی های خوشه را یادداشت کنید. با افزایش\(k\) ، خوشه ها کوچکتر می شوند و فاصله کل نقاط از مرکز کاهش می یابد. ما می توانیم این فاصله کلی را به عنوان یک ضرر تلقی کنیم. این فاصله را در برابر تعداد خوشه ها ترسیم کنید.

همانطور که در شکل 5 نشان داده شده است، در بالای یک \(k\)مشخص، کاهش ضرر با افزایش \(k\)حاشیه ای می شود. استفاده از \(k\)را در نظر بگیرید که در آن شیب ابتدا دارای یک تغییر شدید است که به آن روش زانو می گویند. برای نمودار نشان داده شده، \(k\) بهینه تقریباً 11 است. اگر خوشه های دانه دار بیشتری را ترجیح می دهید، می توانید با مراجعه به این نمودار، یک \(k\)بالاتر انتخاب کنید.

نموداری که زیان را در مقابل خوشه های استفاده شده نشان می دهد. زیان با افزایش تعداد خوشه ها کاهش می یابد تا جایی که حدود 10 خوشه به سطح می رسد
شکل 5: از دست دادن در مقابل تعداد خوشه ها

عیب یابی سوالات

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

  • آیا داده های شما به درستی مقیاس بندی شده اند؟
  • آیا معیار تشابه شما درست است؟
  • آیا الگوریتم شما عملیات معنایی معنی داری روی داده ها انجام می دهد؟
  • آیا مفروضات الگوریتم شما با داده ها مطابقت دارد؟