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

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

دوره یادگیری ماشین دکتر شریفی زارچی

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

  • مقدمه‌ای بر یادگیری ماشین و یادگیری نظارت شده
  • رگرسیون خطی و لجستیک
  • مدل‌های طبقه‌بندی (شامل روش‌هایی مانند K-NN، درخت تصمیم، جنگل تصادفی و الگوریتم‌های Boosting)
  • یادگیری نظارت نشده (روش‌های خوشه‌بندی K-Means و کاهش بعد PCA)
  • شبکه‌های عصبی و یادگیری عمیق (معماری شبکه‌های عصبی پرسپترون، کانولوشن و الگوریتم‌های پس‌انتشار)
  • پردازش زبان طبیعی (تکنیک‌های مدرن شامل Word Embedding، ترنسفورمر و BERT)
  • بررسی مدل‌های پیشرفته زبانی (مانند GPT)

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

جلسه اول: یادگیری نظارتی

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

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

فیلم درس یادگیری ماشین دکتر شریفی زارچی – جلسه ۱

جلسه دوم: رگرسیون خطی، کاهش گرادیان

در فیلم جلسه دوم این دوره، پس از مرور کوتاهی بر یادگیری نظارت شده، به بحث رگرسیون‌های خطی و کاهش گرادیان پرداخته می‌شود. «رگرسیون خطی» (Linear Regression) یکی از ساده‌ترین و پایه‌ای‌ترین روش‌ها برای پیش‌بینی مقادیر عددی پیوسته (مانند قیمت خانه بر اساس متراژ و موقعیت مکانی) است. هدف از این مدل، پیدا کردن خطی است که بهترین انطباق را با داده‌ها داشته باشد تا کمترین میزان خطا بین پیش‌بینی‌ها و مقادیر واقعی وجود داشته باشد.

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

  • روش حداقل مربعات (Least Squares)
  • تابع هزینه (Cost Function)
  • مشتق‌گیری برای بهینه‌سازی
  • گرادیان نزولی یا کاهشی (Gradient Descent)
  • نرخ یادگیری (Learning Rate)

فیلم درس یادگیری ماشین دکتر شریفی زارچی – جلسه ۲

جلسه سوم: رگرسیون چند جمله‌ای، تعمیم‌پذیری

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

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

فیلم درس یادگیری ماشین دکتر شریفی زارچی – جلسه ۳

جلسه چهارم: دسته‌بندی خطی، شبکه عصبی پرسپترون

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

فیلم درس یادگیری ماشین دکتر شریفی زارچی – جلسه ۴

جلسه پنجم: رگرسیون لجستیک

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

برای عملکرد بهتر مدل نیز از روش‌های پیش‌پردازش مانند نرمال‌سازی ویژگی‌ها استفاده می‌شود. در فهرست زیر به چند مورد از گام‌های اشاره شده است:

  • تعریف مرز تصمیم خطی برای مشخص کردن طبقه‌بندی داده
  • تخمین پارامتر‌ها با روش تخمین تابع «درست نمایی» (Maximum Likelihood) برای پیدا کردن بهترین مدل
  • استفاده از تابع آنتروپی متقاطع دوگانه برای سنجش میزان خطا

فیلم درس یادگیری ماشین دکتر شریفی زارچی – جلسه ۵

جلسه ششم: K – نزدیک‌ترین همسایه

در قسمت بعدی در مورد روش طبقه‌بندی داده‌های K – نزدیک‌ترین همسایه و روش استفاده از آن توضیح داده می‌شود. «K – نزدیک‌ترین همسایه» یا (The K-Nearest Neighbors | KNN) نوعی الگوریتم غیرپارامتریک و نظارت شده در یادگیری ماشین است که برای طبقه‌بندی یا پیش‌بینی، از نزدیکی داده‌ها و شباهت بین آن‌ها استفاده می‌کند. K – نزدیک‌ترین همسایه یکی از ساده‌ترین و محبوب‌ترین روش‌های طبقه‌بندی و رگرسیون است که در ماشین لرنینگ کاربرد‌های زیادی دارد و ایده اصلی آن بر اساس این احتمال است که نقاط مشابه در نزدیکی یکدیگر قرار می‌گیرند. پیاده‌سازی الگوریتم KNN آسان است و انتخاب تعداد همسایه‌ها و نوع معیار فاصله، نقش مهمی در عملکرد آن دارند.

فیلم درس یادگیری ماشین دکتر شریفی زارچی – جلسه ۶

