BP神经网络模型与学习算法
概述
Rumelhart,McClelland于1985年提出了BP网络的误差反向后传BP(Back Propagation)学习算法
BP算法基本原理
利用输出后的误差来估计输出层的直接前导层的误差,再用这个误差估计更前一层的误差,如此一层一层的反传下去,就获得了所有其他各层的误差估计。
J. McClelland
David Rumelhart
BP神经网络模型
三层BP网络
BP神经网络模型
激活函数
必须处处可导
一般都使用S型函数
使用S型激活函数时BP网络输入与输出关系
输入
输出
BP神经网络模型
输出的导数
根据S型激活函数的图形可知,对神经网络进行训练,的值尽量控制在收敛比较快的范围内
BP网络的标准学习算法
学习的过程:
神经网络在外界输入样本的刺激下不断改变网络的连接权值,以使网络的输出不断地接近期望的输出。
学习的本质:
对各连接权值的动态调整
学习规则:
权值调整规则,即在学习过程中网络中各神经元的连接权变化所依据的一定的调整规则。
BP网络的标准学习算法-算法思想
学习的类型:有导师学习
核心思想:
将输出误差以某种形式通过隐层向输入层逐层反传
学习的过程:
信号的正向传播误差的反向传播
将误差分摊给各层的所有单元---各层单元的误差信号
修正各单元权值
BP网络的标准学习算法-学习过程
正向传播:
输入样本---输入层---各隐层---输出层
判断是否转入反向传播阶段:
若输出层的实际输出与期望的输出(教师信号)不符
误差反传
误差以某种形式在各层表示----修正各层单元的权值
网络输出的误差减少到可接受的程度
进行到预先设定的学习次数为止
BP网络的标准学习算法
网络结构
输入层有n个神经元,隐含层有p个神经元,
输出层有q个神经元
变量定义
输入向量;
隐含层输入向量;
隐含层输出向量;
输出层输入向量;
输出层输出向量;
期望输出向量;
算法及其matlab实现 来自淘豆网m.daumloan.com转载请标明出处.