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

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

传统的BP 算法简述

BP 算法是一种有监督式的学习算法,其主要思想是:输入学习样本,使用反向传播算法对网络的权值和偏差进行反复的调整训练,使输出的向量与期望向量尽可能地接近,当网络输出层的误差平方和小于指定的误差时训练完成,保存网络的权值和偏差。具体步骤如下:

(1)初始化,随机给定各连接权[w],[v]及阀值θi ,rt 。

(2)由给定的输入输出模式对计算隐层、输出层各单元输出

(3)计算新的连接权及阀值,计算公式如下:

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

第一步,网络初始化

给各连接权值分别赋一个区间(-1,1)内的随机数,设定误差函数e ,给定计算精度值 和最大学习次数M 。

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

()12()(),(),,()q k d k d k d k =L o d

()12()(),(),,()n k x k x k x k =L x

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

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

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

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

第七步,利用隐含层各神经元的()h k δ和输入层各神经元的输入修正连接权。 第八步,计算全局误差211

1(()())2q

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

ε

相关文档
最新文档