PP-LCNet

PP-LCNet《A lightweight CPU convolutional Neural network》百度的

前有阿里团队针对Nvidia-GPU端加速而设计的高推理速度高性能的GENet,现有百度团队针对Intel-CPU端加速而设计的高推理速度&高性能的LCNet。本文是百度团队结合Intel-CPU端侧推理特性而设计的轻量高性能网络PP-LCNet

PP-LCNet在推理延迟-精度均衡方面大幅优于ShuffleNetV2、MobileNetV2、MobileNetV3以及GhostNet

创新点

  • 以MobileNetV1中的DepthSepConv深度可分离卷积模块(就是深度卷积+1*1卷积,并且没有残差链接)作为基础模块,构建了一个类似MobileNetV1的BaseNet,融合了当前一些新的技术
  • 近年来,深度学习领域也提出各种更优秀的激活函数,而Swish系列则是其中的佼佼者,尤以H-Swish为最优。同样采用H-Swish替换BaseNet中的ReLU,性能大幅提升,而推理速度几乎不变。
  • 加入SE模块,将SE模块添加到接近网络尾部的模块,SE中的两个激活函数分别为SE和H-Sigmoid
  • 最后使用大的5*5卷积

创新点讲解

h-swish

image-20250602145153566

SE模块Squeeze-and-Excitation压缩与激励

  • 是一个很容易加入到网络中的东西
  • Transformation(Ftr)(转型):首先把w*h*c通过一个卷积变成w*h*u的特征
  • Squeeze(全局信息嵌入):然后把w*h*u的特征图通过全局平均池化变成一个1*1*C的一条特征
  • Excitation(自适应重新校正):然后过全链接变成C/r个通道,再通过ReLU,再通过全链接变回C通道,再通过sigmod,最后是一个1*1*c的一个特征
  • Scale重新加权:将这个1*1*c的一个特征(被称为注意力权重)加到每一个w*h*c的每一个通道中
  • image-20250602150203968

网络架构

image-20250602144817042