SqueezeNet:AlexNet-level accuracy with 50x fewer parameters and 0.5MB model size

对AlexNet网络轻量化设计,主要有3个原则:1)使用1x1卷积替代3x3卷积;2)3x3卷积前先通过1x1卷积降低通道数;3)延迟下采样

什么是SqueezeNet?

  • SqueezeNet-20230408141138
  • SqueezeNet是一个轻量化的分类模型,可以在保证模型精度不降低的前提下,参数量相比 AlexNet少了50倍,运行速度更快
  • SqueezeNet基于3个原则设计轻量化网络:1)大量使用1x1卷积核替换 3x3卷积核;2)减少3x3卷积核的输入通道数;3)延迟下采样

SqueezeNet的设计策略?

  • 1)大量使用1x1卷积核替换 3x3卷积核: 从 AlexNet 到 ResNet均使用3x3的卷积,此处部分3x3采用1x1替代,参数可以降低9倍
  • 2)减少3x3卷积核的输入通道数: 减少卷积核的参数
  • 3)延迟下采样: 使得卷积层具有更大的激活图

SqueezeNet的网络结构?

  • SqueezeNet-20230408141139
  • 上图是 SqueezeNet 的3个版本,原始版本、跳跃连接和瓶颈模块。每个版本一共包含了8Fire moudle,其中在第3和第5个 fire module 使用了3x3的最大池化,对应池化层的 stride 都为2 x2
  • 延迟池化的策略,可以保留较大的Feature Map,提升网络的精度

SqueezeNet的Fire module?

  • SqueezeNet-20230408141138
  • squeeze:采用 1 x1 卷积核对上一层 feature map 进行卷积,其主要目的是降低 feature map 的通道数
  • expand:使用 Inception block结构,包括1x1 和3x3卷积,然后拼接