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

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

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

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

کاربرد یادگیری ماشین در فروشگاه های آنلاین و تحول تجارت الکترونیک


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

این جادوی هوش مصنوعی است

مانند آمازون، وب‌سایت‌های تجارت الکترونیکی بسیاری وجود دارند که با استفاده از پتانسیل الگوریتم‌های یادگیری ماشین در فروشگاه های آنلاین قدرت این فناوری نوین را در تجارت الکترونیکی نشان می‌دهند. تحقیقات Tractica ادعا می‌کند که ارزش هوش مصنوعی در تجارت الکترونیکی تا سال ۲۰۲۵ به ۳۶.۸ میلیارد دلار می‌رسد. واضح است که هوش مصنوعی تجارت الکترونیکی در حال پیشرفت است و این روند در سال ۲۰۲۱ نیز ادامه خواهد داشت. در ابتدا بیایید به یک تعریف ساده یادگیری ماشین، انواع مختلف آن و کاربردهای متنوع آن در بخش تجارت الکترونیکی نگاهی بیندازیم.

یادگیری ماشین چیست؟

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

انواع الگوریتم‌های یادگیری ماشین

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

الگوریتم‌های یادگیری بدون نظارت

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

الگوریتم‌های یادگیری با نظارت

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

نحوه کار الگوریتم یادگیری تحت نظارت به شرح زیر است:

شما داده‌هایی را که باید وارد کنید با یک “برچسب” روی آن ایجاد می‌کنید.
سپس این جفت نمونه برچسب را به الگوریتم یادگیری تغذیه می‌کنید.
الگوریتم در جهت پیش‌بینی برچسب برای هر مثال تلاش می‌کند.
شما در رابطه با اینکه الگوریتم پاسخ درست را پیش‌بینی کرده است (یا نه) بازخورد ارائه می‌دهید.
با گذشت زمان، هر چه تعداد بیشتری از نمونه‌ها را تغذیه کنید، الگوریتم “خود یاد می‌گیرد” تا زمانی که بتواند به‌درستی وظیفه محوله را مشاهده، پیش‌بینی و تکمیل کند.

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

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

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

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

۱-شخصی‌سازی محتوا و پیشنهاد محصول

“۸۰٪ از خریداران به‌طور فعال از مارکی خرید می‌کنند که تجربیات شخصی را ارائه می‌دهد.”

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

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

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

پیشنهاد محصولات تخفیف‌دار: یادگیری ماشینی می‌تواند بهترین تخفیف‌ها و پیشنهادها را پیش‌بینی کند و به مشتری ارائه دهد و به همین دلیل باعث فروش و همچنین رضایت کاربر می‌شود.

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

تغییر در محتوای پویا: این شامل فیلتر کردن تصاویر، محصولات و غیره و ارسال هشدارها و پیام‌های سفارشی برای هر خریدار است. به ‌عنوان مثال ، از ویژگی “Fit Search” Fit Connect استفاده کنید که فیلترهای مبتنی بر تناسب را ارائه می‌دهد تا محصولات موجود در اندازه‌های مناسب به نمایش بگذارد.

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

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

۲- بهینه‌سازی قیمت‌گذاری

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

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

نگاهی به فناوری قیمت‌گذاری مبتنی بر هوش مصنوعی Feedvisor بیندازید که به شما امکان می‌دهد قیمت‌ها را بهینه کنید و در قیمت‌گذاری‌های پویا شرکت کنید.

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

۳- آزمون A/B با یادگیری ماشین

پیاده‌سازی آزمون A/B در یک وب‌سایت تجارت الکترونیکی یک کار نسبتاً سخت است. اینجاست که یادگیری ماشینی واقعاً می‌درخشد. ابزارهای تخصصی یادگیری ماشین مانند Nosto به شما امکان می‌دهد آزمون A / B / n ، تقسیم و چند متغیره را در پارامترهای مختلف مانند پیشنهاد محصول، محتوا، طبقه‌بندی کالاها و غیره اجرا کنید.

در اینجا تجزیه‌وتحلیل سریع انواع آزمون A / B که می‌تواند بدون زحمت و با کارایی بیشتر انجام شود را مشاهده می‌کنید.

این می‌تواند روند آزمایش A / B را به‌صورت خودکار انجام دهد و ویژگی‌های ایدئال را نشان دهد که می‌تواند فروش و یا رضایت مشتری را افزایش دهد. به عنوان مثال، این الگوریتم‌ها می‌توانند رفتار کاربر را در انواع مختلف آزمون A / B تجزیه‌وتحلیل کنند و کارهایی همچون برجسته‌تر نشان دادن دکمه call to action یا درج تصویر در بنر صفحه اصلی را پیشنهاد دهند.

این می‌تواند به‌طور خودکار مشتریان را با استفاده از مدل‌های یادگیری ماشین بدون نظارت و بر اساس ویژگی‌های متنوعی همچون متغیرهای جمعیت شناختی و ترجیحات کاربران به گروه‌های مختلف دسته‌بندی کند.

نکته کلیدی: استفاده از الگوریتم‌های خودآموز یادگیری ماشین برای آزمون A / B سیستم‌عامل یا محصولتان به شما امکان می‌دهد گزینه‌های “بهینه” را به‌سرعت و با دقت پیدا کنید. این موضوع ازنظر مالی و عملیاتی منطقی است زیرا شما نیازی به سرمایه‌گذاری منابع خود در کارهای تکراری و خسته‌کننده ندارید زیرا یادگیری ماشین می‌تواند به‌خوبی از پس آن بربیاید.

۴-پردازش تصویر

مدل‌های یادگیری ماشین، اساس سیستم‌های شناسایی تصویر را تشکیل می‌دهند که به شما امکان می‌دهد قابلیت‌های جستجوی مشتری‌مدارانه بیشتری را ارائه دهید. این سیستم چگونه کار می‌کند؟

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

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

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

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

۵-محافظت در برابر تقلب

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

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

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

جمع‌بندی: نقش پویای یادگیری ماشین در فروشگاه های آنلاین

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

انواع کاربردهای هوش مصنوعی در صنایع مختلف را در هوشیو بخوانید

منبع: hooshio.com

مقدمه‌ای بر انواع الگوریتم‌های یادگیری تقویتی


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

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

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

۱. یادگیری تقویتی ۱۰۱

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

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

تصویری از الگوریتم یادگیری تقویتی(https://i.stack.imgur.com/eoeSq.png)

 

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

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

تعاریف 

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

وضعیت (State|S): وضعیتی که عامل در هرلحظه با آن مواجه است و محیط آن را ایجاد کرده است.

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

سیاست (Policy|π): استراتژی است که عامل تصمیم‌گیرنده در پاسخ به وضعیت فعلی، برای اقدام بعدی خود درنظر می‌گیرد.

ارزش (Value|V): پاداش بلند مدت موردانتظار تنزیل‌شدهکه برخلاف با پاداش کوتاه‌مدت (R)، بلندمدت می‌باشد.  عبارت است از سود موردانتظار در بلندمدت که ناشی از وضعیت کنونی s تحت سیاست π است.

Q-value یا اقدام-ارزش (Q): مفهوم Q-value بسیار شبیه به مفهوم ارزش (V) است. اما در Q-value یک پارامتر بیشتر وجود دارد. این پارامتر اضافه همان اقدام a می‌باشد.  Q(s,a) عبارت است از سود بلندمدت ناشی از اقدام  a تحت سیاست
 π در وضعیت کنونی s.

الگوریتم‌های بدون مدلدر برابر الگوریتم‌های مبتنی بر مدل

مدل یک شبیه‌سازی از پویایی محیط است. یعنی اینکه مدل، تابع احتمال انتقال T(s1|(s0, a)) (یعنی احتمال انتقال وضعیت s1 درصورتی که در وضعیت قبلی یا s0، اقدام a انتخاب شده باشد.) را یاد می‌گیرد. اگر یادگیری تابع انتقال احتمال موفقیت‌آمیز باشد، عامل تصمیم‌گیرنده می‌تواند احتمال رخ دادن یک وضعیت مشخص را براساس وضعیت و اقدام فعلی محاسبه کند. اما با افزایش تعداد وضعیت‌ها و اقدام‌ها (S*S*A، در یک ساختار جدولی)، الگوریتم‌های مبتنی بر مدل کارآمدی خود را از دست می‌دهند.

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

روش On-policy و روش Off-policy

در روش On-policy، عامل تصمیم‌گیرنده ارزش را براساس اقدام a که ناشی از سیاست فعلی است، یاد می‌گیرد. اما در روش دیگر یعنی روش Off-policy فرایند یادگیری به این صورت است که عامل، ارزش را از اقدام a* (بهترین اقدام موجود) که نتیجه یک سیاست دیگر می‌باشد، می‌آموزد. این سیاست در الگوریتم یادگیری Q همان سیاست حریصانه است (درادامه این مقاله بیشتر درباره الگوریتم‌های یادگیری Q و SARSA صحبت خواهیم کرد).

 

۲. مروری بر چند الگوریتم‌

۱.۲. الگوریتم یادگیری Q

الگوریتم Q-Learning یا یادگیری Q یک الگوریتم یادگیری تقویتی از نوع بدون مدل و Off-policy است که برپایه معادله معروف بِلمَن تعریف می‌شود:

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

معادله بلمن (https://zhuanlan.zhihu.com/p/21378532?refer=intelligentunit)

 

در معادله بالا، E نماد انتظارات و λ ضریب تنزیلاست. میتوانیم معادله بالا را در فرم تابعی Q-Value به صورت زیر بنویسیم:

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

معادله بلمن در فرم تابعیQ-value ( (https://zhuanlan.zhihu.com/p/21378532?refer=intelligentuni

 

مقدار بهینهQ-value که با نماد  نمایش داده می‌شود را می‌توان از فرمول زیر به دست آورد:

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

مقدار بهینه Q-value (https://zhuanlan.zhihu.com/p/21378532?refer=intelligentunit)

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

 

تکرار سیاست

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

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

تکرار سیاست (http://blog.csdn.net/songrotek/article/details/51378582)

 

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

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

نمونه کد روش تکرار سیاست (http://blog.csdn.net/songrotek/article/details/51378582)

 

تکرار ارزش

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

معادله بهینه بلمن (http://blog.csdn.net/songrotek/article/details/51

 

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

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

نمونه کد روش تکرار ارزش (http://blog.csdn.net/songrotek/article/details/51378582)

 

وقتی تکرار به همگرایی برسد، یک سیاست بهینه برای همه وضعیت‌ها مستقیماً توسط تابع argument-max ارائه داده می‌شود.

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

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

معادله به‌روزشده یادگیری Q (https://www.quora.com/What-is-the-difference-between-Q-learning-and-SARSA-learning)

 

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

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

نمونه کد یادگیری Q (https://martin-thoma.com/images/2016/07/q-learning.png)

بخاطر داشته باشید که اقدام بعدی یعنی ، با هدف حداکثر کردن وضعیت بعدی Q-value انتخاب شده است، نه براساس سیاست مربوطه. درنتیجه یادگیری Q در دسته روش‌های Off-policy قرار می‌گیرد.

 ۲.۲. الگوریتم «وضعیت-اقدام-پاداش-وضعیت-اقدام» یا SARSA

الگوریتم SARSA (که سرواژه عبارت State-Action-Reward-State-Action است) شباهت زیادی با الگوریتم یادگیری Q دارد. تفاوت کلیدی این دو الگوریتم در این است که SARSA برخلاف الگوریتم یادگیری Q، در دسته الگوریتم‌های On-Policy قرار می‌گیرد. بنابراین، الگوریتم SARSA مقدار Q-value را با توجه به اقدامی که ناشی از سیاست فعلی است محاسبه می‌کند نه اقدام ناشی از سیاست حریصانه.

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

معادله به‌روزرسانی الگوریتم SARSA (https://www.quora.com/What-is-the-difference-between-Q-learning-and-SARSA-learning)

 

اقدام  اقدامی است که در وضعیت بعدی یعنی  تحت سیاست فعلی انجام خواهد گرفت.

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

نمونه کد الگوریتم SARSA (https://martin-thoma.com/images/2016/07/sarsa-lambda.png)

 

ممکن است در نمونه کد بالا متوجه شده باشید که هر دو اقدام اجرا شده از سیاست فعلی پیروی می‌کنند. اما در الگوریتم یادگیری Q، تا زمانی که اقدام بعدی بتواند مقدار Q-value برای وضعیت بعدی را حداکثر سازد، هیچ قیدی برای آن تعریف نمی‌شود. بنابراین همان‌طور که گفته شد، الگوریتم SARSA از نوع الگوریتم‌های On-policy است.

 

۳.۲. شبکه عمیق Q یا DQN

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

شبکه DQN به کمک یک شبکه عصبی، تابع Q-value را تخمین می‌زند. وضعیت فعلی به عنوان ورودی به این شبکه داده می‌شود، سپس مقدار Q-value متناظر با هر اقدام به عنوان خروجی از شبکه دریافت خواهد شد.

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

یک مثال از شبکه DQN در آتاری (https://zhuanlan.zhihu.com/p/25239682)

 

شرکت دیپ مایند در سال ۲۰۱۳، شبکه DQN را همان‌طور که در تصویر بالا ملاحظه می‌کنید، در بازی آتاری به‌کار گرفت. ورودی که به این شبکه داده می‌شد یک تصویر خام از وضعیت جاری بازی بود. این ورودی از چندین لایه مختلف از جمله لایه‌های پیچشی و تماماً متصل عبور می‌کند و خروجی نهایی شامل مقادیر Q-valueهای مربوط به تمام اقدامات احتمالی عامل تصمیم‌گیرنده است.

حال سؤال اصلی این است که: چطور می‌توان این شبکه را آموزش داد؟

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

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

Q-value هدف (https://storage.googleapis.com/deepmind-media/dqn/DQNNaturePaper.pdf)

 

نماد ϕ معادل وضعیت s است. نماد

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


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

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

 

شبکه‌های عصبی پیچشی(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