开局先祭出一张大神图:
比如我们有一张5*5*3的图作为输入,卷积核的尺寸为3*3,则卷积核的输入深度为3,这里的3对应着输入的3通道,卷积核的数量为2,则卷积核的参数应为:(3*3*3)*2。
卷积过程为,首先因为输入图像有3层,所以卷积核也有3层,这三层卷积核分别对应输入图像的每一层,然后卷的时候这三层同时卷积,卷完之后将得到的三层feature map直接相加为一层,这就是一个卷积核所做的事情。由于我们卷积核的数量为2,所以会再次进行这个操作,又得到一层,这样经过两个卷积核卷积之后,会得到两个feature map图,即输入5*5*3,stride=2,输出为3*3*2,不过一般我们会选择卷积的数量为2^n个,比如64、128个,如果是这样的话,最后会得到我们常见的3*3*64/128了。
更直观一点的图:
关于卷积层尺寸的计算原理:以下转自:知乎
- 输入矩阵格式:四个维度,依次为:样本数、图像高度、图像宽度、图像通道数
- 输出矩阵格式:与输出矩阵的维度顺序和含义相同,但是后三个维度(图像高度、图像宽度、图像通道数)的尺寸发生变化。
- 权重矩阵(卷积核)格式:同样是四个维度,但维度的含义与上面两者都不同,为:卷积核高度、卷积核宽度、输入通道数、输出通道数(卷积核个数)
- 输入矩阵、权重矩阵、输出矩阵这三者之间的相互决定关系
- 卷积核的输入通道数(in depth)由输入矩阵的通道数所决定。(红色标注)
- 输出矩阵的通道数(out depth)由卷积核的输出通道数所决定。(绿色标注)
- 输出矩阵的高度和宽度(height, width)这两个维度的尺寸由输入矩阵、卷积核、扫描方式所共同决定。计算公式如下。(蓝色标注)
本文最后更新于2022年11月7日,已超过 1 年没有更新,如果文章内容或图片资源失效,请留言反馈,我们会及时处理,谢谢!