شروع کار با یادگیری عمیق: 5 موردی که باید حتماً بدانید


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

5 مورد ضروری برای شروع مسیر یادگیری عمیق عبارتند از:

1-آماده کردن سیستم خود

2-برنامه نویسی پایتون

3-جبر خطی و محاسبات

4-آمار و احتمال

5-مفاهیم اصلی و کلیدی یادگیری ماشین

شروع کار با یادگیری عمیق: 5 موردی که باید حتماً بدانید

1-سیستم خود را برای یادگیری عمیق آماده کنید

برای یادگیری یک مهارت جدید، مثلاً آشپزی، ابتدا باید تمام تجهیزات موردنیاز را در اختیار داشته باشید. شما به ابزارهایی مانند چاقو، تابه پخت و پز و البته اجاق گاز نیاز دارید! همچنین باید بدانید که چگونه از ابزارهایی که به شما داده شده است استفاده کنید.

شروع کار با یادگیری عمیق: 5 موردی که باید حتماً بدانید

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

همچنین شما باید GPU, TPU را بشناسید. با استفاده از GPU می‌توانید با داده‌های تصویر و ویدیویی کار کنید و برای اکثر پروژه‌های یادگیری عمیق شما مورد نیاز است. TPU که مخفف Tensor Processing Unit است را نیز می‌توانید به همراه CPU خود استفاده کنید. TPU ارزان قیمت‌تر از GPU است و سریعتر است و ساختن مدل‌های یادگیری عمیق را ساده‌تر می‌کند.

2-برنامه نویسی پایتون

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

برنامه نویسی پایتون

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

3-جبر خطی و محاسبات برای یادگیری عمیق

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

شما فقط باید ریاضی سطح دبیرستان خود را به خاطر بیاورید تا سفر یادگیری عمیق خود را آغاز کنید!

بیایید یک مثال بزنیم. ما تصاویری از سگ‌ها و گربه‌ها داریم و می‌خواهیم ماشین به ما بگوید که حیوان هر تصویر، سگ است یا گربه:

شروع کار با یادگیری عمیق: 5 موردی که باید حتماً بدانید

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

4-آمار و احتمال برای یادگیری عمیق

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

باید گفت:

آمار، مطالعه داده‌هاست.

آمار توصیفی، مطالعه ابزارهای ریاضی برای توصیف و نمایش داده هاست

احتمال، احتمال وقوع یک رویداد را اندازه گیری می‌کند.

5-مفاهیم کلیدی یادگیری ماشین برای یادگیری عمیق

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

برای مثال الگوریتم‌های با ناظر و بدون ناظر. منظور از یادگیری با ناظر آن است که در این الگوریتم‌ها، متغیر هدف (آنچه که می‌خواهیم پیش بینی کنیم)، و متغیرهای ورودی (ویژگی‌های مستقلی که به متغیر هدف کمک می‌کنند) را می‌شناسیم. سپس معادله‌ای ایجاد می‌کنیم که رابطه بین متغیرهای ورودی و هدف را نشان می‌دهد و آن را به داده‌هایی که در اختیار داریم اعمال می‌کنیم. مثال: SVM, KNN و رگرسیون خطی و غیره.

یادگیری بدون نظارت نوعی یادگیری است که در آن متغیر هدف را نمی شناسیم. این نوع یادگیری عمدتاً برای خوشه بندی داده‌ها به گروه‌ها استفاده می‌شود و پس از خوشه بندی داده‌ها می‌توانیم گروه‌ها را شناسایی کنیم. نمونه‌های یادگیری بدون نظارت شامل خوشه بندی k-means، الگوریتم پیش بینی و غیره است.

همچنین لازم است مفاهیمی چون معیارهای ارزیابی را بشناسیم مانند confusion matrix، دقت، Precision و Recall  و مفاهیمی چون underfitting و overfitting را باید بشناسیم. یکی دیگر از مفاهیم بسیار مهم و پایه‌ای یادگیری ماشین، بایاس و واریانس است. به عبارت ساده، بایاس تفاضل بین مقدار حقیقی و مقدار پیش بینی شده است. واریانس با تغییرات خروجی، هنگامی که داده‌ی آموزش را تغییر می دهیم، اندازه گیری می شود.

واریانس و بایاس در یادگیری ماشین

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

مسیر یادگیری عمیق خود را آغاز کنید! 😊


دیدگاه ها

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

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

code