یادگیری ماشین
Machine learning (یادگیری ماشین) همان کاری را میکند که از عنوانش پیدا است. یادگیری ماشین درواقع روشی است که با آن یک برنامه رایانهای میتواند بدون این که مستقیماً برنامهریزی بشود، از روی تجربه و به طور خودکار یاد گرفته و بهبود یابد.
یادگیری ماشین
مدلسازی و یادگیری پیشبینی کننده
نحوه یادگیری یک موجود زنده را در نظر بگیرید. فرض کنید یک پستچی داریم که همیشه در گشت روزانهاش یک مشت غذای سگ با خود میآورد. هروقت به خانهای میرسد که سگ دارد، یکی از غذاها را با نامه داخل شکاف در میاندازد. سگ در داخل خانه بوی پستچی را احساس میکند، و میداند که او هر روز ساعت 2 بعدازظهر به خانه میآید. پس از چند روز که سگ در ساعتی مشابه و همراه نامه، غذا دریافت کرد، این الگو را یاد میگیرد: 2 بعدازظهر= پستچی= غذا. سگ رفتار خود را طبق این الگو تنظیم میکند. هر روز در همان ساعت، هیجانزده شده و منتظر میماند. سپس با رسیدن پستچی دیوانهوار پارس میکند. طبیعتاً انحرافاتی نیز در مجموعه داده وجود دارد. گاهی پستچی متفاوتی میآید که غذا نمیآورد یا اینکه بعضیوقتها پستچی دیرتر از همیشه میرسد. بهعلاوه این که جمعهها تعطیل است. با این حال انتظارات سگ از این الگو تغییری نمیکند؛ چون مدل پیشبینی کنندهای که ساخته، بیشتر اوقات درست از آب درمیآید. اگر سگ خیلی باهوش است، شاید بداند که باید قبل از هیجانزده شدن ببیند که آیا پستچیِ همیشگی آمده یا نه، و تشخیص دهد که هر هفت روز یکبار، هیچکس نمیآید و بدینترتیب مدل پیشبینیکننده خود را دقیقتر و درستتر کند. بهطور کلی، یک برنامه رایانهای که یادگیری ماشینی را به کار میبرد، از همین شیوه استفاده میکند. یعنی دادهها را تحلیل کرده و به دنبال یک الگو یا روند زیربنایی میگردد. این برنامه میبایست از این الگوها استفاده کرده و مدل پیشبینیکنندهای ایجاد کند که از دادههای دریافتشده، یاد بگیرد.
الگوریتمها
هر برنامه یادگیری ماشین به یک مجموعه داده آموزشی نیاز دارد تا به آن یاد بدهد که انتظار چه نوع اطلاعاتی را میتواند داشته و از آنجا متوجه شود که برنامهریز به دنبال چه نوع اطلاعاتی میگردد. تفاوت میان یک سگ و برنامه رایانهای، قطعاً در حجم و پیچیدگی درون داده است. الگوریتمهای یادگیری ماشینی میتوانند حجم عظیمی از دادهها را پردازش کنند و براساس این اطلاعات، پیامدها و الگوها را پیشبینی کنند. به مرور زمان که برنامه خودش را اصلاح میکند، مدل پیشبینیکننده دقیقتر و صحیحتر میشود، بدون این که دستکاری بیرونی کنید. الگوریتمها سه دسته عمده دارند که با نوع مجموعه دادههای آموزشی که به آنها داده میشود، تعریف میگردند. این سه دسته عبارتاند از:
- تحت نظارت.
- بدون نظارت.
- نیمهنظارتی.
یادگیری تحت نظارت
الگوریتمهای یادگیری ماشین بر اساس مجموعهدادههایی آموزش میبینند. در آنها یک ورودی فرضی، براساس یک تابع نگاشت، به یک خروجی مشخص میرسند.
نحوهی کار
تابع نگاشت را باید آنقدر خوب تقریب بزنیم که وقتی داده ورودی تازهای داریم (یعنی X) بتواند متغیرهای خروجی (یعنی Y) برای آن داده را پیشبینی کنیم. در این مورد، برنامهریز مثل معلمی است که آزمون کوچکی از شاگردانش میگیرد. او پاسخهای درست را میداند و هر بار که از شاگردانش امتحان میگیرد به آنها نمره میدهد. دانشآموزان آنقدر امتحان میدهند تا همگی، بدون استثنا قبول شوند.
یادگیری بدون نظارت
یادگیری ماشین بدون نظارت در ازای ورودی فرضی، هیچ خروجی درستی ندارد. برخلاف یادگیری ماشین تحت نظارت، هیچ پاسخ مورد انتظار و هیچ معلمی وجود ندارد. فقط خود برنامه براساس دادهها جلو میرود. هدف از این نوع یادگیری ماشینی، تحلیل دادهها بهطور کلی و کشف واقعیاتی در مورد ساختار زیربنایی است.
نحوهی کار
در یک مسئلهی دستهبندی، هدف، پیدا کردن گروههای خاصی در یک مجموعه داده است. کشف سن و توزیع درآمد مشتریان، نمونهای از مسئله دستهبندی است. چرا که برنامه میتواند به شما نشان دهد کدام گروه سنی و درآمدی رایجتر است.
یادگیری نیمه نظارتی
یادگیری ماشین نیمهنظارتی قاعدتاً ترکیبی از دو نوع اول است.
نحوهی کار
میتوان در یک مسئله واحد از شیوههای یادگیری تحت نظارت و بدون نظارت استفاده کرد. مثلاً میتوان با استفاده از یک الگوریتم بدون نظارت، پیشبینیهایی درمورد مجموعهای از دادهها انجام داده و نتایج آن را در یک الگوریتم تحت نظارت وارد کرد. یادگیری ماشین نیمهنظارتی، هیچ زیرگروه مشخصی ندارد و بیشترین کارایی را زمانی داراست. مجموعه دادههای شما ترکیبی از نقاط دادهی با برچسب و بدون برچسب است. شاید بتوان مسائل دنیای واقعی، مثل طبقهبندی مجموعهای از عکسهای واقعی را با یادگیری ماشین نیمهنظارتی، بهتر حل کرد.
کاربرد یادگیری ماشین
این تکنولوژی، کاربردها و مزایای متعددی دارد. بهطور کلی اگر بخواهیم کاری را انجام دهیم که نیازمند انطباقپذیری شبه انسانی است. برای سنجش و تحلیل، مقیاس بزرگی دارد، به یادگیری ماشین نیاز داریم. به علاوه یادگیری ماشین به ما اجازه میدهد یک مدل تحلیلی بسازیم که حداقل در سطح نظری، عاری از جهتگیری انسانی است. توانایی انسان در آموختن انجام خودکار برخی کارها، مثل فهمیدن سخنان شفاهی، قضاوت درمورد شرایط جاده و شناسایی آدمها در یک عکس، بهسادگی به یک برنامه رایانهای تبدیل نمیشود چون مستلزم یادگیری از تجارب است. یادگیری ماشین برای تقلید از هوش انسانی در چند مؤلفه طراحی شده است. هر تکرار به برنامه کمک میکند دقت، صحت و توانایی خود را در انجام هر وظیفهای که به آن محول شده، بهبود بخشد.
ارسال پاسخ