سلام
Inception Module اسمی هست که گوگل روی این بلاک گذاشته :
و ورژن بعدی :
و بصورت خیلی خلاصه یعنی یه لایه ای متشکل از چند لایه که هر کدوم با اندازه فیلتر های مختلف سعی میکنن اطلاعات مختلفی رو بدست بیارن و بصورت هم زمان این اطلاعات رو در اختیار لایه بعدی برای پردازش بزارن . باز ایده اینجا این بوده که تا جایی که امکان داره اطلاعات غنی از هر سطح بدست بیاد بقول خودمون یه حوضچه غنی از اطلاعات مختلف !
ایده نویسنده هاش هم از اینجا سرچشمه گرفته که گفتن اولا ما میدونیم شبکه های کانولوشن بزرگ درسته که قدرت زیادی دارن اما به همون نسبت هم بخاطر داشتن تعداد پارامتر خیلی زیاد در معرض اورفیت کردن زیاد قرار دارن. اگر بخوان مثل VGG بصورت یکنواخت شبکه رو از لحاظ اندازه بزرگترش کنن محاسبات هم به همین شکل افزایش پیدا میکنه و اگرم بخوایم مسیر خلاف اینو بریم شبکه های تنک هرچند بصورت تئوری قابل استفاده هستن اما در عمل ساختارهای داده ای اونها خیلی غیر بهینه ان .
برای همین اینها اومدن سعی کردن یک تقریبی از این ساختار تنک ایجاد کنن که مشکلاتی که بالا مطرح کردن رو نداشته باشه.
ایده اشون هم این بود که گفتن فیلترهای کانولوشن با اندازه های مختلف میتونن بخش های مختلفی از اطلاعات رو پوشش بدن.
برای همین لایه های مختلف با اندازه فیلترهای مختلف ایجاد کردن که روی دیتا هرکدوم شروع به کار میکنن و هرکدوم یکسری اطلاعات ازش استخراج میکنن بعد نهایتا همه اینها با هم ادغام شده به لایه بعد ارائه میشه . لایه پولینگ هم انداختن اون وسط فقط به این دلیل که چون دیدن معماری های قبلی خوب جواب گرفتن! گفتن ما هم یه پولینگ میزاریم بادا باد! اینم هرچی بدست اورد بده کنار بقیه که این حوضچه اطلاعات ما پر بار تر باشه!
خب تا اینجا این شد ایده اولیه . اما یه مشکلی هم داشتن اینا اونم اینه که اگه شما بیایی و چندتا از این ماجولها رو پشت سر هم ردیف کنید میبینید که تعداد خروجی خیلی زیاد میشه . اینا برای اینکه این مشکل رو هم برطرف کنن از ایده Network in Network استفاده کردن و اینطوری کاهش ابعاد دادن . این کار البته یه مشکل دیگه هم بوجود میاره و اونم اینه که بعد این کاهش ابعاد داده شدن چیزی که بدست میاد یه بازنمایی از داده به فرم غیر تنک و در اصل کمپرس شده اس و این ناقض اون ایده اصلی برای تقریب ساختار تنک هست. پبرای همین تو ورژن های بعدی اینطور عمل کردن که عمل کاهش ابعاد فقط زمانی انجام بشه که نیاز به حفظ بازنمایی های تنک تا حد ممکن باشه . در عمل هم اینا اومدن قبل از هرچیزی یه لایه کانولوشن 1 در 1 زدن (که در تصویر دوم مشخصه )
یه خوبی این ماجول اینه که میشه تعداد زیادی از اونها رو استفاده کرد و اون بار پردازشی بصورت متناسب افزایش پیدا کنه .
با این ایده که اطلاعات دیداری باید در مقیاس های مختلف پردازش بشن و بعد با هم ترکیب و به مرحله بعد ارسال شده تا مرحله بعدی به اطلاعات غنی از ویژگی های انتزاعی در مقیاس های مختلف بصورت هم زمان دسترسی داشته باشه همخونی داره .
استفاده از این ماجول ها میتونه باعث افزایش سرعت 2 تا 3 برابر نسبت به شبکه ای که فاقد این ماجول ها هست بشه .
معماری های مختلفی از این معماری اقتباس کردن و معماری های خودشونو ساختن مثل ResNet مثل Squeezenet و...