ResNet —-> EfficientNet

v1的做法:一个层级上配置不同尺寸的滤波器,默认1x1,3x3,5x5,max pooling,为了降低算力,在 3x3 和 5x5 卷积层之前添加额外的 1x1 卷积层,来限制输入信道的数量。尽管添加额外的卷积操作似乎是反直觉的,但是 1x1 卷积比 5x5 卷积要廉价很多,而且输入信道数量减少也有利于降低算力成本。不过一定要注意,1x1 卷积是在最大池化层之后,而不是之前。但是由于同样是深层网络,同样还是会遇到梯度消失的问题。9 个线性堆叠的 Inception 模块。额外添加两个辅助分类器,用作softmax函数操作。



MobileNet:精减CNN网络。解决的问题:目前大致有两类方法,一种是得到原生CNN网络的训练权重后,在真正进行模型部署时进行模型结构(Pruning)或权重参数(Compression)精减以使得我们能够以一种现实能接受的方式进行模型推理;另外一种则是直接训练出一种计算复杂度更低、训练参数更少的网络以满足实际生产环境部署的需求(MobileNet)。
做法:将一般的卷积过程分为了depthwise convolution(逐深度卷积)和pointwise convolution(逐点卷积),在损失一点精度的情况下,计算量大幅下降,速度更快,模型更小。深度可分离卷积并不是 3 x 3 DW 卷积直接连接了 1 x 1 的 PW 卷积而是通过 BN 和 ReLU 层后才连接上 PW 卷积。BN 层作用是对输入层进行归一化,这样可以大大提升模型泛化能力,
优势:整个网络参数比Inception小2.5倍,但是准确率比Inception高
MnasNet:将速度信息明确纳入搜索算法的主要奖励函数中.(FLOPS)。算法目的:寻求高准确,低延迟的算法。
方法:将CNN分为一个个独立的块,(独立搜索空间)允许不同的层使用不同的操作和连接。
对第 i 个 Block,由以下参数决定:
卷积类型(Convolutional ops ConvOp): regular conv (conv), depthwise conv (dconv), and mobile inverted bottleneck conv with various expansion ratios
卷积内核 Convolutional kernel size KernelSize: 3x3, 5x5.
跳跃层连接方式 Skip operations SkipOp: max or average pooling, identity residual skip, or no skip path.
输出滤波器尺寸 Output filter size Fi
每个 block 卷积层个数 Number of layers per block Ni.
ConvOp, KernelSize, SkipOp, Fi 决定每一卷积层架构,而 Ni 决定每一个 block 重复卷积层的次数。

神经网络结构搜索(NAS):搜索策略:强化学习基本思想-强化学习把架构的生成看成一个有自我思想的结构可以自己选择架构 的过程,通过在测试集上测试网络性能来获取奖励值 ( reward ),从而指导架构的生成。这里的算法都是用RNN控制器。RNN 控制器可以预测出以这些主题为基础的一般卷积单元,然后,多个单元按顺序堆叠。控制器的循环神经网络生成描述子网络结构的串,从而确定子网络的结构。EfficientNet:加宽网络、加深网络和增大分辨率。原因:单独优化一个维度Acc在80左右就很难提升了。做法:找到三个维度的最优scaling。网络结构作者主要借鉴了 MnasNet,采取了同时优化精度(ACC)以及计算量(FLOPS)的方法。


#FLOPS:是floating point operations per second的缩写,意指每秒浮点运算次数,理解为计算速度。
https://zhuanlan.zhihu.com/p/ https://www.jiqizhixin.com/articles/2018-05-30-7 https://zhuanlan.zhihu.com/p/
https://zhuanlan.zhihu.com/p/
https://zhuanlan.zhihu.com/p/

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/177789.html