جلسه هفتم: یادگیری جمعی، درخت تصمیم

در جلسه هفتم از دوره یادگیری ماشین دکتر شریفی زارچی، به موضوع یادگیری جمعی، «درخت تصمیم» (Decision Tree) و «جنگل تصادفی» (Random Forest) پرداخته شده است. «یادگیری جمعی» (Ensemble Learning) یکی از تکنیک‌های قدرتمند یادگیری ماشین است که در آن با ترکیب دو یا چند مدل پایه یادگیرنده مانند مدل‌های رگرسیون، شبکه‌‌های عصبی و …) به مدل نهایی کمک می‌شود تا پیش‌بینی‌های بهتری انجام دهد.

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

  • روش Bagging: مدل‌های یادگیرنده به‌صورت مستقل و موازی روی زیرمجموعه‌هایی از داده آموزش داده می‌شوند. جنگل تصادفی بهترین نمونه این روش است.
  • روش Boosting: مدل‌های یادگیرنده به‌صورت ترتیبی و دنباله‌دار آموزش داده می‌شوند و هر مدل تلاش می‌گند خطاهای مدل‌های قبلی را جبران کند.

فیلم درس یادگیری ماشین دکتر شریفی زارچی – جلسه ۷

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

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

توانایی یادگیری نظارت نشده در پیدا کردن شباهت‌ها و تفاوت‌ها، این روش را به یکی از بهترین راه‌حل‌ها برای تحلیل داده، بخش‌بندی و شناسایی تصویر تبدیل کرده است. پرکاربردترین « الگوریتم خوشه‌بندی» (Clustering)، الگوریتم KMeans است که داده‌ها را بر اساس نزدیک بودن به مرکز خوشه، گروه‌بندی می‌کند.

فیلم درس یادگیری ماشین دکتر شریفی زارچی – جلسه ۸

جلسه نهم: کاهش بعد، تحلیل مولفه‌های اصلی

موضوع جلسه نهم دوره یادگیری ماشین دکتر شریفی زارچی، کاهش بعد و تحلیل مولفه‌های اصلی است. منظور از «کاهش بعد» (Dimensionality Reduction) گروهی از تکنیک‌های بهبود دهنده یادگیری ماشین هستند که با کمک آن‌ها تعداد ویژگی‌ها (ابعاد) داده‌ها را کاهش داده و فقط ویژگی‌های مهم و معنادار داده‌های اصلی را حفظ می‌کنند. روش‌هایی مانند «PCA» و «LDA» و «t-SNE» در کاهش بعد به حذف ویژگی‌های نامربوط، تکراری یا دارای نویز کمک می‌کنند تا مدلی با تعداد متغیرهای کمتر و کارایی بالاتر ساخته شود.

یکی از ساده‌ترین روش‌های کاهش بعد، یعنی «تحلیل مولفه‌های اصلی» (Principal Components Analysis | PCA) است که روی کاهش ابعاد داده‌ها از طریق یافتن مولفه‌هایی با بیشترین واریانس متمرکز است.

فیلم درس یادگیری ماشین دکتر شریفی زارچی – جلسه ۹

جلسه دهم: شبکه‌های عصبی عمیق، الگوریتم پس انتشار

در جلسه دهم از دوره ماشین لرنینگ دکتر شریفی زارچی، به مبحث شبکه‌های عصبی ژرف و الگوریتم پس از انتشار پرداخته می‌شود. «شبکه‌های عصبی عمیق» (Deep Neural Networks | DNN) به شبکه‌های عصبی گفته می‌شود که برخلاف شبکه‌های پرسپترون که فقط برای داده‌های قابل‌تفکیک به‌صورت خطی کاربرد دارند، دارای لایه‌های متعدد بین ورودی و خروجی هستند. «الگوریتم پس از انتشار» (Backpropagation Algorithm) یکی از الگوریتم‌های کلیدی در فرآیند آموزش این شبکه‌ها است که با محاسبه گرادیان خطا نسبت به وزن‌ها، نقش هر وزن را در بروز خطای نهایی در شبکه محاسبه می‌کند. این الگوریتم به‌صورت عقب‌گرد از لایه خروجی به سمت لایه‌های ورودی حرکت می‌کند و آنقدر کار خود را تکرار می‌‌کند تا مدل به دقت مطلوب در پیش‌بینی برسد.

فیلم درس یادگیری ماشین دکتر شریفی زارچی – جلسه ۱۰

