GoogLeNet,核心亮点就是Inception,网络的最大特点是用全局平均池化取代全连接层,减少了模型计算量,使得模型训练速度更快并且减轻了过拟合。
Inception目前已经有v2,V3,V4版本,主要针对解决深层网络以下3个问题:
- 参数太多容易过拟合,训练数据集有限。
- 网络越大计算复杂度越大,难以应用。
- 网络越深,梯度往后越容易消失,难以优化模型`。
Inception
Inception的核心思想是通过增加网络深度与宽度并减少参数的方法解决问题,并提高模型精度。Inception的结构是将1x1、3x3、5x5的卷积核对应的卷积操作和3x3的滤波器对应的池化操作堆叠而成,一方面增加网络宽度,另一方面增加了网络对尺度的适应性,结构图如图1所示。
Inception v1
Inception v1模型在原有的Inception模型上做了些改进,在3x3、5x5的卷积核与最大池化层后分别添加了1x1的卷积核,降低维度。1x1的卷积增加特征变化与非线性变化所需计算量更小。结构图如图2所示.。
Iception v1模型的4个分支在最后通过concat连接
Inception v2
Inception v2模型在V1的基础上增加了BN层,在batch范围内对每个特征通过分别进行归一化,同时还使用了梯度截断,增加模型稳定性。并且 Inception v2中采用两个3x3的卷积核代替了5x5的卷积,减少了计算。结构图如图3所示。
Inception v3
Inception v3网络核心思想是将卷积核进行分解,NxN分解为1xN与Nx1,降低参数数量与计算量。模型还取消了浅层辅助分类器。
Inception v4
Inception v4在Inception模型基础上结合残差技术的特点进行了结构优化调整,将4个卷积模型变为6个卷积模型,但没有使用残差连接。而Inception-ResNet V2网络是在Inception V3基础上直接加入残差连接,二者结构复杂度不相上下。残差连接在Inception网络中具有提高网络准确率但不会提升网络计算量。