یادگیری بی نظارت Unsupervised ML چیست؟
در یادگیری نظارت نشده (Unsupervised ML)، الگوریتم بدون دادن یک خروجی واضح و روشن، تنها در دادههای ورودی، به دنبال الگوها، شباهتها و تفاوتها میگردد. مانند بررسی دیتای دموگرافیکِ (جمعیت شناختی) مشتریها مثل سن، جنسیت و موقعیت مکانی و… تا الگوها را بشناسد.
چه زمانی از یادگیری نظارت نشده Unsupervised ML استفاده کنیم؟
از یادگیری بی نظارت Unsupervised ML، زمانی که نمیدانید چطور دیتا را طبقهبندی کنید و میخواهید الگوریتم برای شما الگوها و دستهبندی دیتا را انجام دهد، میتوانید استفاده کنید. البته ماشین باید در ابتدا برنامهنویسی شود که چطور از دیتا یاد بگیرد.
مثال یادگیری بی نظارت
به عنوان مثال تصاویر موز و سیب را به همراه دیتای اولیه و ویژگیهایشان به ماشین میدهیم درحالیکه برچسبگذاری نشدهاند و ماشین هم تا به حال این تصاویر را ندیده است. در این حالت ماشین بر اساس خصوصیات و شباهتهایی که تصاویر با هم دارند، خودش سیبها و موزها را دسته بندی میکند.
نکته: این مدل ماشین بدون استفاده از داده های برچسب گذاری شده و بدون هیچ معلمی می آموزد که در لاتین به آن Unsupervised Learning می گویند.
درواقع به حالت ساده تر می توان گفت که در ابتدا تمامی نمونه هایی که به آن داده می شوند، هیچ برچسبی ندارند در صورتی که در یادگیری نظارتی تمامی داده ها برچسب داشتند. به عنوان مثال، ایمیل های اسپم و غیر اسپم. در یادگیری بدون نظارت برچسبی بر روی داده ها وجود ندارد.
به عنوان مثال فرض کنید شما اطلاعات زیادی در رابطه با کاربران بلاگ شما دارید. شما ممکن است بخواهید یک الگوریتم خوشه بندی را اجرا کنید تا بتوانید تمامی ملاقات کننده های مشابه هم را در یک خوشه نگاه داری کنید.
درواقع در مثال بالا شما بدون هیچ کمکی از سیستم می خواهید تشخیص دهد هر کاربر متعلق خوشه ای است و آن بدون کمک شما ارتباطات را پیدا می کند.
فرض کنید که خروجی ماشین شما اینگونه است. 40 درصد ملاقات کنندگان شما مردهایی عاشق کتاب های علمی تخیلی هستند و عموما پست های بلاگ شما را غروب ها می خوانند. درحالی که 20 درصد آن ها جوان هایی علاقه مند به کتاب های داستانی و رمان هستند و بلاگ شما را تنها آخر هفته ها ملاقات می کنند. حتی شما می توانید با استفاده از hierarchical clustering algorithm در هر گروه آن ها را به گروه های کوچک تری تقسیم کنید و این کار ممکن به شما کمک بیشتری کند تا به هدفتان برسید.
الگوریتم های مصور سازی یکی از مثال های دیگری هستند که برای یادگیری بدون نظارت می توان زد. به عنوان مثال شما تعداد بسیار زیادی به آن عکس می دهید و هیچ برچسبی هم بر روی عکس ها نمی گذارید. (مثلا عکس ماشین به آن می دهید و نمی گویید که این ماشین است). الگوریتم مورد نظر تلاش می کند تا ساختاری میان آن ها پیدا کند و آن ها را خوشه بندی کند. درنهایت متوجه می شوند که چطور داده را سازماندهی کنند.
خوشه بندی (Clustering) در موضوعاتی استفاده میشود که شما میخواهید گروههای اصلی در دادهها را کشف کنید. مثل گروهبندی مشتریها بر اساس رفتار خریدشان. کلاسترینگ، اشیاء را براساس ویژگیهایی که با هم دارند گروهبندی میکند. هدف اصلی در خوشه بندی تقسیم بندی اشیاء به گونهای است که بیشترین شباهت در یک گروه و بیشترین تفاوت با اشیاء گروههای دیگر را دارا باشد. بعنوان تعریف سادهتر میتوان گفت که اشیاء در خوشه مخصوص خود دارای بیشترین شباهت و در برابر اشیای متعلق به خوشههای دیگر دارای بیشترین تفاوت هستند.
انواع الگوریتم های خوشه بندی
خوشه بندی مبتنی بر پارتیشن بندی (بخش بندی)
خوشه بندی سلسله مراتبی
خوشه بندی مبتنی بر مدل
خوشه بندی مبتنی بر تراکم
خوشه بندی فازی
خوشه بندی شبکه ای (Grid methods)
۱- خوشه بندی مبتنی بر پارتیشن بندی (بخش بندی)
در این نوع خوشه بندی ، الگوریتم، داده ها را به زیرمجموعه ای از k گروه، تقسیم بندی می کند. این k گروه یا خوشه باید از قبل تعریف شده باشند. این الگوریتم، داده ها را بر اساس این دو شرط تقسیم بندی می کند – اول، هر گروه باید حداقل یک نقطه (عضو) داشته باشد. دوم اینکه هر نقطه باید تنها به یک گروه تعلق داشته باشد. خوشه بندیK-Means رایج ترین نوع روش خوشه بندی مبتنی بر پارتیشن بندی است.
خوشهبندی کا-مینز نوعی از یادگیری بدون نظارت است و زمانی استفاده میشود که دادههایی بدون برچسب در اختیار داشته باشیم. هدف این خوشهبندی، پیداکردن بهترین گروه در داده است و k در آن تعداد خوشهها را تعیین میکند. دادهها بر اساس میزان شباهت در خوشهها قرار میگیرد. به صورتی که در نهایت دادهها با بیشترین شباهت در یک گروه قرار میگیرند و کمترین شباهت را با سایر گروهها دارند.
همانطور که از اسم آن مشخص است k تعداد خوشهها و means میانگینگیری را مشخص میکند. خوشهها دارای یکسری ویژگی هستند. ویژگی اول: تمامی دادههای درون یک خوشه باید بیشترین شباهت را با هم داشته باشند. ویژگی دوم: دادهها در خوشههای مختلف باید بیشترین تفاوت را باهم داشته باشند.
۲- خوشه بندی سلسله مراتبی
ایده اصلی این نوع خوشه بندی ، ایجاد سلسله ای از خوشه ها است. برخلاف خوشه بندی مبتنی بر پارتیشن بندی ، نیازی نیست داده ها از پیش تعریف شده باشند. دو روش برای انجام خوشه بندی سلسله مراتبی وجود دارد. رویکرد اول، رویکرد پایین به بالا است که به روش Agglomerative ( تجمعی ) نیز شناخته می شود و رویکرد دوم روش Divisive ( تجزیه ای ) است که سلسله ای از خوشه ها را در یک رویکرد بالا به پایین تجزیه می کند. در نتیجه این نوع خوشه بندی ، ما یک نمودار درختی به نام Dendogram به دست می آوریم.
۳- خوشه بندی مبتنی بر تراکم
در این نوع خوشه ها، مناطق متراکمی در فضای داده وجود دارند که توسط مناطق پراکنده از یکدیگر جدا می شوند. این نوع از الگوریتم های خوشه بندی نقش مهمی در ارزیابی و پیدا کردن ساختار های اشکال غیر خطی براساس تراکم دارند. الگوریتم پرطرفدار مبتنی بر تراکم، DBSCAn است که امکان خوشه بندی مکانی داده ها دارای نویز را فراهم می آورد. این روش از دو مفهوم استفاده می کند – دسترسی داده ها و اتصال داده ها.
۴- خوشه بندی مبتنی بر مدل
در این نوع روش خوشه بندی ، داده های مشاهده شده از یک توزیع متشکل از ترکیبی از دو یا چند مولفه خوشه حاصل می شود. علاوه بر این، هر خوشه مولفه، یک تابع چگالی دارد که دارای یک احتمال یا وزن در این ترکیب است.
۵- خوشه بندی فازی
در این نوع خوشه بندی ، نقاط داده می توانند به بیش از یک دسته تعلق داشته باشند. هر مولفه موجود در خوشه، یک ضریب عضویت دارد که به میزان حضور در آن خوشه مرتبط است. همچنین روش خوشه بندی فازی به عنوان روش خوشه بندی نرم شناخته می شود.
6-خوشه بندی شبکه ای
روش شبکه ای، دسته خاصی از روشهای مبتنی بر چگالی هستند که در آنها هر منطقه مجزا در فضای داده که جستوجو میشود، در ساختار شبکه مانندی قرار میگیرد. به طور مثال نقاط داده شده در صفحه مختصات رسم شده و سپس صفحه به شبکه هایی تقسیم میشود و نقاطی که با هم در یک شبکه قرار بگیرند در یک خوشه قرار دارند این روش به نسبت دیگر روشها درصد صحت پایین تری دارد ولی زمان بسیار مناسبی در خوشه بندی دارد.
کاربرد های خوشه بندی
۱- الگوریتم خوشه بندی برای شناسایی سلول های سرطانی
مجموعه داده های مربوط به سرطان را می توان با استفاده از الگوریتم های خوشه بندی تشخیص داد. در ترکیبی از اطلاعات متشکل از داده های سرطانی و غیر سرطانی، الگوریتم های خوشه بندی قادر به یادگیری ویژگی های مختلف موجود در داده هایی هستند که روی آن ها خوشه های حاصل را تولید می کنند. از طریق آزمایش ، مشاهده می کنیم که مجموعه داده های سرطانی، هنگامی که با یک الگوریتم غیرخطی بدون نظارت، خوشه بندی می شوند، نتایج دقیقی به ما می دهد.
۲- الگوریتم خوشه بندی در موتورهای جستجو
هنگام جستجو برای موارد خاص در گوگل ، شما ترکیبی از نتایج مشابه با سوال اصلی خود را دریافت می کنید. این نتیجه خوشه بندی است که اشیاء (نتایج جستجو) مشابه را در یک خوشه مجزا گروه بندی می کند و آن را به شما ارائه می کند. داده ها، براساس نزدیکترین شیء مشابه، به یک خوشه مجزا اختصاص داده می شوند و مجموعه ای جامع از نتایج را به کاربر ارائه می دهند.
۳- الگوریتم خوشه بندی در شبکه های بی سیم
با استفاده از الگوریتم خوشه بندی روی شبکه های بی سیم ، ما قادر به صرفه جویی در مصرف انرژی در حسگرهای بی سیم هستیم. برای بهبود مصرف انرژی و بهینه سازی انتقال داده ها در شبکه های بی سیم، الگوریتم های مختلف مبتنی بر خوشه بندی، وجود دارد.
۴- خوشه بندی برای دسته بندی مشتری
یکی از محبوب ترین کاربرد های خوشه بندی، در زمینه دسته بندی مشتری است. بر اساس تحلیل مبتنی بر کاربر، شرکت ها قادر به شناسایی مشتریانی هستند که ثابت کنند برای محصول یا خدمات شان، کاربرانی بالقوه (مستعد) هستند. خوشه بندی به آن ها این امکان را می دهد تا مشتریان را به چندین خوشه تقسیم کنند که براساس آن ها می توانند استراتژی های جدیدی را برای جلب توجه پایگاه مشتریان خود اتخاذ کنند.
5-بازاریابی: خوشه بندی میتواند در زمینه های مختلف بازاریابی کاربرد داشته باشد به طور مثال از خوشه بندی برای توصیف و کشف رفتار مشتری، توانایی خرید مشتری و برای انجام تبلیغات بهینه از اهداف بازاریابی میتوان استفاده کرد.
6-زیست شناسی: یکی دیگر از توانایی های خوشه بندی این است که آن را برای طبقه بندی در میان گونه های مختلف گیاهان و حیوانات استفاده کرد و این خود به زیست شناسان بسیار کمک میکند.
7-کتابخانه ها: در خوشه بندی کتاب های مختلف بر اساس موضوعات و اطلاعات استفاده می شود و بسیار کار جست و جوی کتاب را راحت تر کرده است.
8-بیمه: برای تأیید مشتریان ، بیمه نامه های آنها و شناسایی کلاهبرداری ها به کار می رود.
9-برنامه ریزی شهری: برای ساختن گروه هایی از اطلاعات خانه ها و بررسی ارزش های آنها بر اساس موقعیت جغرافیایی و سایر عوامل موجود استفاده میشود و از این گروه ها برای قیمت گذاری استفاده میشود تا نظر اشخاص در تعیین قیمت کمتر تاثیرگذار باشد.
10-مطالعات زلزله: با بررسی مناطق زلزله زده و بررسی وضعیت صفحات زمین میتوان مناطق خطرناک را تعیین کرد.
11-تقسیم بندی بازار: بخش بندي بازار، هدف گيري شرکت ها را به سمت بازارهاي مشخص تري هدايت مي کنند تا ارتباط موثرتري با مشتريان صورت پذيرد. که بدین وسیله بتوانند زمينه تصميم گيري سريع و منطبق با واقعيت را فراهم کند.
12-تحلیل شبکه اجتماعی: تشخیص انجمنها و خوشه بندی گراف در یک شبکه اجتماعی به ساده سازی و تحلیل بهتر آن کمک میکند. انجمنها گروه هایی از نودهای شبکه هستند که ارتباط تنگاتنگی با هم دارند و با نودهای بیرون از شبکه ارتباط نسبتا کمی دارند. بعنوان مثال اگر ارتباطات اجتماعی افراد را در یک شبکه اجتماعی داشته باشیم دوستان هم کلاس در یک دانشکده از یک دانشگاه ممکن است تشکیل یک گروه با ارتباطات تنگاتنگ بدهند و در حقیقت یک انجمن در این شبکه اجتماعی باشند.
13-سیستم توصیه گر: سیستمهای توصیه شده به منظور توصیف ایتم جدید بر اساس سلیقه کاربر طراحی شدهاند. با استفاده از الگوریتم های خوشه بندی میتوان سیستم های پیشنهاد دهنده ای طراحی کرد که بر اساس سلیقه و ذائقه مخاطب به او کالای مورد نیاز، فیلم و یا موزیک و غیره پیشنهاد دهند. بر اساس جست و جوهای قبلی یا برای پیشبینی ترجیحات کاربر بر اساس ترجیحات دیگر کاربران در خوشه کاربر استفاده میکنند.
14-در زمینه رباتیک الگوریتم خوشه بندی برای آگاهی موقعیت رباتیک برای ردیابی اشیاء و تشخیص خروجیها در دادههای سنسور استفاده میشود.
15-بخش بندی تصویر: خوشه بندی میتواند برای تقسیم یک تصویر دیجیتال به مناطق مشخص برای تشخیص مرز یا تشخیص شی مورد استفاده قرار گیرد.
تفاوت دسته بندی و خوشه بندی در داده کاوی:
دستهبندی: ایجاد و ساخت یک مدل برای پیشبینی دسته(برچسب) مربوط به یک داده جدید. به طور مثال یک مدل ساخته میشود تا بتواند با دریافت اطلاعات یک فرد مشخص کند که این مفرد مبتلا به یک بیماری مشخص هست یا نه؟
خوشهبندی: تقسیم مجموعهای از دادهها به زیر مجموعههایی به طوریکه دادههای داخل هر زیرمجموعه بیشترین شباهت را به هم و دادههای داخل مجموعههای مختلف بیشترین تفاوت را از هم داشته باشند. به طور مثال مجموعهای از متون را طی فرآیند خوشهبندی می توان تقسیمبندی کرد به طوری که متنهایی که دارای موضوعات مشابهی هستند در یک مجموعه قرار بگیرند.
لینک منابع:
منبع اول، منبع دوم، منبع سوم، منبع چهارم، منبع پنجم, منبع ششم، منبع هفتم، منبع هشتم، منبع نهم، منبع دهم، منبع یازدهم، منبع دوازدهم، منبع سیزدهم، منبع چهاردهم
مدرس: ملیحه باغبان، دانشجوی دکتری علم اطلاعات ودانش شناسی/ بازیابی اطلاعات و دانش
این مبحث برای دانشجویان علم اطلاعات و دانش شناسی گردآوری و ارائه می گردد