خوشه بندی چیست و چگونه عمل می‌کند؟

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

خوشه بندی یا clustering یکی از زیر مجموعه های یادگیری بدون نظارت است.
خوشه بندی یا clustering یکی از زیر مجموعه های یادگیری بدون نظارت است.

کاربرد های خوشه بندی

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

خوشه بندی

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

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

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

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

توی خوشه بندی اغلب لازمه که داده ‌ها پیش پردازش بشه و پارامترهای مدل اصلاح بشه تا نتیجه حاصل، همان نتیجه‌ی دلخواه باشه.

تئوری کلی خوشه بندی

در روش خوشه بندی در مجموعه داده‌ای با n مشاهده و d بعد و با فرض تعداد خوشه های مورد نیاز k تایی هدف اصلی جدا کردن داده ها به k گروه یا خوشه به صورت {c={C1,C2,C3,…,Ck} است. هر دسته نماینده ای مانند میو آی(در ویرگول به دلیل محدودیت تایپ نمی‌تونم نماد رو تایپ کنم) دارد که معمولا میانگین (به عبارت دیگر مرکز) خوشه نامیده می‌شود، در این صورت:

نحوه محاسبه میو آی ها
نحوه محاسبه میو آی ها


و تعداد دقیق حالت های ممکن برای خوشه بندی n داده در kخوشه به صورت زیر است:

تعداد دقیق حالت ها برای خوشه بندی n مشاهده در K خوشه. این تعداد حالات برای n های بزرگ(تعداد رکورد های زیاد در مجموعه داده) بزرگ است.
تعداد دقیق حالت ها برای خوشه بندی n مشاهده در K خوشه. این تعداد حالات برای n های بزرگ(تعداد رکورد های زیاد در مجموعه داده) بزرگ است.


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

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