大家好,欢迎大家来到我的专栏。
这次我给各位分享的是Mobilenet V2算法,其中有什么不足,希望大家可以帮助我一起改进。下面就开始我的分享吧。话不多说,我这里都是直接上干货。
论文地址:https://arxiv.org/pdf/1801.04381.pdf
如果不想去外网下载,我这里就直接下载好分享给大家了。
我们先来看一下MobileNet v2是什么呢?
MobileNet是专门针对于移动端所设计的,可以实现目标检测,图像分类,人脸属性识别,地理坐标定位等任务。
MobileNet V2的网络结构。输入一张224*224的图像,使用全卷积进行特征提取,接下来的网络都是bottleneck,网络中总共有17个bottleneck,在加上前后的两层,总共就有19层。
从图中可以看到,特征从24维上升到144维,然后再使用进行特征提取,类似于一个恒等映射,特征还是144维,然后再将通道数从144降到24,这就是它的一整个算法流程。
从输入到输出,先试用扩张系数进行升维,使得特征数增加,然后使用全卷积进行特征提取,然后再使用滑动步长为2的卷积进行降维操作。
MobileNetv2相比v1的两个主要改进:linear bottleneck和inverted residua。改进后的新结构称为bottleneck residual block。
其中的t就是扩张的系数,这里的t一般是取6,它的范围可以是5到10。通过这个表格的第一行到第三行我们就可以看出这里的特征是先升维,然后再使用深度可分离卷积进行特征提取,从而起到降参数的作用,最后是又对特征进行降维。
我们先来看一下Mobilenet v2和Mobilenet V1的比较,看一下有什么的异同点。
从上面这张图,我们来看一下相同点,从算法的结构组成上来看,这里都是用了深度卷积和点卷积进行特征提取。在理论上减少了8到9倍的参数。
另外,他们之间又有什么不同呢?不同就体现在算法的流程上了,我们从左向右看,V1先使用的DW,然后再使用PW。看一下V2的算法流程,先使用1*1卷积进行升维操作,然后再使用DW进行特征提取,然后再进行PW的操作,然后再进行降维。最后使用的激活函数也是不一样的。
MobileNet v2和Resnet相比,从算法的结构上看,看起来很像,从使用的算子上来看,都是使用了点卷积,MobileNet结构与众不同的就是使用深度卷积,使用了Rel6的激活函数。
简而言之,MobileNet v2用了MobileNetv1的算法流程,借鉴了Resnet算法结构。
这次分享与交流,其中难免有不足指出,欢迎大家批评指正。