جلسه یازدهم: الگوریتم پس‌انتشار ماتریسی، توابع فعال سازی و زیان

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

این الگوریتم با کمک «توابع فعال‌سازی» (Activation Functions) و «توابع زیان» (Loss Functions) به شبکه عصبی کمک می‌کند روابط پیچیده بین داده‌ها را یاد بگیرد و تفاوت خروجی شبکه با پاسخ واقعی را مشخص کند.

فیلم درس یادگیری ماشین دکتر شریفی زارچی – جلسه ۱۱

جلسه دوازدهم: بهینه‌سازی و الگوریتم‌های Adam و Newton

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

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

فیلم درس یادگیری ماشین دکتر شریفی زارچی – جلسه ۱۲

جلسه سیزدهم: تنظیم مدل

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

فیلم درس یادگیری ماشین دکتر شریفی زارچی – جلسه ۱۳

جلسه چهاردهم: نرمال سازی دسته‌ای و قضیه تقریب جهانی

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

این تکنیک به فرآیند آموزش مدل سرعت می‌بخشد و حساسیت مدل به مقادیر اولیه پارامتر‌ها را کاهش می‌دهد. پس از توضیح این تکنیک، «قضیه تقریب جهانی» (Universal Approximation Theorem) بیان می‌شود که در آن اثبات می‌شود شبکه‌های عصبی حتی با یک لایه مخفی می‌توانند تقریب تابع دلخواه را با دقت دلخواه انجام دهند.

فیلم درس یادگیری ماشین دکتر شریفی زارچی – جلسه ۱۴

جلسه پانزدهم: آموزش عملی کاهش ابعاد و دسته‌بندی

در جلسه پانزدهم از دوره یادگیری ماشین، دکتر شریفی زارچی به آموزش عملی مباحث کاهش بعد و طبقه‌بندی داده‌ها با استفاده از دو کتابخانه پایتون یعنی «سایکیت لرن» (Scikit-learn) و «پای تورچ» (Pytorch) می‌پردازند. هدف از «کاهش ابعاد» (Dimensionality Reduction)، ساده‌سازی داده‌های پیچیده و پرحجم است. طبقه‌بندی نیز با هدف تشخیص خودکار داده‌ها بر اساس الگو‌های موجود به کار می‌رود.

پس از بیان مفاهیم، ابتدا محیط ویرایشگر کد VS Code و نحوه راه‌اندازی و نصب آن بیان می‌شود. از مهم‌ترین موضوعات مرتبط با این بخش می‌توان موارد زیر را نام برد:

  • آشنایی با محیط کتابخانه سایکیت لرن
  • توضیح کاربرد‌های این کتابخانه در طبقه‌بندی، رگرسیون و خوشه‌بندی
  • آشنایی با نحوه بارگذاری داده‌ها از سایکیت لرن و منابع خارجی مانند Kaggle و Papers
  • توضیح روش‌های کاهش بعد مانند PCA و T-SNE
  • بررسی الگوریتم‌های طبقه‌بندی
  • معرفی کتابخانه PyTorch
  • نحوه و مراحل ساخت شبکه عصبی برای طبقه‌بندی تصاویر

فیلم درس یادگیری ماشین دکتر شریفی زارچی – جلسه ۱۵

جلسه شانزدهم: بینایی کامپیوتر و شبکه‌های عصبی کانولوشن

در جلسه شانزدهم از دوره یادگیری ماشین دکتر شریفی زارچی در مورد مفاهیمی مانند بینایی کامپیوتر و شبکه‌های عصبی کانولوشن توضیح داده می‌شود. «بینایی کامپیوتر» (Computer Vision) یکی از حوزه‌های هوش مصنوعی و به‌دنبال پاسخ به این سوال است که مدل‌های کامپیوتری چگونه می‌توانند تصاویر را ببینند و محتوای درون آن‌ها را درک کنند.

بینایی کامپیوتر به داده‌های زیادی نیاز دارد تا با انجام تحلیل‌های مکرر روی آن‌ها، کم‌کم تفاوت آن‌ها را تشخیص دهد. برای رسیدن به این هدف از یادگیری عمیق و «شبکه‌های عصبی پیچشی» (Convolutional Neural Network | CNN) استفاده می‌شود که به مدل آموزش می‌دهند با مشاهده محتوای تصویری، آن را بشناسند.

فیلم درس یادگیری ماشین دکتر شریفی زارچی – جلسه ۱۶

