یادگیری ماشینی (Machine Learning) یک تکنیک هوش مصنوعی است که از طریق تجربه به رایانهها آموزش میدهد. الگوریتمهای یادگیری ماشینی از روشهای محاسباتی برای «یادگیری» اطلاعات مستقیماً از دادهها بدون تکیه بر یک معادله از پیش تعیینشده به عنوان مدل استفاده میکنند. الگوریتمها با افزایش تعداد نمونههای موجود برای یادگیری، عملکرد خود را بهطور تطبیقی بهبود میبخشند. یادگیری عمیق یک شکل تخصصی از یادگیری ماشینی است.
یادگیری ماشینی چگونه کار می کند
یادگیری ماشینی از دو نوع تکنیک استفاده می کند: (1) یادگیری تحت نظارت (supervised learning) که مدلی را بر روی داده های ورودی و خروجی شناخته شده آموزش می دهد تا بتواند خروجی های آینده را پیش بینی کند و (2) یادگیری بدون نظارت (unsupervised learning) که الگوهای پنهان یا ساختارهای درونی را در داده های ورودی پیدا می کند.
شکل 1. تکنیک های یادگیری ماشینی شامل یادگیری بدون نظارت و تحت نظارت است.
یادگیری تحت نظارت
یادگیری ماشینی تحت نظارت مدلی را ایجاد می کند که در صورت عدم قطعیت، بر اساس شواهد پیش بینی می کند. یک الگوریتم یادگیری تحت نظارت مجموعه ای شناخته شده از داده های ورودی و پاسخ های شناخته شده به داده ها (خروجی) را می گیرد و مدلی را برای ایجاد پیش بینی های معقول برای پاسخ به داده های جدید آموزش می دهد. اگر دادههای شناختهشدهای برای خروجیهایی که میخواهید پیشبینی کنید، دارید، از یادگیری تحت نظارت استفاده کنید.
یادگیری تحت نظارت از تکنیک های طبقه بندی و رگرسیون برای توسعه مدل های یادگیری ماشینی استفاده می کند.
“تکنیکهای طبقهبندی” پاسخهای مجزا را پیشبینی میکنند. برای مثال، “اینکه آیا یک ایمیل واقعی است یا هرزنامه” و یا اینکه “آیا یک تومور سرطانی است یا خوشخیم”. مدلهای طبقهبندی، دادههای ورودی را به دستههایی طبقهبندی میکنند. کاربردهای معمولی شامل تصویربرداری پزشکی، تشخیص گفتار و امتیازدهی اعتباری (credit scoring) است.
اگر دادههای شما را میتوان برچسبگذاری کرد، دستهبندی کرد و یا به گروهها یا کلاسهای خاصی تفکیک کرد، از “طبقهبندی” استفاده کنید. به عنوان مثال، برنامه های کاربردی برای تشخیص دست نوشته از طبقه بندی برای تشخیص حروف و اعداد استفاده می کنند. در پردازش تصویر و بینایی کامپیوتری، از تکنیکهای تشخیص الگوی بدون نظارت برای تشخیص اشیا و تقسیمبندی تصویر استفاده میشود.
“تکنیکهای رگرسیون” پاسخهای پیوسته را پیشبینی میکنند. برای مثال، اندازه گیری دشوار مقادیر فیزیکی مانند وضعیت شارژ باتری، بار الکتریکی روی شبکه یا قیمت داراییهای مالی. کاربردهای معمولی شامل سنجش مجازی، پیش بینی بار الکتریکی و تجارت الگوریتمی است.
اگر با یک محدوده داده کار می کنید یا ماهیت پاسخ شما یک عدد واقعی است، مانند دما یا زمان تا خرابی یک قطعه از تجهیزات، از تکنیک های رگرسیون استفاده کنید.
یادگیری بدون نظارت
یادگیری بدون نظارت الگوهای پنهان یا ساختارهای درونی را در داده ها پیدا می کند. برای استنتاج از مجموعه داده های متشکل از داده های ورودی بدون پاسخ های برچسب دار استفاده می شود.
“خوشه بندی” رایج ترین تکنیک یادگیری بدون نظارت است. از آن برای تجزیه و تحلیل داده های اکتشافی برای یافتن الگوهای پنهان یا گروه بندی در داده ها استفاده می شود. برنامه های کاربردی برای تجزیه و تحلیل خوشه ای شامل تجزیه و تحلیل توالی ژن، تحقیقات بازار، و تشخیص اشیا است.
برای مثال، اگر یک شرکت تلفن همراه بخواهد مکانهایی را که برجهای تلفن همراه میسازد بهینه کند، میتواند از یادگیری ماشینی برای تخمین تعداد خوشههایی از افراد متکی بر برجهای خود استفاده کند. یک تلفن در یک زمان تنها می تواند با یک برج صحبت کند، بنابراین تیم از الگوریتم های خوشه بندی برای طراحی بهترین مکان دکل های سلولی برای بهینه سازی دریافت سیگنال برای گروه ها یا خوشه های مشتریان خود استفاده می کند.
شکل 2. خوشهبندی، الگوهای پنهان را در دادههای شما پیدا میکند.
چگونه تصمیم می گیرید که از کدام الگوریتم یادگیری ماشینی استفاده کنید؟
انتخاب الگوریتم مناسب ممکن است طاقت فرسا به نظر برسد. ده ها الگوریتم یادگیری ماشینی تحت نظارت و بدون نظارت وجود دارد و هر کدام رویکرد متفاوتی برای یادگیری دارند.
بهترین روش یا یک سایز مناسب برای همه وجود ندارد. یافتن الگوریتم مناسب تا حدی فقط آزمون و خطا است. حتی دانشمندان داده بسیار با تجربه هم نمیتوانند بدون امتحان کردن الگوریتم، کار کنند. علاوه بر این انتخاب الگوریتم به اندازه و نوع دادهای که با آن کار میکنید، بینشهایی که میخواهید از دادهها به دست آورید و نحوه استفاده از آن بینشها نیز بستگی دارد.
در اینجا چند دستورالعمل برای انتخاب بین یادگیری ماشینی تحت نظارت و بدون نظارت وجود دارد:
- اگر نیاز به آموزش مدلی برای پیشبینی دارید، یادگیری تحت نظارت را انتخاب کنید، به عنوان مثال، ارزش آینده یک متغیر پیوسته، مانند دما یا قیمت سهام.
- اگر نیاز به کاوش در دادههای خود دارید و میخواهید مدلی را برای یافتن یک نمایش داخلی خوب، مانند تقسیم دادهها به خوشهها، آموزش دهید، یادگیری بدون نظارت را انتخاب کنید.
چرا یادگیری ماشینی اهمیت دارد؟
با افزایش داده های بزرگ، یادگیری ماشینی به یک تکنیک کلیدی برای حل مشکلات در چندین زمینه تبدیل شده است، مانند:
- خودرو
- هوافضا و دفاع
- تجهیزات پزشکی
- تجزیه و تحلیل ساخت و ساز
- پردازش سیگنال
داده های بیشتر، سوالات بیشتر، پاسخ های بهتر
الگوریتمهای یادگیری ماشینی الگوهای طبیعی را در دادهها پیدا میکنند که بینش ایجاد میکنند و به شما کمک میکنند تصمیمها و پیشبینیهای بهتری بگیرید. آنها هر روز برای تصمیم گیری های مهم در تشخیص پزشکی، معاملات سهام، پیش بینی بار انرژی و موارد دیگر استفاده می شوند. برای مثال، سایتهای رسانهای برای بررسی میلیونها گزینه برای ارائه توصیههای آهنگ یا فیلم به یادگیری ماشینی متکی هستند. خرده فروشان از آن برای به دست آوردن بینشی در مورد رفتار خرید مشتریان خود استفاده می کنند.
چه زمانی باید از یادگیری ماشینی استفاده کرد؟
زمانی که یک کار پیچیده یا مشکلی دارید که شامل مقدار زیادی داده و متغیرهای زیادی است، اما فرمول یا معادله موجود ندارید، از یادگیری ماشینی استفاده کنید.
تفاوت بین یادگیری ماشینی و یادگیری عمیق چیست؟
یادگیری عمیق (Deep Learning) یک شکل تخصصی از یادگیری ماشینی (Machine Learning) است. گردش کار یادگیری ماشینی با استخراج دستی ویژگیهای مرتبط از تصاویر شروع میشود. سپس از ویژگی ها برای ایجاد مدلی استفاده می شود که اشیاء موجود در تصویر را دسته بندی می کند. با یک گردش کار یادگیری عمیق، ویژگی های مرتبط به طور خودکار از تصاویر استخراج می شوند. علاوه بر این، یادگیری عمیق “یادگیری سرتاسر (end-to-end learning)” را انجام می دهد. جایی که به یک شبکه، داده های خام و وظایفی (مانند طبقه بندی) داده می شود، و یاد می گیرد که چگونه این کار را به طور خودکار انجام دهد.
شکل 4. مقایسه فرآیندهای طبقه بندی وسایل نقلیه با استفاده از یادگیری ماشینی و یادگیری عمیق.
در یادگیری ماشینی، شما به صورت دستی ویژگی ها و یک طبقه بندی کننده را برای مرتب سازی تصاویر انتخاب می کنید. با یادگیری عمیق، مراحل استخراج ویژگی و مدل سازی به صورت خودکار انجام می شود.
انتخاب بین یادگیری ماشینی و یادگیری عمیق
یادگیری ماشینی تکنیکها و مدلهای مختلفی را ارائه میدهد که میتوانید بر اساس برنامه کاربردی، اندازه دادههایی که در حال پردازش هستید و نوع مشکلی که میخواهید حل کنید، انتخاب کنید. یک برنامه یادگیری عمیق موفق به مقدار بسیار زیادی داده (هزاران تصویر) برای آموزش مدل و همچنین GPU یا واحدهای پردازش گرافیکی (graphics processing units) برای پردازش سریع داده های شما نیاز دارد.
هنگام انتخاب بین یادگیری ماشینی و یادگیری عمیق، در نظر بگیرید که آیا یک GPU با عملکرد بالا و داده های برچسب گذاری شده زیادی دارید یا خیر. اگر هیچ یک از این موارد را ندارید، ممکن است به جای یادگیری عمیق از یادگیری ماشینی استفاده کنید. یادگیری عمیق عموماً پیچیدهتر است، بنابراین برای دریافت نتایج قابل اعتماد به حداقل چند هزار تصویر نیاز دارید.
اگر یادگیری ماشینی را انتخاب میکنید، میتوانید مدل خود را بر روی بسیاری از طبقهبندیکنندههای مختلف آموزش دهید. همچنین ممکن است بدانید که کدام ویژگی ها را استخراج کنید که بهترین نتایج را به همراه دارد. به علاوه، شما همچنین انعطاف پذیری برای انتخاب ترکیبی از رویکردها، استفاده از طبقهبندیکنندهها و ویژگیهای مختلف دارید تا ببینید کدام آرایش برای دادههای شما بهتر عمل میکند.