Routing Dinámico en Capsule Network explicado para expertos


Routing Dinámico en Capsule Network se refiere a un algoritmo de enrutamiento iterativo que optimiza la distribución de activaciones de cápsulas inferiores a cápsulas superiores en una red neuronal para representar relaciones jerárquicas entre características.

Formalmente, los coeficientes de enrutamiento \( c_{ij} \) entre la cápsula inferior \( i \) y la cápsula superior \( j \) se definen mediante una normalización softmax sobre los logits de enrutamiento \( b_{ij} \):

\[ c_{ij} = rac{\exp(b_{ij})}{\sum_k \exp(b_{ik})} \]

La salida de la cápsula superior \( s_j \) se obtiene como la suma ponderada de las predicciones \( \hat{u}_{j|i} = W_{ij} u_i \):

\[ s_j = \sum_i c_{ij} \hat{u}_{j|i} \]

Los logits de enrutamiento \( b_{ij} \) se actualizan iterativamente basándose en la concordancia entre \( \hat{u}_{j|i} \) y la salida \( v_j = squash(s_j) \), donde la función squash realiza una normalización no lineal.

Este mecanismo permite a la red capturar relaciones espaciales complejas y de parte-todo, y fortalece la capacidad para reconocer objetos correctamente incluso ante variaciones.


Definición:
«El routing dinámico en Capsule Networks es un mecanismo iterativo para ponderar adaptativamente las conexiones entre capas de cápsulas, que modela relaciones jerárquicas de características y mejora el reconocimiento de estructuras complejas.»


Fuente:
Sabour, S., Frosst, N., & Hinton, G. E. (2017). Dynamic Routing Between Capsules. Advances in Neural Information Processing Systems (NeurIPS).