زمان تخمینی مطالعه: 12 دقیقه

یادگیری ماشینی چیست؟

یادگیری ماشین شاخه‌ای از هوش مصنوعی (AI) و علوم کامپیوتر است که بر استفاده از داده‌ها و الگوریتم‌ها برای تقلید از روشی است که انسان‌ها یاد می‌گیرند و به تدریج دقت یادگیری خود را بهبود می‌بخشد. شرکت آی بی ام(IBM) سابقه‌ای غنی در زمینه یادگیری ماشین دارد. آرتور ساموئل، ابداع کننده عبارت “Machine Learning” است. طی پیشرفت‌های رخ داده در چند دهه گذشته، پیشرفت‌های تکنولوژیکی در زمینه ذخیره‌سازی و قدرت پردازش، برخی از محصولات نوآورانه مبتنی بر یادگیری ماشین، مانند موتور توصیه‌ای نتفلیکس و خودروهای خودران را ممکن ساخته است.

ماشین لرنینگ جزء مهمی از حوزه رو به رشد علم داده است. از طریق استفاده از روش‌های آماری، الگوریتم‌ها برای طبقه‌بندی یا پیش‌بینی و کشف بینش‌های کلیدی در پروژه‌های داده کاوی آموزش داده می‌شوند. این بینش‌ها متعاقباً تصمیم‌گیری را در برنامه‌ها و کسب‌وکارها هدایت می‌کنند و به طور ایده‌آل بر معیارهای رشد کلیدی تأثیر می‌گذارند. با ادامه گسترش و رشد داده‌های بزرگ، تقاضای بازار برای دانشمندان داده جدید افزایش می‌یابد. امروزه از آنها خواسته می‌شود تا به شناسایی سؤالات و مرتبط‌ترین پاسخ‌های تجاری و همچنین داده‌های نشان دهنده پاسخ‌ها به آنها کمک کنند.

الگوریتم‌های یادگیری ماشین معمولاً با استفاده از چارچوب‌هایی مانند پایتون ایجاد می‌شوند که توسعه راه‌حل را با استفاده از پلتفرم‌هایی مانند TensorFlow یا PyTorch تسریع می‌کنند.

یادگیری ماشینی، یادگیری عمیق، شبکه‌های عصبی

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

تفاوت یادگیری عمیق و یادگیری ماشین در نحوه یادگیری هر الگوریتم است. یادگیری ماشین «عمیق» می‌تواند از مجموعه داده‌های برچسب‌گذاری‌ شده، که به عنوان یادگیری با نظارت نیز شناخته می‌شود، برای اطلاع‌رسانی الگوریتم خود استفاده کند، اما لزوماً به یک مجموعه داده برچسب‌دار نیاز ندارد. فرآیند یادگیری عمیق می‌تواند داده‌های بدون ساختار را به شکل خام (مثلاً متن یا تصاویر) دریافت کند و می‌تواند به طور خودکار مجموعه‌ای از ویژگی‌هایی را تعیین کند که دسته‌های مختلف داده‌ها را از یکدیگر متمایز می‌کند. این امر برخی از مداخلات انسانی مورد نیاز را حذف می کند و امکان استفاده از مقادیر زیادی از داده‌ها را فراهم می‌کند. همانطور که لکس فریدمن(Lex Fridman) در سخنرانی خود در MIT اشاره می‌کند، می‌توانید یادگیری عمیق را به عنوان “یادگیری ماشین مقیاس پذیر” در نظر بگیرید.

یادگیری ماشین کلاسیک یا “غیر عمیق” بیشتر به مداخله انسان برای یادگیری وابسته است. متخصصان انسانی مجموعه‌ای از ویژگی‌ها را برای درک تفاوت بین ورودی‌های داده تعیین می‌کنند که معمولاً برای یادگیری به داده‌های ساختاریافته بیشتری نیاز دارند.

شبکه‌های عصبی یا شبکه‌های عصبی مصنوعی (ANN) از لایه‌های متصل گرهی تشکیل شده‌اند که شامل یک لایه ورودی، یک یا چند لایه پنهان و یک لایه خروجی است. هر گره یا نورون مصنوعی به دیگری متصل می‌شود و دارای وزن و آستانه مرتبط است. اگر خروجی هر گره فردی بالاتر از مقدار آستانه مشخص شده باشد، آن گره فعال می‌شود و داده‌ها را به لایه بعدی شبکه ارسال می‌کند. در غیر این صورت، هیچ داده‌ای توسط آن گره به لایه بعدی شبکه منتقل نمی‌شود. عبارت “عمیق” در یادگیری عمیق فقط به تعداد لایه‌های یک شبکه عصبی اشاره دارد. یک شبکه عصبی که از بیش از سه لایه تشکیل شده است(شامل ورودی و خروجی) می‌تواند یک الگوریتم یادگیری عمیق یا یک شبکه عصبی عمیق در نظر گرفته شود. یک شبکه عصبی که فقط سه لایه دارد، فقط یک شبکه عصبی اولیه است. در حالت کلی یادگیری عمیق و شبکه‌های عصبی باعث تسریع پیشرفت در زمینه‌هایی مانند بینایی رایانه، پردازش زبان طبیعی و تشخیص گفتار می‌شوند.

