本文主要是介绍ShuffleNetv2 自学笔记,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
v2是对v1的进一步改进,作者提出网络的计算复杂度不能只看FLOPs,并提出了4条设计高效网络的准则,依据这几条准则提出了新的block设计。
原因分析
FLOPs知识衡量模型速度一个间接指标,speed才是直接的指标。作者认为除了FLOPs还有一些需要考虑的因素,MAC(memory access cost)(内存访问的时间) 、并行等级(在相同FLOPs下并行度高的网络速度更快)、相同的FLOPs在不同的平台上执行消耗时间也不同。
如何设计一个高效的网络
G1:当卷积层的输入特征矩阵与输出特征矩阵channel相同时MAC最小(保持FLOPs不变时)。
G2:当GConv的groups增大时(保持FLOPs不变时),MAC也增大。
G3::网络碎片化(分支)程度越高,速度越慢。虽然碎片化会提高网络的效果,但是会降低网络的速度。
G4:Element-wise操作(对元素操作,例如add,relu)带来的影响是不可忽视的。他们通常
这篇关于ShuffleNetv2 自学笔记的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!