CS231n CNN for Visual Recognition Module (3) backpropagation
来源:互联网 发布:淘宝账户怎么登录 编辑:程序博客网 时间:2024/06/01 08:15
这篇主要是就是围绕这个figure讲的,从forward pass讲起,每一步都可以知道自己的output和local gradient,比如x+y=q的output是3,在x上的梯度是1,y上的梯度是1;再比如,q*z=f,output是-12,q的梯度是-4(z),z的梯度是3(q)。
得到最后的score后,就可以往前推梯度了,就是back propagation。这里用到是链式原理,chain rule。
推到最终,是要得到最后的输出f对应的最原始的每个一输入的梯度,即每一个原始输入对最终输出的影响程度。
对于如何推偏导,有一个需要注意的,max operation
这个函数只对x,y中比较大的值有偏导为1,较小的偏导为0。当较小的那个增大到一定程度变成较大的后,f的值会变,但梯度看不出来变化,所以说梯度只对输入tiny change有信息,就像定义的那样。
Backpropagation can thus be thought of as gates communicating to each other (through the gradient signal)weather they want their outputs to increase or decrease (and how strongly), so as to make the final value higher.
在实际应用中的trick:
- stage backpropagation: 可以根据实际需要把forward pass break down into stages,这样back的时候比较容易操作,主要根据是不是能按一定公式快速算出梯度来为准则。
- cache forward pass variables: 把前面的值比如x,y的存储起来,back的时候可以直接拿来用。
- Gradients add up to forks: back算偏导的时候要注意算对,有些变量的偏导会在chain rule的几个函数中出现,记得最后加起来。
f在w上的梯度(偏导)是x,所以x的数值范围对w有直接影响。This is why preprocessing matters a lot, sometimes in subtle way!
- CS231n CNN for Visual Recognition Module (3) backpropagation
- CS231n CNN for Visual Recognition Module (1)
- CS231n CNN for Visual Recognition Module (2)
- CS231n - CNN for Visual Recognition Assignment1 ---- KNN
- CS231n - CNN for Visual Recognition Assignment1 ---- SVM
- 斯坦福CS231n - CNN for Visual Recognition(3)-lecture3(下)最优化
- 斯坦福CS231n - CNN for Visual Recognition(1)-lecture2图像分类、最近邻分类器
- 斯坦福CS231n - CNN for Visual Recognition(2)-lecture3(上)线性分类器、损失函数
- 斯坦福CS231n - CNN for Visual Recognition(4)-lecture4反向传播
- 斯坦福CS231n - CNN for Visual Recognition(5)-lecture5激活函数、神经网络结构
- 斯坦福CS231n - CNN for Visual Recognition(6)-lecture5预处理、正则化、损失函数
- 斯坦福CS231n - CNN for Visual Recognition(7)-lecture6梯度检查、参数更新
- 斯坦福CS231n - CNN for Visual Recognition(8)-lecture6学习率更新、超参数调优
- CS231n: Convolutional Neural Networks for Visual Recognition
- CS231n: Convolutional Neural Networks for Visual Recognition
- CS231n Convolutional Neural Networks for Visual Recognition
- CS231n Convolutional Neural Networks for Visual Recognition
- CS231n Convolutional Neural Networks for Visual Recognition
- 关于在MFC的picture控件里显示图片
- DOM_专有扩展
- 使用Hadoop的mapReduce实现计算单词数
- HDOJ1166 敌兵布阵(线段树)
- 修改PC密码.bat
- CS231n CNN for Visual Recognition Module (3) backpropagation
- JVM虚拟机垃圾回收机制
- UI017---UITableView的入门
- App开始引导界面
- Unity 3D中的内存管理
- 坠劣盏奔谟诤谔酥峦鼓南诤诤梦且
- 扔构南酥勘步酥犹南咨奔渴优撑读
- 捉时实孛仑悄幼盒僚卣挡谂扰肝俨
- Mac 修改AppleID 使用“登录”钥匙串