تعریف خوشه بندی
برای اینکه مفهوم خوشه بندی یا Clustering را بدانیم ابتدا لازم است تعریفی از خوشه بندی ارائه شود. در تعریف خوشه بندی می توان گفت: خوشه بندی، فرآیندی است که به کمک آن میتوان مجموعهای از اشیاء را به گروههای مجزا افراز کرد. هر افراز یک خوشه نامیده میشود. اعضاء هر خوشه با توجه به ویژگیهایی که دارند به یکدیگر بسیار شبیه هستند و در عوض میزان شباهت بین خوشهها کمترین مقدار است. در چنین حالتی هدف از خوشهبندی، نسبت دادن برچسبهایی به اشیاء است که نشان دهنده عضویت هر شیء به خوشه است.
به عنوان مثال ما جمعیتی را داریم. در این جمعیت هدف اگر تفکیک جنسیتی باشد میتوان دو گروه از این جمعیت را در نظر گرفت که با یکدیگر از لحاظ جنسیتی شبیه باشد. پس دو خوشه مردان و زنان را میتوان افراز کرد که جنسیتهایی که مشخصات آنها به مردان نزدیک باشد در خوشه مردان و دیگری در خوشه زنان قرار داشته باشند.
خوشه بندی میتواند روابط قبلی کشف نشده در یک مجموعه داده را کشف کند. کاربردهای زیادی برای تجزیه و تحلیل خوشه بندی وجود دارد. به عنوان مثال، در تجارت، از تجزیه و تحلیل خوشهای میتوان برای کشف و توصیف بخشهای مشتری برای اهداف بازاریابی استفاده کرد و در زیست شناسی نیز با توجه به ویژگیهای آنها میتوان از طبقه بندی گیاهان و حیوانات استفاده کرد.
روش خوشه بندی خوب
برای تعریف و ارائه یک روش خوشه بندی خوب بایستی تمامی الزامات و مزیتهای یک روش بخوبی مورد توجه قرار گیرد. الزامات روش خوشه بندی خوب عبارتند از:
- توانایی کشف همه خوشههای پنهان را داشته باشد.
- شباهت درون خوشه و عدم تمایز بین خوشه را رعایت کند.
- امکان برخورد با انواع مختلفی از ویژگیها را داشته باشد.
- با نویز و ویژگیهای دوردست مقابله کند.
- قابلیت خوشه بندی با ابعاد دادههای بالا را داشته باشد.
- مقیاس پذیر، تفسیر پذیر و قابل استفاده باشد.
انواع روشهای خوشه بندی دادهها
به طور کلی الگوریتمها یا روشهای خوشه بندی مبنای یکسان و مشابهی دارند ولی تفاوتهایی در شیوه اندازه گیری شباهت یا فاصله و همچنین انتخاب برچسب برای اشیاء هر خوشه در این روشها وجود دارد. در واقع همین تفاوتهای کوچک در شیوه محاسبه شباهتها سبب بوجود آمدن انواع مختلفی از روشها و الگوریتمهای خوشه بندی شده است. در ادامه چهار گروه اصلی از الگوریتمهای خوشه بندی همراه با نمونههایی از هر کدام بیان شده است. چهار گروه اصلی الگوریتمهای خوشه بندی عبارتند از:
- خوشه بندی سلسله مراتبی Hierarchical
- الگوریتم خوشه بندی Agglomerative
- الگوریتم خوشه بندی Divisive
- خوشه بندی وابسته به جزء Partitive
- الگوریتم خوشه بندی K Means
- الگوریتم خوشه بندی Self-Organizing Map
- خوشهبندی مبتنی بر چگالی Density-Bases Clustering
- الگوریتم خوشه بندی DBSCAN
- الگوریتم خوشه بندی OPTIC
- خوشهبندی مبتنی بر مدل Model-Based Clustering
- الگوریتم خوشه بندی EM
تفاوت خوشه بندی با طبقه بندی
تفاوت اصلی که بین خوشهبندی Clustering و طبقهبندی Classification وجود دارد، نداشتن برچسبهای اولیه برای مشاهدات است. در روشهای دسته بندی برای هر نمونه یک برچسب وجود دارد و از روی این برچسبها میتوان طبقه بدی و دسته بندی را انجام داد ولی در روشهای خوشه بندی این برچسبها وجود ندارد و معیار جدا سازی فقط میزان شباهت هر یک از نمونهها خواهد بود. به همین خاطر خوشه بندی یکی از روشهای یادگیری ماشین بدون ناظر هست و طبقه بندی به عنوان یک روش یادگیری با ناظر میباشد.
در خوشه بندی براساس ویژگیهای مشترک و روشهای اندازه گیری فاصله یا شباهت بین اشیاء یا نمونهها، باید برچسبهایی بطور خودکار نسبت داده شوند. در حالیکه در طبقهبندی برچسبهای اولیه موجود است و باید با استفاده از الگویهای پیشبینی قادر به برچسب گذاری برای مشاهدات جدید باشیم. به عنوان مثال در جمعیت مردان و زنان اگر از روش خوشه بندی برای تفکیک جنسیتی استفاده کنیم معیار جداسازی میزان شباهت افراد است و ما اطلاعی از جنسیت افراد نداریم ولی در روش طبقه بندی ما از جنسیت افراد خبر داریم.