Маршрутизация по согласию — это итеративный алгоритм в капсульных сетях, который настраивает коэффициенты маршрутизации \( c_{ij} \) между нижними капсулами \( i \) и верхними капсулами \( j \) на основе согласованности их активаций.
Предсказание нижней капсулы для верхней задаётся как \( \hat{u}_{j|i} = W_{ij} u_i \), где \( W_{ij} \) — матрица весов, а \( u_i \) — вектор активации нижней капсулы.
Сумма \( s_j = \sum_i c_{ij} \hat{u}_{j|i} \) нормируется с помощью нелинейной функции squash до \( v_j = squash(s_j) \).
Коэффициенты маршрутизации определяются через softmax-нормализацию логитов маршрутизации \( b_{ij} \):
\[ c_{ij} = rac{\exp(b_{ij})}{\sum_k \exp(b_{ik})} \]
Логиты маршрутизации итеративно обновляются на основе согласованности между \( \hat{u}_{j|i} \) и \( v_j \):
\[ b_{ij} \leftarrow b_{ij} + \hat{u}_{j|i} \cdot v_j \]
Это обновление способствует усилению связей, где предсказания нижних капсул совпадают с выходом верхних капсул, эффективно моделируя иерархические отношения между признаками.
Определение:
«Маршрутизация по согласию — это итеративный механизм маршрутизации в капсульных сетях, который настраивает силу связей между слоями капсул на основе согласованности их активаций для моделирования иерархических отношений признаков.»
Источник:
Sabour, S., Frosst, N., & Hinton, G. E. (2017). Dynamic Routing Between Capsules. Advances in Neural Information Processing Systems (NeurIPS).