یادگیری تقویتی عمیق (Deep Reinforcement Learning) چیست؟


یادگیری تقویتی عمیق را می‌توان به عنوان روشی برای یادگیری یک سری تصمیمات خوب در طول زمان توضیح داد. مثلا این گونه است که انسان‌ها از همان لحظه‌ای که به دنیا می‌آیند در حال تعامل و بده‌بستان با جهان پیرامون خود هستند.

نوزادانی که به والدین خود لبخند می‌زنند و با تایید شدن پاداش دریافت می‌کنند یاد می‌گیرند که لبخند باعث محبت می‌شود. به همین ترتیب آن‌ها یاد می‌گیرند که گریه کردن باعث جلب توجه والدین و آمدن آن‌ها برای رهایی از ناراحتی و ایجاد آرامش می‌شود.

تأیید یا توجه والدین اساسی‌ترین شکل تقویت است: وقتی عملی با پاداش یا جریمه مواجه می‌شود.

البته، یادگیری کودک به همین جا ختم نمی‌شود. نوزاد بازخورد والدین خود را تفسیر می‌کند و بر اساس واکنش مادر یا پدر، مجموعه‌ی جدیدی از اقدامات را که می‌تواند در دسترس خود قرار دهد یاد می‌گیرد.

راهبردی که بر اساس این بازخورد تصمیم‌گیری می‌کند، در یادگیری تقویتی «سیاست (policy)» نامیده می‌شود. سیاست درواقع رویکردی است که کودک در تعقیب اهداف خود از آن استفاده می‌کند. هر تصمیمی تبدیل به “اقدامی (action)” می‌شود که کودک در پاسخ به وضعیت فعلی خود انجام می‌دهد و این وضعیت فعلی در یادگیری تقویتی “وضعیت (state)” نامیده می‌شود.

این توصیف ساده پیچیدگی‌های زیادی را نشان می‌دهد، از جمله محیطی که نوزاد در آن انتخاب‌هایش را انجام می‌دهد، تعداد گزینه‌های موجود (مجموعه اقدامات) و ایده‌هایی که بر اساس آن‌ها تصمیم‌گیری انجام می‌شود (سیاست‌ها). هر یک از این جنبه‌ها را می‌توان به روش‌های مختلفی نشان داد یا آموخت.

یکی از این روش‌ها که در سال‌های اخیر بسیار رایج شده است، از یادگیری عمیق برای تعیین مدل محیط، سیاست‌ها، پاداش‌ها یا مجازات‌ها و سایر مؤلفه‌های یادگیری تقویتی استفاده می‌کند.

اما قبل از اینکه بتوانیم این موضوع پیچیده را به اندازه کافی توضیح دهیم، باید پیشینه‌ی آن را درک کنیم.

یادگیری ماشین به استفاده و توسعه سیستم‌های کامپیوتری دارای قابلیت یادگیری و سازگاری، بدون پیروی از دستورالعمل‌های صریح اشاره دارد. این سیستم‌ها برای تجزیه و تحلیل و استنتاج از الگوهای موجود در داده‌ها،  به جای دستورالعمل‌های صریح از الگوریتم‌ها و مدل‌های آماری استفاده می‌کنند.

هوش مصنوعی زیرمجموعه‌ای از یادگیری ماشین است که با استفاده از الگوریتم‌هایی به نام شبکه عصبی مصنوعی، از مغز انسان الگو گرفته شده است. این الگوریتم‌ها به رایانه‌ها کمک می‌کنند تا امکاناتی را کشف کنند که هیچ انسانی نمی‌تواند به آن‌ها دست یابد.

فرمول‌های پیچیده ریاضی در این فرآیند نقش اساسی دارند. این فرمول‌ها برای کار را با مجموعه داده‌های بزرگ، طراحی شده‌اند.

با ترکیب یادگیری تقویتی و یادگیری عمیق، یادگیری تقویتی عمیق جایگزین نیاز به چند فرمول پیچیده شده است.

اگر نتیجه هر تصمیمی که می‌توانیم بگیریم را می‌دانستیم، به یادگیری تقویتی عمیق نیاز نداشتیم. با این تفاصیل، می‌توانیم الگوریتمی ایجاد کنیم تا به ما بگوید برای رسیدن به یک نتیجه خاص، چه تصمیمی بگیریم.

