Unsupervised Learning چیست؟ – توضیح به زبان ساده

۳۷۵ بازدید
آخرین به‌روزرسانی: ۳۰ بهمن ۱۴۰۲
زمان مطالعه: ۱۸ دقیقه
دانلود PDF مقاله
Unsupervised Learning چیست؟ – توضیح به زبان سادهUnsupervised Learning چیست؟ – توضیح به زبان ساده

یادگیری ماشین زیرشاخه‌ای مهم از هوش مصنوعی است که کامپیوترها را قادر می‌سازد تا پیش‌بینی کرده و از محیط اطراف خود یاد بگیرند. همچنین از طریق پیش‌بینی و بررسی اطلاعات ورودی، به انسان‌ها نیز در تصمیم‌گیری کمک می‌کند. به نسبت نوع و ماهیت مسئله، برخی مدل‌های یادگیری ماشین به مجموعه‌داده‌های از قبل برچسب‌گذاری شده نیاز داشته و برخی دیگر فرایند یادگیری مستقلی دارند. روش «یادگیری نظارت نشده» (Unsupervised Learning) زیرمجموعه‌ای از یادگیری ماشین و متمرکز بر کشف الگوها و ساختارهای موجود در داده است که نیازی به داده‌های برچسب‌گذاری شده ندارد. در این مطلب از مجله فرادرس، به پرسش مهم یادگیری نظارت شده چیست پاسخ می‌دهیم و با گستره رایجی از انواع مختلف آن آشنا می‌شویم. نوعی ویژه از هوش مصنوعی که علاوه‌بر ایجاد توانایی یادگیری در الگوریتم‌ها، به آن‌ها این امکان را می‌دهد تا بدون نیاز به دخالت انسان، خود را با داده‌های جدید تطبیق دهند.

فهرست مطالب این نوشته
997696

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

مبانی Unsupervised Learning چیست؟

یادگیری نظارت نشده نوع خاصی از یادگیری ماشین است که الگوریتم‌ها را قادر می‌سازد تا بدون راهنمایی نمونه‌های برچسب‌گذاری شده، الگوها و همچنین ساختارهای نهفته را در داده‌ها کشف کرده و یاد بگیرند. هدف اصلی یادگیری نظارت شده در شناسایی روابط پنهان، گروه‌بندی داده‌ها و پیش‌بینی خودکار خلاصه می‌شود. در یادگیری نظارت نشده برخلاف «یادگیری نظارت شده» (Supervised Learning)، داده برچسب‌گذاری شده‌ای وجود ندارد. منظور از داده‌های برچسب‌دار، جفت ورودی-خروجی‌هایی با خروجی مشخص است. در عوض، الگوریتم‌های یادگیری نظارت نشده از داده‌های بدون برچسب استفاده می‌کنند؛ ویژگی که یادگیری نظارت نشده را نسبت به روش‌هایی مانند یادگیری نظارت شده، برای کاربردهایی همچون «تجزیه داده اکتشافی» (Exploratory Data Analysis) مناسب می‌سازد. بیشترین مورد استفاده یادگیری نظارت نشده در شناسایی اطلاعات پنهان و الگوهای موجود در داده‌ها است. با این حال، از آن‌جایی که گاهی اوقات خروجی شناخته شده نیست، یادگیری نظارت شده باعث بروز چالش‌هایی در علم داده می‌شود؛ از جمله:

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

یکی از چالش‌های اصلی در یادگیری نظارت شده، تعیین تعداد مناسب «خوشه‌ها» (Clusters) یا ابعاد لازم برای تحلیل داده است. چالشی که اغلب با عنوان «مسئله انتخاب مدل» (Model Selection Problem) از آن یاد می‌شود. در یادگیری نظارت شده از تکنیک‌هایی مانند روش Elbow و «تحلیل نیم‌رخ» (Silhouette Analysis) برای تخمین بهینه تعداد خوشه‌ها یا ابعاد استفاده می‌شود. از آن‌جایی که در این روش خبری از برچسب نیست که با خروجی مقایسه شود، نیاز به معیاری مشخص برای سنجش عملکرد مدل، چالشی دیگر در یادگیری نظارت نشده است.

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

تفاوت یادگیری نظارت شده و Unsupervised Learning چیست؟

در جدول زیر به برخی از تفاوت‌های کلیدی میان دو روش یادگیری نظارت شده و نظارت نشده اشاره شده است:

