انواع الگوریتم ­های یادگیری ماشین

 

مقدمه ای بر انواع الگوریتم­های یادگیری ماشین

الگوریتم­ های یادگیری ماشین یا محاسبات هوش مصنوعی برنامه­هایی (ریاضی و منطقی) هستند که برای ارائه اطلاعات بیشتر، خود را برای عملکرد بهتر اصلاح می­کنند. «تطبیق» بخشی هوش مصنوعی به این معناست که این پروژه‌ها نحوه پردازش اطلاعات را پس از مدتی تغییر می‌دهند، همان‌طور که مردم نحوه پردازش اطلاعات را با یادگیری تغییر می‌دهند. بنابراین، یادگیری ماشینی یا محاسبه هوش مصنوعی، برنامه‌ای است که با توجه به نقد و بررسی انتظارات از خروجی­های ساخته شده از مجموعه داده‌ها، با روشی خاص پارامترهای خاص خود را تغییر می­دهد.

انواع الگوریتم­های یادگیری ماشین

معمولاً می­توان این الگوریتم­ها را بر اساس محرک خود به کلاس­هایی تقسیم کرد که این طبقه­بندی­های اساسی به شرح ذیل است:

  • یادگیری تحت نظارت
  • یادگیری بدون نظارت
  • یادگیری نیمه نظارتی
  • یادگیری تقویتی

 

یادگیری تحت نظارت چیست؟

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

نمونه ­هایی از یادگیری تحت نظارت:

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

الگوریتم­های یادگیری تحت نظارت به شرح زیر است:

  1. رگرسیون خطی

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

  1. درختان تصمیم

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

  1. طبقه بندی بیز ساده (Naive Bayes Classification)

طبقه‌بندی بیز ساده گروهی از طبقه‌بندی‌کننده‌های احتمالی پایه است که وابسته به بکارگیری نظریه بیز (Bayes’ theory) با خود نظارتی قوی (غیر پیچیده) ویژگی‌های بیز ساده است. نمونه­هایی از کاربرد این طبقه بندی در مدل­های قابل تایید عبارتند از:

  • برای مهر زدن ایمیل به عنوان هرزنامه بودن یا نبودن.
  • مرتب سازی یک خبر بر اساس موضوع (نوآوری، مسائل دولتی یا ورزش و …)
  • بررسی لمس ماده­ای که احساسات مثبت یا احساسات منفی را منتقل می­کند.
  • استفاده در برنامه نویسی تصدیق چهره.

 

  1. رگرسیون لجستیک (Logistic Regression)

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

به طور معمول، رگرسیون­ها در زندگی واقعی قابل استفاده هستند مانند:

  • بررسی امتیاز اعتباری
  • اندازه­گیری میزان موفقیت بازار یا شرکت
  • برای پیش­بینی درآمد هر شرکت یا هر محصول
  • آیا هر روز زلزله ای رخ می­دهد؟

 

  1. رگرسیون حداقل مربعات معمولی (Ordinary Least Squares Regression)

حداقل مربعات یک استراتژی برای اجرای رگرسیون مستقیم است. رگرسیون مستقیم عبارت است از برازش یک خط از طریق تمرکز­های زیاد. روش‌های بالقوه مختلفی برای انجام این کار وجود دارد و سیستم «کمترین مربعات معمولی» به این صورت است:

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

یادگیری بدون نظارت چیست؟

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

فرض کنید ما تصاویری از سیب، موز و انبه را به مدل نمایش می‌دهیم. سپس مدل مجموعه داده‌ها را خوشه­بندی کرده و با توجه به نمونه‌ها و ارتباطات خاص آن، مجموعه داده­ها را به آن گروه‌ها تقسیم می‌کند. اگر با اطلاعات دیگری مدل تقویت شود، آن اطلاعات را به یکی از دسته­های ساخته شده اضافه می­کند. https://www.educba.com/types-of-machine-learning-algorithms/?source=leftnav

نمونه­هایی از یادگیری بدون نظارت

  1. شما تعداد زیادی عکس از 6 فرد دارید، اما اطلاعاتی در مورد اینکه هر یک در کدام عکس­ها قرار دارند، ندارید. باید این مجموعه داده را در 6 پشته، هر کدام با عکس­های یک نفر، جدا کنید.
  2. شما ذراتی دارید که بخشی از آن­ها دارو هستند و قسمت­هایی نه. با این حال نمی­دانید که کدام ذره دارو است یا نه و برای یافتن داروها به محاسبه نیاز داری
  3.  

الگوریتم­های یادگیری بدون نظارت به شرح زیر است:

خوشه ­بندی

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

در زیر انواع مختلفی از خوشه­بندی که می­توانید از آن­ها استفاده کنید، آورده شده است:

  1. انتخابی (تقسیم بندی)
  2. مدل K-means
  3. تجمعی
  4. مدل خوشه­بندی سلسله مراتبی
  5. پوشش
  6. مدل Fuzzy C-Means
  7. احتمالی

انواع الگوریتم­های خوشه­بندی

  1. خوشه بندی سلسله مراتبی (Hierarchical Clustering)
  2. K-means Clustering
  3. K-NN (نزدیکترین همسایه k (k nearest neighbors))
  4. آنالیز مؤلفه­های اصلی (Principal Component Analysis)
  5. تجزیه مقادیر منفرد (Solitary Value Decomposition)
  6. تحلیل مولفه­های مستقل (Independent Component Analysis)

 

 

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

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

K-means Clustering

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

