شبکههای عصبی کانولوشنی (Convolutional Neural Networks یا CNN)، نوعی از شبکههای عصبی عمیق هستند که برای پردازش تصاویر و شناسایی الگوها استفاده میشوند. این شبکهها از لایههای کانولوشنی برای استخراج ویژگیها از تصاویر استفاده میکنند و با استفاده از لایههای تمام متصل (Fully Connected Layers)، این ویژگیها را به خروجی نهایی تبدیل میکنند.
ساختار شبکه عصبی کانولوشنی به طور عمومی شامل چند لایه است که به صورت ترتیبی در شبکه قرار میگیرند: 1. لایه ورودی (Input Layer): این لایه تصویر ورودی را دریافت میکند. تصویر ورودی به صورت ماتریسی از پیکسلها با ابعاد مشخص (عرض، ارتفاع و عمق) به این لایه وارد میشود.
2. لایه کانولوشنی (Convolutional Layer): در این لایه، عملیات کانولوشن روی تصویر انجام میشود. فیلترهای کانولوشنی (یا همان هستهها) به طور مکرر بر روی تصویر اعمال میشوند تا ویژگیهای محلی مانند لبهها و الگوها استخراج شوند. این عملیات باعث کاهش ابعاد تصویر نیز میشود.
3. لایه ادغام (Pooling Layer): در این لایه، با استفاده از تکنیکهای مختلفی مانند حداکثرگیری (Max Pooling) یا میانگینگیری (Average Pooling)، ابعاد تصویر کاهش مییابد. این لایه به کاهش پیچیدگی محاسباتی کمک میکند و همچنین مقاومت به تغییرات کوچک مکانی در تصویر را افزایش میدهد.
4. لایه تمام متصل (Fully Connected Layer): در این لای ه، ویژگیهای استخراج شده از لایههای قبلی به یک یا چند نرون وصل میشوند. این لایه به عنوان بخش تصمیمگیری شبکه عمل میکند و خروجی نهایی را تولید میکند.
5. لایه خروجی (Output Layer): در این لایه، نتیجه نهایی شبکه تولید میشود. تعداد نرونها و نوع تابع فعالسازی در این لایه به مسئله مورد نظر وابسته است. به طور معمول در مسائل دستهبندی، از تابع softmax استفاده میشود. شبکههای عصبی کانولوشنی به دلیل قدرت استخراج ویژگیها و توانایی شناسایی الگوها در تصاویر، در حوزههای مختلفی مانند تشخیص چهره، تشخیص اشیا، تشخیص اندازه گیری و ترجمه ماشینی استفاده میشوند.