یادگیری نظارت شدهیادگیری نظارت نشده
هدفدستیابی به تابعی که ورودی‌ها را بر اساس جفت ورودی-خروجی‌های نمونه با یک‌دیگر تطبیق می‌دهدایجاد نمایشی دقیق از داده‌ها و تولید محتوای خلاقانه بر اساس آن
دقتدقت بالا و قابل اطمیناندقت کمتر و قابل اطمینان
پیچیدگیساده‌ترمحاسبات پیچیده
تعداد کلاسمشخصنامشخص
خروجیمقدار خروجی مشخص که به آن «سیگنال نظارتی» (Supervisory Signal) نیز گفته می‌شودفاقد مقدار خروجی متناظر با ورودی

داده ‌های برچسب‌دار و یادگیری نظارت شده

گفتیم که تفاوتی یادگیری نظارت شده و Unsupervised Learning چیست اما در ادامه باید با داده‌های برچسب‌دار نیز آشنا شویم تا درک بهتری از این موضوع پیدا کنیم. نمونه برچسب‌گذاری شده در واقع نوعی داده است که همراه با خروجی صحیح یا همان «متغیر هدف» (Target Variable) ارائه می‌شود. چنین داده‌هایی برای آموزش الگوریتم‌های یادگیری نظارت شده ضرورت دارند؛ تا حدی که فرایند یادگیری الگوریتم‌ها از طریق تحلیل ارتباط میان ویژگی‌های ورودی و خروجی‌های مرتبط صورت می‌گیرد. برچسب‌ها در حقیقت همان پاسخ‌های صحیحی هستند که الگوریتم سعی دارد در مواجهه با داده‌های جدید پیش‌بینی کند. به عنوان مثال، عمل دسته‌بندی تصاویر حیوانات به دسته‌های مختلف مانند سگ یا گربه را در نظر بگیرید. در چنین مسئله‌ای، داده‌های برچسب‌گذاری شده شامل تصاویر سگ‌ها و گربه‌ها همراه با برچسب متناظر با کلاس تصویر می‌شوند. طی فرایند آموزش، الگوریتم از این برچسب‌های نمونه برای یادگیری الگوها و ویژگی‌های متمایزکننده سگ‌ها و گربه‌ها استفاده می‌کند.

یادگیری ماشین نظارت شده
مثال یادگیری ماشین نظارت شده

پس از مرحله آموزش، مدل یادگیری ماشین می‌تواند کلاس درست مربوط به داده‌های جدید و بدون برچسب را پیش‌بینی کند. باید توجه داشت که فرایند برچسب‌گذاری نیازمند تجربه و مهارت انسانی است. بهره‌گیری مناسب از روش‌های ایجاد مجموعه‌داده به اندازه ساخت مدل‌های یادگیری نظارت شده کارآمد در «یادگیری تقویتی» (Reinforcement Learning) اهمیت دارد. زیرا داده‌های آموزشی تنها باید اطلاعات ضروری مورد نیاز الگوریتم را برای آموختن و همچنین کاهش پیچیدگی محاسباتی فراهم کنند. داده‌های برچسب‌گذاری شده یکی از اساسی‌ترین معیارهای متمایزگر میان یادگیری نظارت نشده و نظارت شده هستند.

انواع Unsupervised Learning چیست؟

همان‌طور که پیش‌تر نیز به آن اشاره شد، یادگیری نظارت نشده، تکنیکی برای گروه‌بندی داده‌های بدون برچسب یا پاسخ است. یادگیری نظارت نشده را می‌توان به دو دسته عمده تقسیم کرد:

هدف این روش‌ها، شناسایی الگو و ساختارهای داده، به‌منظور درک و تفسیر بهتر اطلاعات نهفته است.

روش خوشه‌بندی در Unsupervised Learning چیست؟

تکنیکی که نقاط داده شبیه به هم را بر اساس ویژگی‌های مشترک گروه‌بندی می‌کند. روش «خوشه‌بندی» (Clustering) به ماهیتِ نزدیکی نمونه‌های مختلف به یک‌دیگر پی برده و از همین جهت در موضوعات متنوعی از جمله «بخش‌بندی مشتریان» (Customer Segmentation)، «بخش‌بندی تصویر» (Image Segmentation)، «تصویربرداری پزشکی» (Medical Imaging)، «موتورهای توصیه‌گر» (Recommendation Engines) و «تشخیص ناهنجاری» (Anomaly Detection) کاربرد دارد. چند مثال رایج خوشه‌بندی به شرح زیر است:

  • گروه‌بندی ستاره‌ها بر اساس میزان روشنایی.
  • دسته‌بندی مستندات بر اساس عنوان.
  • طبقه‌بندی حیوانات و موجودات زنده.

در ادامه به بررسی دقیق‌تر برخی از رایج‌ترین تکنیک‌های خوشه‌بندی می‌پردازیم.

روش خوشه‌بندی K میانگین

