[MobileNet] V2和V1的对比
作者:互联网
结构对比
MobileNet v1的深度可分离卷积(depthwise separable convolution)分为Depthwise convolution与Pointwise convolution。层级结构如下:
MobileNet v2在Depthwise convolution之前添加一层Pointwise convolution。层级结构是这样:
为什么多了一层Pointwise convolution
MobileNet v1的深度可分离卷积中的Depthwise卷积的Kernel数量取决于上一层的Depth,也就是Depthwise卷积自己没有改变通道数的能力,Depth也就是通道数。
MobileNet v1设置了两个超参数,用来控制模型的大小与计算量,具体如下:
通道乘子:用于控制特征图的通道数,记做α,当α<1时,模型会变得更薄,可以将计算量减少为原来的α 2 分辨率乘子:用于控制特征图的尺寸,记做ρ,在相应的特征图上应用该乘子,也可以有效降低每一层的计算量。
当加一层Pointwise convolution就可以升维,也可以降维,在MobileNet v2中加的这一层是用做升维。Pointwise卷积升维之后,Depthwise卷积就可以在高维度工作。
这一层的Pointwise 卷积就可以叫expansion卷积,这一层就可以叫expansion layer,因为它用来升维了。升了多少倍或者说通道扩大了多少倍就有了expansion factor。这里144/24=6,那么6就是expansion factor(膨胀系数)
下图中的t表示就是expansion factor 用来表示通道扩张倍数,c表示输出通道数,n表示重复次数,s表示步长stride
V2论文中的表示:
第一行表示升维,第二行卷积,第三行降维。第一行的升维叫 Expansion Layer,第二行的卷积叫 Depthwise Layer,第三行的降维叫 Projection Layer。
什么是倒残差
v1的残差两头粗,中间细。现在v2中间粗,两头细。
线性瓶颈
1×1卷积小像个瓶口所以叫瓶颈。再说linear,这个图是从下往上看的,看最后的逐点卷积,之前的逐点卷积是升维的,到最后的逐点卷积就是降维,高维加非线性很好,但是低维也加非线性就会把特征破坏掉,不如线性的好,所以1*1逐点卷积后不加ReLU6 ,改换线性。
标签:MobileNet,convolution,Depthwise,卷积,V1,V2,升维,Pointwise 来源: https://blog.csdn.net/qq_38131812/article/details/121469231