bp神经网络算法.docB P 神 经 网 络 算 法
三层 BP 神经网络如图:
目标输出向量
输出层,输出向
传递函数 g
量
权值为 w jk
传递函数
隐含层,隐
f 含层输出向
量
输入层,输
入向量
设网络的输入模式为 x ( x1, x2 ,...xn ) T ,隐含层有 h 个单元,隐含层的输出为
y ( y1, y2 ,... yh )T ,输出层有 m 个单元,他们的输出为 z ( z1 , z2 ,...zm )T ,目标输出为
t (t1 ,t 2 ,..., tm )T 设隐含层到输出层的传递函数为 f ,输出层的传递函数为 g
n n
于是: y j f ( wij xi ) f ( wij xi ) :隐含层第 j 个神经元的输出;其中
i 1 i 0
w0 j , x0 1
h
zk g( w jk y j ) :输出层第 k 个神经元的输出
j 0
m
此时网络输出与目标输出的误差为 1 (t k zk )2 ,显然,它是 wij 和 w jk 的函数。
2 k 1
下面的步骤就是想办法调整权值,使 减小。
由高等数学的知识知道:负梯度方向是函数值减小最快的方向
因此,可以设定一个步长 ,每次沿负梯度方向调整 个单位,即每次权值的调整
为:
wpq
w pq
, 在神经网络中称为学****速率
可以证明:按这个方法调整,误差会逐渐减小。
BP 神经网络(反向传播)的调整顺序为:
1)先调整隐含层到输出层的权值
h
设 vk 为输出层第 k 个神经元的输入 vk
w jk y j
j 0
------- 复合函数偏导公式
1
x ,则 g '(uk )
e vk
1
(1
1
) zk (1 zk )
若取 g( x) f ( x)
v
k )
2
v
v
1 e
(1 e
1 e
k
1 e
k
于是隐含层到输出层的权值调整迭代公式为:
2)从输入层到隐含层的权值调整迭代公式为:
n
其中 u j 为隐含层第 j 个神经元的输入: u j wij xi
i 0
注意:隐含层第 j 个神经元与输出层的各个神经元都有连接,即
涉及所有的权值
y j
m
(tk zk )2
zk
uk
m
wij ,因此
yj k 0
zk
uk
yj
(tk zk ) f '(uk )wjk
k 0
于是:
因此从输入层到隐含层的权值调整迭代为公式为:
例:
下表给出了某地区公路运力的历史统计数据,请建立相应的预测模型,并对给出的
2010 和 2011 年的数据,预测相应的公
bp神经网络算法 来自淘豆网www.taodocs.com转载请标明出处.