本文主要是介绍关于卷积神经网络中如何计算卷积核大小(kernels),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
首先需要说明的一点是,虽然卷积层得名于卷积( convolution )运算,但我们通常在卷积层中使用更加直观的计算方式,叫做互相关( cross-correlation )运算。 也就是说,其实我们现在在这里提到的卷积运算,不是数学意义上的卷积运算,而是说在深度学习领域,大家通常将数学中的的互相关运算称之为卷积运算,这一点首先需要作出明确地声明。
计算卷积
我们可以将卷积运算分成三部分,如下图:
其中:
- 输入可以是训练数据,也可以是上层网络的输出;
- 卷积核是整个卷积网络的主要参数部分;
- 输出就是计算的结果。
详解:
在卷积运算中,卷积核从输入的最左上方开始,按从左往右、从上往下的顺序,依次与输入进行计算。 计算方式为: 输入数组的子数组元素与卷积核中元素对应相乘,并求和,得出输出数组对应位置中的结果。 例如图中37
就是由淡黄色数组中的[1425]
与卷积核中的[1324]
对应相乘得到的,即: 37=1∗1+2∗2+4∗3+5∗4
之后将卷积核向右滑动,继而开始让下一个数组[2536]
与卷积核进行同样的计算,之后是[4758]
以及[5869]
,可以列出计算式: 47=2∗1+3∗2+5∗3+6∗4
67=4∗1+5∗2+7∗3+8∗4
77=5∗1+6∗2+8∗3+9∗4
这篇关于关于卷积神经网络中如何计算卷积核大小(kernels)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!