胶囊网络精华浓缩版第一部分中,我们就吐槽过Max pooling的一堆缺陷:
- 虽然最大池化层可帮助辨别图像中元素的位置关系,但是有太多信息丢失(pooling操作“粗暴地”把局部相邻像素点集压缩成一个像素点)
- 缺乏空间分层和空间推理能力,缺乏“举一反三”的能力
当我们深入看胶囊网络的工作方式,我们会感觉胶囊网络就是为改进Max Pooling而生的:
上图胶囊网络整体架构中,卷积层Conv1输出后,跟的不再是Max Pooling层, 而是主胶囊层(PrimaryCaps layer)和数据胶囊层(DigitCaps layer)。
这些胶囊层到底是如何工作的?我们先从胶囊层和一般的全连接层入手。
一般的全连接层是这样工作的:
对于上一层Max Pooling输出的所有标量(x1, x2, x3)与权重(w1,w2,w3)做卷积求和操作。最后,使用非线性激活函数 f(•)输出预测值hj 继续阅读理解Hinton胶囊网络之精华浓缩版,第二部分: 胶囊网络是如何工作的?(Capsule Networks)