Neural Network and deep learning(二)
2016-11-02 09:49
351 查看
Neural Network and deep learning(二)
(1)权重的矩阵表示。该文章中的权重表示是反过来的,即Wij中i表示下一层的神经元,j表示前一层的神经元。这样在计算向下一层传递时直接可以使用wx。(2)反向传播的理解。
z2a2z3a3=w1x+b1=σ(z2)=w2a2+b2=σ(z3)
神经网路的形式可以写成上述形式,使用梯度下降法更新参数,就是对每个变量按着梯度的方向逼近,知道达到最小值,这样很容易想到使用∂C∂a,其中C是最终的代价函数(即所求的最小值),a是每层的输出,但是这样不便于数学推到和计算,因此使用链式求导法则来变形,得到∂C∂a=∂C∂z⋅∂Z∂a。
输出的误差方程 δL:δLj=∂C∂aLj⋅σ′(zLj),其中右式第1个项表C代价随着j输出激活值的变化变化的速度,第2项刻画了在j处激活函数σ变化的速度。
误差传递 δl:δl=((wl+1)Tδl+1)⋅σ′(zl),这个公式也比较容易理解,把整个网络看成从后面向前传播,δl+1为出入的值,(wl+1)T这为其权重(转置刚好反过来),σ′(zl)则可以看成反激活了。
习题2.5 证明∂C∂blj=δlj和∂Cwljk=al−1kδlj
证明:由于 zl+1=wlx+bl,则∂C∂blj=∂C∂al⋅∂al∂zl⋅∂zl∂blj,由∂C∂al⋅∂al∂zl=δlj,∂zl∂blj=1得,∂C∂blj=δlj。同理可得∂Cwljk=al−1kδlj。
习题2.6.1 使用单个修正神经元的反向传播。
答: 再反向传播中需要求激活函数的导数,如果改变其激活函数,只需要对当前的激活函数导数即可。
习题2.6.2 线性神经元的反向传播。
答: 激活函数为线性的,即∂al∂zl=1,则反向传播∂C∂al=δlj。
相关文章推荐
- Chapter 1 - Neural Network and Deep Learning
- Chapter 2 - Neural Network and Deep Learning
- Building your Deep Neural Network - Step by Step v5 作业 - Neural Networks and Deep Learning
- neural network and deep learning笔记(1)
- neural network and deeplearning chapter 3
- neural network and deep learning(笔记二)
- neural network and deep learning (1)
- neural network and deep learning笔记(2)
- neural network and deep learning (2)
- neural-networks-and-deep-learning network.py
- 《Neural network and deep learning》学习笔记(一)
- 《neural network and deep learning》题解——ch03 其他技术(momentun,tanh)
- neural network and deep learning笔记(1)
- 《neural network and deep learning》题解——ch03 如何选择神经网络的超参数
- 《Neural Network and Deep Learning》_chapter4
- 《Neural Network and Deep Learning》学习笔记-hyper-parameters
- Coursera上DeepLearning系列课程第一课Neural Network and Deep Learning课程PPT和笔记
- 《neural network and deep learning》题解——ch03 过度拟合&规范化&权重初始化
- Neural Network and Deep Learning
- 《neural network and deep learning》学习笔记二-sigmoid neurons