PP-LCNet: A Lightweight CPU Convolutional Neural Network

PP-LCNet Baidu

论文链接: https://arxiv.org/abs/2109.15099

一、 Problem Statement

大部分目前的轻量型网络都是基于ARM结构设备所开发的,很少网络会考虑到在Intel CPU上的运行速度。因此本文提出了三个问题:

  1. 怎么样提升网络,使得可以学习更强的特征表示能力,且不增加迟滞性。
  2. 什么东西可以在CPU上,使得一些轻量化模型的精度可以提升。
  3. 怎么样有效地结合不同的策略来进行基于CPU的轻量化模型的设计。

二、 Direction

基于MKLDNN(intel开发的开源项目,针对cpu上运行神经网络做了一些并行优化),提出一些方法提升精度的同时不增加推理时间。同时本文也提出了一些方法来获得精度与速度更好地平衡。

  • Better activation funtion
  • SE modules at appropriate positions
  • Larger convolution kernels
  • Larger dimension 1x1 conv layer after GAP

三、 Method

先来看一下整体的网络结构:

整体网络比较简单,使用了串联结构。同时使用了深度可分离卷积作为Basic block。 这个block没有shortcuts连接,因此没有额外的拼接或者相加的操作。这些操作不仅会导致推理速度的下降,而且在小模型上不会提升精度。 从以下策略,对这个BaseNet网络进行优化。

1. 更好的激活函数

MobileNet v3中提出了H-Swish, 本文也借鉴使用H-Swish。

2. 在正确的位置使用SE 模块

SE模块是一个通道注意力模块,也在MobileNet v3中使用了。因此,在Interl CPUs上,SE 模块稍微增加了一点推理时间,因此本文并没有在所有的网络层都使用SE模块。通过实验发现: 在网络的末尾,使用SE模块,会有较好的效果。因此,本文只在网络的末尾使用了SE模块。

3. 使用较大的卷积核

卷积核的大小通常会影响最后的网络性能。作者实验发现,在网络的末尾使用5x5的卷积核替换3x3会有比较好的效果,而且不需要改变所有网络层的卷积核大小。

4. 在GAP层之后,增大1x1卷积的通道数

作者发现,在GAP层之后,网络的维度比较小,直接用于分类层会丢失一些特征组合。因此,使用了1280通道数的1x1卷积层,提升模型的表征能力,同时只提升一点点推理时间。

四、 Conclusion

提出了一些策略,设计了一个网络,提升了轻量型网络在Intel CPUs上的性能。

Reference

