胶囊路由指的是胶囊网络中一个迭代过程,其中低层胶囊的输出被传递并加权到高层胶囊,以形成一致的层次表示。
形式上,动态路由通过一致性(dynamic routing by agreement)中,低层胶囊 i 与高层胶囊 j 之间的权重(路由系数)c_{ij} 是通过对所谓的路由 logits b_{ij} 进行 softmax 计算得到的:
c_{ij} = softmax(b_{ij})
预测 ŷ_{j|i} 是通过低层胶囊的输出 u_i 与权重矩阵 W_{ij} 相乘得到的:
ŷ_{j|i} = W_{ij} u_i
高层胶囊的输入 s_j 是预测的加权和:
s_j = ∑_i c_{ij} ŷ_{j|i}
高层胶囊的输出 v_j 通过对 s_j 应用非线性挤压函数(squashing function)计算得到。
在多次路由迭代中,logits b_{ij} 会根据预测 ŷ_{j|i} 与输出 v_j 之间的一致性进行调整,以细化路由系数。
该方法使得胶囊仅将与其预测一致的信号传递给上层胶囊,从而建模部分与整体的关系。
定义:
胶囊路由是胶囊网络中的一种迭代机制,根据信号预测的一致性动态加权胶囊间的信号传递,以建模数据中的层次结构和部分-整体关系。
来源:
Sabour, S., Frosst, N., & Hinton, G. E. (2017). Dynamic Routing Between Capsules. Advances in Neural Information Processing Systems (NeurIPS).