Inception V4 & Inception-ResNet
Paper : Inception-v4, Inception-ResNet and
the Impact of Residual Connections on Learning
Code : unofficial unofficial
摘要
In order to optimize the training speed, we used to tune the layer sizes carefully in order to balance the computation between the various model sub-networks.
相较于Inception V3,Inception V4在结构上并没有作出更多的创新,而是仔细调整Inception Module的构成。
网络结构
Inception V4 整体网络结构如下
Inception-ResNet 在这篇论文中作者提出了两个版本,V1和V2,其中Inception-ResNet V1 的计算资源上的消耗与Inception V3类似,而Inception-ResNet V2在计算资源上的消耗与Inception V4类似。ResNet版本与非ResNet的版本相比,ResNet版本只在前几层上使用Batch Norm技术,作者认为在整个网络中过分使用batch norm技术是危险的。
Inception-ResNet V1整体结构如下
Inception-ResNet V2整体结构如下
作者认为,如果滤波器数量超过1000,残差网络开始出现不稳定,同时网络会在训练过程早期便会出现“死亡”,意即经过成千上万次迭代,在平均池化层之前的层开始只生成0。通过降低学习率,或增加额外的batch norm都无法避免这种状况。为了解决这一问题,作者在将残差模块添加到**层之前,对其进行放缩能够稳定训练。通常来说,将残差放缩因子定在0.1到0.3。
核心观点
- 提出了Inception V4模型。
- 尝试将Inception 与ResNet相结合,提出了Inception-resnet模型。
- 残差的引入可以显著加速 Inception 的训练过程。