(完整版)BP神经网络算法步骤.doc

想预览更多内容,点击预览全文

申明敬告:

本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己完全接受本站规则且自行承担所有风险,本站不退款、不进行额外附加服务;如果您已付费下载过本站文档,您可以点击这里二次下载

文档介绍

传统的 BP 算法简述

BP 算法是一种有监督式的学习算法,其主要思想是:输入学习样本,使用

反向传播算法对网络的权值和偏差进行反复的调整训练, 使输出的向量与期望向

量尽可能地接近, 当网络输出层的误差平方和小于指定的误差时训练完成, 保存

网络的权值和偏差。具体步骤如下:

(1)初始化,随机给定各连接权 [w],[v] 及阀值 θi,rt。(2)由给定的输入输出模式对计算隐层、输出层各单元输出(3)计算新的连接权及阀值,计算公式如下:

(4)选取下一个输入模式对返回第 2 步反复训练直到网络设输出误差达到要求结束训练。

第一步,网络初始化

给各连接权值分别赋一个区间( -1,1)内的随机数,设定误差函数

精度值 和最大学习次数 M 。

第二步 ,随机选取第 k 个输入样本及对应期望输出



e,给定计算

do



(k)



d1 (k), d2 (k),L



, dq



(k)

x



( k)



x1 (k), x2 ( k),L , xn ( k)

第三步,计算隐含层各神经元的输入和输出

第四步,利用网络期望输出和实际输出, 计算误差函数对输出层的各神经元的偏导数 o (k)a

第五步,利用隐含层到输出层的连接权值、输出层的 o ( k) 和隐含层的输出计算误差函数对隐含层各神经元的偏导数 h (k )

第六步,利用输出层各神经元的 o ( k) 和隐含层各神经元的输出来修正连接权值

who ( k)

第七步,利用隐含层各神经元的

h (k ) 和输入层各神经元的输入修正连接权。

1

m

q

第八步,计算全局误差 E

(do (k) yo (k ))2

2m k 1

o 1

第九步,判断网络误差是否满足要求。 当误差达到预设精度或学习次数大于设定的最大次数,则结束算法。否则,选取下一个学习样本及对应的期望输出,返回到第三步,进入下一轮学习。

最近下载