مجله هوش مصنوعی

آخرین اخبار و تکنولوژی های هوش مصنوعی را در اینجا بخوانید.

مجله هوش مصنوعی

آخرین اخبار و تکنولوژی های هوش مصنوعی را در اینجا بخوانید.

کاربردهای یادگیری تقویتی در دنیای واقعی


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

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

 

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

در این مقاله قصد داریم:

۱. کاربردهای یادگیری تقویتی در دنیای واقعی را با جزئیات بررسی کنیم

۲. از جنبه‌ای دیگر به مبحث یادگیری تقویتی بپردازیم و

۳. اهمیت یادگیری تقویتی را به پژوهشگران و تصمیم‌گیرندگان یادآور شویم.

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

بخش اول: مقدمه‌ای بر یادگیری تقویتی

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

کاربردهای یادگیری تقویتی

تصویر اول مقاله کاربردهای یادگیری تقویتی – تعامل عامل و محیط در فرآیند تصمیم‌گیری مارکوف
منبع: Reinforcement Learning:An Introduction

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

بخش دوم: کاربردهای یادگیری تقویتی

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

مدیریت منابع در محاسبات خوشه‌ای

طراحی یک الگوریتم‌ برای تخصیص منابع محدود به کارهای مختلف، کاری چالش‌برانگیز و نیازمند الگوریتم مکاشفه‌ای مانند ابتکار انسان است. در مقاله «Resource Management with Deep Reinforcement Learning» می‌خوانیم که سیستم چگونه می‌تواند با استفاده از الگوریتم‌های یادگیری تقویتی، تخصیص و برنامه‌ریزی منابع محاسباتی را به‌طور خودکار بیاموزد و این منابع را به نحوی به پروژه‌های دردست‌ اجرا تخصیص دهد که زمان تلف‌شده را به حداقل برسد.
در این مطالعه، فضای حالت را در قالب تخصیص کنونی منابع و مشخصات منابع موردنیاز هر پروژه تعیین کردند. برای
فضای حرکت نیز از تکنیک ویژه‌ای استفاده نمودند که به عامل تصمیم‌گیرنده امکان می‌داد تا در هر مرحله زمانی بیش از یک اقدام انجام دهد و پاداش را هم از فرمول (∑▒〖[(-۱)/(کار هر انجام زمان مدت)]〗)/(سیستم در موجود کارهای تمام) به دست آوردند. سپس با ترکیب
الگوریتم تقویتی و
ارزش پایه ، گرادیان سیاسترا محاسبه کرده و بهترین پارامتر سیاست را که توزیع احتمال اقدامات برای حداقل‌سازی هدف به دست می‌دهد را شناسایی کردند.

کنترل چراغ‌های راهنمایی

کاربردهای یادگیری تقویتی

تصویر دوم مقاله کاربردهای یادگیری تقویتی  – شبکه ترافیک با ۵ چهارراه منبع: http://web.eecs.utk.edu/~itamar/Papers/IET_ITS_2010.pdf

نویسندگان مقاله « Reinforcement learning-based multi-agent system for network traffic signal control» تلاش کردند تا سیستمی برای کنترل چراغ‌های راهنمایی طراحی نمایند که مسئله ترافیک سنگین خیابان‌ها را حل کند. این الگوریتم تنها در محیط شبیه‌سازی‌شده و غیرواقعی آزمایش شد، اما نتایج آن بسیار بهتر از روش سنتی کنترل ترافیک بود و بدین ترتیب، کاربردهای بالقوه الگوریتم‌های چند عاملی یادگیری تقویتی در حوزه طراحی سیستم‌های کنترل ترافیک را برای همه آشکار کرد.
در این شبکه ترافیکی که دارای ۵ چهاراره است، یک الگوریتم یادگیری تقویتی ۵ عاملی به‌کارگرفته شده که یک عامل آن در چهارراه مرکزی مستقر است تا سیگنال‌های ترافیک را کنترل و هدایت کند. در این‌جا، وضعیت(State) یک بردار ۸ بعدی است که هر عنصر آن نمایان‌گر جریان نسبی ترافیک در یکی از لاین هاست. بنابراین، عامل ۸ گزینه پیش‌ رو دارد که هر یک از آن‌ها نماد یک ترکیب فازی و تابع پاداش هستند. در این‌جا پاداش تابعی از کاهش زمان تأخیر نسبت به مرحله زمانی قبلی است. نویسندگان در این پژوهش، به‌منظور تعیین مقدار کیفیهر جفت {وضعیت، اقدام} از   شبکه عمیقQ استفاده کردند.