اما ما نمی‌توانیم دنیای پیچیده‌مان را به‌طور دقیق پیش‌بینی کنیم و به ابزارهایی مانند یادگیری ماشین تقویتی عمیق نیاز داریم تا به ما کمک کند مسائل چندمتغیری را حل کنیم.

پیشینه یادگیری تقویتی

معادله بلمن (The Bellman equation) که به نام ریاضیدان آمریکایی ریچارد بلمن نامگذاری شده است، در دهه ۱۹۵۰ و برای حل مسائل توالی تصمیم‌گیری بهینه ارائه شد. این معادله که به‌عنوان مرکز الگوریتم‌های یادگیری تقویتی است، به کاربران اجازه می‌دهد تا بدانند اگر اقدامات بهینه را در حال حاضر و در هر مرحله از قدم‌های آتی انجام دهند، با توجه به وضعیتی که در حال حاضر در آن هستند، چه پاداش بلندمدتی را در آینده انتظار داشته باشند.

برای استفاده از معادله، ابتدا باید محیط را درک کرد و پاداش های آن را شناخت. به دلیل این الزامات، دانشمندان قبلاً از معادله بلمن فقط برای حل مسائل ساده‌تر با فضاهای تصمیم‌گیری کوچکتر، مانند پیمایش پیچ‌وخم استفاده می‌کردند.

دهه‌های بعد دانشمندان شروع به برداشتن گام‌های واقعی در توسعه الگوریتم‌های تقویتی کردند و سعی کردند نوع تصمیم‌گیری انجام‌شده توسط مغز انسان را تکرار کنند – اما به شکل کامپیوتری.

یادگیری ماشین

Photo by Christina Morillo from Pexels

الگوریتم‌های اولیه‌ی یادگیری تقویتی قدرت خاصی نداشتند. در آن زمان، دانشمندان نمی‌توانستند دانش بسیار پیچیده‌ای را ارائه دهند.

یادگیری تقویتی، که به رایانه اجازه می‌دهد تا از اشتباهات خود با استفاده از آزمون و خطا یاد بگیرد، تا سال ۲۰۱۱ و پس از شروع یادگیری عمیق، به‌طور عملی قابل استفاده نبود.

در اواسط دهه ۱۹۶۰، ریاضیدان شوروی، الکسی ایواخننکو (Alexey Ivakhnenko) و همکارش، والنتین گریگوریویچ لاپا (Valentin Grigor’evich Lapa)، شبکه های عصبی مصنوعی کوچک اما کارآمد ساختند.

در اوایل دهه ۱۹۸۰، شبکه های عصبی بازگشتی جان هاپفیلد (John Hopfield)، فیزیکدان موسسه فاوری کالیفرنیا (Caltech)، خبرساز شد و علاقه را دوباره نسبت به این حوزه برانگیخت. کار او، که دقیقاً بر اساس تحقیقات علوم اعصاب درمورد یادگیری و حافظه استوار بود، برای همه چیزهایی که بعد از آن انجام شد، اساسی بود.

یادگیری عمیق موفقیت قابل توجهی داشته است و برتری خود را نسبت به روش‌های یادگیری ماشین سنتی در زمینه‌های مختلف کاربردی نشان داده است. این زمینه‌ها شامل بینایی کامپیوتر، تشخیص گفتار، ترجمه زبان، هنر، پردازش اطلاعات پزشکی، روباتیک و کنترل، و امنیت سایبری است.

ظهور مجدد علاقه به یادگیری عمیق در نتیجه‌ی سه عامل مهم بود. دانشمندان برای اولین بار به حجم عظیمی از داده‌ها دسترسی داشتند. انتظار می‌رود بین سال‌های ۲۰۲۰ و ۲۰۲۵، مجموع اطلاعاتی که ایجاد، جمع‌آوری، انتقال و مصرف می‌شود دو برابر اطلاعاتی باشد که بشر تا سال ۲۰۲۰ تولید کرده است.

ثانیاً، قدرت محاسباتی در دهه‌های اخیر رشد چشمگیری داشته است. و در نهایت، الگوریتم‌ها در توانایی خود برای انجام کارهای پیچیده بسیار بهبود یافته‌اند.

