الگوریتم خوشه بندی k-Medoids در متلب
در این بخش پیاده سازی الگوریتم خوشه بندی k-Medoids در نرم افزار MATLAB آماده کرده ایم که در ادامه به توضیحاتی در مورد معرفی این روش خوشه بندی تفاوت آن با روش خوشه بندی کی مینز پرداخته و فیلم و تصاویر خروجی پروژه قرار داده شده است.
الگوریتم خوشه بندی k-Medoids
الگوریتم k-Medoids که بهبود یافته الگوریتم k-Means است، عملکردی بسیار شبیه به الگوریتم k-Means دارد، با این تفاوت که در الگوریتم k-Medoids به جای استفاده از میانگین، از خود نمونه ها برای مرکز ثقل و نمایندگی خوشه ها استفاده می شود. با انتخاب نمونه های واقعی جهت نمایش یک خوشه، حساسیت روش نسبت به نمونه های نویز و خارج از محدوده کاهش می یابد. فراموش نکنید که الگوریتم k-Medoids به دلیل اینکه حتی تعداد کمی از این داده ها می تواند در مقدار میانگین تأثیر بگذارد، الگوریتم به اینگونه از داده ها بسیار حساس است.
بنابراین روش k-Medoids برخلاف روش k-Means به جای اینکه مقادیر میانگین از نمونه ها را دریافت کند، از مرکزی ترین نمونه موجود در خوشه به عنوان نمایش و نماینده خوشه استفاده می کند. به همین دلیل این الگوریتم حساسیت کمی نسبت به داده های خارج از محدوده از خود نشان می دهد. همانند k-Means در ابتدا باید مقدار k را مشخص کنید پس از آن تعداد k نمونه به عنوان نماینده های اولیه k خوشه به صورت اتفاقی انتخاب می شوند. پس از تشکیل ماتریس تشابه، هر یک از نمونه های باقی مانده (n-k نمونه) باید در یکی از این k خوشه قرار گیرند. توجه کنید که می توانیم به جای تشکیل ماتریس تشابه، فاصله هر یک از نمونه های باقی مانده را با k نمونه اولیه محاسبه کنیم. هر نمونه به نزدیک ترین نماینده تعلق دارد.
تا این مرحله از الگوریتم تفاوتی میان k-Means و k-Medoids مشاهده نمی شود. پس از این با جایگزینی یک نمونه از داده ها با یکی از k نمونه نماینده، کیفیت و مناسب بودن خوشه های بدست آمده از این جایگزینی بررسی می شوند. در صورت بهبود در نتایج، مجاز به جایگزینی نماینده مزبور خواهیم بود.
هیچ نظری ثبت نشده است