یادگیری ماشین چگونه کار می‌کند؟

بر طبق تعریف UC Berkeley سیستم یادگیری یک الگوریتم یادگیری ماشین را به سه بخش اصلی تقسیم می‌کند.

  1. فرآیند تصمیم گیری: به طور کلی، الگوریتم‌های یادگیری ماشین برای پیش‌بینی یا طبقه‌بندی استفاده می‌شود. بر اساس برخی از داده‌های ورودی، که می‌توانند دارای برچسب یا بدون برچسب باشند، الگوریتم شما تخمینی در مورد یک الگو در داده‌ها ایجاد می‌کند.
  2. تابع خطا: یک تابع خطا پیش‌بینی مدل را ارزیابی می‌کند. اگر نمونه‌های شناخته شده وجود داشته باشد، یک تابع خطا می‌تواند مقایسه‌ای برای ارزیابی دقت مدل انجام دهد.
  3. فرآیند بهینه سازی مدل: اگر مدل بتواند بهتر با نقاط داده در مجموعه آموزشی تناسب داشته باشد، وزن‌ها برای کاهش اختلاف بین مثال شناخته شده و برآورد مدل تنظیم می‌شوند. الگوریتم این فرآیند تکراری “ارزیابی و بهینه‌سازی” را تکرار می‌کند و وزن‌ها را به طور مستقل تا رسیدن به آستانه دقت به روز می‌کند.

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

متدهای یادگیری ماشینی به سه دسته اصلی تقسیم می‌شوند که در ادامه مورد بررسی قرار می‌گیرند:

– یادگیری ماشینی با ناظر(Supervised Machine Learning)

یادگیری با نظارت، که به عنوان یادگیری ماشین نظارت شده نیز شناخته می‌شود، با استفاده از مجموعه داده‌های برچسب‌گذاری شده برای آموزش الگوریتم‌ها برای طبقه‌بندی داده‌ها یا پیش‌بینی دقیق نتایج تعریف می‌شود. همانطور که داده‌های ورودی به مدل وارد می‌شود، مدل وزن خود را تا زمانی که به طور مناسب برازش داده شود تنظیم می‌کند. این به عنوان بخشی از فرآیند اعتبار سنجی متقاطع برای اطمینان از اینکه مدل از برازش بیش از حد یا عدم تناسب اجتناب می‌کند، رخ می‌دهد. یادگیری با نظارت به سازمان‌ها کمک می‌کند تا انواع مشکلات دنیای واقعی را حل کنند، مانند طبقه‌بندی هرزنامه‌ها در یک پوشه جداگانه از صندوق پست الکترونیک. برخی از روش‌های مورد استفاده در یادگیری نظارت شده عبارتند از: شبکه‌های عصبی، نیوی بیز(naïve bayes)، رگرسیون خطی، رگرسیون لجستیک، جنگل تصادفی(Random Forest) و ماشین بردار پشتیبان (SVM).

یادگیری ماشینی بدون ناظر (Unsupervised machine learning)

یادگیری بدون نظارت، که به عنوان یادگیری ماشین بدون ناظر نیز شناخته می‌شود، از الگوریتم‌های یادگیری ماشین برای تجزیه و تحلیل و خوشه‌بندی مجموعه داده‌های بدون برچسب (زیر مجموعه‌هایی به نام خوشه‌ها) استفاده می‌کند. این الگوریتم‌ها الگوهای پنهان یا گروه‌بندی داده‌ها را بدون نیاز به دخالت انسان کشف می‌کنند. توانایی این روش در کشف شباهت‌ها و تفاوت‌ها در اطلاعات، آن را برای تجزیه و تحلیل داده‌های اکتشافی، استراتژی‌های فروش متقابل، تقسیم‌بندی مشتری، و تشخیص تصویر و الگو ایده‌آل می‌کند. همچنین برای کاهش تعداد ویژگی‌های یک مدل از طریق فرآیند کاهش ابعاد استفاده می‌شود. تجزیه و تحلیل مؤلفه اصلی (PCA) و تجزیه ارزش منفرد (SVD) دو رویکرد رایج برای این کار هستند. سایر الگوریتم‌های مورد استفاده در یادگیری بدون ناظر شامل شبکه‌های عصبی، خوشه‌بندی k-means و روش‌های خوشه‌بندی احتمالی است.

– یادگیری نیمه نظارتی(Semi-supervised learning)

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

– یادگیری ماشین تقوتی(Reinforcement machine learning)

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

الگوریتم‌های رایج یادگیری ماشین

برخی از الگوریتم‌های یادگیری ماشین معمولا بسیار پر استفاده هستند که شامل موارد زیر می‌باشند:

مزایا و معایب الگوریتم‌های یادگیری ماشین

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

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

موارد استفاده از یادگیری ماشین در دنیای واقعی

در اینجا فقط چند نمونه از کاربردهای یادگیری ماشینی وجود دارد که ممکن است هر روز با آنها روبرو شوید:

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *