مقدمه مقاله تفاوت یادگیری ماشین و یادگیری عمیق چیست
وقتی به مطالعه اخبار مربوط به هوش مصنوعی میپردازم این سؤال برایم پیش میآید که آیا چند سال بعد، انسان قادر به تولید ابر سیستمهای کنترل هوشمند، خواهد بود؟ آیا رباتها، دنیای واقعی را فرا خواهند گرفت؟ چند وقت پیش، در یکی از سایتهای خبری خواندم که نوشته بود؛ هوش مصنوعی شروع بیماریهای نادر حرکتی مثل MS را ردیابی میکند. در جایی دیگر، خواندم که نوشته بود؛ با استفاده از هوش مصنوعی، میتوان احتمال ابتلای افراد به امراض خاص را پیش بینی کرد یا حتی در تلویزیون دیدم که با استفاده از فرآیند تشخیص چهره، چگونه از وقوع جرایم، پیشگیری میشود.
یکی از اصلیترین دلایل کشش محققین علوم کامپیوتر به سمت علوم هوش مصنوعی و یادگیری ماشین، کاربرد همه گیر آن در حوزههای پزشکی، فضایی، هوایی، نظامی، صنایع تولیدی و خدماتی، علوم و فنون، ترجمه، مهندسی و غیره میباشد که تحقیق در این زمینه، علاوه بر تولید دانش، نوعی خدمت به مردم نیز به شمار میرود و به دانشمندان این حوزه، حس خوب هدیه مینماید اما در این بین، سؤال اصلی این است که تفاوت یادگیری ماشین و یادگیری عمیق چیست؟! برای کشف پاسخ این پرسش، ابتدا باید با چند مفهوم ساده آشنا شوید که در ادامه، به آنها پرداختهایم.
هوش مصنوعی چگونه کار می کند؟
اگر بخواهیم یک تعریف ساده از هوش مصنوعی داشته باشیم؛ در واقع هوش مصنوعی به شاخهای از تکنولوژی گفته میشود که سعی دارد از تفکر انسانها تقلید کرده و به شبیه سازی بپردازد. پیشرفت هوش مصنوعی به دفعات فراوان، در زندگی روزمره هر کدام از ما مشاهده میشود. زمانی که به یک جست و جوی ساده در گوگل میپردازید یا حتی وقتی که در صفحات مجازی وقت میگذرانید؛ در واقع از هوش مصنوعی استفاده کردهاید. در فایل زیر میتوانید با کاربردهای هوش مصنوعی در زندگی روزمره آشنا شوید.
بر طبق نظریههای متخصصان کامپیوتر، هوش مصنوعی (Artificial intelligence) شاخهای از علوم کامپیوتر است که با هدف تولید ماشینهای هوشمند با قابلیت انجام وظایفی که نیازمند هوش انسانی است؛ مورد تحقیق و بررسی قرار میگیرد. به عبارت دیگر، هوش مصنوعی نوعی شبیه سازی هوش انسانی برای ماشین است و در واقع، علم AI ماشینها را به نحوی برنامه نویسی میکند که شبیه به انسان فکر کرده؛ از رفتار انسان تقلید نموده و در انجام اموراتی مانند حل مسئله و یادگیری، موفق عمل کنند. علم هوش مصنوعی در سه گروه هوش مصنوعی محدود، عمومی و سوپر هوش مصنوعی طبقه بندی میشود.
کاربرد الگوریتم های یادگیری ماشین
دوستان، اگر در این بخش از آموزش، از شما بپرسم که تفاوت یادگیری ماشین و یادگیری عمیق چیست؟؛ احتمالاً زود باشد و شما سؤالات دیگری داشته باشید که ابتدا باید به آن سؤالات پاسخ دهیم. مثلاً شاید از خود بپرسید که الگوریتمهای یادگیری ماشین چیست یا ماشین لرنینگ چه کاربردی دارد و سؤالهای بسیار زیادی از این قبیل که ممکن است ذهنتان را به خود درگیر کرده باشد. هیچ نگران نباشید که در این قسمت از آموزش، به پاسخ تمام ابهامات خود خواهید رسید اما قبل از همه چیز، اجازه دهید تا من یک سؤال از شما بپرسم. آیا تا به حال، به تماشای فیلمها و کارتونهای تخیلی نشستهاید؟
دوستان، چند روز قبل، زمانی که پا به پای پسر چهار ساله دوستم، یک انیمیشن تخیلی را تماشا میکردیم؛ او با تعجب از من پرسید که آیا ماشین هم فکر میکند؟ واقعاً دوستان، بیست سال پیش، آیا کسی باورش میشد که ماشین ساخته دست انسان، بتواند یک مسابقه فوتبال را تفسیر کند؟ در سال ۱۹۵۹، یک محقق علوم کامپیوتر به نام آرتور ساموئل، مفهوم ML را تعریف کرد. بر طبق این مفهوم، با الهام گرفتن از روش یادگیری مغز انسان، هر رایانهای میتواند با استفاده از انواع الگوها، الگوریتمها و دادههای عظیم، شروع به یادگیری نماید.
یادگیری ماشین، خود شاخهای هوش مصنوعی میباشد که انواع روشهای آن (Learning styles) در سه گروه زیر، طبقه بندی میشوند:
یادگیری نظارت شده یا تحت نظارت (Supervised Learning)
در این سبک یادگیری، دادههای ورودی و خروجیهای ماشین، از قبل تعیین شده است و ماشین تحت تعلیم، الگویی را که نیاز است تا ورودی را به خروجی موردنظر برساند؛ آموزش میبیند. مثال: یادگیری با استفاده از دادههای برچسب گذاری شده توسط انسان. برای مثال، داخل یک کیسه، تعدادی مهره قرار داده و مهرههای سفید را ۰ و مهرههای سیاه را ۱ برچسب گذاری میکنیم. به این ترتیب، ماشین با مشاهده عدد ۱ متوجه میشود که رنگ آن مهره سیاه است و برعکس. انواع الگوریتمهای نظارتی یادگیری ماشین و کاربرد هر کدام، به ترتیب، در ادامه آورده شده است.
۱- روش رگرسیون یا Regression
در این روش، ماشین یک مقدار خروجی مشخص را با استفاده از دادههای آموزش (Training data) پیش بینی میکند. برای مثال، در روش رگرسیون لجستیک (Logistic Regression) ماشین قادر خواهد بود، مقادیر گسسته بر اساس مجموعهای از متغیرهای مستقل را با استفاده از یک Flag تخمین بزند. به این ترتیب، ماشین میتواند طی فرآیند یادگیری، احتمالات، مثل پیشبینی احتمال خطر ابتلا به سرطان را پیش بینی کند. جهت مطالعه الگوریتمهای مهم یادگیری ماشین به لینک زیر مراجعه کنید.
۲- طبقه بندی یا Classification
طبقه بندی (Classification) به منظور تصمیم گیری، بین یک یا چند گزینه انجام میگیرد. به این ترتیب که طی این فرآیند، ماشین در یک کلاس، گروه بندی خروجی را انجام داده و به این ترتیب، از بین گزینههای ممکن، با استفاده از قوانین و اصول طبقه بندی، یک یا چند انتخاب را گزینش مینماید. اگر ماشین در طی فرآیند یادگیری، سعی کند تا ورودی را در دو کلاس برچسب گذاری نماید؛ از روش طبقه بندی باینری استفاده کرده است اما اگر، فرآیند انتخاب، بین بیش از دو کلاس، انجام شود؛ از الگوریتم طبقه بندی چند کلاسه استفاده خواهد شد.
فرض کنید؛ ما از یک ماشین یادگیری میخواهیم تا به ما بگوید که آیا شخص موردنظر قادر به پرداخت اقساط وام بانکی خود خواهد بود یا نه! در این روش، بر اساس جدول طبقه بندی سن و میزان درآمد هر فرد، ماشین یادگیری به ما خواهد گفت که آیا شخص موردنظر توانایی پرداخت اقساط وام خود را خواهد داشت یا نه. برای فهم بیشتر، در ادامه جدول زیر، آورده شده است.
دوستان، شاید برایتان جالب باشد که بدانید؛ از جمله مهمترین کاربردهای روش طبقه بندی پردازش تصویر و تشخیص چهره و شناسایی انواع صداها از جمله صدای انسان میباشد. از دیگر کاربردهای این روش، فیلتر کردن شبکههای اجتماعی و ایمیلها، تشخیص اسپم، بررسی تأثیر داروها، بررسی و تشخیص تقلب و جعل و غیره میباشد.
۳- الگوریتم بیزین ساده یا Naive Bayesian
ماشین، در الگوریتم بیزین ساده تلاش میکند تا از دادههای بزرگ که در اصطلاح، کلان داده یا Big data نیز نامیده میشوند؛ آموزش ببیند و قادر باشد تا دادههایی را با ابعاد بزرگ، تجزیه و تحلیل کند. این روش، از نمودارهای غیر چرخهای مستقیم با یک والدین (Parent) و چند فرزند (Child) تشکیل شده است.
۴- الگوریتم جنگل تصادفی یا Random Forest
از مدل جنگل تصادفی، به عنوان یک روش مجموعه ای، با ساختن تعداد زیادی درخت تصمیم (Decision Tree) و طبقهبندی درختان منفرد برای یادگیری ماشین استفاده میشود که از آن در بازار بورس، تجارت الکترونیک، پزشکی و بانکداری استفادههای فراوان شده است.
۵- شبکه عصبی یا Neural Networks
همان طور که از نام آن پیداست؛ شبکه عصبی مصنوعی (NN) با الهام از عملکرد شبکههای عصبی در داخل مغز ما انسانها، به عنوان یک مدل محاسباتی عمل میکند و در یادگیری ماشین، وظیفه پردازش اطلاعات را بر عهده دارد. کاربرد مدل شبکه عصبی به دفعات در مهندسی پزشکی، مهندسی برق، مهندسی عمران، پردازش تصویر، مخابرات و غیره مشاهده شده است.
طرز استفاده ماشین از شبکههای عصبی بر طبق تعریف دکتر هچ نیلسن (Robert Hecht-Nielsen) به این ترتیب است که در طی فرآیند این الگوریتم، یک سیستم محاسباتی متشکل از المانهای پردازشی ساده و متصل، به روش پاسخ وضعیت دینامیکی به ورودیهای خارجی، به پردازش و تحلیل اطلاعات موجود میپردازد.
همراهان گرامی، فهم کامل هر کدام از این روشها است که تفاوت یادگیری ماشین و یادگیری عمیق را آشکار میکند. پس بادقت، ادامه این آموزش را هم مطالعه کنید.
الگوریتم یادگیری نظارتی (Support Vector Machine) محبوبترین الگوریتم این گروه میباشد. چرا که از آن، در روشهای طبقه بندی یا رگرسیون هم استفاده میشود. از جمله توانمندیهای الگوریتم SVM، این است که نه تنها در سطح کلان داده، موفق عمل کرده است بلکه میتواند به صورت مؤثر در حوزه مجموعه دیتاهای کوچک نیز مورد استفاده قرار گیرد.
از دیگر قابلیتهای ماشین بردار پشتیبان، میتوان به این نکته اشاره کرد که Svm میتواند مشاهدات جدید را دقیقاً هنگامی که الگوریتم بر روی یک مجموعه داده، آموزش داده میشود؛ به طور مؤثر طبقه بندی کند. به این ترتیب، با گذشت زمان و تکرار عملیات اجرایی در شرایط مشابه، دقت ماشین بردار پشتیبان افزایش پیدا کرده و نتایج دقیق تری را ارائه خواهد داد.
از جمله کاربردهای Svm ساخت ربات، کنترل سیستم فرآیند شیمیایی و دینامیکی، اکتشاف تقلب در کارتهای اعتباری، آزمایش اتاق اورژانس، سیستم آنالیز ریسک، کلاسه بندی انواع سلولها، میکروبها و نمونهها، بهینهسازی زمان پیوند اعضا، دستگاه کاشف زیر دریایی به وسیله امواج صوتی، کنترل هواپیما بدون خلبان، پیگیری هدف، بازبینی امضا، ردیابی انحراف هواپیما، مترجم لحظهای زبان، شبیهسازی مسیر، ارزیابی سرمایه، سیستم راهنمایی اتوماتیک اتومبیل، سیستمهای پردازش وجه مشتری، سیستمهای بازرسی کیفیت، پیشبینی شاخصهای اقتصادی، رادار، آنالیز کیفیت جوشکاری، آنالیز کیفیت کامپیوتر، مدیریت وجوه بیمه و غیره میباشد.
یادگیری بدون نظارت یا Unsupervised Learning
روش یادگیری بدون نظارت، مرا به یاد آزمونهای Open book دوران دانشگاه میاندازد. بله عزیزان! درست حدس زدهاید. Unsupervised Learning یک روش یادگیری ماشین است که در آن مدلها، بدون نظارت و مستقل، عمل میکنند و دیگر از هدایت شدن به وسیله مجموعه داده دارای برچسب، خبری نیست.
در این روش، مدلها مختارند تا با تجزیه و تحلیل دادهای، الگوهای پنهان مجموعه دیتاها را کشف کرده و نتایج را استخراج کنند. خوشه بندیهای سلسله مراتبی، خوشه بندی K-means، خوشه بندی مبتنی بر چگالی، K نزدیکترین همسایه، الگوریتم Apriori و غیره از جمله معروفترین متدهای یادگیری بدون نظارت هستند.
شما در طی یک آزمون ساده میتوانید به ماشین هوشمندی که بدون نظارت مربی، عمل میکند؛ عکسهایی از انسانها، گلها و انواع خودروها را بدهید و از آن بخواهید که ویژگیهای مشترک (Common features) بین عکسها را یافته و الگوی لازم برای دستهبندی مناسب با ویژگی مشترک را کشف کند. به این ترتیب، از روش یادگیری بدون نظارت استفاده کردهاید. اگر تصمیم به ارائه کلاسی خوب و بی نقص دارید پیشنهاد می کنیم نگاهی به فایل زیر بیندازید.
یادگیری تقویتی یا Reinforcement Learning
یادگیری تقویتی دقیقاً شبیه به کودکان خودسر به روش آزمون و خطا رفتار میکند. در طی این فرآیند، ماشین از انتخابهای خود و بازخوردها یا تجربههایی که کسب مینماید؛ درس میگیرد. همراهان گرامی، شاید برای شما هم پیش آمده باشد که چند وقت یک بار، در توئیتر اخباری را از رقابت بین انسان و ماشین مشاهده کرده باشید. پیروزی ماشین بر انسان در گیمهای کامپیوتری مثل گیم «گو»، تخته نرد و شطرنج با پیروی از الگوریتم یادگیری تقویتی امکان پذیر شده است. برای آشنایی با یادگیری تقویتی به لینک زیر مراجعه کنید.
یادگیری عمیق یعنی چه؟
عزیزان، برای پی بردن به تفاوت یادگیری ماشین و یادگیری عمیق، ابتدا باید با مفهوم یادگیری عمیق آشنا شوید. یادگیری عمیق (Deep Learning) به کامپیوترها آموزش میدهد که چگونه اعمال و رفتار طبیعی انسان که در یادگیری ماشین، اصطلاحاً مفاهیم انتزاعی سطح بالا (High-level abstract concepts) نامیده میشوند را در بازههای زمانی خاص، مدل نموده و به مرحله پیاده سازی برسانند.
برای این منظور، از روشهای مبتنی بر شبکههای عصبی مصنوعی (Artificial Neural Networks) طی فرآیندهای سلسله مراتبی (Hierarchical processes) استفاده میشود. جالب است بدانید که از شبکههای عصبی مصنوعی، برای شبیه سازی مغز جانداران استفاده میشود.
یکی از اساتید باتجربه دوران دانشگاه بنده، یادگیری عمیق را یادگیری ژرف نیز خطاب میکرد و در روش تدریس خود، برای یادگیری عمیق، از یک گراف (Graph)، متشکل از چند لایه پردازشی اطلاعات با تبدیلهای خطی و غیرخطی (Linear and non-linear transforms) و Nodeها یا گرههای ارتباطی توزیع شده در سیستمهای بیولوژیکی (Biological systems) استفاده مینمود.
یادگیری عمیق، به دلیل استفاده از لایههای پردازشی گسترده، توانایی استخراج خودکار ویژگیهای دادهای را متناسب با صورت مسئله داشته و به همین دلیل، قدرت تشخیص و دقت بالایی دارد. این سطح از دقت به وسایل الکترونیکی و هوشمند این امکان را میدهد که پاسخگوی ۹۰ درصد یا در بیشتر مواقع ۱۰۰ درصد انتظارات کاربران باشند. به عنوان مثال، خودروهای بدون راننده شرکت تسلا (Tesla Inc)، که اصطلاحاً خودران (Autonomous cars) نیز نامیده میشوند با استفاده از دسته بندی و پردازش هزاران داده و تصویر، در رانندگی، بهتر از انسانها عمل میکنند.
تفاوت بین هوش مصنوعی و یادگیری ماشین و یادگیری عمیق
مخاطبین عزیز پی استور، در این بخش از آموزش به چند نتیجه گیری مهم خواهیم پرداخت. اولاً این که هوش مصنوعی یک علم از مجموعه علوم کامپیوتر است که یادگیری ماشین زیرمجموعه این تکنولوژی عظیم میباشد اما یادگیری عمیق نیز، زیرشاخه یا زیرمجموعهای از یادگیری ماشین است.
در واقع، AI علمی است که ماشین را قادر میسازد تا رفتار انسان را شبیه سازی کند. ماشین لرنینگ با هدف ارائه برنامه کاربردی AI به ماشین، توانایی تجزیه و تحلیل و آموزش اطلاعات را میدهد و یادگیری ماشین، به رایانه کمک میکند تا مسائل پیچیده تری را حل کند. بنابراین مجموعه این علوم، به عنوان مکمل برای یکدیگر عمل میکنند. در هوش مصنوعی، صرفاً شبیه سازی رفتار انسان موردنظر است؛ در حالی که در یادگیری ماشین، هدف شبیه سازی یا تقلید از چگونگی یادگیری انسان است. دیپ لرنینگ نیز هوش انسان را در حالت پیشرفته تقلید میکند.
به عنوان مثال، در خودروهای خودران که با تکیه بر تکنولوژی دیپ لرنینگ، به مرحله تولید رسیدهاند؛ قبل از حرکت کردن باید به خوبی آگاه باشند که در اطرافشان چه میگذرد و این آگاهی، حاصل یادگیری عمیق ماشین هوشمند است. امیدوارم با این توضیحات به طور کامل، به تفاوت یادگیری ماشین و یادگیری عمیق نیز پی برده باشید و بتوانید این دو موضوع را به درستی از یکدیگر، تفکیک کنید.
یک پاسخ
مطالب بسیار خوب و مفید بودن در حد پنج ستاره. فقط یه سئوال برام پیش اومده که خاطرات برای هوش مصنوعی چه مفهومی داره و مرور خاطرات و یاد آوری خاطرات از چه زمانی شروع میشه و آیا هوش مصنوعی قادر به پردازش خاطرات هست.اگر این کارو چطور وبا چه اطلاعاتی انجام میده.این خاطرات شیرین و یا تلخ هستن .چون خاطرات مربوط به اشخاص دیگه هست. مرسی