در پیشنهادهای فروش نرمافزار و خبرهای فناوری، اصطلاحهایی مثل «مبتنی بر یادگیری ماشین»، «یادگیری عمیق» و «شبکه عصبی» زیاد دیده میشود و گاهی بیدقت بهجای هم به کار میروند. اگر مدیر یا کارشناس IT هستید، دانستن فرق اینها کمک میکند بفهمید یک پروژه چه دادهای، چه سختافزاری و چه سطحی از نظارت لازم دارد.
رابطه این مفاهیم؛ دایرههای تو در تو
سادهترین تصویر، سه دایره تو در توست:
- هوش مصنوعی بزرگترین دایره است: هر روشی که کامپیوتر با آن کاری «هوشمندانه» انجام دهد، حتی با قوانین دستنویس «اگر این، آنگاه آن».
- یادگیری ماشین زیرمجموعه هوش مصنوعی است: بهجای نوشتن قانون، سیستم الگو را از داده یاد میگیرد.
- یادگیری عمیق زیرمجموعه یادگیری ماشین است: از شبکههای عصبی با لایههای زیاد استفاده میکند.
شبکه عصبی در واقع «ساختار» یا معماریای است که یادگیری عمیق بر پایه آن ساخته میشود.
یادگیری ماشین (Machine Learning)
در برنامهنویسی معمولی، برنامهنویس قانون را مینویسد. در یادگیری ماشین، به سیستم تعداد زیادی نمونه میدهید و خودش رابطه را پیدا میکند. مثلاً بهجای اینکه بنویسید «ایمیلی که فلان کلمه را دارد هرزنامه است»، هزاران ایمیل برچسبخورده به مدل میدهید تا خودش نشانههای هرزنامه را یاد بگیرد. سه روش اصلی یادگیری وجود دارد:
- یادگیری با ناظر: دادهها برچسب دارند، مثل ایمیلهای «هرزنامه/سالم» یا فاکتورهای «عادی/مشکوک».
- یادگیری بدون ناظر: داده برچسب ندارد و مدل خودش گروهها یا موارد غیرعادی را پیدا میکند، مثل دستهبندی مشتریان یا کشف ترافیک غیرعادی شبکه.
- یادگیری تقویتی: مدل با آزمون و خطا و دریافت پاداش یا جریمه یاد میگیرد؛ بیشتر در رباتیک، بازیها و بهینهسازی کاربرد دارد.
روشهای کلاسیک یادگیری ماشین، مثل درخت تصمیم و رگرسیون، اغلب با دادههای جدولی (مثل فایل اکسل یا دیتابیس فروش) خوب کار میکنند، به سختافزار سنگین نیاز ندارند و توضیح نتیجهشان سادهتر است.
شبکه عصبی چیست؟
شبکه عصبی مصنوعی از واحدهای سادهای به نام «نورون» ساخته شده که در چند لایه کنار هم قرار میگیرند. هر نورون ورودیها را با وزنهایی ترکیب میکند و نتیجه را به لایه بعد میفرستد. در فرایند آموزش، این وزنها بارها و بارها تنظیم میشوند تا خطای خروجی کم شود. نام «عصبی» از الهام گرفتن از مغز میآید، اما این شبکهها شبیهسازی واقعی مغز انسان نیستند.
یادگیری عمیق (Deep Learning)
وقتی شبکه عصبی لایههای زیادی داشته باشد، به آن «عمیق» میگویند. مزیت بزرگ یادگیری عمیق این است که میتواند ویژگیهای مهم را خودش از دادههای خام و نامنظم مثل تصویر، صدا و متن استخراج کند. تشخیص گفتار، ترجمه ماشینی، تشخیص تصویر و چتباتهای امروزی همه بر پایه یادگیری عمیقاند.
اما این قدرت هزینه دارد:
- به داده بسیار زیاد برای آموزش نیاز دارد.
- آموزش آن معمولاً به پردازنده گرافیکی (GPU) و مصرف برق و خنکسازی بالا نیاز دارد.
- توضیحپذیری کمتری دارد؛ اغلب نمیشود بهسادگی گفت چرا مدل به یک نتیجه رسیده است.
برای بیشتر نیازهای یک شرکت، لازم نیست مدل را از صفر آموزش دهید. استفاده از مدلهای آماده یا تنظیم یک مدل موجود روی داده خودتان معمولاً بسیار کمهزینهتر است.
کدام برای چه کاری مناسب است؟
- داده جدولی با حجم متوسط (پیشبینی فروش، ریسک اعتباری، موجودی انبار): معمولاً یادگیری ماشین کلاسیک کافی و قابلفهمتر است.
- تصویر، صدا و متن آزاد (تشخیص اسناد، تحلیل تماسها، پاسخ به پرسشها): یادگیری عمیق برتری دارد.
- قوانین روشن و ثابت: گاهی یک اسکریپت یا قانون ساده از هر مدلی بهتر، ارزانتر و قابل اعتمادتر است.
چکلیست
- پیش از انتخاب روش، نوع داده (جدولی، تصویر، متن، صدا) و حجم آن را مشخص کنید.
- کیفیت و برچسبگذاری داده را بسنجید؛ مدل خوب با داده بد نتیجه خوب نمیدهد.
- اگر توضیح دادن تصمیم مهم است، روشهای سادهتر را در اولویت بگذارید.
- برای آموزش مدلهای عمیق، نیاز به GPU، فضای ذخیرهسازی، برق و خنکسازی را از قبل برآورد کنید.
- از دادههای آموزشی مثل هر داده حساس دیگری بکاپ بگیرید و دسترسی به آن را محدود کنید.
اگر پروژه یادگیری ماشین شما به سرور یا ماشین مجازی قدرتمند، ذخیرهساز و بکاپ داده نیاز دارد، کارشناسان ITPlus724 میتوانند این زیرساخت را در شرکت یا دیتاسنتر برایتان آماده کنند.