BP神经网络数学原理及推导过程
2017-10-18 16:15
337 查看
说明:本博客引自博客:http://blog.csdn.net/zhongkejingwang/article/details/44514073;并对此博客中有些地方的推导的过程进行详细地说明。同时,对一些基础知识进行引申介绍。
误差反传(BP)算法是1986年,Rumelhart和MeCelland领导的科学家小组在((Paralleloist行butedPoreessing》一书r扫提出的,实现了Minsky关于多层网络的设想。算法的基本思想是,学习过程由信号的正向传播和误差的反向两个过程组成。正向传播时,输入样本从输入层传入,经各隐层逐层处理后,传向输出层。若输出层的实际输出和期望输出不符,则转入误差的反向传播阶段,误差的反向传播是将误差以某种形式通过隐层向输出层逐层反传,并将误差分摊给各层的所有单元,从而获得各层单元的误差信号,此误差信号即作为修正各单元权值的依据。这种信号正向传播和误差反向传播的各层权值调整过程,是周而复始进行的。权值不断调整的过程,也就是网络的学习训练过程。此过程一直进行到网络输出的误差减少到一定范围之内,或进行到预先设定的学习次数为止。
用什么方法最小化L?BP算法采用的是随机梯度下降。也就是对每个训练样本都使权重往其负梯度方向变化。现在的任务就是求L对连接权重w的梯度。 至于什么是梯度下降法?这里插播一下:
至于是什么是梯度和方向导数?如果不是很清楚的,大家可以打开同济版高数.....还是给大家推荐一篇博客:http://blog.csdn.net/wolenski/article/details/8030654
我们继续开始(推导时,由于符号繁多,建议大家对这BP神经网络的模型结构来推导,上面备注了许多符号):
其实我们就是要求第一层权重的梯度(类似上图dy/dx):
第二层权值的梯度(第二层权值的梯度简单多):
先从第一层开始
我们将开始计算第二层:
第二层其实就是要求:
其中对于前半部分其实就是上面的:
后半部分:
所以对于第二层的权重的梯度是:
最后,需要给大家一个总结:
为学习效率,是一个常数。
当误差达到要求精度时,算法停止。
1.引言
BP神经网络,BP即Back Propagation的缩写,也就是反向传播的意思。它是一种前馈神经网络。而前馈神经网络是神经网络的一种典型分层结构,在这种网络中信息从输入层进入网络后,逐层向前传播至输出层。根据网络中神经元激活函数、隐层数和权值调整规则的不同,可以形成具有不同特点的前馈神经网络。误差反传(BP)算法是1986年,Rumelhart和MeCelland领导的科学家小组在((Paralleloist行butedPoreessing》一书r扫提出的,实现了Minsky关于多层网络的设想。算法的基本思想是,学习过程由信号的正向传播和误差的反向两个过程组成。正向传播时,输入样本从输入层传入,经各隐层逐层处理后,传向输出层。若输出层的实际输出和期望输出不符,则转入误差的反向传播阶段,误差的反向传播是将误差以某种形式通过隐层向输出层逐层反传,并将误差分摊给各层的所有单元,从而获得各层单元的误差信号,此误差信号即作为修正各单元权值的依据。这种信号正向传播和误差反向传播的各层权值调整过程,是周而复始进行的。权值不断调整的过程,也就是网络的学习训练过程。此过程一直进行到网络输出的误差减少到一定范围之内,或进行到预先设定的学习次数为止。
2.可以做什么
BP神经网络在函数逼近、模式识别、数据压缩、风险评估等领域有着更为广泛的应用。3.数学原理
BP神经网络的模型结构:用什么方法最小化L?BP算法采用的是随机梯度下降。也就是对每个训练样本都使权重往其负梯度方向变化。现在的任务就是求L对连接权重w的梯度。 至于什么是梯度下降法?这里插播一下:
至于是什么是梯度和方向导数?如果不是很清楚的,大家可以打开同济版高数.....还是给大家推荐一篇博客:http://blog.csdn.net/wolenski/article/details/8030654
我们继续开始(推导时,由于符号繁多,建议大家对这BP神经网络的模型结构来推导,上面备注了许多符号):
其实我们就是要求第一层权重的梯度(类似上图dy/dx):
第二层权值的梯度(第二层权值的梯度简单多):
先从第一层开始
我们将开始计算第二层:
第二层其实就是要求:
其中对于前半部分其实就是上面的:
后半部分:
所以对于第二层的权重的梯度是:
最后,需要给大家一个总结:
为学习效率,是一个常数。
当误差达到要求精度时,算法停止。
相关文章推荐
- [置顶] 相机标定的数学原理及其推导过程
- 梯度上升算法迭代过程和数学原理
- BP神经网络的数学原理及其算法实现
- Machine Learning:最小二乘法数学原理及简单推导
- BP神经网络的数学原理及其算法实现
- BP神经网络的数学原理及其算法实现
- BP神经网络原理推导
- LDA线性判别原理解析<数学推导>
- PCA的数学原理,推导的很详细
- BP神经网络的数学原理及其算法实现
- BP神经网络原理简单介绍以及公式推导(矩阵形式和分量形式)
- Spark Mllib里的协调过滤的概念和实现步骤、LS、ALS的原理、ALS算法优化过程的推导、隐式反馈和ALS-WR算法
- 机器学习入门学习笔记:(1)BP神经网络原理推导及程序实现
- BP神经网络的数学原理及其算法实现
- 结合斯坦福深度学习教程 对于BP反向传播算法原理的推导过程解析
- Recurrent Neural Network Based Language Model(RNNLM)原理及BPTT数学推导
- BP神经网络的原理及推导
- 关于图形数学的基本问题,沿任意轴旋转,或者旋转坐标系的推导过程
- 机器学习入门学习笔记:(一)BP神经网络原理推导及程序实现
- 2.1 线性回归算法学习——简单线性回归算法的原理及推导过程