شبکه عصبی CNN چطور کار میکنه
- دسته:اخبار علمی
- هما کاشفی
شبکه عصبی کانولوشنی، یا همان CNN، یک نوع از شبکه های عصبی هست که از مسیر بینایی انسان برای طراحی آن الهام گرفته شده است. این شبکه یکی از معروفترین شبکه های عصبی است و در حوزه های مختلف مورد استفاده قرار میگیرد. شبکه عصبی کانولوشنال به خاطر عملکرد بسیار خوبش برای ورودیهایی مثل تصویر، صوت و سیگنال از سایر شبکههای عصبی متمایز شده است شاید براتون جالب باشه که بدونید شبکه عصبی کانولوشنی (CNN) چطور متوجه میشه تصویری که نشونش دادیم، تصویر چیه؟ مثلاً تصویر ورودی تصویر یک سگ هست یا گربه!؟
شبکه عصبی کانولوشنی ما برای تشخیص این دو تصویر از چه ترفندی استفاده می کنه؟
بیاین برای درک بهتر، اول بیایید بررسی کنیم که وقتی به ما این دو تا تصویر رو نشون میدن، واقعاً از کجا می فهمیم کدوم سگ هست و کدوم گربه؟ فرقی نمیکنه تصویری که بهمون نشون دادن، کارتونی باشه یا واقعی ما به سرعت تشخیص می دهیم.
خب، تصویر گربه رو دوباره نگاه کنیم…
خوب… ما با یه نگاه کلی و سریع، این ویژگیها رو میبینیم و با وجود اینکه حیوانات دیگهای هم میشناسیم که همین اعضا رو دارن ولی میفهمیم این تصویر گربه است، چون گربههای زیادی رو دیدیم که همشون گوش، پوزه، چشم، دست و پا، دم به همین شکل (با تغییرات جزئی) دارن. این ویژگیها رو به طور ناخودآگاه کنار هم میگذاریم و نتیجهگیری میکنیم.
دقیقاً شبکه عصبی کانولوشنی هم، همین کار رو میکنه: چون این شبکه رو با الهام از مسیر بینایی ما ساختن 😊
یعنی چطوری؟
لایههای اول شبکه، جزئیترین ویژگیها رو یاد میگیره، قراره این ویژگیها رو تو لایههای بعدی کنار هم بگذاره و ویژگیهای پیچیدهتری بسازه
خوب در لایههای میانی، این ویژگیهارو کنار هم قرار میده و مثلاً پوزه، دست، پا و گوش رو میسازه
تو لایههای آخر هم شیهای بزرگتری میسازه، مثلاً سر گربه یا پایین تنه…
خوب حالا این دو تا ویژگی بزرگ با هم ترکیب میشن و تصویر اصلی رو میسازه و اون رو به عنوان گربه میشناسه
هر چقدر به لایههای آخر شبکه نزدیک میشیم، ویژگیها پیچیدهتر میشن و نشان دهندهی اشیای بزرگتری هستند
حالا اگه دوست داری شبکهی عصبی کانولوشن رو خودت از صفر تا صد پیادهسازی کنی پیشنهاد میکنم دوره CNN ما رو نگاه کنی!
تئوری + پیادهسازی + پروژه عملی
- در این دوره اول مسیر بینایی انسان در مغز رو دقیق بررسی میکنیم
- تک تک لایههای مختلف شبکه کانولوشنی رو یاد میگیریم و اونها رو با مثالهای ساده یاد میگیریم
- بعد معروفترین شبکههای کانولوشنی مثل Lenet, Alexnet, GoogleNet رو یاد میگیریم و در فریم ورک کراس پایتون پیادهسازی میکنیم
- چندتا پروژه عملی و ساده با دیتاستهای معروف مثل MNIST, CIFAR رو با شبکههای CNN پیادهسازی میکنیم تا عملکرد خوبشون رو از نزدیک ببینیم!
دیدگاه ها