رباتیک

برای به‌کار گرفتن الگوریتم‌های یادگیری تقویتی در علم رباتیک تلاش‌های زیادی شده است. برای یادگیری بیشتر شما را به مقاله « Reinforcement Learning in Robotics:A Survey» ارجاع می‌دهم. در پژوهشی دیگر تحت عنوان « End-to-End Training of Deep Visuomotor Policies » یک ربات تعلیم دید تا سیاست‌های لازم جهت مقایسه و تطبیق تصاویر ویدیویی خام با فعالیت‌های رباتی را بیاموزد. در این پژوهش، تصاویری با رنگ‌های RGB به شبکه عصبی پیچشی داده شدند تا الگوریتم نیروی گشتاور مورد نیاز موتور ربات را محاسبه کند و به عنوان خروجی تحویل دهد. در این‌جا الگوریتم “جستجوی سیاست هدایت شده”که به عنوان مولفه‌ یادگیری تقویتی در نظر گرفته شده است تا داده‌های آموزشی موردنیاز براساس توزیع وضعیت خود الگوریتم تولید شوند.

پیکربندی سیستم وب

در هر سیستم وب بیش از ۱۰۰ پارامتر قابل پیکربندی وجود دارد. هماهنگ کردن این پارامترها نیازمند یک اپراتور ماهر و به‌کارگیری روش آزمون و خطا است. مقاله Reinforcement Learning Approach to Online Web System Auto-configuration» یکی از اولین تلاش‌ها در این زمینه است که نحوه پیکربندی مجدد پارامترها در سیستم‌های وب چند لایه در محیط‌ها پویای مبتنی بر ماشین مجازی را بررسی می‌کند.
فرآیند پیکربندی مجدد می‌تواند در قالب یک فرآیند تصمیم‌گیری مارکوف (MDP) محدود ارائه شود. در این پژوهش، فضای وضعیت همان پیکربندی سیستم و فضای اقدام به ازای هر پارامتر شامل {افزایش، کاهش، حفظ} بود. همچنین پاداش الگوریتم به صورت اختلاف میان زمان هدف مفروض برای پاسخگویی و زمان تخمین‌زده شده محاسبه می‌شد. پژوهشگران برای حل این مسئله از الگوریتم یادگیری کیفی فارغ از مدلاستفاده کردند.
پژوهشگران در این پژوهش به‌جای ترکیب یادگیری تقویتی با شبکه‌های عصبی از تکنیک‌های دیگری همچون مقداردهی ابتدایی به سیاست‌ها استفاده کردند تا بتوانند مشکلات ناشی از فضای وضعیت بزرگ و پیچیدگی‌های محاسباتی این مسئله را حل کنند. اما درهرحال، این پژوهش قدمی بزرگ بود که راه را برای پیشرفت‌های آتی در این حوزه هموار کرد.

کاربردهای یادگیری تقویتی در حوزه شیمیکاربردهای یادگیری تقویتی