جلسه هفدهم: اجزای شبکه CNN برای پردازش تصویر

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

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

  • لایه‌های «تجمع» (Pooling) مانند «Max Pooling»
  • استفاده از اتوانکودر‌ها برای فشرده‌سازی تصویر
  • تکنیک‌های «افزایش ابعاد» (Upsampling)
  • «میدان پذیرش» (Receptive Field)

فیلم درس یادگیری ماشین دکتر شریفی زارچی – جلسه ۱۷

جلسه هجدهم: قضیه تفکیک عمق

در جلسه هجدهم از دوره یادگیری ماشین دکتر شریفی زارچی، مفاهیم پایه و پیاده‌سازی شبکه‌های عصبی پیچشی (CNN) برای پردازش تصاویر آموزش داده می‌شوند. شبکه‌های عصبی پیچشی می‌توانند با تکنیک‌هایی به‌نام «اشتراک وزن‌ها» (Weight Sharing) و «گام‌های حرکتی» (Stride) تعداد پارامتر‌ها را کاهش داده و برای پردازش تصاویر عملکرد بهتری از خود نشان دهند که این موضوع در تشخیص بهتر ویژگی‌های مکانی تصویر مانند لبه‌ها، بافت‌ها و اشکال بسیار اثرگذار است. ترکیب این اجزا، شبکه‌های CNN را به یکی از قدرتمند‌ترین ابزار‌ها در حوزه بینایی ماشین تبدیل کرده است.

فیلم درس یادگیری ماشین دکتر شریفی زارچی – جلسه ۱۸

جلسه نوزدهم: شبکه‌های عمیق پردازش تصویر AlexNet و ResNet

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

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

فیلم درس یادگیری ماشین دکتر شریفی زارچی – جلسه ۱۹

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

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

در ادامه، مقایسه‌ای بین PCA و اتوانکودرها انجام می‌شود و کاربرد‌های آن‌ها برای کاهش ابعاد داده‌های غیرخطی به‌صورت زیر بیان می‌شوند:

  • فشرده‌سازی داده‌ها بدون افت کیفیت شدید
  • استخراج ویژگی‌ها و شناسایی مهم‌ترین بخش‌ها
  • پردازش تصاویر در لایه‌های کانولوشنی
  • ورودی مدل‌های طبقه‌بندی در یادگیری عمیق

فیلم درس یادگیری ماشین دکتر شریفی زارچی – جلسه ۲۰

جلسه بیست و یکم: شبکه‌های VAE و U-Net

در جلسه بیست و یکم دوره یادگیری ماشین دکتر شریفی زارچی، انواع مختلف اتوانکودرها و کاربرد‌های آن‌ها در پردازش تصاویر بررسی می‌شوند که در فهرست زیر به آن‌ها اشاره کرده‌ایم:

  • اتوانکودر‌های Uncomplete
  • انکودر‌های Overcomplete
  • انکودر‌های Sparse
  • انکودر‌های Denoising
  • انکودر‌های Contractive
  • انکودر‌های VAE

پس از توضیح این مدل‌ها و ویژگی‌های هرکدام، در بخش پایانی جلسه در مورد معماری‌های مکملی مانند U-Net برای تقسیم‌بندی پیکسلی تصاویر با ترکیب ویژگی‌های اتوانکودر و «کانولوشن معکوس» (Transposed Convolution) برای افزایش ابعاد ویژگی‌ها در بخش بازرمزگذار توضیح داده شده است.

فیلم درس یادگیری ماشین دکتر شریفی زارچی – جلسه ۲۱

جلسه بیست و دوم: پردازش زبان طبیعی

در جلسه‌ی بیست‌ودوم دوره‌ی یادگیری ماشین دکتر شریفی زارچی، مفاهیم «پردازش زبان طبیعی» (NLP)، «تعبیه واژه‌ها» (Word Embedding) و مدل Word2Vec بررسی می‌شود. ابتدا کاربردهای NLP مانند برچسب‌گذاری واژه‌ها، تشخیص و طبقه‌بندی متن معرفی می‌شوند. روش Word Embedding به‌عنوان راهکاری برای نمایش معنایی کلمات با استفاده از بردارهای کم‌بعدی معرفی شده است. در این روش، برای ارائه کلمات به یک شبکه عصبی، به هر کلمه یک عدد معنی‌دار اختصاص داده می‌شود.

فیلم درس یادگیری ماشین دکتر شریفی زارچی – جلسه ۲۲

جلسه بیست و سوم: مکانیسم توجه

