《积神经网络原理推导.ppt》由会员分享,可在线阅读,更多相关《积神经网络原理推导.ppt(30页珍藏版)》请在三一办公上搜索。
1、卷积神经网络(CNN)原理推导,阿育王626,说明:,先导知识:CNN网络结构、BP网络学习算法参考文献:Notes on Convolutional Neural Networks,典型的CNN网络结构中,包含:卷积层、下采样层、全连接层,1.全连接层学习算法,1.1工作信号正向传播1.2误差信号反向传播,全连接层网络结构图,2.1工作信号正向传播,(1)当前第l层的输出xl:先求ul:第l-1层的输出xl-1(第l层的输入)与其对应权值Wl相乘,再加上基bl再利用激活函数f(.)得xl:sigmoid或Relu,逐层 传播,直至得到最终输出层结果利用网络输出值与真实值之间的误差,进行反向传
2、播,调整权值。参数:c表示分类数目,N表示训练样本数 tnk表示第n个样本真实值的第k维 ynk表示第n个样本输出值的第k维,(2)误差第n个样本的误差:每类(共c类)误差的和总误差:每个样本(共N个)误差的和,2.2误差信号反向传播,反向传播回来的误差可以看做是每个神经元的基的灵敏度灵敏度的意思就是基b变化多少,误差会变化多少也就是误差对基的变化率,即导数(公式1),(1)反向计算各层灵敏度,输出层第L层灵敏度:全连接层第l层灵敏度(公式2):,(2)权值调整,导数:权值更新(公式3):对于每一个权值Wij都有一个特定的学习率Ij,2.卷积层学习算法,2.1工作信号正向传播2.2误差信号反向
3、传播,卷积层典型结构图,卷积层,输入层,子采样层典型结构图,卷积层,子采样层,假定每个卷积层l都会接一个下采样层l+1,2.1工作信号正向传播,(1)当前第l层的第j个输出xlj:先从第l-1层的特征图里,选择若干个组成第l层输入特征图集合Mj;再利用卷积核Klij分别与输入特征图中的每个map即xl-1i进行卷积,并求和;最后加上基blj,使用激活函数f即可。,(2)确定需要更新的权值基b卷积核k说明:此时需要分别计算误差对它们的变化率 和,2.2误差信号反向传播,(1)计算基的梯度上采样第l+1层第j个灵敏度map:说明:第l+1层为下采样层,其中一个像素对应的灵敏度对应于第l层卷积层的输
4、出map的一块像素(采样窗口大小),因此,上采样使其灵敏度map大小与卷积层的map大小一致,求第I层第j个灵敏度map(公式2可得):说明:在下采样层map的权值W都取一个相同值,而且是一个常数。第l层灵敏度l:对第l层中的灵敏度map中所有节点进行求和,由公式1可知,得到基的梯度。,(2)计算卷积核的梯度对于一个给定的权值,对所有共享该权值的连接对该点求梯度;然后对这些梯度进行求和。说明:是 中的在卷积的时候与 逐元素相乘的patch,3.子采样层学习算法,3.1工作信号正向传播3.2误差信号反向传播,3.1工作信号正向传播,(1)当前第l层的第j个输出xlj:down(.)表示一个下采样函数。有N个输入maps,就有N个输出maps,只是每个输出map都变小n*n倍。每个输出map都对应一个属于自己的乘性基和一个加性基b。,(2)确定需要更新的权值加性基b乘性基说明:此时需要分别计算误差对它们的变化率 和,3.2误差信号反向传播,计算加性基的梯度计算第I层第j个灵敏度map加性基的梯度:,(2)计算乘性基的梯度保存正向传播时下采样层的特征map:乘性基的梯度,4.特征图组合,人工选择网络选择,第l层第j个输出特征图xlj:说明:ij表示在得到第j个输出map的第i个输入map的权值,需要满足约束,误差对于第l层变量i的导数为:代价函数关于权值ci的偏导为:,