از الگوریتم‌های یادگیری تقویتی می‌توان در بهینه‌سازی واکنش‌های شیمیایی نیز استفاده کرد. مدل ارائه‌شده در مقاله «Optimizing Chemical Reactions with Deep Reinforcement Learning» عملکرد بهتری از پیشرفته‌ترین الگوریتم‌های موجود داشت و به ساختارهای اساسی و متفاوتی تعمیم داده شده است.
در این پژوهش، به‌منظور ارائه مدلی برای
تابع سیاست شبکه LSTM و الگوریتم یادگیری تقویتی با یک‌دیگر ادغام شدند تا عامل تصمیم‌گیرنده بتواند بهینه‌سازی واکنش شیمیایی را براساس فرآیند تصمیم‌‌گیری مارکوف (MDP) انجام دهد. MDP در این‌جا به صورت {S,A,P,R} توصیف می‌شود که در آن S مجموعه شرایط آزمایش (از قبیل: دما، Ph و غیره) و A مجموعه تمام اقدامات محتملی است که می‌توانند شرایط آزمایش را تغییر دهند،P احتمال انتقال از شرایط فعلی آزمایش به شرایط بعدی و R نماد پاداش می‌باشد که به صورت تابعی از وضعیت تعریف شده است.
این پژوهش به همه ثابت کرد که یادگیری تقویتی می‌تواند در محیطی نسبتاً باثبات، به خوبی از پس کارهای زمان‌بر و نیازمند آزمون و خطا بر‌آید.

پیشنهادات شخصی‌سازی‌شده

کارهای پیشین در زمینه پیشنهاد اخبار با چالش‌هایی از جمله سرعت بالای تغییرات در پویایی اخبار، نارضایتی کاربران و نامناسب بودن معیارها مواجه شدند. فردی به نام گوانجی برای غلبه بر این مشکلات، در سیستم پیشنهاد اخبار خود از یادگیری تقویتی استفاده کرد و نتایج این کار را در مقاله‌ای با عنوان «DRN: A Deep Reinforcement Learning Framework for News Recommendation» منتشر کرد.
پژوهشگران حاضر دراین پژوهش ۴ دسته ویژگی ایجاد کردند که عبارت بودند از:

  • الف) ویژگی‌های کاربر
  • ب) ویژگی‌های متن که همان ویژگی‌های وضعیت ایجادشده در محیط بودند
  • ج) ویژگی‌های کاربر-خبر
  • د) ویژگی‌های خبر به عنوان ویژگی‌های پارامتر اقدام

این ۴ ویژگی به عنوان ورودی به شبکه عمیق Q داده شدند تا مقدار کیفی مربوطه محاسبه شود. سپس براساس مقدار کیفی، فهرستی از اخبار پیشنهادی تهیه شد. در این الگوریتم یادگیری تقویتی، کلیک‌ کاربران بر روی اخبار بخشی از پاداش عامل تصمیم‌گیرنده بود.
پژوهشگران برای غلبه بر سایر مشکلات از تکنیک‌هایی چون Memory Replay
تکرار حافظه ،  مدل‌های تحلیل بقا ، Dueling Bandit Gradient Descent و غیره استفاده کردند.

مزایده و تبلیغات

محققین گروه Alibaba مقاله‌ای با عنوان «Real-Time Bidding with Multi-Agent Reinforcement Learningin Display Advertising» منتشر کردند و ادعا کردند که راه‌کار آن‌ها با عنوان
مزایده چند عاملی توزیعیو مبتنی بر خوشه‌بندی (DCMAB) نتایج امیدوارکننده‌ای به دنبال داشته است و به همین دلیل، قصد دارند آن را به‌صورت زنده بر روی سامانه TaoBao محک بزنند.
بررسی جزئیات نتایج این آزمایش به کاربران بستگی دارد. سامانه تبلیغاتی تائوبائو محلی است که پس از آغاز یک مزایده توسط فروشندگان، آگهی مربوط به آن به مشتریان نمایش داده می‌شود. این مسئله را می‌توان یک مسئله چندعاملی درنظر گرفت، زیرا مزایده مربوط به هر فروشنده علیه فروشنده دیگر است و اقدامات هر عامل به اقدام سایرین بستگی دارد. در این پژوهش، فروشندگان و مشتریان در چند گروه خوشه‌بندی شده بودند تا از پیچیدگی‌های محاسباتی کاسته شود. همچنین، فضای وضعیت هر عامل نمایان‌گر هزینه-فایده آن، فضای اقدام همان مزایده(پیوسته) و پاداش نیز درآمد ناشی از فرستادن تبلیغ به خوشه مشتری مناسب بود.

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

بازی‌ها

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

کاربردهای یادگیری تقویتی

تصویر سوم مقاله کاربردهای یادگیری تقویتی – مقایسه عملکرد انسان، مدل خطی و یادگیری تقویتی
منبع: https://web.stanford.edu/class/psych209/Readings/MnihEtAlHassibis15NatureControlDeepRL.pdf

نام‌آشناترین الگوریتم‌ها در این حوزه AlphaGo و AlphaGo Zero هستند. برای آموزش الگوریتم آلفاگو داده‌های بیشماری از روند بازی‌های انسانی جمع‌آوری و به آن داده شد. این الگوریتم با بهره‌گیری از تکنیک جست‌وجوی درختی مونت کارلو (MCTS) و شبکه ارزش تعبیه شده در شبکه سیاست خود توانست عملکردی فرابشری داشته باشد. اما کمی بعد از آن، توسعه‌دهندگان این الگوریتم قدمی به عقب برداشته و تلاش کردند تا با رویکردی بهبودیافته یعنی آموزش الگوریتم از صفر، دوباره این کار را انجام دهد. بدین ترتیب، پژوهشگران عامل جدید خود یعنی AlphaGo Zero را در بازی، رقیب خودش قرار دادند. این الگوریتم جدید درنهایت توانست ۱۰۰-۰ آلفاگو را شکست دهد.

یادگیری عمیق

امروزه شاهد تلاش‌های روزافزون برای ترکیب یادگیری تقویتی با سایر معماری‌های یادگیری عمیق هستیم. برخی از این تلاش‌ها نتایج شگفت‌انگیزی داشته‌اند.
یکی از تأثیرگذارترین پروژه‌ها در این حوزه، ترکیب شبکه‌های عصبی پیچشی (CNN) با یادگیری تقویتی بود که توسط شرکت DeepMind انجام گرفت. با ترکیب این دو، عامل تصمیم‌گیرنده به کمک حواس چند بُعدی خود توانایی دیدن محیط را خواهد داشت و نحوه تعامل با محیط را می‌آموزد.
یکی دیگر از ترکیباتی که برای آزمایش ایده‌های جدید از آن استفاده می‌شود، ترکیب یادگیری تقویتی و شبکه‌های عصبی بازگشتی (RNN) است. شبکه عصبی بازگشتی یا RNN می‌تواند اتفاقات را به خاطر بسپارد. وقتی این شبکه عصبی با الگوریتم‌های یادگیری تقویتی ترکیب شود، عامل تصمیم‌گیرنده نیز قادر به یادآوری و به خاطر سپردن اتفاقات خواهد بود. برای مثال، از ترکیب شبکه LSTM (حافظه طولانی کوتاه‌مدت) با یادگیری تقویتی، شبکه بازگشتی و عمیق Q (DRQN) به دست آمد که می‌تواند بازی‌های آتاری ۲۶۰۰ را انجام دهد. علاوه براین، ترکیب یادیگری تقویتی و شبکه عصبی بازگشتی در بهینه‌سازی واکنش‌های شیمیایی نیز کاربرد دارد.

کاربردهای یادگیری تقویتی

تصویر چهارم مقاله کاربردهای یادگیری تقویتی – مقایسه ورودی با نتایج تولید شده توسط عامل
منبع: https://www.youtube.com/watch?v=N5oZIO8pE40

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

بخش سوم: آن‌چه باید پیش از استفاده از یادگیری تقویتی بدانید

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

  • ۱. آزمون و خطا (بهبود کیفیت یادگیری در اثر دریافت بازخورد از محیط)
  • ۲. پاداش متأخر
  • ۳. امکان مدل‌سازی در قالب MDP
  • ۴. موضوع کنترل مطرح باشد

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

بخش چهارم: آموزه هایی از سایر علوم

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

بخش پنجم: دست‌آوردهای احتمالی یادگیری تقویتی در آینده

یادگیری تقویتی هنوز مشکلات و نقص‌های زیادی دارد و استفاده از آن آسان نیست. اما با توجه به تلاش‌های روزافزونی که به‌منظور رفع این نقص‌ها صورت می‌گیرد، یادگیری تقویتی می‌تواند در آنیده در حوزه‌های زیر تأثیرگذار باشد:
همکاری با انسان‌ها: شاید گفتن این‌که یادگیری تقویتی در آینده می‌تواند بخشی از دنیای هوش مصنوعی عمومی باشد، زیاده‌روی به‌نظر برسد، اما یادگیری تقویتی توانایی همکاری و همراهی با انسان را دارد. برای مثال فرض کنید ربات یا دستیار مجازی که با شما کار می‌کند، برای اقدام و یا تصمیم بعدی خود، اقدامات پیشین شما را مدنظر قرار دهد. واقعاً شگفت‌انگیز نیست؟
برآورد عواقب استراتژی‌ها مختلف: در دنیای ما زمان به عقب برنمی‌گردد و هر اتفاق تنها یک‌بار رخ می‌دهد و همین است که زندگی را اعجاب‌برانگیز می‌سازد. اما گاهی می‌خواهیم بدانیم اگر در گذشته تصمیمی متفاوت گرفته بودیم، شرایط کنونی چگونه بود؟ یا اگر مربی تیم ملی کرواسی استراتژی متفاوتی را در پیش می‌گرفت، شانس این تیم برای پیروزی در جام‌جهانی ۲۰۱۸ بیشتر می‌شد؟ البته برای انجام چنین برآوردهایی باید تابع انتقال و محیط را بسیار دقیق مدل‌سازی کنیم و تعاملات میان محیط و عامل را تجزیه و تحلیل کنیم. کاری که درحال‌حاضر غیرممکن به‌نظر می‌رسد.

بخش ششم: نتیجه‌گیری

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

منبع: hooshio.com

انواع دیتاست‌ ها در حوزه‌ های علوم داده، داده‌کاوی و یادگیری ماشینی


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

 

منظور از ابعاد دیتاست چیست؟

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

منظور از پراکندگی در یک دیتاست چیست؟

در برخی از دیتاست‌ها، به‌ویژه دیتاست‌هایی که ویژگی‌های نامتقارن دارند، مقدار اغلب صفات یک شیء صفر است و در اکثر موارد، تنها کمتر از ۱% از آن‌ها مقداری غیر صفر دارند. این‌گونه داده‌ها، داده‌های پراکنده نامیده می‌شوند. همچنین می‌توان گفت که این دیتاست دارای پراکندگی است.

منظور از وضوح دیتاست چیست؟

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

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

انواع دیتاست

 

داده‌های ثبتی

در زمان داده‌کاوی اغلب فرض می‌شود که داده‌ها مجموعه‌ای از رکوردها هستند (شیء داده).
در ساده‌ترین گونه داده‌های ثبتی هیچ رابطه روشنی میان رکوردها یا فیلد داده‌ها وجود ندارد و همه رکوردها (شیءها) مجموعه صفات یکسانی دارند. داده‌های ثبتی معمولاً در فایل‌های مسطح یا پایگاه‌های داده‌های رابطه‌ای ذخیره می‌شوند.
داده‌های ثبتی انواع مختلفی دارند که هر یک از آن‌ها ویژگی‌های ذاتی مخصوص به خود را دارد.
داده‌های تراکنشی یا سبد بازار: در این نوع از داده‌های رکوردی، هر رکورد حاوی مجموعه‌ای از آیتم‌هاست. برای مثال، خرید از یک سوپرمارکت یا خواربار فروشی را درنظر بگیرید. در این حالت رکورد مربوط به هر یک از مشتریان حاوی مجموعه‌ای از اقلام خریداری‌شده در یک مراجعه مشخص است. این نوع از داده‌ها، داده‌های سبد بازار نام گرفته‌اند. داده تراکنشی نیز دسته‌های حاوی مجموعه‌ اقلام هستند، اما این دسته‌ها را می‌توان مجموعه‌ای از رکوردها درنظر گرفت که فیلدهای آن دارای صفات نامتقارن هستند. این صفات اغلب دودویی هستند و به ما می‌گویند که آیا یک قلم جنس مشخص خریداری شده است یا خیر.
ماتریس داده‌ها: اگر همه شیء داده‌های موجود در یک دسته از داده‌ها دارای یک مجموعه صفات عددی ثابت و یکسان باشند، در یک فضای چندبعدی می‌توان این شیء داده‌ها را به عنوان نقاط (بردار) در نظر گرفت. هر بعد در این فضای چندبعدی، نمایان‌گر یک صفت متمایز برای توصیف شیء است. مجموعه این نوع از شیء داده‌ها را می‌توان یک ماتریس n×m درنظر گرفت که هر ستون مربوط به یک صفت و هر سطر مربوط به یک شیء است. با استفاده از اعمال ماتریسی استاندارد می‌توان باعث تغییرشکل داده‌ها شد و آن‌ها را دستکاری کرد. به همین دلیل، داده‌های ماتریسی اغلب شکل استاندارد داده‌های آماری درنظر گرفته می‌شوند.
ماتریس داده‌های پراکنده: ماتریس داده‌های پراکنده (که گاه ماتریس داده‌های اسنادی نیز نامیده می‌شود) نوعی از خاصی از ماتریس داده‌هاست که عناصر آن از یک نوع و نامتقارن هستند و در این میان، تنها عناصر غیر صفر اهمیت دارند.

داده‌های نموداریانواع دیتاست

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

داده‌های ترتیبیانواع دیتاست

در برخی از انواع داده‌ها، رابطه صفات داده‌ها با یک‌دیگر دارای ترتیب زمانی یا فضایی است. همان‌طور که در تصویر بالا مشاهده می‌کنید، این قبیل داده‌ها را می‌توان در ۴ دسته مجزا بررسی کرد:
داده‌های متوالی: این داده‌ها که گاه با نام داده‌های موقتی نیز از آن‌ها یاد می‌شود را می‌توان داده‌های ثبتی تعمیم‌یافته دانست که هر رکورد آن یک زمان مشخص دارد. برای مثال، دیتاست مربوط به تراکنش‌های یک خرده‌فروشی را درنظر بگیرید که علاوه‌بر خود تراکنش‌ها زمان انجام تراکنش نیز در آن ذخیره شده است.
داده‌های رشته‌ای: داده‌های رشته‌ای به دیتاستی گفته می‌شود که حاوی رشته‌ای از داده‌های مجزا (برای مثال، رشته‌ای از کلمات یا حروف) است. این داده‌ها شباهت زیادی به داده‌های متوالی دارند، اما تفاوت آن‌ها در این است که داده‌های رشته‌ای به‌جای زمان، یک جایگاه مشخص در رشته ترتیبی مربوطه دارند. برای مثال، اطلاعات ژنتیکی گیاهان و جانوران را می‌توان در قالب داده‌های رشته‌ای و به‌صورت رشته‌ای از نوکلئوتیدها (که هر یک به عنوان یک ژن درنظر گرفته می‌شوند) ذخیره کرد.
داده‌های سری زمانی: داده‌های سری زمانی نوع خاصی از داده‌های متوالی هستند که در آن‌ها هر رکورد یک سری زمانی است؛ برای مثال، در هر رکورد می‌توان نتایج ارزیابی یک مسئله درطول زمان را ذخیره کرد. برای ارائه یک مثال دیگر از داده‌های سری زمانی می‌توان یکی از انواع دیتاست های مالی را درنظر گرفت که هر یک از اشیاء آن یک سری زمانی از قیمت روزانه چندین سهم متفاوت باشد.
داده‌های فضایی: در این نوع داده‌ها، برخی از اشیاء علاوه‌بر سایر صفات‌شان، صفات فضایی همچون مکان یا ناحیه نیز دارند. برای مثال، داده‎های آب‌وهوایی (بارش، دما یا فشار) را درنظر بگیرید که از موقعیت‌های جغرافیایی مختلف جمع‌آوری شده‌اند.

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

منبع: hooshio.com