PP-LCNet: A Lightweight CPU Convolutional Neural Network PP-LCNet Baidu论文链接: https://arxiv.org/abs/2109.15099一、 Problem Statement大部分目前的轻量型网络都是基于ARM结构设备所开发的,很少网络会考虑到在Intel CPU上的运行速度。因此本文提出了三个问题:怎么样提升网络,使得可以学习更强的特征表示能力,且不增加迟滞性。什么东西可以在CPU上,使得一些轻量化模型的精
一、 PP - LCNet : 一个轻量级的卷积 神经网络 我们提出了一个基于MKLDNN加速策略的轻量级卷积 神经网络 ,叫做 PP - LCNet ,他是一个能够用于多任务的轻量级模型。这篇 论文 提出了一些能在保持延迟不变的情况下提高模型准确率的方法。在这些优势的加持下, PP - LCNet 与之前预测速度差不多的模型相比更加准确。对于 计算机视觉 的一些下流任务(指具体应用),比如目标检测、语义分割等,该模型效果也很好。我们的实验是基于PaddlePaddle实现的可以直接在飞桨查看相关的项目事例。 二、模型提出的原因 轻量级网络模型
前段时间看到了百度新出的一篇 论文 ,提出了一种基于MKLDNN加速策略的轻量级CPU网络,即 PP - LCNet ,它提高了轻量级模型在多任务上的性能,对于 计算机视觉 的下游任务,如目标检测、语义分割等,也有很好的表现。以下是 论文 链接和开源的基于PaddlePaddle的实现。 arXiv: https://arxiv.org/pdf/2109.15099.pdf code: https://github.com/PaddlePaddle/PaddleClas 论文 很短,模型结构也十分简洁,没有特别创新的部
PP - LCNet : A Lightweight CPU Convolutional Neural Network ???? PDF Link ???? Github Code Section 1 介绍 随着模型参数和FLOPs的加大,模型越来越难以在基于ARM架构的移动端设备或者x86架构的CPU上取得较快的推理速度。虽然有许多优秀的移动端网络被设计出来,但是由于MKLDNN的限制,网络的推理加速效果并不理想。本文重新考虑了轻量级模型的构成,尤其是我们考虑了三个基础问题: 在不增加网络延时的前提下,如
提出了一个基于MKLDNN加速策略的轻量级CPU网络,命名为 PP - LCNet ,它提高了轻量级模型在多任务上的性能。 本文列出了可以在延迟几乎不变的情况下提高网络准确性的技术。通过这些改进, PP - LCNet 在相同的分类推理时间下,准确率可以大大超过以前的网络结构。如下图所示,它优于最先进的模型。并且对于 计算机视觉 的下游任务,也表现非常出色,比如物体检测、语义分割等。 所有的实验都是基于Padd 论文 名称: PP - LCNet : A Lightweight CPU Convolutional Neural Network 作者:Cheng Cui, Tingquan Gao, Shengyu Wei,Yuning Du… Code:https://github.com/PaddlePaddle/PaddleClas 总结了一些在延迟(latency)几乎不变的情况下精度提高的技术; 提出了一种基于MKLDNN加速策略的轻量级CPU网络,即 PP - LCNet 。 本文提出了一种基于MKLDNN加速策略的轻量级CPU网络,称为 PP - LCNet 。它提高了轻量级模型在多个任务上的性能。本文列出了在延迟几乎恒定的情况下提高网络精度的技术。通过这些改进, PP - LCNet 的精度在相同的推理时间,可以大大超过以前的网络结构。 由图1可以看出, PP - LCNet 精度提升且比MobileNetV3快3倍! 现有问题:随着...
本文提出了一种基于MKLDNN加速策略的轻量级CPU网络,即 PP - LCNet ,它提高了轻量级模型在多任务上的性能,对于 计算机视觉 的下游任务,如目标检测、语义分割等,也有很好的表现。 随着模型特征提取能力的提高及其模型参数和FLOPS数量的增加,在基于ARM架构的移动设备或者基于x86架构的cpu设备上实现快速推理变得困难.在这种情况下,已经提出了许多优秀的Mobile网络 ,但是由于MLKDNN的限制,这些网络的速度在启动MKLDNN的Interl CPU上并不理想. 在本文中,作者重新思考了在I
今天必须推荐一个由百度飞桨开源的项目-PaddleClas,该 Repo 提供了全球首个完整开源通用图像识别系统。 不仅如此,作为视觉任务的坚实底座,PaddleClas还提供了 35 个系列,近 200 个预训练模型和性能评估,力求为工业界和学术界提供更高效便捷的开发工具,为开发者带来更流畅优质的使用体验,实现行业场景实现落地应用。 想要获取更多PaddleClas相关介绍及教程文档可前往⬇️: 地址: https://github.com/PaddlePaddle/PaddleClas
PP -LinkNet:通过多阶段训练提高高分辨率卫星图像的语义分割 该存储库包含代码。如果您觉得此存储库有用,请引用我们的 论文 : @inproceedings{AnTran_ACMMM_2020, author = {Tran, An and Zonoozi, Ali and Varadarajan, Jagannadan and Kru pp a, Hannes}, title = { PP -LinkNet: Improving Semantic Segmentation of High Resolution Satellite Imagery with Multi-Stage Training}, year = {2020}, isbn = {9781450381550}, publisher = {Association for Computing Machinery}, address
1. 前言 PP LCNet 是百度团队结合Intel-CPU端侧推理特性而设计的轻量高性能网络 PP - LCNet ,所提方案在图像分类任务上取得了比ShuffleNetV2、MobileNetV2、MobileNetV3以及GhostNet更优的延迟-精度均衡。 论文 提出了一种基于MKLDNN加速的轻量CPU模型 PP - LCNet ,它在多个任务上改善了轻量型模型的性能。 如下图所示,在图像分类任务方面,所提 PP - LCNet 在推理延迟-精度均衡方面大幅优于ShuffleNetV2、MobileNetV2、Mobile
Automatic extrinsic calibration between a camera and a 3D Lidar using 3D point and plane corresponde Lift Splat Shoot Encoding Images from Arbitrary Camera Rigs by Implicitly Unprojecting to 3D 论文阅读笔记