نتیجه این محاسبه مجموعه­ای از “نام­ها” است. این امر اجازه می­دهد تا اطلاعات به یکی از k جمع اشاره کند. در خوشه‌بندی k-means، هر جمع با ساختن یک مرکز برای خودش مشخص می‌شود. مرکزها مانند هسته دسته­ها هستند که نزدیکترین کانون­ها را به خود جلب می­کنند و آن­ها را به گروه اضافه می­کنند.

الگوریتم خوشه­بندی K-mean دارای دو زیر گروه که در ادامه آورده شده است، می­باشد:

  1. خوشه­بندی تجمعی (Agglomerative clustering)
  2. دندروگرام (Dendrogram)

 

  1. خوشه­ بندی تجمعی

این نوع از روش خوشه­بندی K-means با تعداد ثابتی از دسته­ها آغاز می­شود. سپس تمام اطلاعات را در تعداد دقیقی از گروه­ها معین می­کند. این استراتژی خوشه‌بندی به تعداد گروه‌های K به عنوان اطلاعات نیاز ندارد. روند تراکم با شکل دادن به هر داده به عنوان یک دسته منفرد آغاز می­شود.

این استراتژی از برخی تکنیک­های جداسازی استفاده می­کند، تعداد دسته­ها (یکی در هر تکرار) را با ترکیب فرآیندها کاهش می­دهد. در پایان، ما یک گروه بزرگ داریم که شامل هر یک از موجودیت­ها است. https://www.educba.com/types-of-machine-learning-algorithms/?source=leftnav

  1. دندروگرام

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

 

الگوریتم K-Nearest neighbors

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

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

الگوریتم آنالیز مؤلفه­های اصلی

یک مجموعه با بُعد پایین از ویژگی‌ها را از یک مجموعه دارای بُعد بالا استخراج می‌کند. یعنی به فضایی با ابعاد بالاتر نیاز دارید. شما باید یک زیر مجموعه از پیش‌بین‌ها که حاوی بیشترین اطلاعات درباره داده‌ها هستند برای آن فضا و فقط 200 امتیاز مهم آن فرض را انتخاب کنید. این امر به عنوان یک جزء اصلی این روش شناخته می­شود. زیرمجموعه­ای که انتخاب می­کنید شامل فضای دیگری است که از نظر اندازه کوچک و یک فضای منحصر به فرد می­باشد. با این حال بیشتر ماهیت چند وجهی اطلاعات را همانطور که می­توان انتظار داشت، حفظ می­کند.

 

یادگیری تقویتی چیست؟

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

نمونه­های از یادگیری تقویتی

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

 

یادگیری نیمه نظارتی چیست؟

نوعی از یادگیری است که محاسبه بر روی ترکیبی از اطلاعات نامگذاری شده و بدون برچسب انجام می­شود. به طور معمول، این ترکیب حاوی مقدار محدودی از اطلاعات نامگذاری شده و تعداد زیادی اطلاعات بدون برچسب است. اساس روش مذکور شامل این است که مهندس نرم­افزار ابتدا اطلاعات قابل مقایسه را با استفاده از یک روش یادگیری بدون کمک، گروه­بندی می­کند و سپس از اطلاعات نامگذاری شده فعلی برای نامگذاری بقیه اطلاعات بدون برچسب استفاده می­کند. نمونه­های استفاده معمولی از این نوع محاسبات دارای یک ویژگی مشترک هستند:

به دست آوردن اطلاعات بدون برچسب عموماً ساده است در حالی که نام گذاری اطلاعات مذکور بیش از حد گران است.

به طور طبیعی، می‌توان سه نوع محاسبه یادگیری را به‌عنوان تحت‌نظارت در نظر گرفت:

  • جایی که یک دانش‌آموز تحت نظارت معلم در خانه و مدرسه است
  • بدون نظارتی جایی که فرد دانش‌آموز کجا باید خودش ایده‌ای را بفهمد.
  • نیمه‌نظارتی جایی که مربی چند ایده را در کلاس نشان می­دهد و سوالاتی را به عنوان تکالیف مدرسه ارائه می­دهد که به ایده­های مشابه بستگی دارد.

نمونه­ هایی از یادگیری نیمه نظارتی

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

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

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

انواع الگوریتم ­های یادگیری ماشین

 

 

نتیجه گیری

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

 

 

مترجم: فاطمه فریادرس

منبع

همچنین اخبار های علمی را بخوانید:

اخبار

از این مطلب چقدر راضی بودید؟

روی ستاره کلیک کنید تا نظرتون ثبت بشه

0 / 5. تعداد رای دهندگان: 0

تا حالا امتیازی برای این مطلب ثبت نشده؛ با ثبت نظرتون مارو خوشحال می‌کنید

4 دیدگاه در “انواع الگوریتم ­های یادگیری ماشین

    • Farbod Esfandi میگوید:

      تئوری اطلاعات در درخت یادگیری یعنی استفاده از مفاهیمی مانند آنتروپی (Entropy) و کسب اطلاعات (Information Gain) برای تصمیم‌گیری در تقسیم داده‌ها.

      🔹 آنتروپی: میزان بی‌نظمی یا عدم قطعیت داده‌ها
      🔹 Information Gain: کاهش آنتروپی پس از تقسیم داده با یک ویژگی

      ✅ الگوریتم درخت یادگیری (مثل ID3 یا C4.5) ویژگی‌ای را انتخاب می‌کند که بیشترین Information Gain را داشته باشد تا بهترین جداسازی را انجام دهد.

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

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