«یادگیری تقویتی» (Reinforcement learning) یکی از موضوعات موردبحث، جذاب و تأملبرانگیز در «حوزه هوش مصنوعی» (AI) و «یادگیری ماشین» (machine learning) است زیرا این پتانسیل را دارد که اکثر مشاغل را متحول کند. دوره آموزش ...
آموزش یادگیری تقویتی
آموزش پروژه محور یادگیری تقویتی
افزایش مهارت های یادگیری ماشین
ساخت مدل هوشمند
برای بهرهبردن از مزایای آموزشی این دوره، باید ابتدا تسلط کافی به زبان برنامهنویسی پایتون و همچنین مفاهیم اساسی هوش مصنوعی و شبکه عصبی و مباحث آمار و احتمال داشته باشید. بدون برخورداری از این موارد، شرکت در این دوره کمک چندانی به شما نخواهد کرد. علاوه بر این تمام کدها روی colab.research.google.com اجرا میشوند تا تمام شرکتکنندگان به قدرت محاسباتی و سرعت یکسانی دسترسی داشته باشند و در نتیجه عدالت بین همه رعایت شود.
«یادگیری تقویتی» (Reinforcement learning) یکی از موضوعات موردبحث، جذاب و تأملبرانگیز در «حوزه هوش مصنوعی» (AI) و «یادگیری ماشین» (machine learning) است زیرا این پتانسیل را دارد که اکثر مشاغل را متحول کند. دوره آموزش یادگیری تقویتی به هدف آموزش این ترند در یادگیری ماشین ارائه شده است و به کاربر دید روشنی از این ترند جذاب و پرکاربرد میدهد و کاربر جنبههای تئوری و عملی آن را یاد میگیرد. در ادامه به معرفی این دوره آموزش یادگیری تقویتی خواهیم پرداخت و در پایان اطلاعات کاملی را از این ترند جذاب ذکر خواهیم کرد.
زمینههایی مثل علم داده، هوش مصنوعی و یادگیری ماشین در حال حاضر محبوبیت زیادی را به خود اختصاص دادهاند. چراکه با استفاده از این علوم میتوان سیستمهای هوشمند و یادگیرنده طراحی کرد و کارها را با سرعت و دقت بیشتری انجام داد. یادگیری تقویتی یا Reinforcement Learning برای ارتباط دادن یادگیری ماشین و شبکههای عمیق با دنیای صنعت کاربرد دارد. با یادگیری تقویتی میتوان یک ماشین را برای انجام یک بازی به نحوی آموزش داد که در برابر انسان به پیروزی برسد.
یادگیری تقویتی ارتباط بین هوش مصنوعی با صنعت را برقرار میکند. کاربرد اصلی یادگیری تقویتی در برنامهریزی رباتها و ماشینهایی است که به تولید کارخانهها یا مدیریت انبار کمک میکنند. این رباتها با یادگیری تقویتی تمام سناریوهای احتمالی زمان کار را فراگرفته و در زمان اتفاق افتادن هرکدام از حالات، واکنشی متناسب با آن از خود نشان میدهند. سیستمهای خودآموز در دنیای امروز نقش بسیار ویژهای دارند و شرکتهایی مثل آمازون یا اپل بر اساس این سیستمها کار میکنند.
هدف نهایی از دوره آموزش یادگیری تقویتی، راهاندازی سیستمهای خودآموز است. سیستمهایی که بتوانند با درس گرفتن از تجربیات خود، بهروز شده و واکنشهای بهتری به شرایط نشان دهند. در واقع در این دوره ما به فراگیری مفهوم یادگیری تقویتی میپردازیم که در پی آن توانایی نوشتن برنامهای را داریم که با کمک آن، کامپیوتر بهجای تکرار یک مسیر ثابت، علاوه بر انجام کار، از هر بار انجام شدن کار درس میگیرد و دفعات بعدی آن را با خطاهای کمتری انجام خواهد داد. همانطور که گفتیم با یادگیری تقویتی میتوان برنامهای نوشت که کامپیوتر با استفاده از آن در برابر انسان پیروز شود.
این دوره برای افراد زیر مناسب است:
در پایان این دوره قادر خواهید بود سیستم خودآموز دلخواهتان را بسازید. علاوه بر این با توجه به اینکه در این دوره با اصطلاحات و مفاهیم اساسی این حوزه آشنا میشوید. پس از پایان دوره امکان مطالعه و پژوهش سطح بالا در این زمینه را هم خواهید داشت. دو موردی که گفته شد را میتوان بهعنوان اصلیترین مزایای این دوره بیان کرد. اما علاوه بر این مورد، در پایان دوره آموزش یادگیری تقویتی به مهارتهای زیر هم مسلط خواهید بود:
شیوه آموزش این دوره ترکیبی از آموزش تئوریک و آموزش عملی است. به این صورت که ابتدا مباحث تئوری بررسی شده و سپس با پروژهها و مثالهای عملی، این یادگیری تثبیت میشود. علاوه بر اینها سعی شده است در این دوره تا حد ممکن مباحث ریاضی مربوط به یادگیری تقویتی بیان شود تا شرکتکننده در ادامه بتواند این مبحث را بهصورت آکادمیک یا پژوهشی دنبال کند.
به عنوان مکمل و پیش نیاز این دوره میتوانید از دورههای آموزش هوش مصنوعی و آموزش پایتون مکتب خونه استفاده کنید.
در هسته یادگیری تقویتی این مفهوم وجود دارد که رفتار یا عمل بهینه با یک پاداش مثبت تقویت میشود. یادگیری تقویتی درست مانند کودکی نوپا که یاد میگیرد چگونه راه برود و اقدامات را بر اساس نتایجی که تجربه میکنند تنظیم کند. ماشینها و عوامل نرمافزاری از الگوریتمهای یادگیری تقویتی برای تعیین رفتار ایدهآل بر اساس بازخورد از محیط استفاده میکنند. این نوعی یادگیری ماشینی است و بنابراین شاخهای از هوش مصنوعی است که در دوره آموزش یادگیری تقویتی آموزش داده خواهد شد.
بسته به پیچیدگی مشکل، الگوریتمهای یادگیری تقویتی میتوانند در صورت لزوم با محیط در طول زمان سازگار شوند تا در درازمدت پاداش را به حداکثر برسانند؛ بنابراین، مانند کودک نوپا، رباتی که راه رفتن را با یادگیری تقویتی یاد میگیرد، راههای مختلفی را برای رسیدن به هدف امتحان میکند، درباره میزان موفقیت آن راهها بازخورد دریافت میکند و سپس تنظیم میکند تا هدف راه رفتن محقق شود.
یک قدم بزرگ روبهجلو باعث سقوط ربات میشود، بنابراین گام خود را طوری تنظیم میکند که آن را کوچکتر کند تا ببیند آیا میتواند با آن حالت خود را ایستاده نگه دارد یا خیر. این ربات از طریق تغییرات مختلف به یادگیری خود ادامه میدهد و درنهایت قادر به راه رفتن میشود. در این مثال، پادش، ایستادن است و درهمان حال مجازات برای آن سقوط خواهد بود. بر اساس بازخوردی که ربات برای اقدامات خود دریافت میکند، اقدامات بهینه تقویت میشوند.
یادگیری تقویتی به دادههای زیادی نیاز دارد، به همین دلیل است که اولین کاربردهای این فناوری در مناطقی بوده است که دادههای شبیه سازی شده بهراحتی در دسترس هستند و تخمین ارزش آسانتر است، مانند گیم پلی و صنعت روباتیک.
از طرفی ما «یادگیری تقویتی عمیق» (Deep Reinforcement Learning) را داریم که شبکههای عصبی عمیق را برای حل مسائل یادگیری تقویتی معرفی میکند که بحث آن بسیار مفصل و کمی متفاوت از یادگیری تقویتی ساده است.
یادگیری تقویتی زیرشاخهای از یادگیری ماشینی است که به یک عامل میآموزد که چگونه یک عمل را از فضای عمل خود در یک محیط خاص انتخاب کند تا در طول زمان پاداش را به حداکثر برساند.
یادگیری تقویتی دارای چهارعنصر اساسی است:
نحوه کار اجزا در دوره آموزش یادگیری تقویتی موردبررسی واقعشده است.
همانطور که در دوره آموزش یادگیری تقویتی نیز به این مسائل و جزئیات اشاره شده است، در یادگیری تقویتی فازها و جزئیات زیر از اهمیت بالایی برخوردار هستند.
بهصورت کلی دو نوع تقویتکننده در مدلهای یادگیری تقویتی وجود دارد که شیوه کار و نحوه رفتار آنها به شرح زیر است:
تقویت مثبت به این صورت تعریف میشود که یک رویداد به دلیل یک رفتار خاص رخ دهد، قدرت و فراوانی رفتار را افزایش دهد. بهعبارتدیگر تأثیر مثبتی بر رفتار دارد.
مزایای یادگیری تقویتی مثبت عبارتاند از:
تقویت منفی بهعنوان تقویت رفتار تعریف میشود زیرا یک وضعیت منفی متوقف یا از آن اجتناب میشود.
مزایای یادگیری تقویتی:
الگوریتمهای یادگیری تقویتی زیادی تا به امروز ارائهشدهاند و هر روز نیز به تعداد این الگوریتمها اضافه میشود. بهصورت کلی انواع الگوریتم یادگیری تقویتی بهصورت فهرست زیر است:
1. الگوریتم مونت کارلو (Monte Carlo)
2. الگوریتم Q-learning
3. الگوریتم SARSA
4. الگوریتم Q-learning - Lambda
5. الگوریتم SARSA - Lambda
6. الگوریتم DQN
7. الگوریتم DDPG
8. الگوریتم A3C
9. الگوریتم NAF
10. الگوریتم TRPO
11. الگوریتم PPO
12. الگوریتم TD3
13. الگوریتم SAC
14. و سایر موارد
هرکدام از این الگوریتمهای یادگیری تقویتی reinforcement-شیوه کار خود را پیروی میکنند که پرداختن به آنها خارج از این بحث است.
اگرچه ما هنوز در مراحل اولیه یادگیری تقویتی هستیم، برنامهها و محصولات مختلفی وجود دارند که شروع به تکیهبر این فناوری کردهاند. شرکتها شروع به اجرای یادگیری تقویتی برای مشکلاتی میکنند که در آن تصمیمگیری متوالی موردنیاز است و یادگیری تقویتی میتواند از متخصصان انسانی پشتیبانی کند یا فرآیند تصمیمگیری را خودکار کند. مهمترین این کاربردها به شرح موارد زیر است.
یادگیری تقویتی به رباتیک یک چارچوب و مجموعهای از ابزارها برای رفتارهای مهندسیشده میدهد. ازآنجاییکه یادگیری تقویتی میتواند بدون نظارت اتفاق بیفتد، این میتواند به رشد تصاعدی صنعت روباتیک کمک کند.
به لطف قابلیتهای یادگیری تقویتی DeepMind، گوگل توانست مصرف انرژی در مراکز داده خود را بهطور چشمگیری کاهش دهد. همچنین Bonsai که اخیراً توسط مایکروسافت خریداری شده است، یک راهحل یادگیری تقویتی برای خودکارسازی و توسعه هوشمندی در سیستمهای پیچیده و پویا در انرژی، تولید، خودرو و زنجیره تأمین ارائه میدهد.
در واقع، اولین برنامهای که در آن یادگیری تقویتی شهرت پیدا کرد، زمانی بود که AlphaGo، یک الگوریتم یادگیری ماشین، در برابر یکی از بهترین بازیکنان انسانی جهان در بازی Go پیروز شد. اکنون از یادگیری تقویتی برای رقابت در انواع بازیها استفاده میشود.
یادگیری تقویتی بهطور ایده آل برای کشف درمانهای بهینه برای شرایط سلامتی و درمانهای دارویی مناسب است. همچنین در آزمایشهای بالینی و همچنین برای سایر کاربردها در مراقبتهای بهداشتی استفاده شده است.
ازآنجاییکه شرکتها دادهها و متنهای انتزاعی زیادی را در قالب پرسشهای مشتری، قراردادها، رباتهای گفتگو و موارد دیگر دریافت میکنند، راهحلهایی که از یادگیری تقویتی برای خلاصهنویسی متن استفاده میکنند بسیار موردعلاقه هستند.
اکثر خودروهای خودران، کامیونها، پهپادها و کشتیها دارای الگوریتمهای تقویتی در مرکز هستند. Wayve، یک شرکت انگلیسی، یک وسیله نقلیه خودران طراحی کرد که با کمک یادگیری تقویتی، رانندگی را در 20 دقیقه یاد گرفت.
ازآنجاییکه مجموعه دادههای قابلتوجهی برای کارکرد یادگیری تقویتی موردنیاز است، شرکتهای بیشتری قادر خواهند بود با به دست آوردن دادههای بیشتر، از قابلیتهای یادگیری تقویتی استفاده کنند. همانطور که ارزش یادگیری تقویتی همچنان در حال رشد است، شرکتها به سرمایهگذاری در منابع ادامه میدهند تا بهترین راه را برای پیادهسازی فناوری در عملیات، خدمات و محصولات خود بیابند.
هدف از یادگیری نظارتی (supervised learning) و یادگیری غیر نظارتی (unsupervised learning)، جستجو و یادگیری الگوها در دادههای آموزشی است که کاملاً ثابت است. از سوی دیگر، RL مبنی بر سیاستی است که به یک عامل میگوید در هر مرحله کدام عمل را انتخاب کند و این یعنی پویایی الگوریتم.
در یادگیری نظارت شده، پاسخ درست توسط دادههای آموزشی داده میشود. در آموزش تقویتی، پاسخ درست بهصراحت داده نشده است: در عوض، عامل باید با آزمونوخطا یاد بگیرد. تنها مرجع، پاداشی است که پس از انجام یک اقدام دریافت میکند که به عامل میگوید چه زمانی در حال پیشرفت است یا چه زمانی شکستخورده است.
یک عامل یادگیری تقویتی باید تعادل مناسبی بین کاوش در محیط، جستجوی راههای جدید برای دریافت پاداش و بهرهبرداری از منابع پاداشی که قبلاً کشف کرده است، بیابد. در مقابل، سیستمهای یادگیری تحت نظارت و بدون نظارت، پاسخ را مستقیماً از دادههای آموزشی میگیرند، بدون اینکه نیازی به جستجوی پاسخهای دیگر باشد.
یادگیری تقویتی یک فرآیند تصمیمگیری چندگانه است و این یعنی RL یک زنجیره تصمیمگیری را در طول زمان لازم برای اتمام یک کار خاص تشکیل میدهد. برعکس، یادگیری تحت نظارت یک فرآیند تک تصمیمی است.
اطلاعات بیشتر
از مجموع 49 امتیاز
17 نظرنظرات بیشتر
پس از گذراندن محتوای دوره به صورت آنلاین (بدون دانلود) در سایت مکتبخونه، در صورتی که حد نصاب قبولی در دوره را کسب و تمرین ها و پروژه های الزامی را ارسال کنید، گواهینامه رسمی پایان دوره توسط مکتبخونه به اسم شما صادر شده و در اختیار شما قرار میگیرد.
قابل اشتراکگذاری در
علی قندی تحصیلات خود در رشتهی مهندسی برق گرایش سیستمهای دیجیتال را از سال ۹۲ در دانشگاه صنعتی شریف آغاز نمود. کارشناسی ارشد خود را در همین دانشگاه در زمینه علوم داده گذرانده و از سال 1399 مقطع دکترا را در این زمینه آغاز نموده است.
وی از سال ۱۳۹۵ فعالیت خود در زمینهی هوش مصنوعی را بصورت تخصصی آغاز کرده و پروژههای متعدد یادگیری ماشین و شبکهی عمیق در زمینههای گوناگون را به انجام رسانیده است. وی همچنین بهعنوان مشاور و متخصص تحلیل داده در شرکتهای مطرح مشغول به فعالیت است.
اطلاعات بیشتر