سلام
اگه این یه مدت که بحث Capsule Net داغه، مقالات و اخبار رو دنبال کرده باشید احتمالا در مورد ایده پایه CapsNet و مشکل مسیریابی با Pooling چیزایی خوندید
منظور از مسیریابی اینه که مثلا توی max pooling عنصر ماکزیموم رد میشه میره لایه بعدی، گرادیان هم از همون عنصر بر میگرده
اینکه max pooling می تونه به شبکه یه کوچولو (واقعا یه کوچولو)، translation invariant بده تا حدی درسته اما شاید مهمترین کارکرد pooling کم کردن اندازه feature map هاس
که این کار رو میشه با strided convolution هم انجام داد. یعنی به جای اینکه یه پیکسل یه پیکسل جلو برید، چندتا چندتا جلو میره، که همزمان هم کانولوشن انجام میشه هم اندازه کوچیک میشه
توی این مقاله هم نشون دادن که بدون کاهش چمشگیر دقت(روی دیتاستهای معروف)، میشه max pooling رو با strided convolution جا به جا کرد
https://arxiv.org/abs/1412.6806
اتفاقاتی که الان توی مقالات و deep learning می افته خیلی هاش فقط تجربس و روی دیتاستهایی که تست کردن تونستن جواب بگیرن ولی به هیچ وجه کلی و وحی منزل نیست
برای همین تجربه و آزمایش خیلی توی این زمینه مهمه. مثلا ممکنه همه مقاله ها اینطوری عمل کردن که max pooling دارن، و اینطوری به نظر برسه که پس وجودش خیلی واجبه و همیشه نتیجه رو بهتر میکنه اما واقعیت اینه که این قضیه همون تفکر استقراییه.