بهینه سازی چیست؟
منظور از بهينه سازي (optimization) يک سامانه کمينه يا بيشينه کردن تابعي است که اين تابع معياري از عملکرد سامانه مي باشد. اين عمل در نهايت به بهبود کارايي سامانه مي انجامد. بهینه سازی فرایندی است که در آن بهترین جواب (با توجه به مجموعهای از معیارها) از میان مجموعهای از جوابهای ممکن، برای یک مسأله خاص انتخاب میشود. ما در روز کارهای بسیاری انجام میدهیم، چیزهایی میخوریم، چیزهایی یاد میگیریم، به جاهای مختلفی میرویم، از وسایل مختلفی استفاده میکنیم و … و البته سعی ما این است که تمامی این کارها را به «بهترین» نحو ممکن انجام دهیم. مثلا اگر میخواهیم خرید کنیم، بهترین یعنی باکیفیتترین محصولات را بخریم. معمولا سعی میکنیم که هدف را به صورت «تابعی» از متغیرهای مسئله بنویسیم. به این تابع «تابع هدف» میگوییم. بدین ترتیب در یک مسئلهی بهینهسازی، سعی میکنیم که مقدار بهینه را برای تابع هدف به دست بیاوریم. و نقطهای که در آن مقدار تابع هدف بهینه میشود، جواب بهینهی مسئله است.
روشهای حل یک مسئلهی بهینهسازی؟
1- روشهای تحلیلی
سادهترین روش حل این است که از روش «سعی و خطا» استفاده کنیم. یعنی تمامی مسیرهای ممکن را تکتک تشکیل بدهیم و تابع هدف را برایشان محاسبه کنیم. بعد جوابها را با هم مقایسه کنیم. یک روش معمول برای تعیین نقطهی بهینهی یک تابع، این است که از تابع بر حسب متغیرها مشتق بگیریم. جایی که مشتق یک تابع صفر شود، یک نقطهی بهینه داریم. در این دسته از روشها همهی مراحل کاملا از پیش تعیین شدهاند و هیچگونه «عدد تصادفی» در حل مسئله وجود ندارد. برای بسیاری از مسئلهها استفاده از این روش مقرونبهصرفه نیست؛ چون حل خیلی سخت میشود و یا آنکه حل بسیار وقتگیر خواهدبود. بعضی از مسئلهها را هم اصلا نمیتوان به روش مشتقگیری حل کرد. روشهای تحلیلی بیشتر به دنبال حل دقیق مسائل هستند. از این رو شامل مشتقگیری و یافتن پاسخ بهینهاند. فایده اصلی این نوع از الگوریتمهای بهینهسازی تضمین جواب بهینه است، اما استفاده از آنها در مسائل با پیچیدگی بالا یا مسائل بزرگ یا دارای تابع گسسته دشوار است.
2- روشهای فراابتکاری
در مقابلِ روشهایی وجود دارند که در آنها از اعداد تصادفی استفاده میکنیم. این روشها قدری شبیه به روش سعی و خطا هستند، یعنی به صورت تصادفی شروع به جستجو در میان جوابهای ممکن میکنیم. اما در این روشها نشانهها و راهنماییهایی وجود دارند تا متوجه شویم که به جواب بهینه نزدیک شدهایم. برای همین به این روشها، روشهای «ابتکاری» میگوییم. روشهای فراابتکاری یا فرااکتشافی برای حل مسائل بزرگتر و با توابع بدرفتار مناسبترند. اگرچه این روشها نمیتوانند رسیدن به جواب بهینه را تضمین کنند. الگوریتم ژنتیک و تصعید شبیهسازی شده مثالهایی از این الگوریتمها هستند.
انواع مسائل بهینه سازی؟
- بهینه سازی با سعی خطا، بهینه سازی با تابع
- بهینه سازی تک بعدی و بهینه سازی چند بعدی
- بهینه سازی پویا و بهینه سازی ایستا
- بهینه سازی مقید و نا مقید
- بهینه سازی پیوسته و یا گسسته
- بهینه سازی تک معیاره و چند معیاره
اجزای مسائل بهینه سازی:
- تابع هدف مسئله
- فضای جستجو
- قیدها و محدویتها
- نوع مسئله بهینه سازی
- متغیر های تصمیم
هدف از این دوره آموزشی:
هدف از این دوره آموزشی، یادگیری مسائل بهینه سازی به صورت عملی و تئوری است. در این دوره به صورت پروژه محور تئوری بخش های مختلف بهینه سازی بحث و بررسی می شود و سپس پیاده سازی عملی آن با زبان پایتون انجام می شود. مدرس این دوره سال ها در این زمینه تخصص و تجربه دارد و دانش بهینه سازی و کاربرد آن را برای مسائل مختلف به شما آموزش می دهد. ابتدا مروی کامل روی پایتون انجام می شود و بعد از آن تئوری بهینه سازی به صورت کامل آموزش داده می شود. در نهایت پیاده سازی های مختلفی از بهینه سازی توابع برای کاربردهای مختلف انجام می شود. بدون شک یکی از بهترین دوره های بهنیه سای است که با زبان فارسی، ساده و روان توضیح داده شده است. امیدواریم که این آموزش از “بیگ لرن” هم مثل سایر آموزش ها مورد تایید و رضایت شما مخاطبان گرامی قرار گیرد. جزئیات این آموزش در زیر لیست شده و پیش نمایش آن در لینک زیر قرار دارد.
پیش نمایش اول این دوره در آپارات
پیش نمایش دوم این دوره در آپارات
مشاهده پیش نمایش این دوره در آپارات
بخش اول: مرور کامل روی پایتون
آموزش برنامه نویسی لازم برای این دوره
بخش دوم: مرور روی یادگیری ماشین/عمیق
آموزش برنامه نویسی لازم برای این دوره
بخش سوم: بهینه سازی با روش های ریاضی (تحلیلی)
مسائل تصمیم گیری decision-making ویدئو
الگوریتمهای بهینهسازی ویدئو
کمینه سازی (loss function) ویدئو
بیشینه سازی (Fitness function) ویدئو
تبدیل مسائل بهینه سازی ویدئو
بهینهسازی یک ریختی و چند ریختی ویدئو
اجزای یک مدل بهینه سازی ویدئو
فضای حالت در الگوریتمهای بهینهسازی ویدئو
تابع هدف در بهینهسازی ویدئو
متغیرها در بهینهسازی ویدئو
محدودیت ها در بهینهسازی ویدئو
بهینهسازی محدب و غیرمحدب ویدئو
کاهش گرادیان Gradient Descent ویدئو
معایب الگوریتم کاهش گرادیان ویدئو
کاهش گرادیان تصادفی SGD ویدئو
Momentumمومنتوم(تکانه) ویدئو
ADAGRADبهینه ساز ویدئو
پارامترها و ابرپارامترهای بهینه ساز ویدئو
تعیین نرخ یادگیری (𝜼) ویدئو
بهینه ساز ADAGRAD ویدئو
بهینه ساز RMSPROP ویدئو
بهینه ساز ADAM ویدئو
توابع یک ریخت و جستجوی محلی ویدئو
توابع چند ریخت و جستجوی سراسری ویدئو
بهینه سازی مقید(Constrained) ویدئو
بهینه سازی نامقید (Unconstrained) ویدئو
پیاده سازی کامل الگوریتم کاهش گرادیان ویدئو
پیاده سازی کامل الگوریتم ADAM ویدئو
پیاده سازی کامل بهینه ساز مقید و نامقید ویدئو
پیاده سازی کامل توابع ریاضی با بهینه ساز تحلیلی ویدئو
بخش چهارم: بهینه سازی با روش های فراابتکاری (متاهیوریستیک)
الگوریتم های دقیق (Exact) ویدئو
الگوریتم های تقریبی (Approximate) ویدئو
انواع الگوریتم های تقریبی (Approximate) ویدئو
چرا الگوریتم های متاهیوریستیک ویدئو
کاربردهای متاهیوریستیک ها ویدئو
انواع الگوریتم های متاهیوریستیک ویدئو
مزایا و معایب متاهیوریستیک ها ویدئو
مراحل کلی برای حل مساله با متاهیوریستیک ها ویدئو
معرفی Exploration و Exploitation ویدئو
بهینه محلی و بهینه سراسری ویدئو
تقسیم بندی براساس بهینه محلی و بهینه سراسری ویدئو
بخش پنجم: بهینه سازی با الگوریتم ژنتیک (Genetic Algorithm)
پیاده سازی کامل الگوریتم ژنتیک ویدئو
بهینه سازی توابع با الگوریتم ژنتیک ویدئو
انتخاب ویژگی (ّFeature Selection) با الگوریتم ژنتیک ویدئو
بخش پنجم: بهینه سازی با الگوریتم تپه نوردی (Hill Climbing Algorithm)
پیاده سازی کامل الگوریتم تپه نوردی ویدئو
بهینه سازی توابع با الگوریتم تپه نوردی ویدئو
انتخاب ویژگی (ّFeature Selection) با الگوریتم تپه نوردی ویدئو
بخش ششم: بهینه سازی با الگوریتم گرگ خاکستری (Gray Wolf Optimizer )
پیاده سازی کامل الگوریتم گرگ خاکستری ویدئو
بهینه سازی توابع با الگوریتم گرگ خاکستری ویدئو
انتخاب ویژگی (ّFeature Selection) با الگوریتم گرگ خاکستری ویدئو
بخش هفتم: بهینه سازی با الگوریتم نهنگ ها (Whale Optimization Algorithm)
پیاده سازی کامل الگوریتم نهنگ ها ویدئو
بهینه سازی توابع با الگوریتم نهنگ ها ویدئو
انتخاب ویژگی (ّFeature Selection) با الگوریتم نهنگ ها ویدئو
بخش هشتم: بهینه سازی با الگوریتم طوفان مغزی (Brain Storm Optimization)
پیاده سازی کامل الگوریتم طوفان مغزی ویدئو
بهینه سازی توابع با الگوریتم طوفان مغزی ویدئو
انتخاب ویژگی (ّFeature Selection) با الگوریتم طوفان مغزی ویدئو
بخش نهم: بهینه سازی با الگوریتم ساخت اهرام جیزه (Giza Pyramids Construction)
پیاده سازی کامل الگوریتم ساخت اهرام جیزه ویدئو
بهینه سازی توابع با الگوریتم ساخت اهرام جیزه ویدئو
انتخاب ویژگی (ّFeature Selection) با الگوریتم ساخت اهرام جیزه ویدئو
بخش دهم: بهینه سازی با الگوریتم ژنتیک (genetic algorithm)
معرفی کامل الگوریتم ژنتیک ویدئو
پیاده سازی کامل الگوریتم ژنتیک ویدئو
بهینه سازی توابع با الگوریتم ژنتیک ویدئو
انتخاب ویژگی (ّFeature Selection) با الگوریتم ژنتیک ویدئو
بخش یازدهم: بهینه سازی با الگوریتم شبیه سازی تبرید (Simulated Annealing)
معرفی کامل الگوریتم Simulated Annealing ویدئو
پیاده سازی کامل الگوریتم Simulated Annealing ویدئو
بخش دوازدهم: بهینه سازی با الگوریتم کلونی مورچه ها (Ant colony)
معرفی کامل الگوریتم کلونی مورچه ها (Ant colony) ویدئو
بهینه سازی و پیاده سازی کامل کلونی مورچه ها (Ant colony) ویدئو
بخش سیزدهم: بهینه سازی با Firefly Algorithm
معرفی کامل Firefly Algorithm ویدئو
بهینه سازی و پیاده سازی Firefly Algorithm ویدئو
موارد مرتبط
قیمت 195,000 تومان
اساتید بیگ لرن
دکتری کامپیوتردکترای مهندسی کامپیوتر (گرایش هوش مصنوعی و رباتیکز) هستم. عمده فعالیت من در حوزه یادگیری عمیق، علم داده، پردازش تصویر و پردازش متن با زبان های برنامه نویسی پایتون و جاوا است.
کیا
خیلی دوره عالی بود. متشکرم