Deep Q Networks (DQN) دنیای یادگیری تقویتی را متحول کرد. این اولین الگوریتمی بود که توانست یک استراتژی موفق را در یک محیط پیچیده بلافاصله از ورودی های تصویر با ابعاد بالا بیاموزد. در این پست وبلاگ، بررسی می کنیم که چگونه برخی از تکنیک های معرفی شده در مقاله اصلی به موفقیت آن کمک کردند. به طور خاص، ما بررسی می کنیم که پخش مجدد حافظه و شبکه های هدف تا چه حد به جلوگیری از واگرایی در فرآیند یادگیری کمک می کنند.
Reinforcement Leaing (RL) مدتی است که وجود داشته است، اما هنوز به حل آن نزدیک نشده است. در حالی که یادگیری نظارت شده در حال حاضر می تواند بسیار دشوار باشد، روش های RL همچنین باید با تغییرات در توزیع داده ها، فضاهای حالت بزرگ، قابلیت مشاهده جزئی و چالش های مختلف دیگر مقابله کنند. در سال 2013، مقاله Playing Atari with Deep Reinforcement Leaing (Mnih و همکاران) DQN را معرفی کرد، اولین روش RL برای یادگیری موفقیت آمیز خط مشی های خوب مستقیماً از ورودی های با ابعاد بالا با استفاده از شبکه های عصبی. این الگوریتم در چندین بازی آتاری بهتر از متخصصان انسانی عمل می کند و مستقیماً از ورودی تصویر یاد می گیرد.

