هوش مصنوعی (Artificial Intelligence) و یادگیری ماشین (Machine Learning) دو اصطلاحی هستند که معمولاً به جای هم استفاده میشوند. اما این دو اصطلاح یکسان نیستند. هوش مصنوعی رشتهای است که دارای زیرشاخههای زیادی از جمله یادگیری ماشین است. در این مقاله میخواهیم به طور جامع به بررسی تفاوت بین هوش مصنوعی و یادگیری ماشین بپردازیم و الگوریتم آنها را توضیح دهیم. با ما همراه باشید.
هوش مصنوعی چیست؟
هوش مصنوعی یا AI یکی از زیر شاخههای علوم کامپیوتر است. این اصطلاح شامل ساختن برنامههای هوشمند مصنوعی است که قادر به انجام فعالیتهای سطح انسانی، و بالاتر از همه، شناخت هستند.
به عبارت ساده، هوش مصنوعی توانایی کامپیوترها برای انجام کارهایی است که معمولاً توسط انسان انجام می شود مانند نوشتن، رانندگی و غیره.
هوش مصنوعی به عنوان یک زمینه کاری با ساختن سیستمهایی سروکار دارد که توانایی تفکر در سطح انسان را دارند. این امر شامل حوزههای فرعی مختلفی است که هر کدام مسئول شبیهسازی یک جنبه از هوش یا رفتار انسان هستند. بیایید در مورد هر کدام از حوزههای زیرمجموعه هوش مصنوعی ثحبت کنیم.
زیر شاخههای هوش مصنوعی
1. ماشین لرنینگ (یادگیری ماشین)
یادگیری ماشین زیرشاخه هوش مصنوعی است که شامل ایجاد الگوریتمها و مدلهای آماری است که قادر به یادگیری از تجربیات گذشته هستند.
به عبارت دیگر، ماشین لرنینگ بخشی از هوش مصنوعی است که مسئول آموزش سیستمهای دارای هوش مصنوعی است و به آنها یاد میدهد چگونه در موقعیتهای اعلام شده با استفاده از الگوریتمهای آماری پیچیده و آموزش داده شده توسط داده ها در موقعیتهای خاص، عمل کنند.
2. پردازش زبان طبیعی
پردازش زبان طبیعی (Natural Language Processing) یا NLP زیرمجموعهای از هوش مصنوعی است که این مسئول قادر ساختن سیستمهای هوش مصنوعی برای تعامل با استفاده از زبان طبیعی انسان (به عنوان مثال زبان انگلیسی) است. به عبارت دیگر، پردازش زبان طبیعی شاخهای از هوش مصنوعی است که مسئول توانایی هوش مصنوعی برای درک و استفاده از کلمات و متن گفتاری است.
NLP شامل استفاده از مدلهای آماری برای درک، تفسیر و تولید زبان انسانی به روشی است که برای انسان معنادار باشد. زبان انسانی در اینجا شامل تمام زبانهایی است که توسط انسانها در دنیا صحبت میشود. این فناوری پشت رباتهای چت مانند ChatGPT، Siri، Alexa و دیگر رباتها است.
3. سیستمهای خبره
سیستمهای خبره به دلیل استفاده از قوانین، شاید سختترین زیر مجموعه هوش مصنوعی باشند. این حوزه شامل استفاده از قوانین و پایگاههای دانش صریح در تلاش برای تقلید از تصمیمگیری یک متخصص در یک زمینه خاص است.
به عبارت دیگر، سیستمهای خبره سیستمهایی هستند که از قوانین و تکنیکهای استنباط صریح برای تصمیمگیری آگاهانه در زمینه های خاص، مانند پزشکی استفاده میکنند.
4. بینایی کامپیوتر
بینایی کامپیوتر (Computer Vision) زیرمجموعهای از هوش مصنوعی است که از مدلهای آماری برای کمک به سیستمهای کامپیوتری در درک و تفسیر اطلاعات بصری در محیط استفاده میکند.
بینایی کامپیوتر اساساً این است که چگونه کامپیوترها چیزهای مختلف را “میبینند” و سپس آنچه را که میبینند درک میکنند. این حوزه مسئول تشخیص اشیا است. بینایی کامپیوتر خودروهای خودران، پهپادها و دیگر تکنولوژیهای این حوزه را طراحی میکند.
5. رباتیک
رباتیک اساساً ادغام تمام مفاهیمی است که در بالا گفتیم. رباتیک یک حوزه فرعی هوش مصنوعی است که مسئول ایجاد درک، پردازش و عمل سیستمهای هوش مصنوعی در دنیای فیزیکی است.
رباتیک شامل استفاده از الگوریتمهایی است که میتوانند اشیاء را در محیط نزدیک آنها تشخیص دهند و تفسیر کنند که چگونه تعامل با این اشیاء میتواند وضعیت فعلی آنها و محیط و افراد موجود در آن را تغییر دهد. رباتها در زمینههایی مانند پزشکی، تولید، تجارت الکترونیک (انبارها) و بسیاری موارد دیگر استفاده میشوند.
یادگیری ماشین چیست؟
همانطور که قبلاً گفتیم، یادگیری ماشین (Machine Learning) یا ماشین لرنینگ بخشی از هوش مصنوعی است که مسئول آموزش سیستمهای هوش مصنوعی است و به آنها یاد میدهد چگونه در موقعیتهای خاص یا در حین انجام فعالیتهای خاص عمل کنند. این کار را با استفاده از الگوریتمهای آماری پیچیده انجام میدهد که توسط دادهها بر اساس عملکرد فعالیتهای مورد نظر، مانند رانندگی، آموزش داده شدهاند.
به عبارت دیگر، یادگیری ماشین شامل تغذیه دادههای خام کامپیوتر است. سپس با استفاده از الگوریتمها، مدلی از دادهها ایجاد میکند که از آن برای پیشبینی یا تصمیمگیری استفاده میکند.
یادگیری ماشین معمولاً به اشتباه همان هوش مصنوعی نامیده میشود. اما همانطور که قبلاً دیدیم، این فقط بخشی از هوش مصنوعی به عنوان یک کل است.
اگرچه یادگیری ماشین زیرمجموعهای از هوش مصنوعی است، اما بدون شک مهمترین بخش هوش مصنوعی است. این امر بیشتر به این دلیل است که برای عملکرد سایر زمینههای فرعی (مانند پردازش زبان طبیعی و بینایی کامپیوتر) به یادگیری ماشین نیاز است.
همه مفاهیم دیگر زیر چتر هوش مصنوعی، قبل از اینکه بتوانند کاری انجام دهند، به دو مقوله نیاز دارند:
- دادهها
- الگوریتمهای یادگیری.
قبل از اینکه سیستمهای پردازش زبان طبیعی بتوانند با استفاده از زبان طبیعی انسانی تعامل داشته باشند، به دادههایی در مورد زبان انسانی و الگوریتمهایی نیاز دارند تا در یادگیری نحوه به کارگیری کارآمد و صحیح دادههای زبان از آنها استفاده کنند.
هنر ساختن سیستمهای هوش مصنوعی به صورتی که نحوه استفاده دقیق از دادههای ارائهشده و به کارگیری آنها در زمینه مناسب را بداند به عنوان یادگیری ماشین شناخته میشود.
یادگیری ماشین، مانند هوش مصنوعی، زیر حوزههای مخصوص به خود را دارد که به آن امکان میدهد کارآمدتر عمل کند. در ادامه به بررسی انواع زیرشاخههای ماشین لرنینگ میپردازیم.
1. یادگیری تحت نظارت
یادگیری تحت نظارت زیرمجموعهای از یادگیری ماشین است که شامل مدلهای آموزشی برای پیشبینی خروجی بر اساس دادههای ورودی و متغیرهای هدف است.
این تکنیک ماشین لرنینگ شامل آموزش یک مدل یادگیری ماشین برای پیشبینی خروجی با دادن دادههایی است که شامل نمونههایی از ورودیها و خروجیهای حاصل است. علاوه بر این، الگوریتمهای یادگیری تحت نظارت میتوانند رابطه بین ورودی و خروجی را بیابند و از آن الگوی دانش برای ساختن یک مدل استفاده کنند.
برای درک کامل این موضوع، بیایید از یک قیاس استفاده کنیم. تصور کنید که میخواهید یک مدل یادگیری ماشین نظارت شده بسازید که بتواند پیشبینی کند که آیا فرد، مبتلا به سرطان است یا خیر.
ابتدا یک مجموعه داده به ماشین ارائه میدهید. این دادهها، مجموعهای از سوابق دیگر بیماران است و حاوی اطلاعاتی مانند سن، تعداد فرزندان، شاخص توده بدنی (BMI) و دیگر اطلاعات مهم خواهد بود. این دادهها به عنوان ورودی عمل خواهد کرد. سپس برای هر بیمار، نتایج آنها را ارائه می دهید (یعنی سرطان دارند یا نه) که به عنوان خروجی آنها عمل میکند.
سپس الگوریتم، رابطه بین دادههای ورودی و خروجی را پیدا میکند. با پیدا کردن این ارتباط، مشخص خواهد شد که معمولاً چه نوع افرادی به سرطان مبتلا میشوند. سپس نمایش آماری از یافتههای خود را در چیزی به نام مدل ارائه میدهد.
توجه داشته باشید که آموزش تحت نظارت در ماشین لرنینگ بیشتر به 2 زیر حوزه تقسیم می شود، طبقهبندی و رگرسیون.
2. یادگیری بدون نظارت
یادگیری بدون نظارت نقطه مقابل یادگیری تحت نظارت است. در این مدل یادگیری ماشین، به جای ارائه دادههای ورودی و خروجی برای هدایت مدل، فقط دادههای ورودی را ارائه میکند و به الگوریتم اجازه میدهد همبستگی ایجاد کند.
این تکنیک یادگیری ماشین است که شامل الگوریتم کشف الگوها، ساختارها و روابط بدون راهنمایی صریح در قالب خروجی برچسبگذاری شده است.
به جای ارائه دادههای ورودی بیماران مختلف (یعنی سن، تعداد فرزندان متولد شده، شاخص توده بدن و غیره) و همچنین ارائه داده های خروجی (یعنی آیا سرطان دارند یا نه)، شما فقط دادههای ورودی را ارائه میدهید و به مدل اجازه میدهید به تنهایی همبستگیها را در دادهها پیدا کند.
توجه داشته باشید که دو تکنیک یادگیری تحت نظارت و بدون نظارت، هر کدام برای موارد استفاده متفاوت مناسب هستند. یادگیری نظارت شده زمانی بهینه است که یک نتیجه اعلام شده و مشخص (ترجیحاً خطی) وجود داشته باشد، در حالی که یادگیری بدون نظارت زمانی بهترین استفاده را دارد که نتیجه مشخصی وجود نداشته باشد و ساختار واضحی در دادهها وجود نداشته باشد.
3. یادگیری نیمه نظارتی
یادگیری تحت نظارت و یادگیری بدون نظارت هر دو موارد استفاده خود را دارند. اما مواردی وجود دارد که هر دوی آنها باید به کار گرفته شوند.
یادگیری نیمه نظارتی در شکاف بین یادگیری تحت نظارت و بدون نظارت قرار دارد. این زیرشاخه ماشین لرنینگ، مستلزم موقعیتی است که در آن یک مدل با استفاده از دادههای ساختاریافته و بدون ساختار ایجاد میشود.
یادگیری نیمه نظارتی به دلیل ماهیت پیچیده جمعآوری دادهها و پاکسازی دادهها وجود دارد. اگرچه یادگیری نظارت شده برای بدست آوردن نتایج دقیق بهترین است، دریافت دادههایی که هم ورودی و هم خروجی را در بر میگیرند، به تلاش قابل توجهی در قالب برچسب گذاری داده ها نیاز دارد.
برای مقابله با این چالش، مهندسان تصمیم گرفتند تنها بخشی از دادهها را ساختاربندی کنند و بقیه را بدون ساختار رها کنند تا در هزینههای مالی و نیروی کار صرفهجویی کنند. بدین ترتیب یادگیری نیمه نظارتی متولد شد.
اما باید توجه داشته باشید که یادگیری نیمه نظارتی بیشتر بدون نظارت است تا تحت نظارت.
4. یادگیری تقویتی
یادگیری تقویتی (Reinforcement Learning) تکنیکی است که برای آموزش مدلها استفاده میشود. این مدل، الهامگرفتهشده از نحوه یادگیری انسانها از طریق آزمون و خطا بوده است.
یادگیری تقویتی شامل دریافت پاداش یا تنبیه یک عامل هوش مصنوعی بر اساس اقداماتش است. این سیستم پاداش و تنبیه، عامل هوش مصنوعی را قادر میسازد تا از اشتباهات خود درس بگیرد و در اقدامات آینده خود کارآمدتر باشد (این تکنیک معمولاً در ساخت بازی استفاده میشود).
به عبارت ساده، یادگیری تقویتی شامل تصمیمگیری عوامل هوش مصنوعی بر اساس محیط خود است. این امر با قرار دادن عوامل هوش مصنوعی در محیطی بدون تجربه قبلی امکانپذیر میشود. وقتی عوامل هوش مصنوعی تصمیمات درست میگیرد، به آنها پاداش میدهد و وقتی تصمیم اشتباه میگیرند، آنها را جریمه میکند.
پس از بازخورد مداوم، عامل هوش مصنوعی قادر است اقدامات درست را از اقدامات اشتباه تشخیص دهد. در نتیجه، شما یک مدل کاری دریافت میکنید که میداند چگونه در یک محیط خاص عمل کند.
یادگیری تقویتی معمولاً برای آموزش در تولید بازیهای ویدیویی استفاده میشود.
5. یادگیری عمیق
یادگیری عمیق (Deep Learning) یا دیپ لرنینگ اکثر سیستمهای هوش مصنوعی نوآورانه را که امروزه محبوب هستند – از ChatGPT گرفته تا خودروهای خودران تسلا، قدرت میدهد. برای درک کامل نحوه عملکرد یادگیری عمیق، باید شبکههای عصبی را درک کنید.
شبکههای عصبی مدل های محاسباتی هستند که عملکرد و ساختار نورونهای بیولوژیکی در مغز انسان را تقلید میکنند. این شبکهها از لایههای مختلفی از گرههای به هم پیوسته به نام نورونهای مصنوعی تشکیل شدهاند که به پردازش و انتقال اطلاعات کمک میکنند. این کار شبکههای عصبی مصنوعی شبیه کاری است که دندریتها، سوماها و آکسونها در شبکههای عصبی بیولوژیک انجام میدهند.
شبکههای عصبی به گونهای طراحی شدهاند که از تجربیات گذشته درس بگیرند، یعنی به همان روشی که مغز انسان این کار را انجام می دهد.
این روزها دیپ لرنینگ بیشتر از شبکههای عصبی برای حل مسائل دشوار با استفاده از لایههای شبکه عصبی استفاده میکند. از آنجایی که دادهها در یک مدل یادگیری عمیق وارد میشوند و از هر لایه شبکه عصبی عبور میکنند، شبکه بهتر میتواند دادههای وارد شده را درک کند و تفسیرهای انتزاعی (خلاقانه) بیشتری از آن بسازد.
بنابراین به عبارت اساسی، یادگیری عمیق به سادگی مجموعهای از شبکه های عصبی است، یعنی هر چه یک مشکل پیچیدهتر باشد، شبکههای عصبی بیشتری درگیر میشوند.
6. یادگیری انتقالی
آموزش مدلهای یادگیری ماشین از صفر هم از نظر مالی و هم از نظر نیروی کار، سخت و دشوار است. به همین دلیل، تکنیک یادگیری انتقالی توسعه یافته است.
به منظور دور زدن چالش ساخت مدل های جدید از ابتدا، میتوانید از مدل های از پیش آموزش دیده استفاده کنید. قبل از ادامه، لازم است بدانید که مدل های از پیش آموزش دیده مدلهایی هستند که از پیش برای کارهای بزرگی مانند تشخیص چهره آموزش دیدهاند.
نحوه عملکرد یادگیری انتقالی به این صورت است: مثلاً میخواهید یک مدل یادگیری ماشین تشخیص چهره بسازید که به تشخیص کودکان کمک کند. این ماشین باید در یک جاده شلوغ در زمان عبور کوکان، باعث شود که چراغ راهنمایی برای خودروها قرمز شود.
اما شما داده یا منابع مالی برای آموزش مدلی در آن مقیاس ندارید. بنابراین تصمیم میگیرید یک مدل از قبل آموزش دیده وارد کنید که برای تشخیص چهره انسان آموزش دیده است. سپس از یادگیری انتقالی (Transfer Learning) برای تنظیم مدل استفاده میکنید تا بتواند چهره کودکان کوچک را تشخیص دهد. به این ترتیب میتوانید از کارایی و دقت یک مدل خوب و به شدت آموزش دیده با تلاش کمتری نسبت به آنچه در ابتدا لازم بود، استفاده کنید.
یادگیری انتقالی معمولاً به دو روش پیادهسازی میشود: تنظیم دقیق و استخراج ویژگی.
7. آموزش آنلاین
این سناریو را تصور کنید: شما یک مدل یادگیری ماشین ساختهاید که تراکنشهای جعلی را شناسایی میکند و بانکها از آن برای اطمینان از اعتبار تراکنشها استفاده میکنند. پس از مدتی، مدل نیاز به آموزش مجدد با دادههای جدید دارد تا با تکنیکهای جدید تقلب، آن را به روز و دقیق نگه دارد.
به جای حذف مدل و ریسک تراکنشهای جعلی، تصمیم میگیرید با دریافت نقاط داده جدید، آن را مرتباً بهروزرسانی کنید. به این ترتیب مدل به طور مکرر به روز میشود و شما نیازی به پرداخت هزینه ذخیرهسازی برای جمع آوری یا حذف مدل ندارید.
به عبارت ساده، یادگیری آنلاین یا یادگیری برخط یک تکنیک یادگیری ماشین است که شامل به روز رسانی مداوم یک مدل با در دسترس قرار گرفتن دادههای جدید است. یادگیری آنلاین در سناریوهایی مفید است که دادهها پویا و دائما در حال تغییر هستند.
8. یادگیری دستهای
یادگیری دستهای (Batch Learning) نقطه مقابل یادگیری آنلاین است. با بازگشت به سناریوی تقلب اصلی خود، به جای آموزش مجدد مدل به طور مداوم با مجموعه دادههای جدید، مدل را در دستههای بزرگ آموزش میدهید. این بدان معناست که دادهها را جمع آوری میکنید و سپس از آن برای آموزش مدل به یکباره استفاده میکنید.
یادگیری دستهای زمانی بهترین استفاده را دارد که داده ها همه در دسترس باشند و هدف بهینهسازی عملکرد مدل باشد.
ارتباط بین هوش مصنوعی و یادگیری ماشین
در بخشهای قبلی، تفاوتهای بین هوش مصنوعی و یادگیری ماشین را توضیح دادیم. اما از آنجایی که یک مفهوم زیرمجموعه دیگری است، پوشش ارتباط بین این دو نیز به همان اندازه تفاوتشان مهم است.
هوش مصنوعی اساساً مطالعه، طراحی و توسعه سیستمهایی است که از نظر شناختی قادر به انجام اعمال، فعالیتها و وظایفی هستند که میتوانند توسط انسان انجام شوند. این کار را با آموزش روی مجموعه دادههایی انجام میدهد که حاوی دادههایی در مورد نحوه انجام این اقدامات، فعالیتها و وظایف است.
یادگیری ماشین بخشی از هوش مصنوعی است که در گرفتن این مجموعه دادهها و با استفاده از الگوریتمهای آماری پیشرفته مانند رگرسیون خطی، آموزش یک مدل نقش دارد. سپس آن مدل به عنوان پایهای برای نحوه درک سیستم هوش مصنوعی از داده ها و در نتیجه آن، نحوه اقداماتی که برای انجام آنها آموزش دیده است عمل خواهد کرد.
بیان یک مثال در اینجا به شما کمک میکند ببینید چگونه یک پروژه هوش مصنوعی در زندگی واقعی انجام میشود و تفاوت هوش مصنوعی و یادگیری ماشین در عمل چیست.
ساختن یک سیستم هوش مصنوعی شبیه ساخت خودرو است و یادگیری ماشین مانند موتوری است که آن را به حرکت در میآورد. همانطور که یک خودرو برای تولید نیرو و پیشبرد آن به موتور نیاز دارد، یک سیستم هوش مصنوعی نیز برای پردازش دادهها و انجام پیش بینیهای دقیق به یادگیری ماشین نیاز دارد.
به عنوان مثال، برای ساختن یک سیستم هوش مصنوعی که به پیشبینی سرطان کمک میکند، الگوریتمهای یادگیری ماشین برای تجزیه و تحلیل مقادیر زیادی از دادههای پزشکی، شناسایی الگوها و پیشبینی در مورد این که آیا بیمار مبتلا به سرطان است یا نه، استفاده میشود. این فرآیند مانند موتور ماشین (مدل یادگیری ماشین) است که سوخت (دادهها) را به حرکت تبدیل میکند و وسیله نقلیه (سیستم هوش مصنوعی) را به جلو میراند.
همانطور که دادههای بیشتری به سیستم وارد میشود و الگوریتمهای یادگیری ماشین اصلاحتر میشوند، سیستم طبقهبندی سرطان هوش مصنوعی دقیقتر و قابل اعتمادتر میشود. این موضوع شبیه به چگونگی کارآمدتر و قدرتمندتر شدن یک خودرو با بهینه سازی و تنظیم دقیق موتور در طول زمان است.
و در پایان این که …
هوش مصنوعی و یادگیری ماشین، وقتی به طور جداگانه مورد بررسی قرار گیرد، دو مفهوم مرتبط و به ظاهر مشابه هستند. این شباهت میتواند منجر به سردرگمی شود و در نتیجه از این دو اصطلاح به جای هم استفاده شود.
اما همانطور که در این مطلب در مورد تفاوت هوش مصنوعی و یادگیری ماشین صحبت کردیم، هوش مصنوعی و یادگیری ماشین مترادف هم نیستند؛ بلکه یادگیری ماشین زیرمجموعهای از هوش مصنوعی است. این یعنی هوش مصنوعی دارای بسیاری از زمینههای فرعی دیگر مانند پردازش زبان طبیعی است.
رابطه بین هوش مصنوعی و یادگیری ماشین شبیه خودرو و موتور آن است؛ یادگیری ماشین مانند موتوری است که خودرو را به حرکت در میآورد. همانطور که یک خودرو برای تولید نیرو و پیشبرد آن به موتور نیاز دارد، یک سیستم هوش مصنوعی نیز برای پردازش دادهها و انجام پیش بینی های دقیق به یادگیری ماشین نیاز دارد.
شرکت هوش مصنوعی آویر در کنار شماست تا جدیدترین محصولات مربوط به هوش مصنوعی و یادگیری ماشین را طراحی و ارائه کند. آویر دستیاری برای هوشمند سازی زندگی شما!