عوامل ذکرشده برای پشتیبانی از مدل‌های بزرگ‌تر، بهتر و پیچیده‌تر گرد هم می‌آیند. مدل‌هایی که برای حل مسائل پیچیده در انرژی، پردازش زبان طبیعی و بسیاری از زمینه‌های دیگر استفاده می‌شود.

یکی از انواع الگوریتم‌هایی که با یادگیری عمیق مرتبط است، در زمینه‌هایی مانند بینایی رایانه، پردازش زبان طبیعی، انفورماتیک سلامت و تشخیص پزشکی نقش اساسی داشته‌ است.

اهمیت یادگیری عمیق (Deep learning)

هر مشکلی که هدف آن یافتن توالی‌ تصمیمات بهینه باشد – از مسیریابی ترافیک، حفظ شبکه برق، تخلیه شهر در هنگام سیل یا سرویس‌دهی به یک نیروگاه – می‌تواند با استفاده از یادگیری تقویتی عمیق مورد بررسی قرار گیرد.

اکتشافات علمی، تا این مرحله، عمدتاً با آزمایش و شبیه‌سازی انجام شده است یعنی محققان در تلاش برای درک یک پدیده، آن را روی رایانه‌ها شبیه‌سازی کرده‌اند و سپس نتایج شبیه‌سازی با چیزهایی که درمورد دنیای واقعی می‌دانیم مقایسه شده است.

البته، شبیه‌سازی‌ها می‌توانند شرایطی را ایجاد کنند که هنوز در دنیای واقعی تحقق نیافته‌ است. برای مثال، یک دانشمند می‌تواند مکان یک اتم را در یک مولکول تغییر دهد یا اتم دیگری را اضافه کند. درواقع دانشمندان ممکن است این موارد را در دنیای فیزیکی آزمایش نکنند، اما می‌توانند از این تاکتیک‌ها برای کشف و توسعه مواد و خواص شیمیایی جدید استفاده کنند که در صورت نبود امکان شبیه‌سازی، نمی‌توانستند.

دانشمندان می‌توانند این اکتشاف را با استفاده از یادگیری تقویتی عمیق ارتقا دهند. بنابراین، تعجب‌آور نیست که شاهد به کارگیری آن  و دستیابی به موفقیت‌های بزرگ در حوزه‌های رباتیک خودمختار باشیم. اتوموبیل‌های خودران تنها یک نمونه از این موفقیت‌ها هستند.

سیستم‌هایی که بر اساس این مدل‌ها تصمیم می‌گیرند، اکنون انبارها و جابجایی کالاها را نیز مدیریت می‌کنند.

مفاهیم یادگیری تقویتی مدت‌هاست که در بازی‌ها مورد استفاده قرار می‌گیرد. روند بکارگیری این الگوریتم‌ها در بازی‌ها با بازی تخته‌نرد شروع شد. بازی تخته‌نرد ساده است و آموزش کامپیوتر برای بازی کردن آن سخت نیست. شطرنج پیچیده‌تر است و بازی Go از همه‌ی آن‌ها سخت‌تر است.

بر اساس مقاله‌ای در مجله Nature، بازی Go به عنوان چالش‌برانگیزترین بازی کلاسیک برای هوش مصنوعی در نظر گرفته می‌شود که تا حدی به دلیل دشواری ارزیابی موقعیت‌ها و حرکات است. تعداد حیرت‌انگیز موقعیت‌های ممکن، اگر بتوان آن را تصور کرد، بیش از تعداد اتم‌های جهان است.

این بازی هزاران سال پیش در چین آغاز شد. این بازی که ده‌ها میلیون نفر در سراسر جهان از آن لذت می‌برند، قوانین ساده‌ای دارد. بازیکنان به نوبت سنگ‌های سیاه یا سفید را روی تخته قرار می‌دهند، با گرفتن سنگ‌های حریف امتیاز کسب می‌کنند یا قلمرو خالی روی تخته را اشغال می‌کنند.

DeepMind، شرکتی که در سال ۲۰۱۰ در بریتانیا شروع به کار کرد، اولین برنامه کامپیوتری را برای شکست دادن یک بازیکن حرفه‌ای Go توسعه داد. این برنامه که AlphaGo نام داشت، اولین برنامه ای بود که قهرمان جهان Go را شکست داد.

برنامه نویسی

Photo by Jules Amé from Pexels

اصول یادگیری تقویتی

یادگیری تقویتی عمیق به ما کمک می‌کند تا سریعتر تصمیمات بهتری بگیریم.

با بازگشت به مثال اولیه‌ی این مقاله، بیایید فرض کنیم کودک مثال ما از دوران نوزادی به دبیرستان رسیده است. اکنون فرزند ما وظیفه انتخاب دانشگاه را دارد.

این یک تصمیم سخت است. انتخاب‌های فرزند ما حالا مانند انتخاب‌های دوران نوزادی کم نیستند. وقتی گزینه‌ها گسترده هستند، گرفتن یک تصمیم خوب بسیار سخت‌تر است.

هر دانشگاه نقاط قوت خود را خواهد داشت – دقت و سخت‌گیری، شهرت و موقعیت مکانی، فقط چند مورد از ویژگی‌های یک دانشگاه است و هر کدام هزینه‌های متفاوتی را به دنبال خواهد داشت. دانش‌آموز و والدین مثال ما باید همه این متغیرها را در نظر بگیرند.

مادر و پدر درباره اینکه کدام تصمیم بهتر است تحقیق می‌کنند. سپس، ممکن است درمورد موفقیت دانش‌آموزان پس از کالج، داده‌های آماری را در نظر بگیرند و نمونه‌های مربوط به گذشته را نسبت به سایر افرادی که تصمیم مشابهی گرفته‌اند، بررسی کنند.

دانش آموز و والدینش بدون اینکه بدانند الگویی از محیط و کارهایی که برای موفقیت باید انجام دهند را ایجاد می‌کنند. شناخت خوب این محیط به آن‌ها کمک می کند تا تصمیمی آگاهانه و بهینه بگیرند.

ممکن است آن‌ها بتوانند ، برای مثال، این لیست را از صدها گزینه به حدود ده مورد کاهش دهند. این تصمیم بسیار حیاتی خواهد بود. زیرا آن‌ها فرصت دیگری برای انجام دوباره این کار نخواهند داشت و نمی‌توانند در تلاش برای جبران این تصمیمات، سال به سال دانشگاه متفاوتی را انتخاب کنند.

اکنون، اگر پیچیدگی چنین مسئله‌ای را چند برابر کنید به مسئله‌ای می‌رسید که ممکن است یک آزمایشگاه ملی سعی در حل آن داشته باشد.

یکی از مفاهیم کلیدی در سیستم‌های تصمیم‌گیری، ویژگی مارکوف است که به نام ریاضیدان روسی آندری مارکوف نامگذاری شده است. در سیستم‌هایی که دارای ویژگی مارکوف هستند، حالت‌های آینده آنها به وضعیت فعلی‌شان بستگی دارد، نه به وضعیت آن‌ها در مراحل قبلی. اگر بخواهیم به شکل دیگری آن را بیان کنیم، معادل آن بدین‌گونه خواهد بود:  «نتیجه تصمیمی که اکنون می‌خواهم بگیرم تحت تأثیر اتفاقات گذشته قرار نمی‌گیرد، بلکه تنها تحت تأثیر وضعیت فعلی من قرار می‌گیرد».

البته یکی دیگر از معادلاتی که در این زمینه وجود دارد معادلات بلمن (Bellman) است.

برگردیم به دانش‌آموزان دبیرستانی که می‌خواهند به دانشگاه بروند. در انتخاب یک دانشگاه، آنها یک رشته را انتخاب می‌کنند، پیشنهادات هر دانشگاه را در آن زمینه بررسی می‌کنند و درمورد حقوق رشته خود پس از فارغ التحصیلی تحقیق می‌کنند که منجر به انتخاب بهینه می‌شود.

معادله بلمن با این فرض کار می‌کند که دانش‌آموز ما در هر زمان بهترین تصمیمات ممکن را می‌گیرد. درواقع انتخاب‌های خوب منجر به نتایج خوب می‌شود. بر اساس این نظریه، اگر دانش‌آموز ما اکنون تصمیم خوبی بگیرد (به کدام دانشگاه برود)، این تصمیم او را به حالتی سوق می‌دهد که می‌تواند تصمیمات بهینه‌ای در آینده بگیرد.

