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

از ویکی‌پدیا، دانشنامهٔ آزاد.

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

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


[ویرایش] تقسیم‌بندی مسایل

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

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

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


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


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

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


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

[ویرایش] مراجع

  • Trevor Hastie, Robert Tibshirani, and Jerome Friedman, The Elements of Statistical Learning: Data Mining, Inference, and Prediction, Springer, ۲۰۰۳ (ISBN: ۰-۳۸۷-۹۵۲۸۴-۵)


نگاه‌ای آماری به یادگیری ماشینی و به طور خاص یادگیری ماشینی‌ی باسرپرست.


  • Richard S. Sutton and Andrew G. Barto, Reinforcement Learning: An Introduction, MIT Press, ۱۹۹۸ (online version).

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

  • Tom M. Mitchell, Machine Learning, McGraw-Hill Companies, Inc., ۱۹۹۷. ISBN: ۰ - ۰۷ - ۰۴۲۸۰۷ - ۷

این کتاب کم حجم یکی از عمده‌ترین مراجع کلاسیک در زمینهٔ یادگیری ماشینی‌ست

تصویر:Computer-stub.png این نوشتار دربارهٔ رایانه ناقص است. با گسترش آن به ویکی‌پدیا کمک کنید.