خوشه‌بندی (Clustering) با استفاده از شبکه عصبی نگاشت خودسازمانده (SOM)

برای دریافت فیلم آموزشی آشنایی با روش خوشه بندی شبکه عصبی خودسازمانده SOM در نرم افزار Matlab با استفاده از یک مثال کاربردی که توسط گروه داده کاوی صدرا آماده شده است با ما تماس بگیرید. گزیده ایی از این فیلم در پیج اینستاگرام گروه داده کاوی صدرا گذاشته شده است.

 

خوشه‌بندی (Clustering)

 

تحلیل خوشه‌بندی (Cluster Analysis) نیز مانند تحلیل طبقه‌بندی (Classification Analysis) در یادگیری ماشین (Machine Learning)  به کار می‌رود. هر چند که تحلیل طبقه‌بندی یک روش با ناظر (Supervised) محسوب شده ولی خوشه‌بندی روشی بدون ناظر (Unsupervised)  است.

تحلیل خوشه‌بندی (Cluster Analysis) یا بطور خلاصه خوشه‌بندی، فرآیندی است که به کمک آن می‌توان مجموعه‌ای از اشیاء را به گروه‌های مجزا افراز کرد. هر افراز یک خوشه نامیده می‌شود. اعضاء هر خوشه با توجه به ویژگی‌هایی که دارند به یکدیگر بسیار شبیه هستند و در عوض میزان شباهت بین خوشه‌ها کمترین مقدار است. در چنین حالتی هدف از خوشه‌بندی، نسبت دادن برچسب‌هایی به اشیاء است که نشان دهنده عضویت هر شیء به خوشه است.

به این ترتیب تفاوت اصلی که بین تحلیل خوشه‌بندی و تحلیل طبقه‌بندی (Classification Analysis) وجود دارد، نداشتن برچسب‌های اولیه برای مشاهدات است. در نتیجه براساس ویژگی‌های مشترک و روش‌های اندازه‌گیری فاصله یا شباهت بین اشیاء، باید برچسب‌هایی بطور خودکار نسبت داده شوند. در حالیکه در طبقه‌بندی برچسب‌های اولیه موجود است و باید با استفاده از الگوی‌های پیش‌بینی قادر به برچسب گذاری برای مشاهدات جدید باشیم.

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

خوشه‌بندی تفکیکی (Partitional Clustering)

در این روش، براساس n‌ مشاهده و k گروه، عملیات خوشه‌بندی انجام می‌شود. به این ترتیب تعداد خوشه‌ها یا گروه‌ها از قبل در این الگوریتم مشخص است. با طی مراحل خوشه‌بندی تفکیکی، هر شیء فقط و فقط به یک خوشه تعلق خواهد داشت و هیچ خوشه‌ای بدون عضو باقی نمی‌ماند. اگر lij نشانگر وضعیت تعلق xi به خوشه cj باشد تنها مقدارهای ۰ یا ۱ را می‌پذیرد. در این حالت می‌نویسند:

 

شبکه عصبی خودسازمانده یا SOM

شبکه عصبی خودسازمانده یا SOM شبکه عصبی بدون نظارتی است که از نورون­های عصبی در ساختار نگاشتی منظم با ابعاد پائین تشکیل شده است. هر نورون دارای یک بردار وزن n بعدی است که در آن n برابر با ابعاد بردارهای ورودی است. بردارهای وزن، لایه ورودی را به لایه خروجی ( که نقشه یا لایه رقابتی نامیده می­شود) متصل می­کند. نورون­ها با تابع همسایگی به یکدیگر مانند شکل ذیل متصل شده است.

شکل۱: ساختار شبکه SOM

 

 

شکل۲: ساختار توپولوژی نورون­های همسایه بصورت مستطیلی یا شش ضلعی در ساختار شبکه SOM

هر بردار ورودی، براساس بیشترین شباهت، نورونی در لایه خروجی را که سلول برنده خوانده می­شود فعال می­کند. شیاهت معمولاً براساس فاصله اقلیدسی بین دو بردار طبق رابطه ذیل اندازه ­گیری می­ شود.

 

که در آن xi ،بردار ورودی i ام،  wij بردار وزنی متصل کننده ورودی i به نورون خروجی j و  Djحاصل جمع فاصله اقلیدسی بین نمونه ورودی xi  و بردار وزن ارتباطی آن به j امین سلول خروجی است که واحد نقشه نامیده می­شود.

علاوه بر وزن ارتباطیِ واحد دارای بیشترین انطباق (سلول عصبی برنده)، وزن­های سلول­های همسایه سلول برنده نیز بروزرسانی می­شود. مشاهدات نزدیک به هم در فضای ورودی، دو واحد نزدیک به هم در نقشه را فعال می­سازد. مرحله آموزش تا زمانی که بردارهای وزن به حالت پایداری برسد و دیگر تغییر نکند، ادامه می­یابد.

xi نمونه ورودی،  Wij(old)بردار وزن قبلی بین بردار ورودی xi  و بردار وزن ارتباطی به سلول عصبی خروجی j و hij تابع همسایگی و Wij(new) بردار وزن بروزرسانی شده بین سلول ورودی i و سلول خروجی j است.

 

 

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.


*