卷积神经网络(二):卷积神经网络CNN的BP算法
2015-10-14 09:37
441 查看
该文档参考了:http://www.cnblogs.com/tornadomeet/p/3468450.html
在此表示感谢。
一般而言,多类别神经网络的输出一般采用softmax形式,即输出层的激活函数不采用sigmoid或者tanh函数。那么神经网络的最后一层的输出则为
下面看从pooling层到卷积层的误差如何反向传播,和多层神经网络一样,可以通过层与层间的连接实现误差传播,只是计算公式变为,
其中的系数根据pooling的方法赋值,如果是mean-pooling则把pooling层的误差平均到其4个输入上,如果是max-pooling则把误差全部反向传播到其输入上。
接下来看如何计算卷积层反向传播到pooling的误差,pooling层中的1个feature map与M个卷积层的feature map的相连接,那么该pooling层的误差项的计算公式如下,
上述公式中*号表示卷积操作,即将核函数K旋转180度后再与误差项做相关操作,然后再求和。
最后研究在求得各层的误差项后如何计算与卷积层相连接的核函数的偏导数,计算公式如下,
即将卷积层的误差项旋转180度后与其输入层做相关操作就可以得到核函数的偏导数。
而偏置项的偏导数则由误差项内所有元素相加得到。
在此表示感谢。
一般而言,多类别神经网络的输出一般采用softmax形式,即输出层的激活函数不采用sigmoid或者tanh函数。那么神经网络的最后一层的输出则为
下面看从pooling层到卷积层的误差如何反向传播,和多层神经网络一样,可以通过层与层间的连接实现误差传播,只是计算公式变为,
其中的系数根据pooling的方法赋值,如果是mean-pooling则把pooling层的误差平均到其4个输入上,如果是max-pooling则把误差全部反向传播到其输入上。
接下来看如何计算卷积层反向传播到pooling的误差,pooling层中的1个feature map与M个卷积层的feature map的相连接,那么该pooling层的误差项的计算公式如下,
上述公式中*号表示卷积操作,即将核函数K旋转180度后再与误差项做相关操作,然后再求和。
最后研究在求得各层的误差项后如何计算与卷积层相连接的核函数的偏导数,计算公式如下,
即将卷积层的误差项旋转180度后与其输入层做相关操作就可以得到核函数的偏导数。
而偏置项的偏导数则由误差项内所有元素相加得到。
相关文章推荐
- 卷积神经网络(一):LeNet5的基本结构
- HttpRequest Post中文转utf-8乱码问题解决方法
- Python:HTTP请求模块(httplib/urllib,GET/POST,php),Web服务器模块
- iOS9 beta 请求出现App Transport Security has blocked a cleartext HTTP (http://)
- 卷积神经网络CNN
- Google Chrome 46 稳定版发布:不再警示微小错误的 HTTPS 链接
- android 检查网络链接,判断网络链接
- https原理及tomcat配置https方法
- Tomcat处理HTTP请求:Connector源码
- 接收系统广播监听网络变化
- 《深入理解Linux网络技术内幕》阅读笔记(二十八)
- [网络流最大流经典][uva 11082][矩阵解压]
- [网络流最大流经典][uva 11082][矩阵解压]
- 如何解决在Azure上部署Sqlserver网络访问不了
- 承接游戏UI美术外包【厦门巨游网络科技有限公司】
- TCP/IP协议、Http协议、ftp协议
- HttpClient(转载)
- TCP带外数据读写
- Ubuntu中启用关闭Network-manager网络设置问题!
- http必知必会