دوره آموزشی: بهینهسازی شبکههای عصبی کانولوشنی (Convolutional Neural Networks – CNN) با استفاده از الگوریتم ژنتیک (Genetic Algorithm – GA) در متلب MATLAB
معرفی دوره
شبکههای عصبی کانولوشنی (Convolutional Neural Networks – CNN) ابزار قدرتمندی در زمینه یادگیری عمیق (Deep Learning) (Deep Learning) به ویژه در پردازش تصویر (Image Processing) مانند طبقه بندی تصویر (Image Classification)، بخش بندی تصویر (Image Segmentation)، تشخیص شئ (Object Detection) و در پردازش سیگنال (Signal Processing) مورد استفاده قرار میگیرند. این دوره بر استفاده از الگوریتم ژنتیک (Genetic Algorithm – GA) که یکی از بهترین الگوریتم های فراابتکاری (Metaheuristic Algorithms) محسوب میشود، برای بهینهسازی معماری (Architecture Optimization) و تنظیمات هایپرپارامتری (Hyperparameter Tuning) CNN تمرکز دارد. الگوریتم ژنتیک با الهام از تکامل زیستی، یکی از روشهای مؤثر در حل مسائل پیچیده بهینهسازی است که در این دوره برای بهبود عملکرد CNN به کار گرفته میشود.
لطفا قبل از شفارش دوره لطفا فیلم معرفی آموزش را مشاهده بفرمایید.
دیدن دوره یادگیری عمیق CNN در متلب
دیدن دوره رایگان الگوریتم ژنتیک
سرفصلهای دوره
بخش ۱: مقدمه و آمادهسازی دادهها
- آشنایی با CNN:
- معرفی شبکههای عصبی کانولوشنی و کاربردهای آن.
- الگوریتم ژنتیک:
- معرفی مفاهیم کلیدی GA:
- جمعیت اولیه (Initial Population)، انتخاب (Selection)، ترکیب (Crossover) و جهش (Mutation).
- تابع برازش (Fitness Function) و معیار بهینهسازی.
- معرفی مفاهیم کلیدی GA:
- آمادهسازی دادهها:
- بارگذاری مجموعهدادهها (Dataset Loading).
- پیشپردازش تصاویر (Image Preprocessing):
- تغییر اندازه (Resize)، نرمالسازی (Normalization) و تبدیل دادهها.
بخش ۲: طراحی و پیادهسازی شبکه CNN
- تعریف معماری شبکه:
- ایجاد شبکه پایه (Baseline Model):
- لایههای کانولوشن (Convolutional Layers) با فیلترهای قابل تنظیم.
- لایههای نرمالسازی (Batch Normalization)، فعالسازی (Activation Functions)، و تجمیع مکانی (Pooling).
- لایههای کاملاً متصل (Fully Connected Layers) و خروجی (Output Layers).
- ایجاد شبکه پایه (Baseline Model):
بخش ۳: الگوریتم ژنتیک و کاربرد آن در CNN
- پارامترهای الگوریتم ژنتیک:
- تنظیم پارامترها:
- اندازه جمعیت (Population Size).
- نرخ ترکیب (Crossover Rate) و نرخ جهش (Mutation Rate).
- تعداد نسلها (Number of Generations).
- تنظیم پارامترها:
- ارتباط GA با CNN:
- تعریف کروموزوم (Chromosome) به عنوان بردار تنظیمهای هایپرپارامتر:
- نرخ یادگیری (Learning Rate)، اندازه دسته (Mini-Batch Size)، و مومنتوم (Momentum).
- طراحی تابع برازش (Fitness Function) بر اساس:
- دقت شبکه در دادههای اعتبارسنجی (Validation Accuracy).
- زمان اجرا یا تعداد پارامترها به عنوان معیار اضافی.
- تعریف کروموزوم (Chromosome) به عنوان بردار تنظیمهای هایپرپارامتر:
- عملیات ژنتیک:
- ایجاد جمعیت اولیه به صورت تصادفی یا بر اساس مقادیر اولیه پیشنهادی.
- انجام انتخاب (Selection):
- روشهای انتخاب نظیر چرخ رولت (Roulette Wheel Selection) یا انتخاب تورنمنت (Tournament Selection).
- انجام ترکیب (Crossover):
- ترکیب بخشهای کروموزوم برای تولید فرزندان جدید.
- انجام جهش (Mutation):
- تغییر تصادفی مقادیر کروموزوم برای حفظ تنوع جمعیت.
بخش ۴: پیادهسازی و آموزش CNN
- تنظیمات آموزش شبکه:
- تعیین تعداد دورهها (Epochs) و سایر تنظیمات اولیه.
- اعمال مقادیر بهینهشده توسط GA در فرآیند آموزش.
- فرآیند بهینهسازی:
- اجرای GA برای جستجوی مقادیر بهینه تنظیمات CNN.
- بهروزرسانی جمعیت در هر نسل بر اساس تابع برازش.
- ذخیره بهترین تنظیمها (Best Hyperparameters) در هر نسل.
- آموزش CNN:
- آموزش مدل با استفاده از تنظیمهای بهینهشده توسط GA.
- ارزیابی دقت و عملکرد شبکه.
بخش ۵: ارزیابی مدل و نمایش نتایج
- معیارهای ارزیابی:
- محاسبه:
- دقت کلی (Overall Accuracy).
- معیارهای Precision، Recall و F1 Score.
- نمایش نتایج به کمک ماتریس سردرگمی (Confusion Matrix).
- محاسبه:
- نمایش نمودارها:
- منحنیهای عملکرد:
- منحنی ROC (Receiver Operating Characteristic).
- پیشرفت دقت در طول نسلهای GA.
- مقایسه عملکرد شبکه بهینهشده با مدل پایه.
- منحنیهای عملکرد:
بخش ۶: تحلیل و بهبود بیشتر
- تحلیل تأثیر الگوریتم GA:
- تحلیل تأثیر مقادیر تنظیمهای بهینهشده بر عملکرد CNN.
- بررسی تنوع جمعیت و همگرایی (Convergence) در طول نسلها.
پیشنیازهای دوره
- آشنایی مقدماتی با متلب (MATLAB) و کدنویسی.
- دانش پایهای در یادگیری عمیق (Deep Learning) و شبکههای عصبی (Neural Networks).
- مفاهیم پایه الگوریتمهای تکاملی (Evolutionary Algorithms) به ویژه الگوریتم ژنتیک.
خروجی دوره
- توانایی طراحی شبکههای عصبی کانولوشنی و بهینهسازی تنظیمهای آنها با استفاده از GA.
- تسلط بر ارزیابی عملکرد مدل و تحلیل نتایج.
- درک عمیق از الگوریتم ژنتیک و کاربرد آن در مسائل پیچیده یادگیری عمیق.
لینکهای آموزشی
- تلگرام: t.me/matlabanyone
- آپارات: www.aparat.com/matlablearning
- ایتــا: Eitaa.com/matlablearning
- یوتیوب: youtube.com/@matlablearning
مدرس: حسن سعادتمند
- بیش از 250 دوره آموزشی در MATLAB و پایتون.
- بیش از 15 سال تجربه در زمینه یادگیری ماشین، الگوریتم های فراابتکاری، یادگیری عمیق، مهندسی کنترل.
- چاپ چندین مقاله Q1 در بهترین ژرنال های دنیا Google Scholar.
- مدرس فرادرس
- دوستانی که تمایل دارند این دوره را در پایتون Python داشته باشند با مدرس در ارتباط باشند.





نقد و بررسیها
هنوز بررسیای ثبت نشده است.