پیش از این در ارتباط با نقاط ضعف شبکه های کانولوشنی صحبت کرده بودیم و راه حلی مثل شبکه کپسولی را ارایه کردیم. با این حال، این روش دارای ضعفهایی است و روی این ضعفها مقالات متعددی ارایه شده اند که هر یک سعی کرده اند نقاط ضعف را بهبود ببخشند. حل هر یک از این نقاط ضعف می تواند موضوعی برای پایان نامه باشد.
Background Texture
یکی از شناخته شده ترین ضعفها مربوط به texture موجود در تصاویر است. شبکه های کپسولی می توانند خیلی خوب کار کنند برای viewpoint هایی که ندیده اند ولی لازم است که این شبکه ها بتوانند سایر اجزای تصویر را نیز به نحو مناسب بیان کنند. این دقیقا نقطه ضعف این شبکه ها است. وقتی تصویر شلوغ می شود، عملکرد این شبکه ها کاهش پیدا می کند. اگر مقالاتی که هینتون در سالهای 2017
، 2018
و 2019
کار کرده را بررسی کنید، می بینید که روشهای ارایه شده، روی دیتاستی مثل imagenet نیست. بلکه اصلا شبکه ها به صورت کلی روی دادگانی بدون texture امتحان شده اند تا قدرت تعمیم پذیری روی viewpoint های متفاوت بررسی شود. در مقاله 2019
صراحتا می بینید که روش روی cifar شکست می خورد. البته با وجود ذکر این ضعف، مقالات متعددی را می توانید پیدا کنید که سعی کرده اند این مشکل را حل کنند؛ با این حال، این مشکل در شبکه های کپسول وجود دارد.
محاسبات و پارامترهای زیاد
همانطور که ذکر شد، شبکه های کپسول روی تصاویر با texture پیچیده خیلی خوب نیستند. راه کار احتمالی که به ذهن می رسد این است که تعداد کپسولها را زیاد کنیم. در مقاله 2017
ارایه شده بوسیله هینتون، این کار عملی نیست؛ بدلیل اتصال دو به دوی کپسولها در لایه های پی در پی، تعداد محاسبات و پارامترها به شدت زیاد می شد و کاملا این شبکه با شکست مواجه می شد برای دادگان پیچیده. در سال 2018
، مقاله هینتون تعداد محاسبات را با تکنیکی جالب کاهش داد و به همین سبب، شبکه کپسول قابلیت عمیق شدن پیدا کرد؛ با این حال، همچنان روی texture های پیچیده جوابگو نبود. از سویی، همچنان تعداد محاسبات به خاطر فرآیند routing زیاد بود و با عمیق تر کردن شبکه، هم تعداد پارامترها و هم محاسبات، زیاد می شد و از طرفی دیگر تعداد routing ها بیشتر می شدند که به شدت زمانگیر بود. در سالهای اخیر مقالات متعددی به چاپ رسیده اند تا این نقطه ضعف را حل کنند؛ برای مثال، خود هینتون سال 2019
، فرآیند routing را به کل حذف کرد و از یک ایده هیجان انگیز دیگری استفاده کرد تا نیاز به routing نباشد.
رابطه part-whole یا whole-part
یکی از کلیدی ترین کارهایی که شبکه های کپسول انجام می دهند، پیدا کردن رابطه بین اجزای مختلف object و خود object است. ولی دو نگاه وجود دارد. در ابتدا تصور می شد که لازم است با استفاده از اجزا، بتوانیم شکل کل جسم را تخمین بزنیم. این روش ضعفی داشت و خود هینتون به آن آگاه بود. ما اگر یک ستاره را داشته باشیم، نمی توانیم بگوییم صورت فلکی آن در چه وضعی قرار دارد؛ به عبارت ساده تر، اگر یک شکل دایره ای داشته باشیم، با چرخش آن هیچ چیزی از شکل object ای که آن دایره را در بر می گیرد، نمی فهمیم. دایره، همچنان دایره است و فرقی نکرده با چرخش. بر همین اساس، در ارایه مقاله 2019
، هینتون به صراحت بیان کرد که تا قبل از آن تاریخ، هر شبکه کپسولی که وجود داشته، غلط بوده است. شبکه های کپسول باید به دنبال پیدا کردن رابطه کل به جز باشند نه عکس آن که تا آن روز باب بود. پیدا کردن رابطه whole-part خیلی از مشکلات را حل می کرد. در این زمینه که مقالات آن تازه هستند، روش های جالبی وجود دارد.
فرآیند routing
به صورت کلی اگر نگاه کنیم، فرآیند routing ایده بسیار جالبی است و بسیار مورد نیاز اگر با فلسفه نیاز به شبکه کپسول آشنا باشیم؛ با این حال، این فرآیند بسیار زمانبر است. دو ایده کلی وجود دارد در شبکه های کپسولی. براساس ایده اول، از این فرآیند استفاده کنیم و سعی کنیم با روشهایی که مبتنی بر جبر هستند، آن را بهبود بخشیم تا کارهای مورد نیاز را به درستی و به سرعت انجام دهیم. در ایده بعدی که خود هینتون سال 2019
مطرح کرد، فرآیند routing به کل حذف می شود و از یک ساختار autoencoder ای برای شبکه های کپسول استفاده می شود. به صورت کلی نمی توان ایده routing را نقطه ضعف دانست ولی بدلیل اینکه فرآیند زمانبری است، مقالات متعددی چاپ شده اند که سعی کرده اند این فرآیند را بهبود بخشند؛ این به این معنی است که فرآیند routing دارای نقاط ضعفی است که هر بار سعی می شود بهبود داده شود. به هر نحو، در صورت تمایل به کار کردن روی شبکه های کپسول، لازم است تصمیم گیری شود که از routing استفاده شود یا نه.