卷积中参数量和计算量

前言

本文旨在学习和记录,如需转载,请附出处https://www.jianshu.com/p/c2a0ba5bb3d1

普通卷积

参数量

参数量是参与计算参数的个数,占用内存空间,假设输入通道和输出通道都是1,核大小为&,输入map大小为

,输出map大小为,考虑偏置,不补0的卷积。

其参数量为:

若考虑输入通道和输出通道,则参数量为:

计算量(乘加次数)

MAC(Multiply Accumulate),需要考虑输出map的大小,1个MAC算两次操作

假设输入通道和输出通道都是1,核大小为K*K,输入map大小为

,输出map大小为,考虑偏置,不补0的卷积。

其计算量为:

若考虑输入通道和输出通道,则计算量为:

FLOPs(floating point operations)

浮点运算量,指计算量,跟乘加次数有点不一样,若考虑偏置

则FLOPs =

不考虑偏置的情况下

则FLOPs =

注意:这里乘和加分开,加的操作因为n个数相加所以减1了,考虑偏置则补掉了加1

可分离卷积

可分离的卷积具体操作是先对输入map每单个channel进行卷积的操作,然后再进行1维卷积实现输出通道的改变。

假设输入通道和输出通道都是1,核大小为&,输入map大小为

,输出map大小为,考虑偏置,不补0的可分离卷积。

考虑输入通道和输出通道

参数量:

, 后面加1是偏置

MAC计算量:

FLOPs计算量为:

参考:

https://www.zhihu.com/question/65305385/answer/451060549

说明

如有错误,欢迎指正!

你可能感兴趣的:(卷积中参数量和计算量)