محدودیت‌های یادگیری تقویتی

یادگیری تقویتی عمیق می‌تواند به دانشمندان و محققان کمک کند تا بر اساس بررسی سناریوهای شبیه‌سازی‌شده تصمیمات خوبی بگیرند.

اما این روش توسط مفهوم اصلی خودش محدود می‌شود. کسانی که به دنبال استفاده از این رویکرد هستند باید درک کاملی از محیط خود داشته باشند.

با استفاده از یادگیری تقویتی عمیق نمی‌توان همه سیستم‌ها را بدون نقص ساخت. برای مثال، با وجود میلیون‌ها میلیون نقطه داده، اتومبیل‌های خودران بر همه شرایط ممکن تسلط ندارند و گاهی اوقات اشتباه می‌کنند.

در سیستم‌هایی که عواقب تصمیمات اشتباه در آن می‌تواند وخیم باشد، یادگیری تقویتی عمیق نمی‌تواند خودش تنها کار کند. به‌عنوان مثال، کسی نمی‌تواند برای یادگیری نحوه کنترل و پرواز هواپیما، هزینه سقوط یک هواپیما را متقبل شود! دانشمندان در تلاش هستند تا با سایر الگوریتم‌ها و روش‌ها یادگیری تقویتی را با افزایش قابلیت‌های آن ایمن کنند.

یادگیری تقویتی عمیق به زمان و داده‌های تجربی نیاز دارد تا بهترین نتیجه را بدهد.

یادگیری تقویتی

پیشرفت های جدید و آینده در این زمینه

دانشمندان به‌طور مداوم در حال توسعه الگوریتم‌های جدیدی هستند که به یادگیری تقویتی عمیق اجازه می‌دهد تا موفقیت بیشتری داشته باشد.

شکل‌های دیگر یادگیری تقویتی نیز در حال گسترش است، از جمله یادگیری تقویتی معکوس (inverse reinforcement learning)، که در آن ماشین از مشاهده یک فرد متخصص یاد می‌گیرد. ماشین به جای تلاش برای یادگیری از تجربه‌ی خود، از تماشای دیگران یاد می‌گیرد. آن متخصص دیگر، معلم نیست، فقط کسی یا چیزی است که یک کار را اجرا می‌کند، نه اینکه آن کار را توضیح دهد.

یادگیری تقویتیِ مشروط به هدف (Goal-conditioned reinforcement) مشکلات پیچیده یادگیری تقویتی را با استفاده از اهداف فرعی از بین می‌برد.

یادگیری تقویتیِ چندعاملی (Multi-agent reinforcement learning) در حل مشکلات رباتیک، مخابرات و اقتصاد بسیار مفید است.

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

یادگیری تقویتی در آزمایشگاه ملی شمال غرب پاسیفیک

آزمایشگاه ملی شمال غربی پاسیفیک (PNNL)در یادگیری ماشین و هوش مصنوعی پیشرو است. تحقیقات هوش مصنوعی PNNL در زمینه‌های مختلف، تقویت امنیت ملی و تقویت شبکه برق اعمال شده است. پلتفرم متن‌باز DeepGrid برای کمک به اپراتورهای سیستم قدرت از یادگیری تقویتی عمیق استفاده می‌کند تا امنیت و انعطاف‌پذیری شبکه بهبود یابد.

PNNL همچنین از یادگیری تقویتی عمیق برای برداشتن گام‌هایی در امنیت سایبری استفاده می‌کند، که بیشتر آن‌ها باید خودکار شوند زیرا سیستم‌ها دائماً مورد حمله قرار می‌گیرند.

PNNL برای حمایت بیشتر از ماموریت‌های ملی در تلاش است تا با تقویت یکپارچگی داده‌هایی که به این سیستم‌ها اطلاعات می‌دهند کیفیت و دقت این مدل‌ها را بهبود بخشد.


ترجمه اختصاصی توسط مجله قرمز

منبع: Pacific Northwest National Laboratory