如何计算一个卷积层的参数?

卷积层参数=(卷积长x卷积宽x卷积通道数+1)x卷积深度

Posted by yaohong on Sunday, October 25, 2020

TOC

如何计算一个卷积参数?

在计算卷积参数前,我们先来看几个小问题。

1.怎么判断一个卷积核有多少通道?

一个卷积核的通道数=前一层的通道数; 比如前一层是64x64x3的图像,那卷积核的通道数就是3层。

2.怎么理解卷积核数量和卷积核通道数?

如果把一个卷积核比喻成一本书,那卷积核的通道数就是一本书的页数。

卷积核数量我叫卷积深度会好理解些。

3.如果输入层是1024x1024x128,我们想得到输出层的长度为32,那卷积核的通道数是多少?

这里要特别注意,输出层的长度只与卷积核的数量(个数)有关系,即卷积核的数量应该为32个,那卷积核的通道数与输入层的通道数一层,这里输入层的通道数是128,故卷积核的通道数是128。

题目这样问,主要是为了提醒我们注意卷积核与卷积通道的区别。

4.看图如何判断卷积大小?

先看图:

conv_network

如上图,问SL.NO第2行CONV(f=5,s=1)表示的卷积大小是多少?

f=5如没特殊说明,卷积核的长和宽都一致,即5x5,卷积通道数为前一层的通道数,前一层是(32,32,3),说明卷积通道数是3;

那卷积数量是多少?卷积数量为本层输出的数量,本层输出是(28,28,8),期中8是输出数量,即卷积核数量是8;

综上,SL.NO第2行的卷积体积是5x5x3x8,以书本的例子来理解就是有8本书,每本大小是5x5,每本含有3页纸;

5.卷积神经网络中,如何计算卷积参数?

conv_network

卷积神经网络训练的卷积层,那卷积层的参数是怎么计算呢?

以上图为例,SL.NO第二行,最右边的608是怎么计算呢?

其计算方式如下:

卷积层参数=(卷积形状+1)x卷积深度

这里卷积深度是指卷积核的数量。

卷积形状=卷积长x卷积宽x卷积通道数,卷积的通道数等于上一层的通道数。

为什么要加1? 因为每个卷积核会配一个偏移值,卷积核的数量为8,就表示有8个偏移值。

因此,卷积层参数=(卷积长x卷积宽x卷积通道数+1)x卷积深度

现在,我们来计算下上图中 SL.NO第二行的卷积参数:608=(5*5*3+1)*8

REFERENCE:

1.Understanding and Calculating the number of Parameters in Convolution Neural Networks (CNNs)

「点个赞」

Yaohong

点个赞

使用微信扫描二维码完成支付