CNN公式推导
1 前言
在看此blog之前,请确保已经看懂我的前两篇blog【深度学习笔记1(卷积神经网络)】和【BP算法与公式推导】。并且已经看过文献[1]的论文【Notes on Convolutional Neural Networks】。因为本文就是讲解文献[1]论文前部分公式的推导过程<这里有一个假设,或许公式是错误的,如有好的理解请留言>。
2 CNN公式推导
卷积神经网络参数求解的过程与上次笔记【BP算法与公式推导】类似,但是在形式上还是有变化的。文献[1]的论文直接给出了参数求解的公式,主要包括:卷积层和subsampling层的残差以及对应的对权重参数和偏置参数的导数。
注意:这里的卷积核参数所放在的层与残差放在了同一层,和上次笔记略有不同,但是没有影响!
2.1 卷积层:
2.1.1 卷积计算
假设第l层为卷积层,第l+1层为subsampling层,则第l层第j个feature map的计算公式如下:
上面的*号实质是让卷积核k在第l-1层所有关联的feature maps上做卷积运算,然后求和,再加上一个偏置参数,取sigmoid得到最终激励值的过程。
例子:假设第l-1层只有两个feature map,大小为4*4像素。
一个卷积核K(二维卷积核K11和K12),大小为2*2。
则计算第l层的一个feature map结果如下,大小为3*3像素:
注意:在matlab中可以用convn函数来实现卷积,如: