视频讲解
ShuffleNet V1
GConv虽然能够减少参数与计算量,但GConv中不同组之间信息没有交流,为了解这种问题,作者提出了Channel Shuffle的概念。
作者将所有的1×1的卷积和输出的1×1的卷积全换成了group卷积。
相比之下ShuffleNet的FLOPs最小。
ShuffleNet V2
FLOPS:全大写,指每秒浮点运算次数,可以理解为计算的速度。是衡量硬件性能的一个指标。(硬件)
FLOPs:s小写,指浮点运算数,理解为计算量。可以用来衡量算法/模型的复杂度。(模型)在论文中常用GFLOPs(1 GFLOPs=10^9 FLOPs)
FLOPs只是衡量模型运算的间接指标,最直接的还是速度。还应考虑MAC(内存访问的时间成本),并行等级(在相同的FLOPs下,并行度高的模型要比并行度低的模型速度要快)。
四个设计高速网络准则:
1.当卷积层的输入特征矩阵与输出特征矩阵channel相等时MAC最小(保持FLOPs不变时)
2.当GConv的groups增大时(保持FLOPs不变时),MAC也会增大
3.网络设计的碎片化程度越高,速度越慢
4.Element-wise操作带来的影响是不可忽略的(包括激活ReLu和相加的操作)
EfficientNet V3
b增加了网络的宽度,c增加了网络的深度,d调整了分辨率。
Efficient Net B0 baseline network的网络结构