هوش مصنوعی حوزهای بزرگ و پیچیده با اکوسیستم گستردهای از اصطلاحات، عبارات و مفاهیم است که وقتی توسط فنآوران و دیگر متخصصان مورد توجه قرار میگیرد، میتواند ترسناک باشد.
هوش مصنوعی اغلب در فرهنگ عامه به عنوان کلمهای فراگیر به معنای هر نوع ماشین هوشمند استفاده میشود. در واقعیت، هوش مصنوعی، یادگیری ماشینی و یادگیری عمیق اصطلاحاتی متمایز با تفاوتهای ظریف هستند.
یادگیری عمیق در مقابل یادگیری ماشینی
یادگیری ماشینی زیرمجموعهای از هوش مصنوعی است. به نوبه خود، یادگیری عمیق زیر مجموعهای از یادگیری ماشینی است. اساسا تمام یادگیریهای عمیق، یادگیری ماشینی است، و همه یادگیریهای ماشینی، هوش مصنوعی هستند، اما همه هوشهای مصنوعی، یادگیری ماشینی نیستند.
یادگیری عمیق چیست؟
یادگیری عمیق زیرمجموعه ای از یادگیری ماشینی است که از شبکههای عصبی مصنوعی برای پردازش و تجزیهوتحلیل اطلاعات استفاده میکند. شبکههای عصبی از گرههای محاسباتی تشکیل شدهاند که در الگوریتم های یادگیری عمیق لایهبندی شدهاند.
هر لایه شامل یک لایه ورودی، یک لایه خروجی و یک لایه پنهان است. شبکه عصبی از دادههای آموزشی تغذیه میکند که به الگوریتم کمک میکند تا دقت را یاد بگیرد و بهبود بخشد. هنگامی که یک شبکه عصبی از سه یا چند لایه تشکیل شده باشد، گفته میشود که “عمیق” است، بنابراین یادگیری عمیق است.
الگوریتمهای یادگیری عمیق از عملکرد مغز انسان الهام گرفته شده و برای تجزیهوتحلیل دادهها با ساختار منطقی استفاده میشود. یادگیری عمیق در بسیاری از کارهایی که امروزه به عنوان هوش مصنوعی فکر میکنیم، از جمله تشخیص تصویر و گفتار، تشخیص اشیا و پردازش زبان طبیعی استفاده میشود. یادگیری عمیق میتواند همبستگیهای غیرخطی و پیچیده را در مجموعه دادهها ایجاد کند، اگرچه به دادههای آموزشی و منابع محاسباتی بیشتری نسبت به یادگیری ماشین نیاز دارد.
برخی از انواع رایج شبکههای عصبی مورد استفاده برای یادگیری عمیق عبارتند از:
- شبکههای عصبی پیشخور (FF) یکی از قدیمیترین اشکال شبکههای عصبی هستند که دادهها از طریق لایههای نورونهای مصنوعی تا زمانی که خروجی به دست میآیند، از یک طرف جریان مییابند.
- شبکههای عصبی بازگشتی (RNN) با شبکههای عصبی پیشخور تفاوت دارند زیرا معمولا از دادههای سری زمانی یا دادههایی که شامل دنبالهها هستند استفاده میکنند. شبکههای عصبی مکرر دارای «حافظه» از آنچه در لایه قبلی رخ داده است، مشروط به خروجی لایه فعلی هستند.
- حافظه بلند/کوتاهمدت (LSTM) شکل پیشرفته ای از RNN است که میتواند از حافظه برای “به خاطر سپردن” آنچه در لایههای قبلی رخ داده است استفاده کند.
- شبکههای عصبی کانولوشن (CNN) شامل برخی از رایجترین شبکههای عصبی در هوش مصنوعی مدرن هستند و از چندین لایه مجزا (یک لایه کانولوشن، سپس یک لایه ادغام) استفاده میکنند که قسمتهای مختلف یک تصویر را قبل از قرار دادن مجدد در کنار هم (در حالت کاملا متصل) فیلتر میکنند.
- شبکههای متخاصم مولد (GAN) شامل دو شبکه عصبی (یک «مولد» و یک «تبعیضکننده») است که در یک بازی با یکدیگر رقابت میکنند که در نهایت دقت خروجی را بهبود میبخشد.
یادگیری ماشینی چیست؟
یادگیری ماشینی زیرمجموعهای از هوش مصنوعی است که سیستم را قادر میسازد تا به طور مستقل یاد بگیرد و بدون برنامهریزی صریح پیشرفت کند. الگوریتمهای یادگیری ماشینی با شناسایی الگوها و دادهها و پیشبینیهایی که دادههای جدید وارد سیستم میشوند، کار میکنند.
به طور کلی اغلب در یادگیری ماشین از سه نوع مدل استفاده میشود: تحت نظارت، بدون نظارت، و تقویت.
یادگیری تحت نظارت
یادگیری تحت نظارت یک مدل یادگیری ماشینی است که از داده های آموزشی برچسبگذاری شده (دادههای ساختاریافته) برای ترسیم یک ورودی خاص به یک خروجی استفاده میکند. در یادگیری تحت نظارت، خروجی شناخته شده است (مانند تشخیص تصویر یک سیب) و مدل بر روی دادههای خروجی شناخته شده آموزش داده میشود. به زبان ساده، برای آموزش الگوریتم برای تشخیص تصاویر سیب، به آن عکسهایی با برچسب سیب بدهید.
رایج ترین الگوریتم های یادگیری تحت نظارت که امروزه استفاده میشود عبارتند از:
- Linear regression
- Polynomial regression
- K-nearest neighbors
- Naive Bayes
- Polynomial regression
- Decision trees
یادگیری بدون نظارت
یادگیری بدون نظارت یک مدل یادگیری ماشینی است که از دادههای بدون برچسب (دادههای بدون ساختار) برای یادگیری الگوها استفاده میکند. برخلاف یادگیری تحت نظارت، خروجی از قبل مشخص نیست.
در عوض، الگوریتم از دادهها بدون ورودی انسانی (بنابراین، بدون نظارت) یاد میگیرد و آنها را بر اساس ویژگیها به گروههایی دستهبندی میکند. به عنوان مثال، اگر به الگوریتم تصاویری از سیب و موز داده شود، به خودی خود کار خواهد کرد که کدام تصویر یک سیب و کدام یک موز است. یادگیری بدون نظارت در مدل سازی توصیفی و تطبیق الگو خوب است.
رایجترین الگوریتمهای یادگیری بدون نظارت که امروزه استفاده میشود عبارتند از:
- Fuzzy means
- K-means clustering
- Hierarchical clustering
- Principal component analysis
- Partial least squares
یک رویکرد ترکیبی یادگیری ماشینی به نام یادگیری نیمهنظارتی نیز اغلب استفاده میشود، که در آن فقط برخی از دادهها برچسبگذاری میشوند. در یادگیری نیمهنظارتی، الگوریتم باید نحوه سازماندهی و ساختار دادهها را برای دستیابی به یک نتیجه شناخته شده بیابد. به عنوان مثال، به مدل یادگیری ماشین گفته میشود که نتیجه نهایی یک سیب است، اما فقط برخی از دادههای آموزشی به عنوان یک سیب برچسبگذاری میشوند.
یادگیری تقویتی
یادگیری تقویتی یک مدل یادگیری ماشینی است که میتواند از طریق یک سری آزمایشهای آزمایشی و خطا به عنوان “یادگیری با انجام” توصیف شود. یک “عامل” یاد میگیرد که یک کار تعریفشده را از طریق یک حلقه بازخورد انجام دهد تا زمانی که عملکرد آن در محدوده مطلوب باشد.
عامل زمانی که وظیفه را به خوبی انجام میدهد تقویت مثبت و زمانی که عملکرد ضعیفی دارد تقویت منفی دریافت میکند. نمونهای از یادگیری تقویتی زمانی است که محققان گوگل یک الگوریتم یادگیری تقویتی را برای اجرای بازی Go آموزش دادند. این مدل هیچ دانش قبلی از قوانین Go نداشت و به سادگی قطعات را به صورت تصادفی جابهجا میکرد و بهترین نتایج را در حین آموزش الگوریتم «یاد گرفت» تا جایی که مدل یادگیری ماشینی میتوانست یک بازیکن انسانی را در بازی شکست دهد.
هوش مصنوعی در مقابل یادگیری ماشینی در مقابل یادگیری عمیق
هوش مصنوعی، یادگیری ماشینی و یادگیری عمیق اغلب به صورت مترادف در هنگام بحث درباره همه چیزهای هوش مصنوعی استفاده میشوند. در حالی که اصطلاحات آنها بههم مرتبط هستند، اما این مفاهیم قابل جایگزینی نیستند.
در حالیکه هوش مصنوعی یک زمینه گسترده است، یادگیری ماشینی یک کاربرد هوش مصنوعی است که به ماشینها اجازه میدهد بدون برنامهریزی خاص یاد بگیرند. یادگیری ماشینی به طور واضحتر به عنوان ابزاری برای استخراج دانش از دادهها از طریق روشهای سادهتر مانند درخت تصمیم یا رگرسیون خطی استفاده میشود، در حالیکه یادگیری عمیق از روشهای پیشرفتهتر موجود در شبکههای عصبی مصنوعی استفاده میکند.
یادگیری عمیق به مداخله انسانی کمتری نیاز دارد، زیرا ویژگیهای یک مجموعه داده به طور خودکار استخراج میشوند، در مقابل تکنیکهای یادگیری ماشینی سادهتر که اغلب به مهندس نیاز دارند تا ویژگیها و طبقهبندیکنندههای دادهها را به صورت دستی شناسایی کند و الگوریتم را بر این اساس تنظیم کند. اساسا یادگیری عمیق میتواند از اشتباهات خود درس بگیرد در حالی که یادگیری ماشینی به مداخله انسانی نیاز دارد.
یادگیری عمیق همچنین به دادههای بسیار بیشتری نسبت به یادگیری ماشینی نیاز دارد که به نوبه خود به قدرت محاسباتی بسیار بیشتری نیاز دارد. یادگیری ماشینی معمولا با سرورهایی که CPU دارند انجام میشود، در حالی که یادگیری عمیق اغلب به تراشههای قویتری مانند GPU نیاز دارد.
منبع : coursera