ورود / ثبت نام سبد خرید 0
یادگیری عمیق یعنی چه ؟
یادگیری عمیق یک تکنیک یادگیری ماشین ( machine learning ) است که به کامپیوتر میآموزد تا رفتاری مشابه انسان در یادگیری مسائل داشته باشد همانند یادگیری با مثال که برای انسان مفهومی هست.
یکی از نمونه های پرکاربرد یادگیری عمیق در ماشین های خودران هست که باعث میشود وسایل نقلیه دیگر را تشخیص دهد یا برای مثال عابر پیاده را از تیر برق تشخیص دهد.
در یادگیری عمیق، یک مدل کامپیوتری یاد می گیرد که وظایف طبقه بندی را مستقیماً از روی تصاویر، متن یا صدا انجام دهد. یادگیری عمیق چنان پیشرفت کرده است که گاهی برای عملکرد از مغز انسان ها نیز پیشرفته تر عمل میکند.
یک مثال ساده برای درک یادگیری ماشین :
فرض کنید به یک کودک یک گل آفتابگردان را نشان میدهید برای اولین بار کودک نمیداند اسم گل چیست ولی شما به اون میگویید که این گل اسمش آفتابگردان است. اگر فردا گل را به آن کودک نشان دهید به احتمال قوی اسم گل را بازگو میکند چون دیروز یاد گرفته است و البته بعضی از کودک ها فراموش میکنند و باید دوبار ، سه بار یا حتی بیشتر به آنها بیاموزید ... یادگیری عمیق در کامپیوترها نیز به شکل همین کودک میباشد.
در این مقاله ۸ ایده برای آموزش یادگیری عمیق ( deep learning ) برای شما آماده کرده ایم که این ایده های برنامه نویسی به شما کمک میکند در هر زبان برنامه نویسی که فعالیت میکنید یکی از آنها را انتخاب کنید و با استفاده از آن بحث یادگیری عمیق که بحث مهمی هست را آموزش ببینید و به آن مسلط شوید.
در ادامه ی مقاله ایده ها را مطرح خواهیم کرد لطفا مقاله را با دقت تا انتها مطالعه کنید.
این پروژه از این جهت انتخاب شده که نژاد های مختلف سگ وجود دارد که بیشتر هم مشابه هستند و شما باید بتوانید الگوریتم خاصی را پیاده سازی کنید تا با استفاده از اطلاعات موجود در دیتابیس ، نوع نژاد آن سگ را تشخیص بدهد.
بعنوان یک برنامه نویس مبتدی میتوانید این برنامه را بنویسید و به ارتقای سطح مهارت خود در بحث یادگیری عمیق (deep learning) کمک فراوانی بکنید.
برای این پروژه میتوانید از مجموعه ی داده های نژاد سگ ها استفاده کنید و روی تصویر پردازش انجام دهید. از این سایت میتوانید داده هایی درباره ی نژاد مختلف سگ جمع آوری کنید.
همچنین شما میتوانید برای دسته بندی نژاد سگها از این یادگیری عمیق که توسط Kirill Panarin نوشته شده استفاده کنید.
شما میتوانید از زبان های برنامه نویسی مختلف در هر پلتفرمی برای پیاده سازی این پروژه استفاده کنید ولی برای تشخیص نژاد سگ از روی عکس بهترین زبان ، زبان برنامه نویسی پایتون به نظر میرسد.
البته بعدا با پیشرفت کردن میتوانید این اسکریپت را به دیگر حیوانات نیز گسترش دهید مثلا برای تشخیص نژاد گربه و ...
این پروژه هم یک پروژه ی بسیار عالی برای درک یادگیری عمیق ( deep learning ) با استفاده از برنامه نویسی میتواند باشد . در این پروژه شما باید یک مدل یادگیری عمیق بسازید که چهره انسان را از روی تصویر تشخیص دهد.
تشخیص چهره یک فناوری بینایی کامپیوتری است. در الگوریتم تشخیص چهره، شما باید چهره انسان را از روی هر تصویر دیجیتالی تشخیص دهید.
برای این کار میتوانید با زبان برنامه نویسی پایتون و با استفاده از ماژول OpenCV استفاده کنید.
در این پروژه شما باید مدل deep learning بسازید که با استفاده از تصاویر RGB بیماری ها را در محصولات کشاورزی تشخیص دهد.
برای ساخت یک مدل یادگیری عمیق تشخیص بیماری های گیاهی از Convolutional Neural Networks (CNN) استفاده شده است.
در واقع CNN برای تشخیص بیماری های گیاهی از آنها عکس میگیرد و قدم های مختلفی برای انجام این کار در CNN هست.قدم ها به شکل لیست زیر است:
می توانید مجموعه داده های تصاویر محصول کشاورزی را از سایت Kaggle دانلود کنید.
دسته بندی کردن تصاویر با تشخیص محتوای آن یکی از بهترین پروژه ها برای مبتدیان یادگیری عمیق است. در پروژه طبقه بندی تصاویر، شما باید تصاویر را به کلاس های مختلف طبقه بندی کنید.
برای این پروژه میتوانید از CIFAR-10 Dataset استفاده کنید که درون خود ۶۰.۰۰۰ تصویر رنگی دارد. این تصاویر در ۱۰ دسته بندی مشخص دسته بندی شده اند مانند : cars, birds, dogs, horses, ships, trucks و ... .
برای داده های آموزشی ۵۰.۰۰۰ تصویر و برای داده های تست از ۱۰.۰۰۰ تصویر استفاده می شود.
دسته بندی تصاویر یکی از پروژه های بسیار محبوب برای درک یادگیری عمیق ( deep learning ) است که برای این کار شما میتوانید CIFAR-10 Dataset را از اینجا دانلود کنید.
برای درک بهتر یادگیری عمیق این مثال بهترین مثال هست که شما بتوانید الگوریتمی بنویسید تا دستخط یک انسان را یاد بگیرد و بعدا بتواند تشخیص دهد.
برای پیاده سازی چنین پروژه ای شما باید از MNIST dataset استفاده کنید و شبکه های عصبی را بلد باشید که به انها Convolutional Neural Networks گفته میشود.
این پروژه میتواند یک پروژه مقدماتی برای درک یادگیری عمیق باشد که در آن رنگ یک قسمت از تصویر باید تشخیص داده شود. همه میدانیم که ۱۶ میلیون رنگ مختلف داریم که هر کدام یک RGB خاص برای خود دارد اما ما فقط چندین رنگ را میشناسیم.
برای اجرای این پروژه، باید مجموعه ی داده های برچسبگذاری شده از تمام رنگهایی که میشناسیم داشته باشید و سپس باید محاسبه کنید که کدام رنگ بیشترین شباهت را با مقدار رنگ انتخاب شده دارد.
برای پیاده سازی چنین پروژه ای شما باید با ماژول های زبان برنامه نویسی پایتون مثل OpenCV و Pandas آشنا باشید.
شما میتوانید برای شروع از این لینک کمک بگیرید و با استفاده از ماژول های پایتونی معرفی شده چنین پروژه ای را پیاده سازی کنید.
یک کتابخانه ی متن باز در گیتهاب برای زبان پایتون وجود دارد که تصویر چهره را متحرک میکند ، این پروژه از ماژول OpenCv پایتون استفاده میکند.
همانطور که در تصویر بالا مشاهده میکنید مدل ( تصویر ثابت ) از حرکات فرد جلوی دروبین تقلید میکند و متحرک میشود. این پروژه میتواند در زمینه های مختلف برنامه نویسی کاربردی و مفید باشد.
شما میتوانید این پروژه را جهت آموزش و استفاده از گیتهاب این پروژه تهیه کنید.
همانطور که میدانید یکی از دلایل اصلی تصادفات جاده ای خواب آلودگی رانندگان است ، اما میتوان از طریق یادگیری عمیق و برنامه نویسی تا حدی جلوی رانندگی در هنگام خواب آلودگی را گرفت.
شما در این پروژه باید برنامه ای بنویسید که با تشخیص خواب الودگی راننده از روی حرکت و حالت چشمان راننده ، درصورت اینکه راننده خواب آلود بود سریعا به او هشدار بدهد و با آلارم او را هوشیار کند.
برای راه اندازی این پروژه به یک وب کم نیاز هست که راننده را کنترل کند. همچنین شما باید این پروژه را با زبان پایتون و کتابخانه های OpenCv و Keras پیاده سازی کنید. شما میتوانید برای شروع و انجام این پروژه از این آموزش بهره ببرید.
مقالات دیگر مرتبط با این مقاله ی آموزشی :
دوره های آموزشی مرتبط با این مقاله :
مقاله ی خیلی خوب و جامعی درباره ی یادگیری عمیق بود من با پایتون میخاستم یادگیری عمیق را تمرین کنم این ایده ها عالیه حتما یکیشون رو به زودی انجام میدم