آلفا مشاور

الگوریتم های ماشین لرنینگ

محبوب ترین الگوریتم های ماشین لرنینگ

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

  1. اولین گروه از الگوریتم ها مربوط به سبک یادگیری آنها است.
  2. مورد دوم گروهی از الگوریتم ها بر اساس شباهت آنها در شکل یا عملکرد است (مانند گروه بندی حیوانات مشابه با هم).

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

بیایید شروع کنیم.

 

الگوریتم های ماشین لرنینگ

یک نمونه جالب از مجموعه ای از خطوط با بهترین تناسب. اعضای ضعیف خاکستری هستند، پیش بینی ترکیب شده قرمز است.

 

الگوریتم هایی که بر اساس سبک یادگیری گروه بندی شده اند

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

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

 

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

۱- یادگیری تحت نظارت

داده های ورودی داده های آموزشی نامیده می شوند و دارای برچسب یا نتیجه ای شناخته شده مانند هرزنامه / غیر هرزنامه یا قیمت یک سهام در هر زمان هستند. هر مدل از طریق یک فرایند آموزشی تهیه می شود که در آن لازم است پیش بینی کند و در صورت اشتباه بودن این پیش بینی ها اصلاح می شود. روند آموزش ادامه می یابد تا زمانی که مدل به سطح مطلوبی از داده های آموزش برسد.

برای نمونه می توان به طبقه بندی و رگرسیون اشاره کرد.

الگوریتم های نمونه شامل: رگرسیون لجستیک و شبکه عصبی انتشار مجدد.

 

الگوریتم های ماشین لرنینگ

 

۲- یادگیری بدون نظارت

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

به عنوان مثال می توان به خوشه بندی، کاهش ابعاد و یادگیری قوانین انجمنی اشاره کرد.

نمونه ای از الگوریتم ها به عنوان مثال: الگوریتم Apriori و K-Means.

 

الگوریتم های ماشین لرنینگ

 

۳- یادگیری نیمه نظارت شده

داده های ورودی ترکیبی از نمونه های برچسب دار و بدون برچسب است. یک مسئله پیش بینی مورد نظر وجود دارد اما مدل باید ساختارها را به منظور سازماندهی و همچنین پیش بینی داده ها بیاموزد.

به عنوان نمونه برای مسئله می توان به طبقه بندی و رگرسیون اشاره کرد.

الگوریتم های نمونه، تعمیمی به سایر روش های انعطاف پذیر هستند که در مورد نحوه مدل سازی داده های بدون برچسب فرضیاتی ارائه می دهند.

 

الگوریتم های ماشین لرنینگ

 

بررسی اجمالی الگوریتم های ماشین لرنینگ

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

 

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

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

این یک روش گروه بندی مفید است، اما کامل نیست. هنوز الگوریتم هایی وجود دارند که به راحتی می توانند در چندین دسته قرار بگیرند، مانند یادگیری مقادیر برداری که هم یک روش الهام گرفته از شبکه عصبی و هم یک روش مبتنی بر نمونه است. همچنین دسته هایی وجود دارند که به همین نام هستند که مسئله و کلاس الگوریتم مانند Regression و Clustering را توصیف می کنند.

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

 

الگوریتم های رگرسیون

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

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

  1. رگرسیون حداقل مربعات معمولی (OLSR)
  2. رگرسیون خطی
  3. رگرسیون منطقی
  4. رگرسیون گام به گام
  5. خطوط رگرسیون تطبیقی چند متغیره (MARS)
  6. هموار سازی محلی نمودار های پراکنده (LOESS)

 

الگوریتم های ماشین لرنینگ

 

الگوریتم های مبتنی بر نمونه

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

معروف ترین الگوریتم های مبتنی بر نمونه عبارتند از:

  1. k-نزدیکترین همسایه (kNN)
  2. یادگیری مقادیر برداری (LVQ)
  3. نگاشت خود سازماندهی (SOM)
  4. یادگیری وزنی محلی (LWL)
  5. پشتیبانی از ماشین های برداری (SVM)

 

الگوریتم های ماشین لرنینگ

 

الگوریتم های منظم سازی

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

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

  1. رگرسیون ریج
  2. حداقل عملگر انقباض و انتخاب مطلق (LASSO)
  3. شبکه الاستیک
  4. رگرسیون حداقل زاویه (LARS)

 

الگوریتم های ماشین لرنینگ

 

الگوریتم های درخت تصمیم

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

معروف ترین الگوریتم های درخت تصمیم عبارتند از:

  1. درخت طبقه بندی و رگرسیون (CART)
  2. تقسیم تکراری ۳ (ID3)
  3. ۵ و C5.0 (نسخه های مختلف یک رویکرد قدرتمند)
  4. Chi-مربع تشخیص تعامل خودکار (CHAID)
  5. تصمیم استامپ
  6. M5
  7. درختان تصمیم شرطی

 

الگوریتم های ماشین لرنینگ

 

الگوریتم های بیزی

روشهای بیزی روشهایی است که صریحا قضیه بیز را برای مسائلی مانند طبقه بندی و رگرسیون به کار می برد.

