Я читал дюжину или около того ресурсов, объясняющих капсульные сети, и есть некоторые детали, которые, кажется, затушеваны, или люди могут принять их как должное, и я просто не понял их правильно. Надеюсь, кто-то с большим пониманием topi c сможет мне помочь. Кажется, я застрял в некоторых моментах. Также заранее прошу прощения за поток вопросов.
Итак, насколько я понимаю, капсула выводит вектор, состоящий из вероятности нахождения, а затем в основном столько атрибутов, сколько разработчик желает включить. Но здесь я не смог найти детали.
Решает ли дизайнер на самом деле, какие атрибуты включать, или это похоже на фильтры в CNN, которые net просто "придумывают" с атрибутами, которые нужно включить в вектор. Если так:
1.1, как получается, что соответствующие нейроны реагируют только на атрибут destinct и придумывают соответствующий атрибут?
1.2 Насколько я понял одно и то же измерение в векторах данные из разных капсул одного и того же слоя относятся к одному и тому же атрибуту. Как это удостоверилось? До сих пор я не понимаю, как они могли бы изучать один и тот же атрибут в одном и том же месте.
Независимо от первого вопроса и действительно титульного вопроса: как капсула решает, что это одно и то же? особенность но получилась. И как он решает, что только один или несколько атрибутов отличаются, но это в основном одна и та же особенность? Капсула «пробует» разные ориентации, как если бы CNN запускал фильтр в разных регионах?
CNN основаны на «перемещении» фильтра по сетке с последующим выводом матрицы значений в основном дает продукты фильтра и соответствующего региона. Я не совсем понял, как это переводится в капсульные сети. Делают ли капсулы это тоже, а затем выводят матрицу векторов или они пропускают эту часть и в основном просто возвращают вектор, содержащий наиболее вероятную находку. Если так, как это работает? Или они выполняют сканирование, но вместо матрицы возвращают список векторов, которые содержат свои позиции x и y вместо того, чтобы неявно включаться их позицией в матрицу?