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

به عنوان یکی از شاخه‌های وسیع و پرکاربرد هوش مصنوعی، یادگیریماشینی (machine learning) به تنظیم و اکتشاف شیوه‌ها و الگوریتم‌هایی می‌پردازد کهبر اساس آنها رایانه‌ها و سامانه‌ها توانایی تعلٌم و یادگیری پیدا می‌کنند. هدفیادگیری ماشینی این است که کامپیوتر (در کلی‌ترین مفهوم آن) بتواند به تدریج و باافزایش داده‌ها بازدهی‌ی بالاتری در وظیفهٔ مورد نظر پیدا کند. گستردهٔ این وظیفهمی‌تواند از تشخیص خودکار چهره با دیدن چند نمونه از چهرهٔ مورد نظر تا فراگیریشیوهٔ گام‌برداری برای روبات‌ای دوپا با دریافت سیگنال پاداش و تنبیهباشد.

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

تقسیم‌بندی مسایل

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

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

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


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

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

یادگیری بی‌سرپرست را می‌توان به صورت عمل کاهش بعد (Dimension Reduction) در نظر گرفت.

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

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


 

/ 0 نظر / 7 بازدید