معروف ترین الگوریتم های بیزی عبارتند از:

  1. بیز ساده
  2. بیز ساده گاوسی
  3. بیز ساده چند جمله ای
  4. تخمین گر های تک وابسته متوسط (AODE)
  5. شبکه اعتقادی بیزی (BBN)
  6. شبکه بیزی (BN)

 

الگوریتم های ماشین لرنینگ

 

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

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

معروف ترین الگوریتم های خوشه بندی عبارتند از:

  1. k-Means
  2. k-Medians
  3. حداکثر انتظار (EM)
  4. خوشه بندی سلسله مراتبی

 

الگوریتم های ماشین لرنینگ

 

الگوریتم های یادگیری قوانین انجمنی

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

معروف ترین الگوریتم های یادگیری قواعد انجمنی عبارتند از:

  1. الگوریتم استقرایی
  2. الگوریتم Eclat

 

الگوریتم های ماشین لرنینگ

 

الگوریتم های شبکه عصبی مصنوعی

شبکه های عصبی مصنوعی مدل هایی هستند که از ساختار و / یا عملکرد شبکه های عصبی بیولوژیکی الهام گرفته شده اند. آنها دسته ای از تطبیق الگوها هستند که معمولا برای مشکلات رگرسیون و طبقه بندی استفاده می شوند اما در واقع یک زیرشاخه عظیم هستند که متشکل از صدها الگوریتم و تغییرات برای همه نوع انواع مسئله هستند.

توجه داشته باشید که ما به دلیل رشد گسترده و محبوبیت در این زمینه، Deep Learning را از شبکه های عصبی جدا کرده ایم. در اینجا ما به روشهای کلاسیک تری توجه می کنیم.

مشهورترین الگوریتم های شبکه عصبی مصنوعی عبارتند از:

  1. Perceptron
  2. گیرنده های چند لایه (MLP)
  3. گسترش به عقب
  4. نزول گرادیان تصادفی
  5. شبکه Hopfield
  6. شبکه عملکرد شعاعی (RBFN)

 

الگوریتم های ماشین لرنینگ

 

الگوریتم های یادگیری عمیق

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

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

  1. شبکه عصبی کانولوشن (CNN)
  2. شبکه های عصبی بازگشتی (RNN)
  3. شبکه های حافظه کوتاه مدت طولانی (LSTM)
  4. انکودرهای اتوماتیک انباشته شده
  5. ماشین Boltzmann عمیق
  6. شبکه های باور عمیق (DBN)

 

الگوریتم های ماشین لرنینگ

 

الگوریتم های کاهش ابعاد

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

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

  1. تجزیه و تحلیل مولفه های اصلی (PCA)
  2. رگرسیون مولفه های اصلی (PCR)
  3. رگرسیون حداقل مربعات جزئی (PLSR)
  4. نگاشت سامون
  5. مقیاس گذاری چند بعدی (MDS)
  6. پیگیری طرح
  7. تجزیه و تحلیل تفکیک کننده خطی (LDA)
  8. تجزیه و تحلیل تفکیک کننده ترکیبی (MDA)
  9. تجزیه و تحلیل تفکیک کننده درجه دوم (QDA)
  10. تجزیه و تحلیل تفکیک کننده انعطاف پذیر (FDA)

 

الگوریتم های ماشین لرنینگ

 

الگوریتم های گروهی

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

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

  1. افزایش (Boosting)
  2. جمع آوری خود راه انداز (بسته بندی)
  3. افزایش سطح بالا
  4. میانگین وزنی (ترکیب)
  5. تعمیم انباشته (انباشتن)
  6. ماشین های تقویت گرادیان (GBM)
  7. درختان رگرسیون تقویت شده با گرادیان (GBRT)
  8. جنگل تصادفی

 

الگوریتم های ماشین لرنینگ

 

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

بسیاری از الگوریتم ها تحت پوشش قرار نگرفتند. ما الگوریتم های مربوط به وظایف تخصصی را در روند ماشین لرنینگ، مانند موارد زیر پوشش ندادیم:

  1. الگوریتم های انتخاب ویژگی
  2. ارزیابی صحت الگوریتم
  3. اندازه گیری عملکرد
  4. الگوریتم های بهینه سازی

ما همچنین الگوریتم های زیرمجموعه های تخصصی ماشین لرنینگ را پوشش ندادیم، مانند:

  1. هوش محاسباتی (الگوریتم های تکاملی و غیره)
  2. بینایی کامپیوتر (CV)
  3. پردازش زبان طبیعی (NLP)
  4. سیستم های توصیه گر
  5. یادگیری تقویتی (Reinforcement Learning)
  6. مدل های گرافیکی
  7. و بیشتر…

این ها ممکن است موضوع پست های بعدی ما باشند.

 

 

احد الوندی

فارغ التحصیل مهندسی برق – گرایش الکترونیک

فعال در زمینه Data Science، هوش مصنوعی و اتوماسیون صنعتی

مدرس زبان برنامه نویسی Python و نرم افزار MATLAB

https://www.linkedin.com/in/ahadalvandi

ahadalvandi

    نوشته‌های مرتبط

    دیدگاه‌ها

    *
    *