在设计一个 CNN 时,通常要考虑两个事情,即计算量和参数量。前者决定了网络训练的快慢,后者决定了计算设备需要多大的内存或显存。
参数量指的是卷积核中的参数的数量,计算量指的是卷积神经网络执行数值运算的次数。
由于参数共享,参数量只与特征图 feature map 的数量有关,而与 feature map 的大小无关,计算量与二者都有关。
符号 | 解释 |
---|---|
M | 输入通道 |
N | 输出通道 |
(K,K) | 卷积核 |
(Hin,Win) | 输入特征图 |
(Hout,Wout) | 输出特征图 |
卷积类型 | 参数量 | 计算量 | 特点 |
---|---|---|---|
标准卷积 | K x K x M x N | K x K x M x N x Hout x Wout | 卷积核 channel = 输入特征图 channel;输出特征图 channel = 卷积核个数 |
深度可分离卷积 | K x K x M + M x N | K x K x M x Hout x Wout + M x N x Hout x Wout | 深度卷积卷积核 channel = 1;输入特征图 channel = 卷积核个数 = 输出特征图 channel |