Summer of code

هوش مصنوعی و یادگیری ماشین

توضیح دوره

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

سرفصل‌ها

📚 هفته اول:

  • مقدمه و مرور پیش‌نیازها
  • مقدمه دوره
  • مقدمه‌ای بر مباحث یادگیری ماشین و شاخه‌های مختلف آن
  • مرور احتمال (احتمال شرطی، توزیع‌های احتمال پرکاربرد، توزیع احتمال توام، …)
  • مروری بر روش‌های استنباط آماری (MLE, MAP, Bayesian Approach)
  • مرور کلی جبر خطی

🔸 تمرین کامپیوتری 0: آشنایی با کتابخانه‌های تحلیل داده (numpy, pandas, matplotlib, sklearn)

📚 هفته دوم:

🖥 جلسه اول: Regression

  • Linear Regression
  • MSE Loss Function
  • Optimization Methods
  • Gradient Descent
  • Regularization Techniques
  • Logistic Regression
  • Probabilistic Interpretation
    🖥 جلسه دوم:
  • Generative vs. Discriminative Models
  • Bias Variance Trade-off
  • KNN Classifier
  • Naïve Bayes Classifier

🔸 تمرین کامپیوتری ۱: آشنایی با EDA و پیاده‌سازی رگرسیون و مدل Naïve Bayes

📚 هفته سوم:
🖥 جلسه اول:

  • آشنایی با مباحث Information Theory
  • درخت تصمیم
  • یادگیری تجمعی (Ensemble Learning)
  • آشنایی با روش Bagging
  • جنگل‌های تصادفی (Random Forests)
  • مقدمه‌ای بر روش‌های Boosting

🖥 جلسه دوم:

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

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

📚 هفته چهارم:

  • مروری بر توابع فعال‌ساز مختلف
  • آشنایی با نحوه یادگیری در شبکه‌های عصبی
  • روش Back Propagation
  • شبکه‌های Auto-Encoder
  • آشنایی با روش‌های dimensionality reduction
  • مروری بر روش‌های optimization مثل Adam

🔸 تمرین کامپیوتری ۳: آشنایی با کتابخانه‌های keras و tensorflow – پیاده‌سازی شبکه‌های عصبی

📚 هفته پنجم:

  • آشنایی با روش‌های پردازش تصویر
  • شبکه‌های عصبی کانولوشنی (CNNs)
  • آشنایی با انواع معماری‌های CNN
  • مروری بر روش‌های طبقه‌بندی و segmentation تصاویر
  • آشنایی با روش‌های Regularization در شبکه‌های عصبی

🔸 تمرین کامپیوتری ۴: آشنایی با کتابخانه‌ torch و پیاده‌سازی CNN

📚 هفته ششم:

  • جمع‌بندی مباحث
  • مروری بر شاخه‌های مختلف یادگیری عمیق
  • پردازش زبان طبیعی
  • مدل‌های generative
  • آشنایی با شاخه adversarial در یادگیری عمیق
  • آشنایی مختصر با نحوه کارکرد مدل‌های مدرن‌تر مانند ChatGPT و DALLE-2 و …

مدرس: حسام اسداله‌زاده

  • دانشجوی ترم ۸ مهندسی کامپیوتر دانشگاه تهران
  • مدرس دوره یادگیری ماشین و یادگیری عمیق SoC2022
  • دستیار پژوهشی آزمایشگاه یادگیری ماشین دانشگاه صنعتی شریف

مهلت ثبت نام تمام شده است.