Slides:百度云 提取码: gs3n
神经网络的梯度下降
我们之前在学习线性分类器的时候,使用Loss函数以及梯度下降法来更新权重。那么对于神经网络,我们该如何计算每层神经元的权重呢?
对每层W直接求导(愚蠢的方法)
如上公式所示,Loss函数最终是能被表达成由各层W组成的函数公式,并且也完全有可能直接对其进行求导。
问题
- 非常乏味,需要大量矩阵演算,需要大量纸张
- 如果我们想改变损失怎么办? 例如。 使用softmax代替SVM? 需要从头开始重新派生。这种方式不是模块化的。
- 对于非常复杂的NN模型不可行!
计算图
公式 f ( x , y , z ) = ( x + y ) z f(x,y,z)=(x+y)z f(x,y,z)=(x+y)z的计算图如下
例子1
- 向前传播过程
- q = x + y , f = q z q = x+y\ \ , \ f=qz q=x+y , f=qz
-