یادگیری تقویتی کیست؟ توضیح بده.
یادگیری نیروافزوده یا یادگیری تقویتی یا یادگیری پاداش و تاوان یکی از گرایش‌های یادگیری ماشینی است که از روان‌شناسی رفتارگرایی الهام می‌گیرد. این روش بر رفتارهایی تمرکز دارد که ماشین باید برای بیشینه کردن پاداشش انجام دهد. این مسئله، با توجه به گستردگی‌اش، در زمینه‌های گوناگونی بررسی می‌شود. مانند: نظریه بازی‌ها، نظریه کنترل، تحقیق در عملیات، نظریه اطلاعات، سامانه چندعامله، هوش ازدحامی، آمار، الگوریتم ژنتیک، بهینه‌سازی بر مبنای شبیه‌سازی. در مبحث تحقیق در عملیات و در ادبیات کنترل، حوزه‌ای که در آن روش یادگیری نیروافزوده مطالعه می‌شود برنامه‌نویسی تخمینی پویای (approximate dynamic programming) خوانده می‌شود. این مسئله در تئوری کنترل بهینه نیز مطالعه شده است. البته دغدغه اصلی بیشتر مطالعات در این زمینه، اثبات وجود پاسخ بهینه و یافتن ویژگی‌های آن است و به دنبال جزئیات یادگیری یا تخمین نیست. یادگیری نیروافزوده در اقتصاد و نظریه بازیها بیشتر به بررسی تعادل‌های ایجاد شده تحت عقلانیت محدود می‌پردازد.در یادگیری ماشینی با توجه به این که بسیاری از الگوریتم‌های یادگیری نیروافزوده از تکنیک‌های برنامه‌نویسی پویا استفاده می‌کنند معمولاً مسئله تحت عنوان یک فرایند تصمیم‌گیری مارکف مدل می‌شود. تفاوت اصلی بین روش‌های سنتی و الگوریتم‌های یادگیری نیروافزوده این است که در یادگیری نیروافزوده نیازی به داشتن اطلاعات راجع به فرایند تصمیم‌گیری ندارد و این که این روش روی فرایندهای مارکف بسیار بزرگی کار می‌کند که روش‌های سنتی در آنجا ناکارآمدند.یادگیری نیروافزوده با یادگیری با نظارت معمول دو تفاوت عمده دارد، نخست اینکه در آن زوج‌های صحیح ورودی و خروجی در کار نیست و رفتارهای ناکارامد نیز از بیرون اصلاح نمی‌شوند، و دیگر آنکه تمرکز زیادی روی کارایی زنده وجود دارد که نیازمند پیدا کردن یک تعادل مناسب بین اکتشاف چیزهای جدید و بهره‌برداری از دانش اندوخته شده دارد. این سبک-سنگین کردن بین بهره‌برداری و اکتشاف در یادگیری نیروافزوده برای فرایندهای مارکف متناهی، تقریباً به‌طور کامل در مسئلهٔ راهزن چند دست بررسی شده است.تفاوت یادگیری تقویتی با سایر روش‌های یادگیری ماشین.یادگیری تقویتی را می‌توان شاخه‌ای مجزا در یادگیری ماشین در نظر گرفت؛ هرچند شباهت‌هایی هم با سایر روش‌های یادگیری ماشین دارد. برای دریافتن این شباهت‌ها و تفاوت‌ها بهتر است نگاهی به سایر روش‌های یادگیری ماشین هم نگاهی داشته باشیم.یادگیری نظارتی (supervised learning).در یادگیری نظارتی، الگوریتم‌ها با استفاده از یک سری داده برچسب‌دار آموزش داده می‌شوند. این الگوریتم‌ها فقط ویژگی‌هایی را یادمی‌گیرند که در دیتاست مشخص شده است و به آنها هدف یا target گفته می‌شود. در واقع «هدف» در این نوع یادگیری کاملاً تعریف شده است و نمونه‌های از داده و پاسخ درست در اختیار مدل قرار می‌گیرد تا با استفاده از آنها بتواند هر دادهٔ جدیدی را که می‌بیند برچسب بزند. یکی از رایج‌ترین کاربردهای یادگیری نظارتی، مدل‌های تشخیص تصویر است. این مدل‌ها یک مجموعه عکس برچسب‌دار دریافت می‌کنند و یادمی‌گیرند بین ویژگی‌های متداول آنها تمایز قائل شوند. به عنوان مثال با دریافت عکس‌هایی از صورت انسان‌ها، می‌توانند اجزای صورت را تشخیص دهند. یا بین دو یا چند حیوان تمایز قائل شوند.یادگیری نیمه نظارتی (semi supervised learning).این روش، روشی بینابینی است. توسعه‌دهندگان، یک مجموعه نسبتاً کوچک از داده‌های برچسب‌دار و یک مجموعه بزرگ‌تر از داده بدون برچسب آماده می‌کنند. سپس از مدل خواسته می‌شود، براساس چیزی که از داده‌های برچسب‌دار یادمی‌گیرد، درمورد داده‌های بدون برچسب هم پیش‌بینی انجام دهد و در نهایت داده‌های بدون برچسب و برچسب‌دار را به عنوان یک مجموعه داده کل درنظر بگیرد و نتیجه‌گیری نهایی را انجام دهد.یادگیری غیر نظارتی (unsupervised learning).در یادگیری غیرنظارتی، فقط داده‌های بدون برچسب در اختیار الگوریتم قرار داده می‌شود. این الگوریتم‌ها بدون اینکه مستقیم به آنها گفته شده باشد دنبال چه ویژگی‌ها بگردند، براساس مشاهده‌های خودشان آموزش می‌بینند. نمونه‌ای از کاربرد این نوع یادگیری، خوشه‌بندی مشتری‌ها است.یادگیری تقویتی (Reinforcement Learning).رویکرد یادگیری تقویتی کاملاً متفاوت است. در این روش، یک عامل در محیط قرار می‌گیرد تا با آزمون و خطا یاد بگیرد کدام کارها مفید و کدام کارها غیرمفید هستند و در نهایت به یک هدف مشخص برسد. از این جهت که درمورد یادگیری تقویتی هم هدف مشخصی از یادگیری وجود دارد، می‌توان آن را شبیه یادگیری نظارتی دانست. اما وقتی که اهداف و پاداش‌ها مشخص شدند، الگوریتم به صورت مستقل عمل می‌کند و نسبت به یادگیری نظارتی تصمیمات آزادانه‌تری می‌گیرد. به همین علت است که برخی یادگیری تقویتی را در دسته نیمه نظارتی جای می‌دهند. اما با توجه به آنچه گفته شد، منطقی‌تر این است که یادگیری تقویتی را به عنوان یک دسته جدا در یادگیری ماشین در نظر گرفت.مقدمه.یک مدل ابتدایی یادگیری نیروافزوده از:معمولاً مقدار پاداش به آخرین گذار مربوط است. در بسیاری از کارها ماشین می‌تواند وضعیت فعلی مسئله را نیز به‌طور کامل (یا ناقص) مشاهده کند. گاهی نیز مجموعه فعالیت‌های ممکن محدود است (مثلاً این که ماشین نتواند بیشتر از مقدار پولی که دارد خرج کند)در یادگیری نیروافزوده ماشین می‌تواند در گام‌های زمانی گسسته با محیط تعامل کند. در هر لحظهٔ مفروض formula_3، ماشین یک مجموعه مشاهدات formula_4 را دریافت می‌کند که معمولاً شامل پاداش formula_5 نیز می‌شود و پس از آن یک واکنش formula_6 از بین واکنش‌های ممکن از خود نشان می‌دهد که به محیط ارسال می‌شود. سپس وضعیت به حالت formula_7 گذار می‌کند و پاداش formula_8 نیز مشخص می‌شود که مربوط به گذار حاصل از formula_9 است؛ و این پاداش قبل از انجام حرکت بعدی ماشین همراه با formula_10 به ماشین داده می‌شود تا بر اساس آن formula_11 را انتخاب کند. هدف ماشین هم طبیعتاً این است که بیشترین پاداش ممکن را کسب کند. ماشین می‌تواند هر تصمیماتش را به صورت تابعی از روند تغییر بازی تا وضعیت حاضر یا حتی به صورت تصادفی انتخاب کند.نکتهٔ مهمی که در اینجا وجود دارد این است که یادگیری نیروافزوده برای مسائلی که در آن‌ها بیشترین سود در کوتاه مدت تضمین کنندهٔ بیشترین سود در دراز مدت نیست بسیار مناسب است؛ مثلاً من برای اینکه در بزرگسالی درآمد بیشتری داشته باشیم بهتر است که به دانشگاه بروم و درس بخوانم در حالی که این امر در حال حاضر از نظر مالی برای من بهینه نیست. دلیل وجود این برتری در روش یادگیری نیروافزوده نیز این است که ماشین در هر مرحله لزوماً بهترین راه را انتخاب نمی‌کند و در نهایت هم سعی دارد مجموع پاداش. این روش به شکل موفقیت‌آمیزی بر روی مسائل مختلفی نظیر: کنترل ربات‌ها، برنامه‌ریزی آسانسورها، مخابرات، تخته نرد، چکرز(Sutton and Barto 1998, Chapter 11) و بازی گو (آلفاگو) استفاده شده است.دو عامل مهم هستند که باعث برتری این روش می‌شوند: استفاده از نمونه‌ها برای بهینه‌سازی کارایی و استفاده از تخمین توابع برای تعامل با محیط‌های پیچیده در هریک از حالات زیر:دو حالت اول را می‌توان تحت عنوان مسائل برنامه‌ریزی بررسی کرد. (با توجه به این که مدل‌هایی از مسئله موجود است)، در حالی که سومی را باید به عنوان یک مسئلهٔ یادگیری صرف در نظر گرفت. در هر حال در چهارچوب یادگیری نیروافزوده هر سه مسئله به یک مسئلهٔ یادگیری ماشین تبدیل می‌شوند.اکتشاف.مسئلهٔ یادگیری نیروافزوده همان‌طور که توصیف شد، نیازمند یک راهکار هوشمندانه برای اکتشاف است. تصمیم‌گیری‌های تصادفی بدون استفاده از یک توزیع احتمال برآورد شده، معمولاً کارای بسیار ضعیفی دارد. برای فرایندهای مارکف کوچک و محدود مسئله در حال حاضر تا حدود خوبی حل شده است. اما با توجه به این که بیشتر الگوریتم‌ها به درستی با زیاد شدن تعداد حالات کارایی خود را حفظ نمی‌کنند (مخصوصا برای تعداد حالات نامتناهی)، در دنیای واقعی افراد به همان راه‌های ساده اکتشاف بسنده می‌کنند. یکی از این راه‌ها الگوریتم formula_12-حریصانه نام دارد که در آن ماشین تصمیمی را که به اعتقاد او بیشترین سود را در درازمدت به همراه خواهد داشت به احتمال formula_13 انتخاب می‌کند و با احتمال یکنواخت نیست یکی از کارهای دیگر را انجام می‌دهد. در اینجا formula_14 یک متغیر برای تنظیم کردن میزان اکتشاف است و بعضاً چه به دلیل وجود یک برنامهٔ زمانبندی مشخص (کم کردن مقدار اکتشاف با گذشت زمان) و چه به دلایل ابتکاری تغییر می‌کند.الگوریتم‌های یادگیری کنترلی.اگر مشکل اکتشاف را نادیده بگیریم و فرض کنیم که حالت فعلی کاملاً قابل مشاهده است (که این موضوع از اینجا به بعد مفروض است)، مسئله به این تبدیل می‌شود که چه اعمالی با توجه به تجربیات گذشته بهتر هستند.معیار بهینگی.برای سادگی، فرض کنید مسئله به صورت دنباله‌ای از قسمت‌های مستقل باشد، که هر کدام از این قسمت‌ها با رسیدن به یک حالت انتهایی به پایان می‌رسد، (برای مثال اگر قرار باشد ماشین خروج از اتاق را یاد بگیرد، به محض خروج یک قسمت تمام می‌شود و ماشین پاداش formula_15 را دریافت می‌کند همچنین، فرض کنید مستقل از این که ماشین چه تصمیماتی را به چه ترتیبی اتخاذ کند، رسیدن به این حالت انتهایی اجتناب ناپذیر باشد. تحت چند شرط دیگر برای تعادل و نظم مسئله انتظار ما از پاداش نهایی به ازای هر رویکرد انتخاب شده توسط ماشین و هر شرایط اولیه‌ای تعریف شده خواهد بود. در اینجا یک رویکرد یعنی یک توزیع احتمال بر روی تمام تصمیمات ممکن ماشین بسته به روند طی شده برای رسیدن به حالت حاضر.اگر توزیع احتمال formula_16 در نظر گرفته شده باشد، ما می‌توانیم formula_17 را به عنوان امید ریاضی پاداش مربوط به رویکرد انتخابی formula_18 در نظر بگیریم:که در اینجا متغیر تصادفی formula_20 نشاندهندهٔ مقدار "خروجی" است و به این صورت تعریف می‌شود:که در اینجا formula_22 پاداش دریافتی بعد از گذار formula_3ام است حالت اولیه در formula_16، و تصمیمات گرفته شده با توجه به رویکرد در formula_18 نمود پیدا کرده‌اند. در اینجا، formula_26 نشان دهندهٔ زمان تصادفی‌ای است که حالت انتهایی فرا می‌رسد و قسمت یادگیری حاضر به پایان می‌رسد.در مسئله‌هایی که به این شکل از قسمت‌های مستقل تشکیل نشده‌اند، معمولاً از خروجی کاسته می‌شود.در اینجا formula_28 اصطلاحاً ضریب نزول خوانده می‌شود.جستجوی جامع.روش جستجوی جامع از دو مرحلهٔ زیر تشکیل شده است:مشکل اصلی این روش این است که تعداد حالات ممکن است بسیار زیاد یا حتی نامتناهی باشد؛ و دیگر اینکه ممکن است خروجی‌ها بسیار متنوع باشند که این حالت نیازمند نمونه برداری بسیار گسترده‌ای برای تخمین خروجی نهایی هر رویکرد است.انواع یادگیری تقویتی.با توجه به رویکردهای متفاوتی که الگوریتم‌های یادگیری عمیق در سه مرحله جمع‌آوری داده، تخمین تابع ارزش و بهینه‌سازی سیاست در پیش می‌گیرند، می‌توان آنها را از مناظر مختلف دسته‌بندی کرد که در ذیل به دسته‌بندی‌ها رایج در این حوزه اشاره می‌گردد:الگوریتم‌های RL.الگوریتم‌های RL بین دو فعالیت جمع‌آوری داده و بهبود سیاست دائماً در تناوب هستند. سیاستی که برای جمع‌آوری داده استفاده می‌شود ممکن است با سیاست عامل در حین آموزش متفاوت باشد. به این رویکرد Off-policy می‌گویند. در رویکرد Off-policy سیاست بهینه بدون در نظر گرفتن اقدامات عامل یا انگیزه او برای اقدام بعدی تعیین می‌شود. در مقابل رویکرد On-policy، از همان سیاستی که در آموزش استفاده شده برای جمع‌آوری داده نیز استفاده می‌گردد. به بیانی دیگر، این رویکرد به سیاست‌هایی که عامل قبلاً در تصمیم‌گیری‌ها استفاده کرده، توجه کرده و سعی در ارزیابی و بهبود آنها می‌کند.الگوریتم‌های بدون مدل دربرابر الگوریتم‌های مبتی بر مدل.در خیلی از اوقات وضعیت‌های مسئله دارای ابعاد بالایی است. در چنین شرایطی، تابع انتقال نیاز به برآورد توزیع احتمال روی هر یک از این حالت‌ها است. همچنین به یاد داشته باشید که احتمالات انتقال باید در هر مرحله محاسبه شوند. در حال حاضر، انجام این کار با قابلیت‌های سخت‌افزاری فعلی تقریباً غیرقابل حل است. برای رویارویی با این چالش یک دسته‌بندی از مسائل یادگیری تقویتی ارائه شده است: در شرایطی که تلاش طراح صرف یادگیری مدلی از شرایط و محیط اطراف می‌شود، می‌توانیم بگوییم رویکرد مبتنی بر مدل را در پیش گرفته است. به عنوان نمونه، مجدداً بازی آجرشکن آتاری را در نظر بگیرید. طراح از یادگیری عمیق برای یادگیری تابع انتقال و تابع پاداش بهره می‌گیرد. وقتی روی یادگیری این مسائل تمرکز می‌شود. به اصطلاح در حال یادگیری مدلی از محیط هستیم که ما از این مدل برای دستیابی به تابعی به نام سیاست () استفاده می‌کنیم. تابع سیاست، مشخص می‌نماید که وقتی محیط در وضعیت است، عامل با چه احتمالی اقدام را برمی‌گزیند. اما با افزایش تعداد وضعیت‌ها و اقدام‌ها، الگوریتم‌های مبتنی بر مدل کارآمدی خود را از دست می‌دهند. از سوی دیگر، الگوریتم‌های بدون مدل درواقع مبتنی بر روش آزمون و خطا هستند و براساس نتیجه آن، دانش خود را به‌روزرسانی می‌کنند. این نوع از الگوریتم‌ها برای مواقعی مناسب هستند که مدلسازی محیط بسیار سخت باشد و طراح ترجیح می‌دهد الگوریتمی را مورد استفاده قرار دهد که به‌جای تلاش برای یادگیری مدل محیط، مستقیماً از تجربیات یاد بگیرد. این رویکرد بسیار شبیه روشی است که انسان‌ها اکثر وظایف خود را مبتنی بر آن یادمی‌گیرند. به عنوان نمونه، راننده ماشین برای انجام رانندگی، قوانین فیزیک حاکم بر ماشین را نمی‌آموزد، اما یادمی‌گیرد که بر اساس تجربه خود از نحوه واکنش ماشین به اقدامات مختلف، تصمیم بگیرد. از مزیت‌های این رویکرد، عدم نیاز به فضایی برای ذخیره ترکیبات احتمالی وضعیت‌ها و اقدام‌ها خواهد بود.رویکر مبتنی بر ارزش یا مبتنی بر سیاست.اکثر مدل‌های بدون مدل از دو رویکرد ارزش محور یا سیاست محور استفاده می‌کنند. در رویکرد سیاست محور، هدف بهینه‌سازی تابع سیاست است بدون اینکه به تابع ارزش کار داشته باشیم. به بیانی دیگر عامل یک تابع سیاست را می‌آموزد، آنرا در حین یادگیری در حافظه نگه می‌دارد و سعی می‌کند هر وضعیت را به بهترین اقدام ممکن نگاشت کند. لازم است ذکر شود سیاست‌ها ممکن است قطعی (برای یک وضعیت، همیشه اقدام مشابهی را بازمی‌گرداند) یا تصادفی (برای هر اقدام یک توزیع احتمالی در نظر می‌گیرد) باشند. در رویکرد ارزش محور، برخلاف رویکرد سیاست‌محور که به تابع ارزش کاری ندارد، هدف بهینه‌سازی تابع ارزش خواهد بود. به عبارت دیگر، عامل اقدامی را انتخاب می‌نماید که برآورد می‌کند بیشترین پاداش را در آینده دریافت خواهد کرد.معروف‌ترین الگوریتم‌های یادگیری تقویتی.روش‌های حل جدولی در مقابل روش‌های تقریبی.به‌طور کلی ایده اصلی بسیاری از الگوریتم‌های یادگیری تقویتی در ساده‌ترین حالت ممکن، نمایش تابع ارزش به صورت جدولی یا آرایه‌ای است که اصطلاحاً به آنها روش‌های حل جدولی می‌گویند. این روش‌ها برای مواردی مناسب هستند که اندازه فضای وضعیت و اقدام چندان بزرگ نباشد، در غیراینصورت با افزایش ابعاد مقیاس‌پذیر نخواهند بود و زمان یادگیری آنها به صورت نمایی افزایش می‌یابد. روش‌های حل جدولی اغلب به راهکارهای دقیق دست می‌یابند و می‌توان براساس آن‌ها مقدار بهینه تابع ارزش و سیاست را پیدا نمود. روشهای حل جدولی که مسائل را به صورت مدل‌های تصمیم‌گیری مارکوف مدلسازی می‌کنند می‌توانند از سه روش کلی حل شوند:روش‌های تقریبی.در مقابل روش‌های حل جدولی، روش‌های تقریبی مطرح می‌شوند که تنها راه‌حل‌های تقریبی را پیدا می‌کنند، اما می‌توان از آنها در مسائل بزرگتری استفاده نمود. روش‌های گرادیان سیاست از جمله روش‌های رایج در این زمینه هستند. نظریه.نظریه برای فرایندهای مارکف کوچک و محدود کامل است؛ و هر دو رفتار تقریبی و نمونه برداری محدود بیشتر الگوریتم‌ها به خوبی فهمیده شده است. همان‌طور که پیش‌تر گفته شد، الگوریتم‌هایی شناخته شده‌ای که به صورت اثبات شده کارایی بالایی دارند (راجع به مسئلهٔ اکتشاف) وجود دارند. اما برای فرایندهای مارکف بزرگ همچنان کار لازم است. تقریباً الگوریتمی برای اکتشاف کردن بهینه وجود ندارد (به غیر از مسئلهٔ راهزن). اگرچه کران‌های محدودی برای زمان اجرای برخی الگوریتم‌ها در سال‌های اخیر به دست آمده، اما به نظر می‌رسد که این کران‌ها فعلاً ضعیف هستند و بدین ترتیب کار بیشتری لازم است تا بتوانیم برتری‌های نسبی این الگوریتم‌ها و محدودیت‌هایشان لازم است.پژوهش‌های جاری.تحقیقات جاری شامل:پیشرفت‌های اتفاق افتاده در زمینهٔ یادگیری نیروافزوده در اینجا و همچنین اینجا جمع‌آوری می‌شوند.بر روی الگوریتم‌های یادگیری نیروافزوده نظیر یادگیری تفاوت زمانی هم به عنوان یک مدل برای یادگیری بر پایهٔ دوپامین در مغز تحقیقاتی در حال انجام است. در این مدل راه‌های دوپامینی() از توده سیاه به عقده‌های قاعده‌ای به عنوان خطای پیش‌بینی عمل می‌کنند. یادگیری نیروافزوده همچنین به عنوان بخشی از مدل مهارت‌آموزی انسان مورد استفاده قرار گرفته است. به خصوص در رابطه با تعامل بین یادگیری ضمنی و صریح در اکتساب مهارت‌ها. (اولین انتشار در این رابطه به سال ۱۹۹۵–۱۹۹۶ بازمی‌گردد و در ادامه تحقیقات بسیاری هم در این رابطه انجام شد).یادگیری نیروافزوده تقلیدی.در یادگیری نیروافزوده معکوس، هیچ تابع پاداشی وجود ندارد. در عوض، ماشین با مشاهدهٔ یک رفتار که معمولاً به رفتار بهینه نزدیک است سعی می‌کند آن را تقلید کند. اگر ماشینی که از روش یادگیری معکوس استفاده می‌کند از دنبال کردن رفتاری که باید مشاهده کند منحرف شود، معمولاً مدتی طول می‌کشد تا بتواند ثبات رفتار خود را حفظ کند. خیلی وقت‌ها بهتر است که رفتار ایده‌آل چندین بار با ایرادات کوچک به ماشین نشان داده شود.در یادگیری شاگردی()یک ماشین فرض می‌کند که موجود متخصصی که در حال انجام دادن یک رفتار است سعی می‌کند یک تابع پاداش را بیشینه کند، و هدف ماشین این است که به گونه‌ای این تابع پاداش را کشف کند.کاربردهای یادگیری تقویتی.برخی از کاربردهای عملی یادگیری تقویتی در ادامه آمده است. هرچند لازم است بدانیم کاربردهای یادگیری تقویتی به این موارد محدود نمی‌شود:از یادگیری تقویتی همچنین می‌توان در حوزه‌هایی مانند تحقیق در عملیات، تئوری اطلاعات، تئوری بازی، تئوری کنترل، بهینه‌سازی براساس شبیه‌سازی، سیستم‌های چند عاملی، آمار و الگوریتم‌های ژنتیک، بهره برد.