موضوع این جلسه، بحث «مکانیزم توجه» (Attention Mechanism) و خودتوجهی در پردازش زبان طبیعی است. در اولین گام، توجه به چالش‌ها و محدودیت‌های تعبیه واژه‌‌ها در درک معنای وابسته به زمینه اهمیت بالایی دارد. برای مثال، واژه شیر در زبان فارسی به معنی‌های مختلفی شامل شیر خوراکی، شیر آب و حیوان شیر اشاره دارند. بنابراین، در فرآیند ساخت بردار برای واژگان، لازم است این معنی‌ها از یکدیگر تفکیک شوند. به این ترتیب، ارائه یک کلمه می‌تواند بسته مفهوم ویژه آن در جمله، تغییر کند.

برای رسیدن به این هدف، مفهوم توجه و رمز‌گذاری موقعیتی بیان می‌شود که مدل به کمک آن می‌تواند بر اساس موقعیت و معنای واژه در جمله، روی بخش‌‌های مهم آن تمرکز کند. معماری «شبکه‌های عصبی بازگشتی» (Recurrent Neural Networks | RNNs) یکی از متداول‌ترین ساختار‌های این فرآیند است که مکانیسم خودتوجهی می‌تواند محدودیت‌های آن را به‌خوبی برطرف کند. این مکانیسم بر اساس مفاهیم زیر عمل می‌کند:

  • «عبارت جستجو» (Query)
  • «کلید» (Key)
  • «مقدار» (Value)

فیلم درس یادگیری ماشین دکتر شریفی زارچی – جلسه ۲۳

جلسه بیست و چهارم: ترانسفورمر

موضوع جلسه بیست و چهارم از دوره یادگیری ماشین دکتر شریفی زارچی، «ترانسفورمر» (Transformer)، مکانیسم‌‌های توجه و کاربرد آن‌ها در پردازش زبان طبیعی و مدل‌های زبانی بزرگ است. معماری ترانسفورمر که اولین بار در مقاله‌ای به نام «Attention is All You Need» و در سال ۲۰۱۷ معرفی شده است، به‌عنوان نقطه عطفی در یادگیری عمیق به کار می‌رود.

ترنسفورمر‌ها با حذف وابستگی به ساختار‌های ترتیبی RNN، امکان پردازش موازی و درک بهتری روابط معنایی را فراهم کرده‌اند. جالب است بدانید که مدل‌هایی مانند الگوریتم BERT و GPT-3 دقیقا بر پایه همین معماری توسعه یافته‌اند و پیشرفت‌های بزرگی در زمینه چت‌بات‌ها، تولید متن، خلاصه‌سازی و جستجو رقم زده‌اند که در این بخش به آن‌ها پرداخته می‌شود.

فیلم درس یادگیری ماشین دکتر شریفی زارچی – جلسه ۲۴

جلسه بیست و پنجم: معماری BERT برای یادگیری زبان طبیعی

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

فیلم درس یادگیری ماشین دکتر شریفی زارچی – جلسه ۲۵

جلسه بیست و ششم: مدل‌های بزرگ زبانی مانند GPT و LLaMA

در جلسه بیست و ششم از دوره ماشین لرنینگ دکتر شریفی زارچی، آخرین مباحث مربوط به بررسی «مدل‌های زبانی بزرگ» (Large Language Models | LLMs) و کاربرد آن‌ها در هوش مصنوعی بیان می‌شوند. مدل‌های زبان بزرگ به نوع ویژه‌ای از مدل‌های یادگیری ماشین گفته می‌شود که به‌طور اختصاصی برای وظایف مرتبط با پردازش زبان طبیعی طراحی شده‌اند. این مدل‌ها از تکنیک‌های یادگیری عمیق و دیتاست‌های عظیم برای درک، خلاصه‌سازی و تولید زبان طبیعی استفاده می‌کنند.

در جلسه بیست و ششم، موارد زیر در خصوص این مدل‌ها پوشش داده شده‌اند:

  • نقش مدل‌های زبانی بزرگ در پیش‌بینی زبان
  • تفاوت بین مدل‌های تولید و نمایشی
  • توضیح ساختار دیکودر
  • توضیح مفهوم دوگانگی نزولی
  • مقیاس‌بندی مدل‌ها
  • قانون توان مقیاس‌بندی
  • توضیح معماری مدل‌هایی مانند GPT
  • مدل‌های خودبازگشتی
  • فرآیند آموزش و تنظیم این مدل‌ها