نویسندگان DQN در مقاله سال 2015 خود DQN را بهبود بخشیده اند و تکنیک های بیشتری را برای تثبیت فرآیند یادگیری معرفی می کنند. در این پست، نگاهی به دو نوآوری کلیدی DQN، پخش مجدد حافظه و شبکه های هدف می اندازیم. ما آزمایش های خود را انجام می دهیم و بررسی می کنیم که هر یک از این تکنیک ها تا چه حد به جلوگیری از واگرایی در فرآیند یادگیری کمک می کند. هنگامی که واگرایی رخ می دهد، کیفیت استراتژی آموخته شده شانس زیادی برای از بین رفتن دارد، که ما می خواهیم از آن اجتناب کنیم. مطالعه شرایط واگرایی همچنین به ما امکان می دهد بینش بهتری نسبت به پویایی یادگیری یادگیری (Q) با تقریب تابع شبکه عصبی داشته باشیم.
بقیه این پست به شرح زیر است:
- ابتدا کمی از پس زمینه را توسعه می دهیم، به طور خلاصه به RL، (Q)-leaing، تقریب توابع با شبکه های عصبی و الگوریتم DQN می پردازیم.
- سپس تعریفی از واگرایی ارائه می دهیم که در آزمایشات خود از آن استفاده می کنیم.
- ما تنظیمات آزمایشی را شرح می دهیم،
- پس از آن در مورد نتایج بحث می کنیم.
زمینه
در این پست، ما فقط یک مرور مختصر از تکنیک های اصلی ارائه می دهیم و خیلی عمیق به تمام تئوری های پس زمینه نمی پردازیم. اگر می خواهید عمیق تر شوید، پیشنهاد می کنیم مقاله اصلی را بررسی کنید.
یادگیری تقویتی
در RL ، ما یک عامل را در تعامل با برخی از محیط ها مطالعه می کنیم. مأمور یاد می گیرد با بهینه سازی پاداش مقیاس داده شده توسط محیط خود اقدامات خوبی انجام دهد. نماینده می آموزد که وضعیت فعلی جهان ، (S ) را برای توزیع احتمال نسبت به اقدامات خود ( pi (a mid s) ) ترسیم کند ، که ما آن را سیاستی می نامیم. در یک بازی آتاری ، بازی محیط است و بازیکن عامل است که با یادگیری یک سیاست خوب سعی در به حداکثر رساندن نمره خود دارد.
محیط در هر مقطع زمانی سیگنال پاداش را برای ما فراهم می کند. ما به دریافت حداکثر پاداش تجمعی با گذشت زمان ، بازده اهمیت می دهیم. در هر timestep (t ) ، ما می توانیم بازگشت آینده را به عنوان: ( شروع g_: = & r_t + gamma r_ + ldots + gamma^r_t = sum_^t gamma^r _ \ = تعریف کنیم. & r_t + gamma g_ ، & (1) end )
که در آن (r_t ) پاداش در زمان (t ) است ، (t ) مرحله زمانی است که قسمت آن خاتمه می یابد ، و (0 leq gamma leq 1 ) نرخ تخفیف است. از نرخ تخفیف برای کنترل میزان اهمیت ما به پاداش های آینده استفاده می شود ، با ارزش های بالاتر به آینده دورتر به نظر می رسد. یک قسمت را می توان به عنوان یک نمونه از یادگیری دانست. در دنیای آتاری ، یک قسمت یک دور بازی قبل از بازی است. معادله 1 هویت بسیار مهمی را برای یادگیری بعداً در اختیار ما قرار می دهد.
از آنجا که ما نمی دانیم در آینده چه پاداش هایی را می خواهیم ، باید با بازگشت آینده مورد انتظار (تخفیف) کار کنیم. این ما را به سمت (q )-مقادیر ، که به عنوان بازده آینده مورد انتظار تعریف می شود ، با توجه به اینکه ما در حالت (S ) عمل می کنیم و خط مشی ( pi ) را دنبال می کنیم:
[q^ pi (s ، a): = mathbb_ pi [g_t mid s_t = s ، a_t = a]. ]
انتظار با توجه به ( pi ) است ، زیرا آن را تعیین می کند (همراه با محیط) که از آن بازدید می شود ، و به نوبه خود کدام پاداش به دست می آید.
q-leaing
اگر بتوانیم این مقادیر (q ) را بیاموزیم ، می دانیم کدام اقدامات بهترین بازده را دارند و به ما امکان می دهد سیاست خود را بهینه کنیم. یک تکنیک مبتنی بر این اصل (q )-یادگیری است. در (q )-یادگیری ، ما بهینه (q )-مقادیر را مستقیماً از انتقال محیط با تجربه ((s ، a ، r ، s ') ) می آموزیم ، جایی که (s' ) دولت استزیر (S ) پس از اقدام (A ). قانون به روزرسانی زیر استفاده می شود:
[q (s ، a) Leftarrow Q (s ، a) + alpha (r + gamma max_ q (s '، a') - q (s ، a)) ، (2) ]
جایی که ( alpha ) یک پارامتر نرخ یادگیری است که سرعت یادگیری را کنترل می کند. این بروزرسانی (q ) فعلی را سوق می دهد-مقادیر (q (s ، a) ) به سمت اهداف بوت استرپ خود (r + gamma max_q (s '، a') ). انتقال نمونه می تواند با استفاده از هر سیاستی ، مانند یک سیاست Epsilon-Greedy ، ایجاد (q )-یادگیری یک روش خارج از سیاست ایجاد شود.
تقریب عملکرد
در اکثر سناریوهای واقع گرایانه ، فضای دولت برای ذخیره (q ) بسیار بزرگ است-مقادیر برای. تصور کنید که یک حالت بازی Atari را به یک (q ) نقشه برداری کنید-مقدار مستقیم از داده های تصویر. با فرض مقادیر پیکسل RGB و صفحه نمایش 84x84 پیکسل ، ما باید مقادیر ((256 CDOT 3)^) را ذخیره کنیم ، یکی برای هر پیکربندی پیکسل. علاوه بر این غیر عملی ، ما همچنین بین حالت های مختلف پیکسل به خوبی تعمیم نمی دهیم ، زیرا اینها ساختار نهفته را به طور مؤثر ضبط نمی کنند.
بنابراین ، تقریب عملکرد برای پیش بینی (q )-مقادیر با استفاده از برخی از عملکردهای آموخته شده ، با توجه به یک جفت حالت یا حالت عمل استفاده می شود. این اجازه می دهد تا (q )-مقادیر به صورت فشرده شده (پارامترها) و تعمیم در حالتهای مشابه نشان داده شود.
در DQN ، بروزرسانی (q ) کمی متفاوت از آنچه در معادله 2 توضیح داده شده است ، زیرا از عملکرد تقریب عملکرد با پارامترهای ( theta ) ، یعنی (q (s ، a) = q (s ، a استفاده می کند.؛ تتا) ). تقریباً معادل 1 برای به حداقل رساندن میانگین خطای مربع بین هدف (r + gamma max_ q (s '، a') ) و جریان (q )-مقدار با استفاده از نزول شیب تصادفی:
جایی که (q ) به عنوان یک شبکه عصبی اجرا می شود. در حالی که شبکه های عصبی می توانند پویایی بسیار پیچیده ای را بیاموزند ، اما آنها نیز بسیار ناپایدار هستند. این بی ثباتی مانع از استفاده موفقیت آمیز در شبکه های عصبی (و سایر عملکردهای پیچیده) برای مدتی با موفقیت در RL می شود. یعنی تا زمانی که DQN چندین تکنیک را برای مقابله با این بی ثباتی ، از جمله پخش مجدد تجربه و شبکه های هدف ارائه دهد.
پخش مجدد
ما دیده ایم که DQN (q )-مقادیر با استفاده از شبکه های عصبی را می آموزد. این را می توان به عنوان یادگیری تحت نظارت دانست. در این الگوی ، یک فرض مهم این است که داده ها به طور مستقل و یکسان توزیع می شوند (i. i. d.). با این حال ، در RL ، این امر وجود ندارد. کشورهای بعدی بسیار همبسته هستند و توزیع داده ها همانطور که عامل می آموزد تغییر می کند. برای مقابله با این ، DQN آخرین انتقال (N ) را با تجربه با برخی از ظرفیت های محدود (N ) ذخیره می کند. هنگام انجام یک (q )-به روزرسانی ارزش ، از تجربیاتی که به طور تصادفی از حافظه نمونه برداری می شود استفاده می کند.
ایده نمونه برداری به طور تصادفی شکستن همبستگی بین تجربیات به روز شده ، افزایش کارایی نمونه و کاهش واریانس است. نویسندگان همچنین استدلال می کنند که این تکنیک: با جلوگیری از حلقه های بازخورد ناخواسته کمک می کند. و میانگین توزیع رفتار در بسیاری از حالت های قبلی ، صاف کردن یادگیری و جلوگیری از واگرایی.
شبکه های هدف
در به روزرسانی پارامتر داده شده توسط معادله 3 ، شبکه Q هر دو مورد پیش بینی شده (q ) پیش بینی شده وضعیت فعلی را پیش بینی می کند ، و همچنین هدف: (r + gamma max_ q (s '، a' ؛ theta^t) ). با این حال ، پس از به روزرسانی پارامترهای شبکه ، مقدار هدف نیز تغییر می کند. این مانند این است که از شبکه بخواهید که یاد بگیرد چشم گاو را پرتاب کند ، اما سپس صفحه دارت را به جای دیگری حرکت می دهد. این منجر به بی ثباتی می شود.
برای مقابله با این مشکل ، DQN با استفاده از یک شبکه هدف پیشنهاد می کند. ایده این است که هدف را با استفاده از یک شبکه (هدف) محاسبه کنید که برای برخی از مراحل زمان به روز نشده است. به این ترتیب ، اهداف در طول آموزش "حرکت نمی کنند". هر مرحله زمانی (C ) ، شبکه هدف با شبکه فعلی (q ) هماهنگ می شود.
واگرایی
هدف ما این است که دریابیم که دو روش ذکر شده در بالا به چه میزان کمک می کنند تا با واگرایی در فرایند یادگیری برخورد کنیم. واگرایی هنگامی اتفاق می افتد که عملکرد (q )-تقریب عملکرد مقادیر غیر واقعی را برای جفت های عملکردی می آموزد ، به نوبه خود از بین بردن کیفیت سیاست کنترل حریص حاصل از (q ) (ون هاسلت و همکاران).
برای اکثر محیط ها ، ما مقادیر Q واقعی را نمی دانیم. چگونه می دانیم که در آن زمان واگرایی رخ می دهد؟ون هاسلت و همکاران. برای تعریف واگرایی نرم ، یک پروکسی برای واگرایی از یک ترفند هوشمندانه استفاده کنید. برای جلوگیری از بی ثباتی ، DQN همه پاداش ها را به محدوده ([-1 ، 1] ) می رساند. بنابراین ، بازگشت آینده در برخی از ایالت ها محدود به:
جایی که آخرین برابری نتیجه کلی برای سری هندسی است. این بدان معنی است که هر مقدار (q )-از لحاظ نظری توسط (4) محدود می شود. اگر حداکثر مقدار مطلق (q )-از این حد فراتر رود ، می گوییم واگرایی نرم رخ می دهد.
راه اندازی آزمایشی
ما سعی می کنیم تنظیمات آزمایشی کاغذ DQN را در هر کجا که ممکن باشد دنبال کنیم. حتی اگر نویسندگان برای بازی در بازی های آتاری از یک شبکه عصبی حلقوی استفاده می کنند ، با توجه به محاسبات و محدودیت های زمانی ، خودمان را به یک معماری ساده تر محدود می کنیم. ما از یک شبکه عصبی کاملاً متصل با یک لایه پنهان واحد (به استثنای لایه های ورودی و خروجی) از اندازه 128 استفاده می کنیم ، نقشه برداری از حالت های ورودی به مجموعه ای از اقدامات گسسته. ما قبل از لایه خروجی از توابع فعال سازی RELU در هر لایه استفاده می کنیم.
با توجه به محدودیت های ما ، ما فقط به محیط های نسبتاً ساده و محاسباتی ارزان نگاه می کنیم. ما سه محیط را کشف می کنیم ، به طوری که نتایج ما مختص هیچ یک از آنها نیست. هر محیط انتخاب شده است که از مشکل (تخمین زده شده) متفاوت برخوردار باشد ، زیرا ما این را یک تمایز مهم در متن خود می دانیم. ما محیط های تئوری کنترل کلاسیک را در نظر می گیریم که توسط Openai Gym در دسترس است:
محیط 1: قطب سبد
در محیط قطب سبد خرید ، عامل سعی می کند با استفاده از یک نیروی راست یا یک نیروی چپ ، یک قطب را روی یک سبد تعادل برقرار کند. برای هر قدم ، قطب به صورت قائم باقی می ماند (کمتر از 15 درجه از عمودی) ، عامل پاداش 1+ را دریافت می کند. از آنجا که مشکل وی برای حل آن نسبتاً آسان تلقی می شود. ما آن را به عنوان نماینده مشکلات با مشکل کم انتخاب کردیم.
محیط 2: آکروبات
در محیط آکروبات ، عامل سعی می کند با استفاده از گشتاور در جهت عقربه های ساعت یا ضد عقربه های ساعت ، یک بازوی ربات دو لینک را در بالای پایه قرار دهد. این مشکل دشوارتر از مسئله قبلی است ، بنابراین ما آن را به عنوان نماینده مشکلات با مشکل در سطح متوسط انتخاب می کنیم.
محیط 3: ماشین کوهستانی
در محیط ماشین کوهستانی ، مأمور یک ماشین را در پایین دره شروع می کند و سعی می کند آن را از تپه راست سوق دهد. با این حال ، موتور ماشین به اندازه کافی قوی نیست که بتواند این کار را در یک پاس واحد انجام دهد. در عوض ، برای ایجاد حرکت باید بین تپه چپ و راست به عقب و جلو برود. این مشکل کاملاً چالش برانگیز است ، بنابراین ما آن را به عنوان نماینده مشکلات با مشکل در سطح بالا انتخاب می کنیم.
آزمایشات و هایپرپارامترها
از آنجا که اکنون واگرایی می تواند اندازه گیری شود ، ما از آن به عنوان یک متریک استفاده می کنیم تا مقایسه کنیم که الگوریتم ها نسبت به سایرین واگرایی بیشتری دارند. ما می گوییم یک الگوریتم اگر کسری از دویدن که در آن واگرایی نرم رخ می دهد بیشتر است ، واگرایی بیشتری نشان می دهد. ما به پخش مجدد حافظه و شبکه های هدف به عنوان "ترفندهای" DQN اشاره می کنیم. پیشرفتی که هر یک از ترفندها به DQN می بخشد در برابر مدل پایه ، DQN بدون ترفند یا DQN وانیل اندازه گیری می شود. بنابراین ما 4 تنظیم مختلف را برای هر محیط مقایسه می کنیم: بدون ترفند (عامل وانیلی) ، با پخش حافظه (عامل حافظه) ، با شبکه های هدف (عامل هدف) و با هر دو ترفند (DQN / Memory+عامل هدف).
ما هر آزمایش را با دانه های تصادفی از 1 تا 25 انجام می دهیم تا از نظر آماری بیشتر به نتایج سالم برسیم ، در حالی که بودجه محاسباتی خود را در نظر می گیریم. اگر حداکثر مقدار Q مطلق در هر یک از 20 قسمت آخر تمرین بالاتر از آستانه باشد ( frac<1-gamma>) ، ما می گوییم واگرایی نرم رخ می دهد.
همه مأمورین برای 700 قسمت آموزش دیده اند که به نظر ما برای یادگیری برنده بازی ها کافی است. برای اکتشاف بهتر ، ما از یک استراتژی حریص ( epsilon ) استفاده می کنیم که به طور خطی از 1 تا 0. 1 در طول 400 قسمت اول آنیل شده است و پس از آن ثابت نگه داشته می شود. ضریب تخفیف برای همه محیط ها ( gamma = 0. 99 ) است.
یکی دیگر از Hyperparameter فرکانس به روزرسانی های شبکه هدف است (هر زمان که از این تکنیک استفاده شود). ما به طور تجربی 400 ، 2000 ، 2000 را پیدا می کنیم تا به ترتیب برای ماشین های کوهستانی ، قطب سبد خرید و آکروبات خوب کار کنیم. هیچ جستجوی گسترده ای انجام نشده است زیرا تمرکز کار ما عملکرد پیشرفته ای نیست بلکه برای مقایسه اهمیت ترفندها نیست. مقادیر پارامترها برای پیکربندی بدون ترفند به صورت دستی انتخاب می شوند و برای سایر تنظیمات محیط مربوطه ثابت نگه داشته می شوند.
مشابه مقاله اصلی ، ما از ضرر خطای میانگین مربع (MSE) بین مقادیر پیش بینی شده و بوت استرپ (q ) استفاده می کنیم. برای بهبود پایداری آموزش DQN ، از بین رفتن بین ([-1 ، 1] ) گزارش شده است. ما این کار را برای همه محیط ها به جز قطب سبد خرید انجام می دهیم ، که بدون قطع شدن به نتایج بهتری می رسد. خطا توسط آدم با نرخ یادگیری بهینه شده است ( alpha = 0. 001 ). انتخاب بهینه ساز از مقاله اصلی منحرف می شود اما اخیراً موفقیت بزرگی در یادگیری عمیق نشان داده است. آزمایش های اضافی با مقادیر مختلف نرخ یادگیری و سهم قطع خطا برای کارهای آینده باقی مانده است.
کد مورد استفاده در تمام آزمایشات ما را می توان در GitHub یافت.
نتایج
نتایج اصلی ما را می توان با ارقام زیر خلاصه کرد. هر شکل یک طرح پراکندگی را برای یک محیط نشان می دهد ، جایی که هر نقطه یک دوره آموزشی را نشان می دهد. هماهنگ X هر نقطه توسط حداکثر | (q ) | که می تواند برای شناسایی واگرایی نرم استفاده شود ، داده می شود. مختصات Y میانگین بازده خود را در 20 قسمت آخر نشان می دهد ، که نشان دهنده عملکرد به دست آمده در آن اجرا است. این به ما امکان می دهد تا تأثیر ترفندها بر واگرایی و عملکرد کلی و همچنین نحوه تعامل این موارد را به طور همزمان تجزیه و تحلیل کنیم. ما ابتدا در مورد نتایج به دست آمده برای هر محیط به طور جداگانه بحث می کنیم ، که از آن نتیجه گیری های کلی تری می گیریم.
ماشین کوهستانی
برای شروع ، بیایید به نتایج اتومبیل کوهستانی در زیر نگاه کنیم.

عامل وانیل از هم جدا می شود و در یادگیری یک خط مشی خوب به شدت شکست می خورد. عامل حافظه نیز برای اکثر اجراها بد عمل می کند، اما برای تعداد کمی از اجراها خط مشی خوبی را یاد می گیرد. به طور خاص برای اجراهایی که عامل حافظه واگرا نمی شود، در واقع بازده کلی خوبی به دست می آورد. این یک مشاهده جالب است، زیرا نشان می دهد که اندازه گیری واگرایی ما در واقع عملکرد نهایی را برای این محیط پیش بینی می کند.
عامل هدف موفق شده است واگرایی را به طور کامل حذف کند، اما سیاستی که یاد می گیرد ضعیف است. عدم واگرایی به وضوح تضمینی برای عملکرد خوب نیست. همانطور که انتظار می رود، شبکه با هر دو ترفند فعال بهترین عملکرد را دارد. واگرا نمی شود و به طور مداوم به پاداش های بالایی می رسد. با این حال، حتی عامل DQN اجراهایی دارد که در آن چیزی یاد نمی گیرد. این نشان می دهد که از میان کارهایی که ما بررسی می کنیم، Mountain Car نسبتاً دشوار است.
آکروبات
اکنون نتایج را برای محیط Acrobot مرور می کنیم. برای وضوح، از یک مقیاس ورود به سیستم برای مقادیر Q در اینجا استفاده می کنیم.

همانند Mountain Car، شبکه وانیلی در اینجا بدترین حالت را در بین تمام تنظیمات دارد. باز هم، به شدت واگرا می شود و هیچ خط مشی معناداری را نمی آموزد. از سوی دیگر، مشاهده می کنیم که عامل حافظه علیرغم نشان دادن واگرایی نرم، موفق می شود سیاست های خوبی پیدا کند. واریانس بازده آن بیشتر از روش های دیگر است، که نشان می دهد فرآیند یادگیری آنقدر پایدار نیست. این نشان می دهد که میزان واگرایی نرم، پراکسی ما برای واگرایی، به طور کامل نشان دهنده چگونگی یادگیری یک الگوریتم نیست.
دوباره می بینیم که استفاده از هر دو ترفند واگرایی را کاهش می دهد و منجر به بازده بالا می شود. اگر فقط از شبکه هدف استفاده شود، واگرایی دوباره کنترل می شود، اما سیاست آموخته شده همچنان بدتر از استفاده از هر دو ترفند است.
قطب گاری
آخرین محیطی که به آن نگاه می کنیم، محیط Cart Pole است.

علیرغم اینکه وانیل و عامل حافظه واگرایی نرمی را نشان می دهند، آنها همچنان موفق به یادگیری سیاست های خوب می شوند. جالب اینجاست که اگرچه عامل حافظه بیشترین واگرایی را نشان می دهد، اما میانگین بازدهی بالاتری نسبت به تنظیمات دیگر دارد.
مطابق با نتایج قبلی، داشتن یک شبکه هدف تا حد زیادی واگرایی نرم را کاهش می دهد. با این حال، میانگین بازده آن در حال حاضر حتی کمتر از بازده عامل وانیل است. یک بار دیگر، استفاده از هر دو ترفند، واگرایی نرم را کنترل می کند و امکان یادگیری سیاست های خوب را فراهم می کند، اما عامل حافظه در این مورد بهتر عمل می کند.
قرار دادن چیزها در چشم انداز
بنابراین ما از آزمایشات خود چه آموختیم؟در هر یک از سه محیطی که ما کاوش می کنیم ، هر بار عامل وانیل (نرم) منحرف می شود. ترفند شبکه هدف به طور قابل توجهی در کاهش این واگرایی و همچنین واریانس حداکثر | (q ) |در حقیقت ، در هنگام استفاده از یک شبکه هدف ، یک اجرا منحنی نیست. بدون شبکه هدف ، واگرایی تقریباً اجتناب ناپذیر به نظر می رسد. این به خصوص در شکل زیر روشن شده است ، که در توزیع حداکثر | (q ) بزرگنمایی می کند |(در مقیاس ورود به سیستم). خط نقطه نشان دهنده آستانه واگرایی نرم است.

برای محیط آکروبات ، عامل حافظه قادر به یادگیری سیاست های خوب حتی در صورت نشان دادن واگرایی است. همین امر در مورد حافظه و عوامل وانیل در محیط قطب سبد خرید نیز وجود دارد. این تضاد با یافته های موجود در محیط ماشین کوهستانی است ، جایی که عامل حافظه فقط وقتی که واگرایی نمی کند ، سیاست خوبی را می آموزد. به نظر می رسد که واگرایی تأثیر بیشتری در عملکرد برای برخی از محیط ها نسبت به سایرین دارد. توضیحات احتمالی زیادی برای این امر وجود دارد ، از جمله:
- ما فرض می کنیم که دشواری یک کار عامل مهمی در این فرآیند است. در ساده ترین محیط ، قطب سبد خرید ، به نظر نمی رسد که واگرایی از نظر عملکرد مسئله ای باشد. با این حال ، در محیط های سخت تر ، به نظر می رسد واگرایی بر کیفیت سیاست ها تأثیر می گذارد. در Acrobot ، واریانس عامل حافظه بسیار زیاد است و عملکرد آن در مقایسه با عامل DQN نیز کمتر است. در محیط ماشین کوهستانی ، مأمور نتوانست چیزی را برای هر کاری که واگرایی دارد بیاموزد. این ممکن است که هرچه کار دشوارتر می شود ، با داشتن تخمین دقیق ارزش Q اهمیت بیشتری پیدا می کند.
- احتمال دیگر این است که متریک پروکسی ما برای اندازه گیری واگرایی ، حداکثر | (q ) | ، خیلی پر سر و صدا است. این با پیگیری این مقدار برای هر انتقال به روزرسانی که در طی 20 قسمت گذشته مشاهده می شود ، محاسبه می شود. گرفتن حداکثر برای Outliers قوی نیست. اگر در یک حالت با یک ارزش بالای واحد روبرو شود ، در حالی که بیشتر حالت ها به خوبی رفتار می شوند ، این ممکن است تصویری بسیار ناچیز از واگرایی در اجرای آموزش ارائه دهد.
بینش مهم دیگر این است که افزودن پخش حافظه باعث بهبود عملکرد در تمام آزمایشات ما می شود. عامل هدف همیشه با افزودن مکانیسم پخش حافظه (در نتیجه عامل DQN) بهبود می یابد. این تأیید یافته های مقاله اصلی DQN را تأیید می کند ، که می گویند پخش مجدد حافظه منجر به تحقق بهتر II. D می شود. فرض داده ها ، متعاقباً اجازه نزول شیب را پیدا می کند تا بهینه بهتری پیدا کند.
به طور خلاصه ، شبکه های هدف از واگرایی در فرایند یادگیری جلوگیری می کنند. در حالی که پخش مجدد حافظه از واگرایی جلوگیری نمی کند ، این یک تکنیک مهم است که جستجو را به سمت سیاست های خوب راهنمایی می کند. ترکیب هر دو ترفند بهترین ها را در هر دو جهان به ما می دهد-یک تنظیم واگرایی کنترل شده با برآورد ارزش Q-Value.
برخی از اظهارات نهایی
همیشه خوب است که به نتایج به دست آمده انتقادی نگاه کنیم. در این بخش پایانی ، ما برخی از محدودیت های رویکرد خود را برجسته می کنیم:
- با توجه به محدودیت های ما در محاسبات و زمان ، ما یک جستجوی جامع Hyperparameter را در 3 محیط انتخاب شده خود انجام نمی دهیم. ما در تغییر فاکتور تخفیف و فرکانس به روزرسانی شبکه هدف متمرکز شدیم ، اما حتی برای کسانی که فقط چند مقدار را در نظر گرفتیم. این بدان معنی است که اگر ما مجموعه های مختلفی از هایپرپارامترها را انتخاب کنیم ، ممکن است رفتار مشاهده شده متفاوت باشد. در حالت ایده آل ، ما می خواهیم نتایج را نسبت به تنظیمات Hyperparameter بیشتر داشته باشیم.
- با توجه به نکته قبلی ، ما فقط در تمام آزمایشات خود از یک شبکه عصبی بسیار کم عمق از 2 لایه استفاده می کنیم. این ممکن است باعث شود همه روشها حتی سخت تر یادگیری یک کار دشوار مانند کار ماشین کوهستانی داشته باشند.
- ما 25 دانه را در هر تنظیم ارزیابی می کنیم. در حالی که این بهتر از 1 است ، ما با توجه به واریانس بالای روشهای یادگیری تقویت ، می خواهیم دانه های بیشتری برای نتیجه گیری داشته باشیم.
- ما تصمیم می گیریم از یک پروکسی برای واگرایی ، واگرایی نرم استفاده کنیم. با وجود این پروکسی که از نظر تئوری با انگیزه خوب است ، اما هنوز هم یک پروکسی است. ما نمی دانیم که چگونه دقیقاً به واگرایی "واقعی" مربوط می شود.
- همانطور که در بخش قبلی ذکر شد ، روش متریک ما برای واگرایی نرم ممکن است برای Outliers بسیار قوی نباشد. مطالعات آینده می تواند به نسخه های قوی تر متریک نگاه کند.
نتیجه گیری که ما به بالا می رویم کاملاً غیر منتظره نیست ، اما این واقعیت که پخش مجدد حافظه مانع از واگرایی نمی شود ، قطعاً یک بینش جالب است. از خواندن شما متشکرم!
پانویسها و منابع
- شیب واقعی شامل یک اصطلاح اضافی است و معمولاً خیلی خوب کار نمی کند. در عوض ، روشهای نیمه شغلی ، که از طریق عملکرد Q هدف (q (s '، cdot) ) به کار نمی روند ، معمولاً بهتر کار می کنند.↩
به روز شده: 24 اکتبر 2020
سیگنال های تجاری...
ما را در سایت سیگنال های تجاری دنبال می کنید
برچسب :
نویسنده : عبدالله بوتیمار
بازدید : <-PostHit->
تاريخ : دوشنبه
9 مرداد
1402 ساعت: 16:45