در مقاله capsnet مسیریابی براساس قرارداد یا routing by agreement جایگزین maxpooling میشه .
(هر کپسول موجود در یک لایه، با ضرب خروجی خود در یک ماتریس وزن، یک بردار پیش بینی تولید می کند. اگر بردار پیش بینی دارای یک محصول مدرج بزرگ با خروجی یک والد ممکن باشه، برای والدهای دیگر محصول کوچکتری خواهد داشت.)
در این مقاله مواردی مطرح میشه که خارج از بحث سوال شما هست اما به صورت کلی برای بدست آوردن اطلاعات یک تصویر، مجموعه فیلترهایی به نام «کپسول» آموزش داده شده اند تا در صورت مشاهده ترکیب خاصی از ناحیه ها/بخش ها در تصویر، فعال/بیشتر تحریک شوند. این کپسول ها یک بردار فعالیت تولید می کنند که همان طول مجموعه ویژگی های استخراج شده با کپسول و نشان دهنده میزان تحریک کپسول است.
به صورتی که یک کپسول می تونه نشان دهنده دقت هندسی یک عدد در یک تصویر باشه(در MNIST/در این مورد هر مجموعه داده عددی) و برای مثال با مشاهده عدد 1 تحریک شود.
حالا، شما چند کپسول از این تصویر بدست آورده اید که نشان دهنده مشخصات مختلف تصاویری است که امکان برقراری ارتباط مستقیم این تصور را با مجموعه طبقات ارائه شده توسط شما ( با عنوان PrimaryCaps) فراهم می کند.
در گام بعدی، فرایندی به نام «مسیریابی پویا» [dynamic routing] معرفی میشه که در آن تحریک های این کپسول ها را به صورت اطلاعات، به لایه جدیدی از کپسول ها هدایت می کنیم که از N کپسول تشکیل شده است. ولی این کپسول ها به جای تحریک شدن/فعال شدن با ویژگی های تصویر، تنها با دریافت ترکیبی از فعال سازی ها/تحریکات ناشی از لایه قبلی کپسول ها تحریک می شود.
لایه نهایی کپسول ها دقیقاً نماینده تمام N طبقه ایست که مجموعه طبقاتی را نشان می دهد که ما می خواهیم یک تصویر را در آن مجموعه طبقه بندی کنیم. از اینرو، ما اطلاعات استخراج شده را از یک لایه کپسول تحلیلگر تصویر به لایه ای هدایت می کنیم که نشان دهنده طبقه تصویر است.
این مقاله سعی داره نقاط ضعف شبکه های کانولوشن رو پوشش بده ، یکی دیگر مشکلات cnn تحمیل روش بالا به پایین برای یادگیری ویژگی های یک تصویر هست از طرفی ترکيب خاصی از پیکسل ها یا یک پیکسل می توانه CNN را به سادگی فریب بدهد. مثل حمله تک پیکسلی! این روش ۷۸.۸ درصد نمونه های آزمایش با دقت اطمینان ۹۸.۷ درصد تحت تاثیر قرار میدهد .
https://arxiv.org/abs/1710.08864
ایده اصلی این مقاله شهودی تر کردن ساختار نورون ها بر اساس اطلاعات موجود هست
کپسول ها 2 خروجی دارند: احتمال وجود شیئی از آن نوع و ویژگی های تعمیم یافته شیئ (وضع، جهت، مقیاس، رنگ و غیره).
موردی دیگری که وجود داره فعال سازی گروهی هست. هر کپسول بردارهای پیش بینی چندوجهی را از کپسولهای لایه زیرین دریافت می کند. که می تونیم اون رو به صورت یک ساختار والد فرزند (DAG) در نظر بگیریم.
https://en.m.wikipedia.org/wiki/Directed_acyclic_graph
مقاله زیر به خوبی برخی از جزییات رو پوشش میدهد
https://hackernoon.com/what-is-a-capsnet-or-capsule-network-2bfbe48769cc