首页 > 代码库 > Neural Network and DeepLearning (2.1)反向传播算法
Neural Network and DeepLearning (2.1)反向传播算法
How the backpropagation algorithm works
反向传播的目标是计算代价函数C分别关于w和b的偏导数?C/?w和?C/?b。
反向传播的核心是一个对代价函数C关于任何权重w(或者偏置b)的偏导数?C/?w的表达式。这个表达式告诉我们在改变权重和偏置时,代价函数变化的快慢。
神经网络中使用矩阵快速计算输出
概念:每一层L的权重矩阵wl,偏置向量bl,激活向量al。那么Lth的激活向量和(L-1)th的激活向量就能够通过方程关联起来:
在这个方程中有一个中间量zl:
称zl为L层神经元的带权输入。
关于代价函数的两个假设
1.代价函数可以被写成一个在每个训练样本x上的代价函数Cx的均值:
反向传播实际上是对一个独立的训练样本计算了?Cx/?w和?Cx/?b,然后再所有训练验本上进行平均化获得?C/?w和?C/?b。
有了这个假设就可以将代价函数Cx看作C。
2.代价可以写成神经网络输出的函数:
对一个单独的训练样本x其二次代价函数可以写作:
x,y都是固定的参数,不会因为权重和偏置的改变而改变,也就是说这不是神经网络学习的对象,所以将C看作仅有输出激活值al的函数是合理的。
反向传播的四个基本方程
概念:
δjl:在lth层第jth个神经元上的误差。
1.输出误差方程:
σ’(zjl)需要一点额外的计算。?C/?ajl依赖于代价函数的形式,例如:如果使用二次函数,那么,所以。
2.使用下一层的误差δl+1来计算当前层的误差δl:
3.代价函数关于网络中任意偏置的改变率:
4.代价函数关于任何一个权重的改变率:
反向传播的四个方程式:
反向传播算法
在小批量数据(m)的基础上应用一部梯度下降学习算法
Neural Network and DeepLearning (2.1)反向传播算法
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。