MobileNet V2 模型总结

前面我们总结了MobileNet V1的结构和设计原理,MobileNet V2在V1的基础上进一步做了改进。他的一个Motivation是: 低维度的特征经过非线性的激活函数后会损失很多有用的信息。

可以这么理解:考虑V1的结构有DW(depth wise convolution)和PW(point wise convolution)两种不同的卷积,每一种卷积之后都会接一个batch normalization层和ReLu6()层,在PW之后低维的信息再通过ReLu6()会损失很多有价值的信息。

所以作者采用了residual connection和linear bottleneck 两种措施来缓解这个问题。V1和V2结构的区别:
V1:

  • 将传统的卷积换成DW和PW相结合的形式,极大程度的减少的计算量
    MobileNet V1结构

V2:

  • 为了减少ReLu6()对于PW结果的压缩效应,将最后的PW换成Linear bottleneck(1*1 projection layer),只完成通道的压缩,不考虑再将结果进行激活(最后的低维信息不使用任何激活函数);
  • 将激活函数对应的层前移(expansion layer),在高维信息上进行非线性的映射;
  • 引入残差结构,加快梯度的反传,加快网络的收敛。
    MobileNet V2结构

参考资料:

  • https://machinethink.net/blog/mobilenet-v2/
  • https://github.com/jmjeon94/MobileNet-Pytorch/blob/master/MobileNetV2.py
posted @ 2020-12-19 10:58  xzhws  阅读(401)  评论(0编辑  收藏  举报