https://www.jianshu.com/p/c2a0ba5bb3d1
参数量
参数量是参与计算参数的个数, 占用内存空间,假设输入通道和输出通道都是 1,核大小为#alt=)
&,输入 map 大小为
#alt=)
,输出 map 大小为#alt=)
,考虑偏置,不补 0 的卷积。
其参数量为:
若考虑输入通道
和输出通道
,则参数量为:%2B1)*C_%7Bout%7D#alt=)
计算量(乘加次数)
MAC(Multiply Accumulate),需要考虑输出 map 的大小,1 个 MAC 算两次操作
假设输入通道和输出通道都是 1,核大小为 K*K,输入 map 大小为
#alt=)
,输出 map 大小为#alt=)
,考虑偏置,不补 0 的卷积。
其计算量为:
若考虑输入通道
和输出通道
,则计算量为:
FLOPs(floating point operations)
浮点运算量,指计算量,跟乘加次数有点不一样,若考虑偏置
则 FLOPs =H_%7Bout%7DW%7Bout%7D*C%7Bout%7D#alt=)
不考虑偏置的情况下
则 FLOPs =H_%7Bout%7DW%7Bout%7D*C%7Bout%7D#alt=)
注意:这里乘和加分开,加的操作因为 n 个数相加所以减 1 了,考虑偏置则补掉了加 1
可分离的卷积具体操作是先对输入 map 每单个 channel 进行卷积的操作,然后再进行 1 维卷积实现输出通道的改变。
假设输入通道和输出通道都是 1,核大小为#alt=)
&,输入 map 大小为
#alt=)
,输出 map 大小为#alt=)
,考虑偏置,不补 0 的可分离卷积。
考虑输入通道
和输出通道
参数量:
#alt=)
, 后面加 1 是偏置
MAC 计算量:
FLOPs 计算量为:
H_%7Bout%7DW%7Bout%7D%2B(C%7Bin%7D211)H%7Bout%7D*W%7Bout%7D*C_%7Bout%7D#alt=)