BP与CNN的联系总结
来源:互联网 发布:关于网络文化的数据 编辑:程序博客网 时间:2024/06/05 15:10
传统全连接BP网络与CNN的一些总结与联系
本文的目的是:
1、 对刚学知识的温故知新;
2、 作为一个笔记作用;
3、 恳请对错误点或者不恰当点的指正。
下面开始扯皮。
网络前向传播略。
BP网络反馈过程:
证明过程略,主要是链式法则,网上一大堆证明。下面给出结论,各个符号的意义体会到其中道理即可。
(粗体是向量or矩阵,正常体是标量)
一个重要的定义------误差调整项(or灵敏度)δ。
假设网络一共L层(第L层是输出层)
δL = ƒˊ(μL)Ο (yn-tn)
Ο是逐项相乘
第l(小写L)层的δ
δl = (Wl+1)Tδl+1Ο ƒˊ(μl)
W是个权值矩阵;
δ列向量;
μ输入累积和的列向量。
CNN反馈过程:
当前层是卷积层,下一层是pooling层
pooling层是由卷积层下采样得到(压缩),那么在计算卷积层的δ的时候,需要把pooling层的δ上采样回去,使得两个δ的map图大小相等。
其实在计算卷积层的δ的时候,可以套用这个公式
δl = (Wl+1)Tδl+1Ο ƒˊ(μl)
为什么呢?
卷积网络其实就是在全连接网络的基础上,把全连接改为部分连接,然后再利用权值共享的技巧大量减少网络需要修改的权值数量(或者说是数量级),这里共享的权值其实就是卷积核矩阵各个坐标上的元素是什么罢了,想象着把二维图片拉长为一维向量,即可理解这句话。在上采样前,通过卷积核,从卷积层到pooling层是多对一的连接关系。由于是多对一的关系,所以用到了Ο这个计算符号!
所以:
δlj = (βl+1j)T( upsample(δl+1j )Ο ƒˊ(μlj))
βl+1j是个标量,在这里比例系数就是权值。
upsample(.)依赖于原来的下采样方式,means方式或者max方式。
那么:
误差对bias的偏导 = (δlj)u,v
误差对卷积核k的偏导= rot180(conv2(xl-1i,rot180(δlj)),‘valid’)
k是l-1层到l层的卷积核。
当前层是pooling层,下一层是卷积层
还是利用这个公式:
δl = (Wl+1)Tδl+1Ο ƒˊ(μl)
灵活套用即可:
δlj = ( conv2(δl+1j,rot180(kl+1j),‘full’) )Ο ƒˊ(μlj)
则:
误差对bias的偏导= (δlj)u,v
误差对比例因子的偏导= (δljΟdown(xl-1j))u,v
- BP与CNN的联系总结
- BP神经网络与卷积神经网络(CNN)
- BP神经网络与卷积神经网络(CNN)
- CNN上BP的简单推导
- CNN、BP算法
- 卷积神经网络(二):卷积神经网络CNN的BP算法
- 如何高效的通过BP算法来训练CNN
- 卷积神经网络(二):卷积神经网络CNN的BP算法
- 【深度学习:CNN】如何高效的通过BP算法来训练CNN
- 【深度学习:CNN】BP算法
- 关于class与struct的联系学习与总结
- Hbase与Hive的区别与联系 (总结3)
- BP总结
- Atitit ABI FFI 的区别与联系 attilax总结
- Atitit ABI FFI 的区别与联系 attilax总结
- CNN学习之旅[2]之第一次加副标题的BP算法理解
- 标准BP与累计BP
- CNN 总结
- 通过源码分析,修改AlertDialog按钮的颜色
- java,lang.Void类
- 文章标题
- win10系统如何开启高级设置
- Python中的元类(metaclass)
- BP与CNN的联系总结
- thinkphp 静态缓存
- HDU 4462 状压枚举。
- Java AIO学习
- HTTP, HTTP2.0, SPDY, HTTPS | 4种网络协议的渊源与发展
- Android中shape中的属性大全
- vue.js在laravel框架模板文件中引入失败问题
- docker优势
- 《HTML 参考手册》学习指南