الگوریتم های یادگیری ماشین – معرفی مشهورترین الگوریتم های یادگیری ماشین
الگوریتم های یادگیری ماشین – گشت و گذاری در مشهورترین الگوریتم های یادگیری ماشین ، در این پست از وب سایت مطلب دی ال قصد داریم مشهورترین الگوریتم های یادگیری ماشین را معرفی نماییم. در این مقاله سعی میکنیم، دیدی نسبت به یادگیری ماشین و الگوریتم های معروف آن ارائه دهیم. الگوریتم های یادگیری ماشین فراوانی وجود دارند از جمله الگوریتم های یادگیری با ناظر ، الگوریتم های یادگیری بدون ناظر ، یادگیری نیمه نظارتی ، یادگیری تقویتی و… . لذا مهم است که بدانیم هر الگوریتم در کدام شاخه قرار میگیرد.
گشت و گذاری در مشهورترین الگوریتم های یادگیری ماشین
در این مقاله، ما دو روش برای دسته بندی این الگوریتم ها ارائه میدهیم:
- روش اول: دسته بندی الگوریتم ها بر اساس استایل و شکل آنها.
- روش دوم: دسته بندی الگوریتم ها بر اساس شباهت و کارکرد آنها.
جفت روشها مفید هستند، اما در این گشت و گذار بیشتر دسته بندی دوم مد نظر است، که این دسته بندی خود الگوریتم های متنوعی را شامل میشود. بر اساس این پست شما در انتهای این مطالعه دیدی نسبتا جامع در مورد الگوریتم های یادگیری ماشین در زمینه یادگیری با نظارت دست خواهید یافت. پس حدود ۵ دقیقه وقتتان را در اختیار ما قرار دهید و پس از آن به دیدی جامع از الگوریتم های یادگیری ماشین دست پیدا کنید.
دسته بندی یا الگوریتم های ماشین لرنینگ بر اساس استایل یا سبک
روشهای متنوعی بر اساس کارکرد الگوریتمها، ارتباط آن با محیط پیرامون و نحوه ی انجام آزمایشات، نحوه ی دادن و گرفتن دادهها جهت تقسیم بندی الگوریتم های یادگیری ماشین وجود دارد. تعداد استایل هایی که الگوریتم های یادگیری ماشین بر اساس آن طبقه بندی میشوند، کم است. در حالت کلی سه روش برای دسته بندی الگوریتم ها بر اساس استایل وجود دارد.
۱- الگوریتم های یادگیری با ناظر
الگوریتم های یادگیری با ناظر ، در دسته الگوریتم های یادگیری ماشین بر اساس استایل قرار می گیرد.دادههای ورودی، دادههای آموزش نامیده میشود. و این دادهها دارای برچسب یا خروجی از پیش تعیین شده هستند. به عنوان مثال در دسته بندی ایمیل های هرزنامه و غیرهرزنامه در داده های آموزش مشخص است که هر ایمیل هرزنامه هست یا خیر؟
در این حالت مدل در یک فرآیند آموزشی جهت ساخت مدل پیش بینی گر دقیق ساخته میشود. فرآیند آموزش تا رسیدن به یک سطح خاص از دقت مدل ادامه مییابد.
نمونه ای از این الگوریتم ها عبارتند از: الگوریتم های طبقه بندی و رگرسیون.
همچنین بخوانید: ارزیابی الگوریتم های با ناظر در یادگیری ماشین جهت تشخیص نفوذ

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

بر اساس شکل بالا، در این حالت هیچ کدام از داده ها دارای برچسب نیستند و الگوریتم های یادگیری ماشین بدون ناظر باید به صورت موثر ارتباطات و ساختارها را داده ها کشف کنند.
نمونه هایی از یادگیری بدون ناظر عبارتند از:
- خوشه بندی مانند الگوریتم K-means
- کشف الگورهای پرتکرار، مانند الگوریتم Apriori
- کاهش ابعاد دادهها مانند الگوریتم PCA
- و …
بر اساس موارد گفته شده در یک فرآیند داده کاوی یا یادگیری ماشین الگوریتم های بدون ناظر بیشتر در فاز پیش پردازش مورد استفاده قرار میگیرند.
۳- یادگیری نیمه نظارتی
این روش یادگیری ما بین روش های نظارتی و بدون نظارت قرار میگیرد. بنابراین داده های ورودی ترکیبی از دادههای با برچسب (یادگیری نظارت شده) و داده های بدون برچسب (یادگیری بدون ناظر) است. در این حالت یک مسئله برای پیش بینی وجود دارد (طبقه بندی یا رگرسیون).لذا مدل باید ساختار موجود در دادهها را برای سازماندهی به آن و هم چنین ارائه پیش بینی مطلوب به خوبی کشف کند و به عبارتی دیگر یاد بگیرد.

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

دسته بندی الگوریتم های یادگیری ماشین بر اساس شباهت
الگوریتم ها اغلب بر اساس عملکردشان (اینکه چگونه کار میکنند) گروه بندی میشود، به عنوان مثال الگوریتم های مبتنی بر درخت و یا الگوریتم های مبتنی بر شبکه عصبی.
بنابراین طبقهبندی الگوریتم ها بر این اساس می تواند بسیار مفید و کارا باشد. در این بخش قصد داریم این موارد را مورد بررسی قرار دهیم.
این روش یک روش مفید برای گروه بندی است، اما یک روش کامل و عالی نیست. چرا که الگوریتم هایی وجود دارند که میتواند در دستههای مختلف قرار گیرند به عنوان مثال یادگیری کوانتیزاسیون برداری یا LVQ میتواند در جفت دسته های شبکه عصبی و یادگیری مبتنی بر نمونه قرار گیرد. الگوریتم هایی وجود دارند که دارای نام شبیه به هم برای تشریح مسائل هستند مانند رگرسیون و خوشه بندی.
همچنین بخوانید: آشنایی با نمونه برداری و کوانتیزاسیون در پردازش صوت
در این بخش، ما بسیاری از الگوریتم های یادگیری ماشین معروف را به صورت شهودی گروه بندی میکنیم. این لیست در دو گروه و الگوریتم کامل نیست، اما برای ایده گرفتن و نمایش الگوریتمها مفید است.
توجه شود که بین رگرسیون و طبقه بندی که در ادامه ذکر میشوند تفاوتهایی وجود دارد. گرچه جفت روش ها از روش های یادگیری با ناظر هستند.
– الگوریتم های رگرسیون
رگرسیون مربوط به مدل سازی رابطه بین متغیرهایی است که به صورت تکراری با استفاده از اندازه گیری خطا در پیش بینی های انجام شده توسط مدل تصحیح می شود. روش های رگرسیون یک روند آماری مهم است که با یادگیری ماشین آماری ترکیب شده و اصطلاحا همکاری میکنند. مهم ترین روشهای رگیرسیون عبارتند از:
- رگرسیون معمولی حداقل مربعات (OLSR)
- رگرسیون خطی
- رگرسیون لاجستیک
- رگرسیون مرحله ای
- رگرسیون چند متغیره اسپیلاین تطبیقی (MARS)
در شکل زیر نمایی از الگوریتم های رگرسیون و خط رگرسیون آورده شده است:

– الگوریتم یادگیری مبتنی بر نمونه
یادگیری مبتنی بر نمونه یک مسئله تصمیم گیری با نمونه ها یا مثال هایی از داده های آموزشی که مهم تلقی می شوند و یا برای ساخت مدل مورد نیاز است، میباشد.
در این حالت یک مجموعه داده از قبل ساخته میشود و داده جدید با نمونه های موجود در پایگاه داده مقایسه شده و معیار مشابهت به دست میآید. سپس بهترین تطابق برای تصمیم گیری انتخاب میشود. به همین دلیل روشهای مبتنی بر نمونه، اغلب روش همه-برنده یا یادگیری مبتنی بر نمونه نامیده میشوند. تمرکز این روش روی بازنمایی نمونههای ذخیره شده و شباهت مابین نمونه هاست.
برخی از الگوریتم های شناخته شده مبتنی بر نمونه عبارتند از:
- K-نزدیکترین همسایه (KNN)
- کوانتیزاسیون یادگیری بردار (LVQ)
- نقشه خود سازمان دهنده (SOM)
- یادگیری وزنی دهی شده محلی (LWL)
- ماشین بردار پشتیبان (SVM)
همچنین بخوانید:
آموزش svm ، دانلود آموزش جامع ماشین بردار پشتیبان
آموزش ماشین بردار پشتیبان در متلب – svm در متلب
پروژه تشخیص اعداد فارسی با شبکه های عصبی و ماشین بردار پشتیبان
تشخیص افراد عینکی و غیر عینکی به کمک طبقه بندهای svm ، شبکه عصبی و بیز ساده
طبقه بندی مجموعه داده IRIS با الگوریتم طبقه بندی KNN در نرم افزار متلب
مقایسه کارایی الگوریتم KNN و CART روی دیتاست رادار

– الگوریتم های منظم سازی
یک بسط تولید شده از روش دیگر (معمولاً روشهای رگرسیون) که مدلها را بر اساس پیچیدگی آنها جریمه می کند ، و مدل های ساده تری را نیز ارائه می دهد که در تعمیم نیز بهتر هستند.
مشهورترین الگوریتم های منظم سازی عبارتند از:
- رگرسیون Ridge
- حداقل عملکرد مطلق و کوچک انتخابی (LASSO)
- Elastic Net
- رگرسیون حداقل زاویه (LARS)

– الگوریتم های درخت تصمیم
روشهای درخت تصمیم مدل تصمیم گیری را بر اساس مقادیر واقعی نمونه ها در مجموعه داده میسازند. تصمیم گیری ها ساختار درخت را تا زمانی که یک تصمیم برای داده جدید اتخاذ شود مورد پیمایش قرار میدهند. درختان تصمیم برای مسائل طبقه بندی و رگرسیون آموزش داده میشوند. الگوریتم های درخت تصمیم به دلیل سریع و دقیق بودن، جزو الگوریتم های پر طرفدار در الگوریتم های یادگیری ماشین هستند.
مشهورترین الگوریتم های درخت تصمیم عبارتند از:
- درخت طبقه بندی و رگرسیون (CART)
- ID3
- CHAID
- M5
- درخت تصمیم شرطی
همچنین بخوانید:
ارزیابی طبقه بند درخت تصمیم Decision Tree بر روی داده IRIS
پیاده سازی الگوریتم درخت تصمیم با نرم افزار متلب و weka

– الگوریتم های بیزی
روش های بیزی به صورت صریح و واضح از تئوری بیز برای مسائل طبقه بندی و رگرسیون استفاده میکند و از پر استفاده ترین و مشهورترین الگوریتم های یادگیری ماشین می باشند. مهم ترین الگوریتم های بیزی عبارتند از:
- بیز ساده
- بیز ساده گاوسی
- بیز ساده چند اسمی
- شبکه باور بیزین (BBN)
- شبکه بیزین (BN)
همچنین بخوانید: پروژه طبقه بندی مقالات با استفاده از طبقه بندی بیز ساده (پردازش متن)

– الگوریتم های خوشه بندی
خوشه بندی همانند رگرسیون، کلاس مسائل و کلاس روشها را شرح میدهد. روشهای خوشه بندی به طور کلی بر اساس روشهای مدل سازی همانند مرکز-محور و سلسله مراتبی سازمان دهی میشوند. تمام روش ها با استفاده از ساختارهای ذاتی موجود در داده ها جهت سازماندهی بهتر داده ها به گروه هایی با حداکثر ارتباط مربوط می شوند. مشهورترین الگوریتم های خوشهبندی عبارتند از:
- K-means
- K-medians
- بیشینه سازی انتظار (EM)
- خوشه بندی سلسله مراتبی
همچنین بخوانید:
خوشه بندی با ترکیب الگوریتم k-means و الگوریتم ژنتیک
خوشه بندی با الگوریتم خوشه بندی birch
پیاده سازی خوشه بندی با الگوریتم خوشه بندی DBSCAN با متلب
قطعه بندی تصاویر MRI مغز با خوشه بندی فازی برای تشخیص ناحیه تومور
آموزش الگوریتم های Clustering و پیاده سازی الگوریتم k-means در متلب

– الگوریتم های کشف الگوهای انجمنی (کشف الگورهای پرتکرار)
روش های یادگیری قوانین انجمنی، قوانین موجود در دادهها را برای ارائه بهترین توصیف از ارتباطات بین متغیرها را استخراج میکند. این قوانین می توانند انجمن های مهم و تجاری مفید را در مجموعه داده های بزرگ چند بعدی که توسط یک سازمان قابل بهره برداری هستند کشف کنند. شناخته شده ترین الگوریتم های یادگیری قوانین پرتکرار عبارتند از:
- الگوریتم Apriori
- الگوریتم Eclat
همچنین بخوانید:
کاوش الگوهای پرتکرار با روش Apriori و Fp Growth
پیاده سازی الگوریتم FP Growth و روش Apriori در قواعد انجمنی

– الگوریتم های شبکه عصبی مصنوعی
مدل های شبکه عصبی مصنوعی از ساختار and/or موجود در کارکردهای شبکه های عصبی زیستی (سیستم شبکه عصبی جانداران) الگو برداری میکند. شبکههای عصبی دسته ای از تطبیق الگو هستند که معمولاً برای مسائل رگرسیون و طبقه بندی استفاده می شوند. اما در واقع مجموعه عظیم از صدها الگوریتم و تغییرات برای انواع مسائل تشکیل شده است.
یکی از زیرشاخه های مهم در شبکه های عصبی، شبکه عصبی عمیق است که در بخش بعدی با توجه به حجیم بودن آن توضیحاتی ارائه میگردد. اما مهمترین و شناخته شده ترین الگوریتمهای موجود در شبکههای مصنوعی عصبی عبارتند از:
- پرسپترون
- پرسپترون چند لایه (MLP)
- پس انتشار خطا
- گرادیان نزولی احتمالی
- شبکه هاپفیلد
- شبکه تابع پایه شعاعی (RBFN)
همچنین بخوانید:
پروژه پیش بینی قیمت خانه با شبکه عصبی
پروژه پیش بینی دما با استفاده از شبکه عصبی پرسپترون چند لایه
تشخیص نقاط داخل مربع محاط در دایره با شبکه عصبی
پروژه تشخیص چهره با شبکه عصبی
پروژه تشخیص ارقام فارسی با استفاده از شبکه ی عصبی در متلب

– الگوریتم های یادگیری عمیق
روش های یادگیری عمیق یک به روزرسانی مدرن از شبکههای عصبی هستند که از محاسبات فراوان و ساده (کم هزینه) استفاده میکنند. توجه آنها روی ساختن شبکه های عصبی بسیار بزرگتر و پیچیده تر است و همانطور که در بالا گفته شد ، بسیاری از روش ها مربوط به مجموعه داده های بسیار بزرگ از داده های آنالوگ برچسب خورده ، مانند تصویر ، متن ، صدا و فیلم هستند.
محبوب ترین الگوریتم های یادگیری عمیق عبارتند از:
- شبکه عصبی کانوولوشن (CNN)
- شبکه عصبی بازگشتی (RNN)
- شبکه عصبی با حافظه کوتاه-بلند مدت (LSTM)
- شبکه خود کدکننده پشتهای
- ماشین بولتزمن عمیق
- شبکه باور عمیق (DBN)

– الگوریتمهای کاهش ابعاد
همانند روش های خوشه بندی، الگوریتم های کاهش ابعاد با جست و جو در داده ها، ساختارهای ذاتی در دادهها را استخراج میکنند. اما در این حالت در یک روش بدون ناظر هدف خلاصه سازی و یا شرح داده با اطلاعات کمتر است. این روش میتواند برای بصری سازی دادهها یا برای ساده سازی داده هنگامی که روش یادگیری نظارت شده است به کار رود. بسیاری از این روشها میتوانند جهت به کارگیری در روش های طبقه بندی و رگرسیون به کار گرفته شوند. برخی از این الگوریتمها عبارتند از:
- تحلیل مولفه های اصلی (PCA)
- رگرسیون مولفههای اصلی (PCR)
- رگرسیون حداقل مربعات جزئی (PLSR)
- نگاشت Sammon
- مقیاس بندی چند بعدی (MDS)
- تحلیل جداسازی ترکیبی (MDA)
- تحلیل جداسازی چهاروجهی (QDA)

– روش های یادگیری جمعی
روش های یادگیری گروهی، متشکل از چندین مدل ضعیف تر هستند که بطور مستقل آموزش دیده اند و پیش بینی های آنها به نوعی با هم ترکیب شده تا پیش بینی کلی را انجام دهند. تلاش بسیاری برای ایجاد انواع یادگیرندگان ضعیف و راه های ترکیب آنها انجام می شود. این یک روش بسیار قدرتمند است و به همین ترتیب بسیار محبوب است.
برخی از الگوریتم های یادگیری جمعی عبارتند از:
- Boosting
- Bagging
- AdaBoost
- میانگین گیری وزن دار
- کلی سازی پشته ای
- ماشین های Boosting گرادیانی
- جنگل تصادفی
همچنین بخوانید: پروژه تشخیص چهره افراد با طبقه بند Adaboost

در این بخش بسیاری از زمینه های یادگیری ماشین مورد بررسی قرار نگرفتند، برخی از این الگوریتمها یادگیری ماشین عبارتند از:
- الگوریتم های انتخاب ویژگی
- الگوریتم های ارزیابی دقت
- اندازه گیری کارایی
- الگوریتم های بهینه سازی
برخی از زیر شاخه های اساسی یادگیری ماشین عبارتند از ( بهتر است بگوییم کاربردهای یادگیری ماشین):
- هوش محاسباتی (الگوریتمهای تکاملی)
- بینایی ماشین
- پردازش زبان طبیعی (NLP)
- سیستم های پیشنهاد دهنده
- یادگیری تقویتی
- مدلهای گرافیکی
- و …
در آینده ای نزدیک این مباحث مطرح خواهند شد.




دیدگاه خود را ثبت کنید
تمایل دارید در گفتگوها شرکت کنید؟در گفتگو ها شرکت کنید.