فیلم درس یادگیری ماشین دکتر شریفی زارچی – جلسه ۲۶

جلسه بیست و هفتم: ترنسفورمر بینایی

در قسمت بیست و هفتم از دوره یادگیری ماشین، در مورد ترنسفورمر‌های بینایی و روش‌های بهینه «تنظیم دقیق» (Fine-Tuning) در مدل‌های یادگیری عمیق توضیح داده می‌شود. پس از مرور ساختار ترنسفومر و رشد مدل‌هایی مانند GPT از نظر تعداد لایه‌ها، لازم است با جایگزین‌های روش‌های فاین تیونینگ سنتی به شرح زیر آشنا شوید:

  • LoRA
  • Adapter Layers
  • Prefix Tuning

«ترنفسورمر‌های بینایی» (Vision Transformer | ViT) راه‌حلی برای چالش‌های استفاده از ترنسفورمر‌ها در پردازش تصاویر هستند. ViT تصاویر را به قطعات کوچکی تقسیم کرده و هر قطعه را به‌صورت یک توکن مشابه کلمات در پردازش زبان طبیعی در نظر می‌گیرد. این توکن‌ها با استفاده از مکانیزم توجه پردازش می‌شوند تا ارتباط بین بخش‌های مختلف تصویر مدل‌سازی شود.

فیلم درس یادگیری ماشین دکتر شریفی زارچی – جلسه ۲۷

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

در جلسه پایانی از دوره یادگیری ماشین دکتر شریفی زارچی، تکنیک‌های یادگیری خودنظارتی و یادگیری مقایسه‌ای آموزش داده شده‌اند. به کمک این تکنیک‌ها، مدل‌ها می‌توانند بدون نیاز به داده‌های برچسب خورده، از داده‌های خام ویژگی‌های مفید آن‌ها را استخراج کنند. در «یادگیری خودنظارتی» (Self-Supervised Learning) که بیشتر برای پیش‌آموزش مدل‌ها کاربرد دارد، داده‌های بدون برچسب به‌‌طور خودکار، به داده‌های دارای برچسب تبدیل می‌شوند.

موضوعات مهم بعدی «یادگیری بدون نمونه» (Zero-Shot Learning)، «یادگیری با نمونه‌های کم» (Few-Shot Learning) و «یادگیری مقایسه‌ای» (Contrastive Learning) هستند که درک شباهت‌‌ها و تفاوت‌‌های آن‌ها از اهمیت ویژه‌ای برخودار است.

فیلم درس یادگیری ماشین دکتر شریفی زارچی – جلسه ۲۸

چگونه با آموزش‌های فرادرس ماشین لرنینگ را بهتر یاد بگیریم؟

آموختن ماشین لرنینگ مسیری پرفراز و فرود ولی جذاب است که با برنامه‌ریزی درست برای آن می‌توان به نتایج شگفت‌انگیزی دست یافت. برای شروع، بد نیست از مسیر یادگیری زیر کمک بگیرید:

  • مبانی ریاضیات مانند جبر خطی، آمار و احتمال، حساب دیفرانسیل و انتگرال
  • برنامه‌‌نویسی پایتون و کار با کتابخانه‌هایی مانند NumPy و Pandas
  • یادگیری مبانی یادگیری ماشین مانند یادگیری نظارت شده و نظارت نشده، رگرسیون خطی و لجستیک
  • یادگیری مفاهیمی مانند درخت تصمیم، مسائل مربوط به Overfitting و Regularization
  • آشنایی با مفاهیم مهم در یادگیری عمیق مانند شبکه‌های عصبی، الگوریتم‌ها و یادگیری انتقالی
  • انجام پروژه‌های عملی مانند پیش‌بینی قیمت خانه، تحلیل احساسات، تشخیص دست‌نوشته یا ساخت سیستم‌های توصیه‌گر
  • آشنایی با یادگیری تقویتی، پردازش زبان طبیعی و ترنسفورمر‌ها

یادگیری این مفاهیم را می‌توانید با کمک آموزش‌های زیر شروع کنید:

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

برای آشنایی با این مفاهیم می‌توانید از مجموعه‌های آموزشی فرادرس در حوزه برنامه‌نویسی و یادگیری ماشین استفاده کنید:

به این ترتیب و با مسیر یادگیری بیان شده می‌توانید آشنایی مناسبی با اصول، الگوریتم‌ها و تکنیک‌های ماشین لرنینگ پیدا کنید.

جمع‌بندی

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

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

source

توسط expressjs.ir