الگوریتم خوشه بندی (تحلیل خوشه ای) گروه بندی اشیا بر اساس شباهتها است. اغلب به عنوان یک تکنیک تجزیه و تحلیل داده برای کشف الگوهای جالب در دادهها، مانند گروههایی از مشتریان بر اساس رفتار آنها، استفاده میشود.
خوشه بندی که یکی از الگوریتمهای یادگیری بدون نظارت است را میتوان در بسیاری از زمینهها، از جمله یادگیری ماشین، گرافیک کامپیوتری، تشخیص الگو، تجزیه و تحلیل تصویر، بازیابی اطلاعات، بیوانفورماتیک و فشردهسازی دادهها استفاده کرد.
خوشه یک مفهوم پیچیده است، به همین دلیل است که برای خوشه بندی الگوریتمهای مختلفی وجود دارد. مدلهای خوشهای مختلفی استفاده میشوند و برای هر یک از این مدلهای خوشهای، الگوریتمهای مختلفی میتوان ارائه کرد. خوشههای تولید شده توسط دو الگوریتم خوشه بندی متفاوت، قطعاً با همدیگر متفاوت خواهند بود.
خوشه بندی الگوریتمهای مختلفی دارد که هر یک ویژگیهای مختص به خود را داشته و رویکردهای متفاوتی دارند. از الگوریتم های خوشه بندی میتوان به DBSCAN، خوشه بندی سلسله مراتبی تجمعی، BIRCH، مدل مخلوط گاوسی، K-Means و Mean-Shift اشاره کرد. در ادامه به معرفی این الگوریتمها می پردازیم.
الگوریتم DBSCAN مخفف کلمه (Density-Based Spatial Clustering of Applications with Noise) به معنای خوشه بندی فضایی مبتنی بر چگالی برنامههای کاربردی با نویز است. خوشه بندی DBSCAN یک الگوریتم خوشه بندی فوقالعاده مفید برای مشکلات یادگیری بدون نظارت است.
DBSCAN یک الگوریتم خوشه بندی مبتنی بر چگالی است که با این فرض کار میکند که خوشهها مناطق متراکم در فضا هستند که توسط مناطق با چگالی کمتر از هم جدا شدهاند.
هیجان انگیزترین ویژگی الگوریتم DBSCAN این است که نسبت به موارد پرت مقاوم است. همچنین نیازی نیست که تعداد خوشهها از قبل گفته شود، برخلاف K-Means که باید تعداد مرکزها را مشخص کنیم.
K-Means Clustering یکی از سادهترین و محبوبترین الگوریتمهای خوشه بندی است که مجموعه داده بدون برچسب را در خوشههای مختلف گروهبندی میکند. در اینجا K تعداد خوشههای از پیش تعریف شدهای را که باید در فرآیند ایجاد شوند تعریف میکند، به طوری که اگر K=2، دو خوشه و برای K=3، سه خوشه و غیره وجود خواهد داشت.
این یک فرآیند تکراری برای تخصیص هر نقطه داده به گروهها است و به آرامی نقاط داده بر اساس ویژگیهای مشابه خوشهبندی میشوند. هدف این است که مجموع فواصل بین نقاط داده و مرکز خوشه را به حداقل برسانیم تا گروه صحیحی را که هر نقطه داده باید به آن تعلق داشته باشد شناسایی کنیم.
K-Means یک الگوریتم مبتنی بر مرکز است، که در آن هر خوشه با یک مرکز مرتبط است. هر خوشه دارای نقاط داده با برخی از مشترکات است و از خوشههای دیگر دور است. هدف اصلی این الگوریتم به حداقل رساندن مجموع فواصل بین نقطه داده و خوشههای مربوط به آنها است.
الگوریتم مجموعه داده بدون برچسب را به عنوان ورودی دریافت میکند، مجموعه داده را به k- تعداد خوشهها تقسیم میکند و این فرآیند را تا زمانی که بهترین خوشهها را پیدا نکند تکرار میکند. مقدار k باید در این الگوریتم از پیش تعیین شود.
الگوریتم خوشه بندی سلسله مراتبی (Agglomerative Hierarchical Clustering) یک نمونه محبوب از HCA است. این الگوریتم برای گروهبندی مجموعه دادهها در خوشهها، از رویکرد پایین به بالا پیروی میکند.
به این معنی که این الگوریتم هر مجموعه داده را در ابتدا به عنوان یک خوشه واحد در نظر میگیرد و سپس شروع به ترکیب نزدیکترین جفت خوشهها با هم میکند. این کار را تا زمانی انجام میدهد که همه خوشهها در یک خوشه واحد که شامل همه مجموعه دادهها است ادغام شوند. این سلسله مراتب خوشه ها به شکل دندروگرام نشان داده میشود.
مدل مخلوط گاوسی (Gaussian Mixture Models (GMM)) یک مدل نیست که یک توزیع احتمال است. این یک مدل جهانی مورد استفاده برای یادگیری یا خوشه بندی مولد بدون نظارت است. به آن خوشه بندی انتظار-بیشینهسازی یا خوشه بندی EM نیز گفته میشود و بر اساس استراتژی بهینهسازی است.
مدلهای مخلوط گاوسی برای نشان دادن زیرجمعیتهای با توزیع نرمال در یک جمعیت کلی استفاده میشوند. مزیت مدل های Mixture این است که نیازی ندارند که یک نقطه داده متعلق به کدام زیرجمعیت باشد. به مدل اجازه میدهد تا زیرجمعیت ها را بطور خودکار یاد بگیرد.
یک مدل مخلوط گاوسی (GMM) تلاش میکند تا ترکیبی از توزیعهای احتمال چند بعدی گاوسی را بیابد که به بهترین شکل هر مجموعه داده ورودی را مدلسازی کند.
خوشه بندی میانگین تغییر یک الگوریتم خوشه بندی یادگیری ماشینی بدون نظارت است که برای شناسایی خوشهها در یک مجموعه داده استفاده میشود. به طور گسترده ای در تجزیه و تحلیل دادههای دنیای واقعی (به عنوان مثال، تقسیم بندی تصویر) استفاده میشود، زیرا ناپارامتریک است و به هیچ شکل از پیش تعریف شدهای از خوشهها در فضای ویژگی نیاز ندارد.
این یک روش خوشه بندی مبتنی بر چگالی است که بر یافتن مناطق با چگالی بالا و جابجایی مکرر نقاط داده به سمت بالاترین چگالی نقاط تمرکز میکند، از این رو «میانگین تغییر» نامیده میشود. این الگوریتم برخلاف الگوریتم K-Means، به هیچ گونه اطلاعات قبلی در مورد تعداد خوشههای موجود در دادهها نیاز ندارد، و به ویژه برای تجزیه و تحلیل دادههای اکتشافی مفید است.
الگوریتم خوشه بندی K-means و خوشه بندی تجمعی، از متداولترین الگوریتمهای خوشهبندی به شمار میآیند. از آنجایی که این الگوریتمها به اندازه کافی مشکلات پردازش مجموعه دادههای بزرگ با منابع محدود (مانند حافظه و cpu) را برطرف نمیکنند، الگوریتم BIRCH وارد عمل میشود. این الگوریتم بخاطر انجام خوشه بندی دقیق روی مجموعه دادههای بزرگ و اجرای آسان آن بسیار مفید است.
(BIRCH) یک الگوریتم خوشه بندی است که میتواند مجموعههای داده بزرگ را با تولید خلاصهای کوچک و فشرده از مجموعه دادههای بزرگ که تا حد امکان اطلاعات بیشتری را حفظ میکند، خوشه بندی کند. سپس این خلاصه کوچکتر خوشه بندی میشود.
BIRCH اغلب برای تکمیل سایر الگوریتمهای خوشه بندی با ایجاد خلاصهای از مجموعه دادهای که اکنون الگوریتم خوشه بندی دیگر میتواند استفاده کند، استفاده میشود.
الگوریتم خوشه بندی کاربردهای بسیاری دارد که در این مقاله به سه مورد از آنها پرداختهایم:
دادهها و اسناد مختلف تحقیقاتی را میتوان بر اساس شباهتهای خاصی گروهبندی کرد. برچسبگذاری دادههای بزرگ واقعاً دشوار است. الگوریتم خوشه بندی میتواند در این موارد برای خوشه بندی متن و گروه بندی آن در دستههای مختلف مفید باشد. تکنیکهای بدون نظارت مانند LDA نیز در این موارد برای یافتن موضوعات پنهان در یک مجموعه بزرگ مفید هستند.
فرآیند تقسیم بازار هدف به دستههای کوچکتر و تعریفشدهتر به عنوان بخشبندی بازار شناخته میشود. این امر مشتریان/مخاطبان را به گروههایی با ویژگیهای مشابه (نیازها، موقعیت مکانی، علایق یا جمعیتشناسی) تقسیم میکند، جایی که هدف و شخصیسازی، تحت آن، یک تجارت بزرگ است.
توانایی نظارت بر پیشرفت عملکرد تحصیلی دانشجویان، موضوعی حیاتی برای جامعه دانشگاهی آموزش عالی بوده است. برای نظارت بر عملکرد تحصیلی دانش آموزان می توان از الگوریتم خوشه بندی استفاده کرد.
بر اساس نمره دانشآموزان، آنها به خوشههای مختلف گروهبندی میشوند (با استفاده از k-means، فازی c-means و غیره)، که در آن هر خوشه نشان دهنده سطوح مختلف عملکرد است. با دانستن تعداد دانشآموزان در هر خوشه، میتوانیم میانگین عملکرد یک کلاس را در کل بدانیم.
منبع: بخشی از محتوای این مقاله از وبسایت های medium، javatpoint و analyticssteps گرفته شده است.
Quick support