الگوریتم «K میانگین» (K-means) یکی از الگوریتم‌های خوشه‌بندی است که داده‌ها را به تعدادی خوشه از پیش مشخص شده بخش‌بندی می‌کند. در این روش، ابتدا تعداد K «مرکز» (Centroid) خوشه به‌طور تصادفی انتخاب شده و سپس با کمینه‌سازی مجموع مربعِ فواصل میان هر داده و نزدیک‌ترین مرکز، مختصات آن به‌طور تصادفی عوض می‌شود.

 خوشه بندی K میانگین
خوشه بندی K میانگین با مقادیر مختلف K

این فرایند تا زمانی ادامه پیدا می‌کند که موقعیت هر مرکز ثابت شده یا تعداد تکرارها به حد نصاب خود رسیده باشد. الگوریتم K میانگین از نظر محاسباتی کارآمد است و با مجموعه‌داده‌های بزرگ به خوبی کار می‌کند. موقعیت اولیه مراکز خوشه از اهمیت بالایی در الگوریتم‌های خوشه‌بندی برخوردار است. اگر انتخاب موقعیت اولیه مناسب نباشد، نتیجه به سمت «کمینه محلی» (Local Minimum) همگرا شده و نتیجه قابل قبولی حاصل نمی‌شود. الگوریتمی بهینه است که در آن کمینه‌سازی درون هر خوشه صورت بگیرد. در فهرست زیر، چند مورد از روش‌های مختلف اندازه‌گیری فاصله میان نمونه‌های هر خوشه را ملاحظه می‌کنید:

  • «فاصله اقلیدسی» (Euclidean Distance): ابتدا مربع فواصل میان هر دو نمونه به‌دست آمده و ریشه دوم آن محاسبه می‌شود.

EuclideanDistance =k=1m(XikXjk)2 Euclidean \: Distance = \sqrt{\sum_{k=1}^m(X_{ik} - X_{jk})^2}

  • «فاصله منهتن» (Manhattan Distance): قدر مطلق فاصله میان جفت نمونه‌ها محاسبه می‌شود.

ManhattanDistance=maxkXikXjk Manhattan \: Distance = max_k\mid X_{ik} - X_{jk}\:\mid

  • «فاصله چبیشف» (Chebychev Distance): ابتدا تفاضل میان نمونه‌ها را حساب کرده و سپس اندازه مطلق را به‌دست می‌آورد.

ChebychevDistance=max(XAXB,YAYB) Chebychev \: Distance = max(\mid X_A - X_B\mid, \mid Y_A - Y_B\mid)

  • «فاصله مینکوسکی» (Minkowski Distance): معیاری که برای اندازه‌گیری فاصله از آن استفاده می‌شود.

MinkowskiDistance=(k=1dXikXjk1/p)p Minkowski \: Distance = (\sum_{k=1}^d\mid X_{ik} - X_{jk}\mid^{1/p})^p

روش خوشه‌بندی سلسله مراتبی

در روش «خوشه‌بندی سلسله مراتبی» (Hierarchical Clustering) از ساختاری درخت‌مانند برای نمایش ارتباط میان نقاطه داده استفاده می‌شود. روشی که به دو شیوه «ترکیبی» (Agglomerative) یا پایین-بالا و «تقسیمی» (Divisive) یا بالا-پایین قابل انجام است:

  • خوشه‌بندی ترکیبی: ابتدا هر نمونه یک خوشه است و الگوریتم به‌طور مکرر، نزدیک‌ترین جفت خوشه‌ها را با یک‌دیگر ادغام می‌کند تا زمانی که تنها یک خوشه باقی بماند.
  • خوشه‌بندی تقسیمی: در ابتدا تمامی نمونه‌ها در یک خوشه قرار گرفته و سپس هر خوشه به شیوه‌ای بازگشتی، تا زمانی که هر نمونه داده خوشه مجزای خود را تشکیل دهد، تقسیم می‌شوند.
مثال خوشه بندی
مثال خوشه‌بندی با سه کلاس

نتیجه نهایی خوشه‌بندی سلسله مراتبی، «دندروگرام‌های» (Dendrograms) قابل تفسیرتری نسبت به سایر روش‌ها دارد. اما هزینه محاسباتی این روش از خوشه‌بندی K میانگین بیشتر بوده و ممکن است برای مجموعه‌داده‌های بزرگ مناسب نباشد.

بر اساس رای ۱ نفر
آیا این مطلب برای شما مفید بود؟
اگر بازخوردی درباره این مطلب دارید یا پرسشی دارید که بدون پاسخ مانده است، آن را از طریق بخش نظرات مطرح کنید.
منابع:
DataCampWevolver
نظر شما چیست؟

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *