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

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

یادگیری ماشین|یادگیری تقویتی

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

یادگیری تقویتی، یکی از روش های یادگیری ماشین است که با ذهنیت آزمون و خطا کار می‌کند. عامل هوشمند (agent) طبق حالت جاری (state) ، حرکتی (action) انجام می‌دهد و بر اساس آن حرکت بازخورد (reward) دریافت می‌کند؛ این بازخورد ممکن است مثبت یا منفی (پاداش یا تنبیه) باشد و عامل با این بازخورد خط‌مشی (policy) خود را تغییر می‌دهد.

در مثال هزارتو

  • عامل هوشمند (agent) شما هستید که سعی می‌کنید از هزارتو خارج شوید.
  • حالت جاری (state) مختصات مکان فعلی شما در هزارتو و اطلاعات بیشتری در مورد محیطی که در آن به یادگیری می‌پردازید را نشان می‌دهد.
  • حرکت یا عمل (action) گامی است که در یک جهت برمی‌دارید.
  • بازخورد (reward) امتیاز مثبت یا منفی‌ای است که دریافت می‌کنید تا بفهمید آیا در مسیر درستی قرار دارید یا نه!
  • خط‌مشی (policy) مشخص می‌کند که در هر حالت چه عملی را انتخاب کنید تا بهترین پاداش را بگیرید.

شکل زیر نشان می‌دهد که یک ربات چگونه یاد می‌گیرد که به آتش نزدیک نشود.

(برگرفته از کتاب Hands On Machine Learning with Scikit-Learn, Keras and TensorFlow)

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

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

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

پروژه‌ی OpenAI Five

یکی از مهمترین اتفاقات حوزه یادگیری تقویتی، پروژه OpenAI Five بود که در سال ۲۰۱۶ آغاز شد. در این پروژه از یادگیری تقویتی برای آموزش عاملی استفاده کردند که بتواند در بازی Dota 2 حریفان را شکست دهد. Dota 2 یک بازی نقش‌آفرینی تیمی است و از پیچیدگی بسیار بالایی برخوردار است.

dota2

عامل OpenAI فقط از طریق خود-یادگیری یا self-learning بازی را یاد گرفت و از هیچ داده دیگری استفاده نکرد. پس از آموزش بسیار بالاخره در سال ۲۰۱۹ تلاشهای آنان به ثمر نشست و در سال ۲۰۱۹ عامل OpenAI توانست تیم قهرمان جهان را در مسابقات جهانی Dota 2 شکست دهد.

برای مطالعه مقاله چالش های الگوریتمی بر روی لینک کلیک کنید

امیرحسین باقری

امیرحسین باقری هستم عاشق برنامه نویسی مخصوصا با python و همینطور طراح قالب و متخصص فرانت اند؛ از دانشی که تو این مدت بدست آوردم میشه به HTML, CSS, Bootstrap, Flexbox, SASS, Python, Django, DRF و هوش مصنوعی اشاره کرد.
دکمه بازگشت به بالا