انتقال یادگیری در شبکه های عصبی عمیق مانند AlexNet و GoogLeNet


در این درس-پروژه فشردۀ یادگیری عمیق (Deep Learning) با حل دو مسئلۀ برگرفته از راهنمای متلب به توضیح انتقال یادگیری (Transfer Learning) و نحوۀ پیاده سازی آن در محیط متلب می پردازیم. همان طور که می دانیم آموزش دقیق شبکه های عصبی عمیق نیازمند ده ها و شاید صدها کارت گرافیکی (GPU) و صرف هفته ها و یا حتی ماه ها زمان است که با استفاده از مفهوم انتقال یادگیری می توان از اتلاف این حجم عظیم از وقت و هزینه جلوگیری نمود. انتقال یادگیری در شبکه های عصبی به معنی تغییر جزئی یک شبکۀ عمیق آموزش دیده برای حل مسئلۀ A است به گونه ای که بدون نیاز به آموزش دوبارۀ تمام شبکه بتوان از آن برای حل مسئلۀ کاملاً متفاوت B استفاده نمود. در این درس این مفهوم را به طور فشرده و با حل دو مسئله در متلب توضیح خواهیم داد. در مثال اول، شبکۀ کانولوشنی عمیق (Convolutional Neural Network: CNN) آموزش دیده برای دسته بندی تصاویر حاوی اعداد دست نوشته را از طریق انتقال یادگیری به یک شبکۀ جدید برای حل مسائل رگرسیون تبدیل کرده و از طریق آن میزان چرخش اعداد دست نوشته در تصاویر را تخمین می زنیم. در مسئله یا مثال دوم، تمرکز را بر روی شبکه های عمیق تر و پیچیده تر مانند AlexNet، GoogLeNet یا Resnet می گذاریم و نشان می دهیم که چگونه در محیط متلب می توان با اعمال انتقال یادگیری به این شبکه های عمیق (آموزش دیده برای دسته بندی تصاویر داده های آموزشی ImageNet به 1000 کلاس خروجی) از آنها در حل دیگر مسائل رگرسیون یا دسته بندی بدون نیاز به آموزش دوباره تمام شبکه استفاده نمود.
مطالبی که در این پروژه خواهیم دید:
- مفهوم انتقال یادگیری و پیاده سازی آن در متلب
- نحوۀ تغییر لایه های ورودی و خروجی شبکۀ آموزش یافته به لایه هایی منطبق با مسئلۀ خود و آموزش این لایه های جدید
- آشنایی با روش های مختلف آموزش شبکه های عصبی عمیق بعد از انتقال یادگیری
- نحوۀ جلوگیری از آموزش دوبارۀ برخی از لایه های شبکه های عصبی منتقل شده
- پیاده سازی چند مسئله با استفاده از انتقال یادگیری مابین شبکه های عصبی گوناگون
- حل دو مسئلۀ متفاوت با انتقال یادگیری در متلب:
- تغییر شبکۀ دسته بندی به شبکۀ تخمینی (برای سنجش میزان چرخش اعداد در تصاویر و سپس تصحیح چرخش)
- انتقال یادگیری از شبکۀ AlexNet برای حل مسئلۀ جدید دسته بندی
آنچه با خرید این مجموعه دریافت خواهید نمود:
1- کدهای کامنت گذاری شدۀ متلب مثال های ارائه شده در این درس-پروژه
2- ویدئوی توضیح فشردۀ پیاده سازی انتقال یادگیری در متلب از طریق مرور خط به خط دستورهای استفاده شده در کدهای ارائه شده
3- فایل pdf توضیح این درس-پروژه که در بردارندۀ تعریف صورت مسئله، بیان خلاصۀ انتقال یادگیری و نحوۀ حل مثال های ارائه شده در محیط متلب با توضیح کامل دستورات استفاده شده می باشد.
لازم به ذکر است که برای اجرای این درس-پروژه در متلب باید Deep Learning Toolbox نصب شده باشد.
نمونه هایی از خروجی های متلب در مثال اول:
نمونه هایی از خروجی های متلب در مثال دوم:
ویژگی های دوره
- عناوین 1
- امتحانات 0
- مدت 42 دقیقه
- سطح مهارت تحصیلات تکمیلی
- زبان فارسی
- دانشجویان 240
- گواهی نه
- ارزیابی ها بله