MobileNetV3中的Boottleneck模块

MobileNetV3中的Bottleneck是网络中的基本模块,用于构建整个网络。

下面是MobileNetV3中Bottleneck的详细结构:

Bottleneck(input_channels, output_channels, expansion_factor, stride, use_se, activation)

其中,参数的含义如下:

  • input_channels: 输入通道数。
  • output_channels: 输出通道数。
  • expansion_factor: 扩展因子,控制中间扩展层的通道数。通常情况下,expansion_factor大于1。
  • stride: 步幅,控制该模块的下采样程度。
  • use_se: 是否使用SE模块,SE模块用于增强通道间的交互性。
  • activation: 激活函数,通常为ReLU或者HSwish。

Bottleneck模块的具体结构如下:

  1. 输入通过一个1x1卷积层进行通道数的调整,将通道数从input_channels调整为input_channels * expansion_factor
  2. 对调整后的特征图应用批归一化(Batch Normalization)。
  3. 使用激活函数进行非线性变换,通常为ReLU或者HSwish。
  4. 如果stride大于1,则应用一个 kxk 的深度可分离卷积(Depthwise Convolution)进行下采样,其中 k 是根据步幅计算得到的卷积核大小。
  5. 对下采样后的特征图应用批归一化
  6. 使用激活函数进行非线性变换。
  7. 如果use_se为True,则引入SE(Squeeze Exciting)模块,该模块用于增强通道间的交互性。SE模块包括全局平均池化(Global Average Pooling)、一个全连接层和激活函数。
  8. 使用1x1卷积层对特征图进行通道数的调整,将通道数从input_channels * expansion_factor调整为output_channels
  9. 对最终输出进行批归一化

以上就是MobileNetV3中Bottleneck模块的详细结构。整个网络由多个Bottleneck模块组成,通过堆叠和串联这些模块来构建整体的深度神经网络结构。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值