در یادگیری تقویتی، وقتی عامل در یک حالت خاص عملی را انجام می دهد، در مقابل پاداش یا (Reward) دریافت می نماید. در این نوع یادگیری ماشین، تمامی تلاش و هدف عامل این خواهد بود که تا پاداش دریافتی را در دراز مدت به حداکثر برساند. اگرچه هم یادگیری نظارت شده (Supervised Learning) و هم یادگیری تقویتی از نگاشت بین ورودی و خروجی استفاده میکنند، اما در یادگیری تقویتی بر خلاف یادگیری نظارت شده از پاداشها و تنبیهها به عنوان سیگنالهایی برای بهبود عملکرد نهایی سیستم استفاده می شود.
تفاوت اصلی میان یادگیری تقویتی (Reinforcement Learning) با روش های دیگر یادگیری ماشین، در این است که در یادگیری تقویتی، هیچ گاه به عامل (Agent) گفته نمیشود که کار درست در هر وضعیت کدام است و فقط به وسیلهی معیاری، به عامل فهمانده می شود که یک عمل (Action) به چه میزان خوب و یا به چه میزان بد می باشد. این وظیفه عامل یادگیرنده (Learner) می باشد که با در دست داشتن این اطلاعات، یاد بگیرد که بهترین عمل در هر وضعیت کدام است. این موضوع، بخشی از نقاط قوت خاص یادگیری تقویتی است.
از این طریق، مسائل پیچیدهی تصمیمگیری در اغلب اوقات میتوانند با فراهم کردن کمترین میزان اطلاعات مورد نیاز برای حل مسأله، حل شوند. در بسیاری از حیوانات، یادگیری تقویتی، تنها شیوهی یادگیری مورد استفاده است. همچنین یادگیری تقویتی، بخشی اساسی از رفتار انسانها را تشکیل میدهد. هنگامی که دست ما در مواجهه با حرارت میسوزد، ما به سرعت یاد میگیریم که این کار را بار دیگر تکرار نکنیم. لذت و درد مثالهای خوبی از پاداشها هستند که الگوهای رفتاری ما و بسیاری از حیوانات را تشکیل میدهند. در یادگیری تقویتی، هدف اصلی از یادگیری، انجام دادن کاری و یا رسیدن به هدفی است، بدون آنکه عامل یادگیرنده، با اطلاعات مستقیم بیرونی تغذیه شود.
در یادگیری تقویتی هدف پیدا کردن مدل داده مناسبی است که «پاداش انبارهای کل» (total cumulative reward) را برای عامل بیشینه میکند. تصویر زیر ایده اساسی و عناصر درگیر در یک مدل یادگیری تقویتی را نشان میدهد.
اجزای یادگیری تقویتی:
۱- سیاست (Policy)
Policy نحوه برخورد با هر عمل و نحوه تصمیم گیری در هر یک از شرایط مختلف را تعیین می نماید. در واقع Policy تعیین کننده شیوه رفتار Agent در زمان داده بوده و عامل هوشمند را به حالت های بهتر رهنمون می سازد.
۲- تابع پاداش (Reward)
در تابع پاداش هدف را تعیین می کنند. این تابع هدفش این است که به ازای هر عمل عامل یک پاداش بدهد پس به هدف که نزدیک می شود پاداش بیشتر می شود. در صورتی که تابع پاداش بد تعریف شود عامل دیر یاد می گیرد. Reward کوتاه مدت و value بلند مدت است یعنی ممکن است یک خانه پاداش نداشته باشد ولی ما را به هدف نزدیک تر کند پس value بالاتری دارد.
۳- تابع ارزش گذاری (Value Function)
نگاه بلند مدت دارد. برای هر حالت یک مقدار تعیین می کند که هر چه بیشتر باشد یعنی به هدف نزدیک تر شده ایم. مانند اینکه در یک بازی اجازه دهید حریف مهره شما را بزند در این حالت پاداش نمی گیرید ولی به حالت دیگری می روید که بهتر است این یعنی نگاه بلند مدت.
۴- مدل (Model)
مسئله یادگیری تقویتی، احتمالاتی و stochastic است و State ها یا حالات آن non-deterministic می باشد. یعنی به ازای یک عمل می تواند به همه حالات برود ولی با یک احتمال. هر عمل یا action یک احتمال است و رفتن از یک حالت به حالت دیگر هم احتمال است. هدف یادگیرنده ماکزیمم کردن پاداش بلند مدت می باشد. در یک مسئله یادگیری تقویتی با عاملی روبرو هستیم که از طریق سعی و خطا با محیط تعامل کرده و یاد میگیرد تا عملی بهینه را برای رسیدن به هدف انتخاب نماید. یادگیری تقویتی از این رو مورد توجه است که راهی برای آموزش عامل ها برای انجام یک عمل از طریق پاداش و تنبیه است بدون اینکه لازم باشد نحوه انجام عمل را برای عامل مشخص نماید.
پر استفادهترین الگوریتمهای یادگیری تقویتی:
Q-learning و SARSA (سرنام State-Action-Reward-State-Action) دو الگوریتم محبوب و مستقل از مدل برای یادگیری تقویتی هستند. تمایز این الگوریتمها با یکدیگر در استراتژیهای جستوجوی آنها محسوب میشود، در حالیکه استراتژیهای استخراج آنها مشابه است. در حالیکه Q-learning یک روش مستقل از سیاست است که در آن عامل ارزشها را براساس عمل a* که از سیاست دیگری مشتق شده میآموزد، SARSA یک روش مبتنی بر سیاست محسوب میشود که در آن ارزشها را براساس عمل کنونی a که از سیاست کنونی آن مشتق شده میآموزد. پیادهسازی این دو روش آسان است اما فاقد تعمیمپذیری هستند زیرا دارای توانایی تخمین ارزشها برای حالتهای مشاهده نشده نیستند.
با استفاده از الگوریتمهای پیشرفتهتری مانند Deep Q-Networks که از شبکههای عصبی برای تخمین Q-valueها استفاده میکنند میتوان بر این چالشها غلبه کرد. اما، DQNها تنها میتوانند فضای حالت گسسته و ابعاد کم را مدیریت کنند. DDPG (سرنام Deep Deterministic Policy Gradient) یک الگوریتم مستقل از مدل، مستقل از سیاست و عامل-نقاد (actor-critic) به شمار میآید که روش مواجهه آن با مساله، یادگیری سیاستهایی در فضای عمل ابعاد بالا و پیوسته است.
کاربردهای عملی یادگیری تقویتی:
از آنجا که یادگیری تقویتی نیازمند حجم زیادی از دادهها است، بنابراین بیشتر در دامنههایی مانند «گیمپلی» (gameplay) و رباتیک کاربرد دارد که در آنها دادههای شبیهسازی شده به صورت آماده موجود هستند.
یادگیری تقویتی به طور گسترده در ساخت هوش مصنوعی برای انجام بازیهای کامپیوتری مورد استفاده قرار میگیرد. «آلفاگو زیرو» (AlphaGo Zero) اولین برنامه کامپیوتری است که قهرمان جهان در بازی چین باستانی «گو» (Go) را شکست داد. از دیگر بازیهایی که این هوش مصنوعی در آنها پیروز شده میتوان به بازیهای «آتاری» (ATARI) و «تخته نرد» (Backgammon) اشاره کرد.
در رباتیک و خودکارسازی صنعتی، یادگیری تقویتی برای قادرسازی رباتها به ساخت سیستمهای تطبیقی موثر برای خودشان که از تجربیات و رفتارهای خود میآموزند مورد استفاده قرار میگیرد. پژوهشهای «دیپ مایند» (DeepMind) در زمینه یادگیری عمیق تقویتی برای کنترل رباتیکی با استفاده از بازوهای مکانیکی (Robotic Manipulation) با سیاست نامتقارن مثال خوبی از این مورد است.
از دیگر کاربردهای یادگیری تقویتی میتوان به موتورهای خلاصهسازی متن، عاملهای گفتوگو (متن، گفتار) که توانایی یادگیری از تعاملهای انسانی و بهبود در طول زمان را دارند، یادگیری سیاستهای درمان بهینه در بهداشت و درمان و عاملهای مبتنی بر یادگیری تقویتی برای معاملات آنلاین سهام اشاره کرد.
منابع:
Reinforcement Learning-An Introduction By Richard S. Sutton And Andrew G. Barto , faradars , iran-machinelearning