Czym jest Kapsułkowa sieć neuronowa (capsule neural network, CapsNet)?
Kapsułkowa sieć neuronowa, w skrócie CapsNet, opisuje architekturę głębokiego uczenia opracowaną przez Geoffreya Hintona, Sarah Sabour i Nicholasa Frossta, zaprezentowaną w 2017 roku na łamach NeurIPS. Model wprowadza pojęcie kapsuły, czyli niewielkiego zbioru neuronów opisujących nie tylko prawdopodobieństwo wykrycia cechy, lecz także jej właściwości przestrzenne, takie jak orientacja czy skala. Dzięki temu sieć lepiej zachowuje relacje pomiędzy częściami obiektu, co przekłada się na większą odporność na zniekształcenia perspektywy.
Jak dokładnie działa Kapsułkowa sieć neuronowa (capsule neural network, CapsNet)
Podstawową jednostką przetwarzania jest kapsuła reprezentująca wektor, a nie skalar. Długość wektora odpowiada prawdopodobieństwu obecności obiektu, natomiast kierunek — parametrom położenia. Między warstwami kapsuł stosuje się mechanizm dynamic routing, który iteracyjnie ustala, jak silnie wyjście kapsuły niższej warstwy powinno wpływać na kapsułę wyższej warstwy. W praktyce oznacza to, że fragmenty obrazu są agregowane w całości, jeśli do siebie pasują geometrycznie. Kontrastuje to z klasycznymi sieciami konwolucyjnymi, gdzie obiekty są rozpoznawane głównie przez hierarchiczne łączenie cech bez jawnej informacji o relacjach przestrzennych.
Krótki przykład działania
W zadaniu rozpoznawania dwóch nakładających się cyfr (tzw. dataset Multi-MNIST) CapsNet potrafi jednocześnie odseparować i poprawnie sklasyfikować każdą cyfrę, dzięki czemu osiąga wyższą dokładność niż standardowe CNN wymagające dodatkowych warstw lub technik segmentacji.
Zastosowania w praktyce
Choć badania nad CapsNet dopiero zyskują na popularności, architektura znajduje zastosowanie w analizie obrazów medycznych, rozpoznawaniu ruchu w wideo oraz w systemach wizyjnych dla robotyki, gdzie relacje przestrzenne są kluczowe dla poprawnej interpretacji sceny.
Zalety i ograniczenia
Najważniejszą zaletą pozostaje zdolność do zachowania ekwiwariancji względem transformacji, co zmniejsza potrzebę rozbudowanych zbiorów danych z augmentacją. Kapsuły charakteryzuje także większa interpretowalność — parametry wektorów można powiązać z konkretnymi właściwościami obiektu. Trudność stanowi za to koszt obliczeniowy dynamicznego trasowania oraz brak ustabilizowanych bibliotek produkcyjnych. W pomniejszych zadaniach testowych CapsNet przewyższa CNN, jednak w dużych zbiorach, np. ImageNet, wymaga dalszej optymalizacji, aby osiągnąć podobną wydajność.
Na co uważać?
Przy wdrożeniu należy monitorować czas trenowania, ponieważ iteracyjne trasowanie zwiększa liczbę operacji macierzowych. Istotne jest również odpowiednie skalowanie rozmiarów kapsuł: zbyt małe wektory ograniczają zdolność modelu do reprezentowania złożonych relacji, natomiast zbyt duże prowadzą do przeuczenia.
Dodatkowe źródła
Pełny opis architektury zawiera publikacja Dynamic Routing Between Capsules. Kontekst historyczny i uproszczone wyjaśnienia można znaleźć w haśle Wikipedia – Capsule neural network. Analizę porównawczą względem CNN prezentuje artykuł dostępny w repozytorium arXiv:1808.08842.


