人工神经网络BP算法简述
������
(������������������ − �������Leabharlann ���������� )2 )/2
BP 网络的权值修正公式为 ������ ������������ =������ ������������ (t)+η������������������ ������������������ ������������������ = f ������������������������������ ������������������ − ������������������
1
BP 人工神经网络模型的构造和评述
1.1BP 神经网络概言
BP 神经网络,即误差反向传播神经网络 ,是神经网络模型中应用最广泛的一 种。它由输入层、隐含层和输出层构成。假设 BP 神经网络每层有 N 个节点,作用 函数为非线性的 Sigmoid 型函数,一般采用 f(x)=1/(1+������ −������ ),学习集包括 M 个样本模 式(������������ ,������������ )。 对第 P 个学习样本(P=1,2,...,M),节点 j 的输总和记为������������������������������ ,输出记为������������������ , 则: ������������������������������ =
���������� =
������ ������ =1 ������ ������ ������ ������ 2 ������ 2 : ������ ������ =1 ������ ������ : ������ =1 ������ ������
显而易见:|ρ������������ |≤1. ρ������������ 愈接近±1,表示两序列������������������ 与������������������ 的线性相关程度愈大,互相回归的离散度 愈小;反之,则两序列的线性相关程度愈小,互相回归的离散度愈大。 定义 1°同层隐节点 i 和 j 的相关系数 ρ������������ =
2 设������������������ 是隐节点 i 在学习第 p 个样本时的输出,������������������ 隐节点 j 在学������������ 习第 p 个样
本时的输出,N 为学习样本总数 , 则������������ =
1 ������ ������ ������ =1 ������������������
东华大学研究生课程论文封面
教师填写:
得分
任课教师签名
年 月 日
学生填写:
姓名 专业 课程名称 任课教师 上课时间 递交时间 20 至 20
年 月
学号 导师
课程学分 学年
日
第
学期
星期
本人郑重声明:我恪守学术道德,崇尚严谨学风。所呈交的课程论文,是本 人独立进行研究工作所取得的成果。除文中已明确注明和引用的内容外,本论文 不包含任何其他个人或集体已经发表或撰写过的作品及成果的内容。 论文为本人 亲自撰写,我对所写的内容负责,并完全意识到本声明的法律结果由本人承担。
C2 为规定的下限值,一般C1 取 0.8~0.9,C2 取 0.001~0.01。 规则 2 若S������ <C2 ,则节点 i 的作用如同阀值,可与阀值合并,即节点 i 被删除。
2.2
神经网络学习参数的自适应学习
在传统的 BP 神经网络模型中,对学习参数η 的选取一般都是根据建模者的经 验选取一个值。但事实上η 的选取对算法的成败有着重要影响。BP 神经网络模 型实际上是一个多元函数的优化问题,即以连结权系数为变量,误差函数最小为目 标的优化问题。当求出对连结权的梯度后,对连结权进行修正时,学习速率η 实际 上是一个沿负梯度方向的步长问题 ,步长过大将使误差函数发生振荡 ,步长过小, 收敛过慢。 并且在不同的点,可选步长也不一样。 总之,不存在原 BP 算法中所提到 的固定学习速率。 对于学习参数η 的选取,我们可以引入学习参数自适应算法加以确定。其基 本思想是:当 Wji 远离稳定点(学习要达到的目标点)时,η 取较大值,而当其逼近稳 定点(E1※0)时,η 取较小值。具体作法为: η (t+1)= η(t)·E1 (t)/E1 (t-1) 其中,E1 =
������
,对于输出节点
f(������������������������������ )
������������������ ������������������ ,对于输入节点
上式中引入学习速率η ,是为了加快网络的收敛速度。通常权值修正公式中还需
加一个惯性参数 a,从而有: ������ ������������ =������ ������������ (t)+η������������������ ������������������ +a(������ ������������ (t)− ������ ������������ (t-1)) 式中,a 为一常数项,它决定上一次的权值对本次权值的影响。其具体算法步骤 详见文献[1]。
������������ =������������������ -������
1
������ ������ ������ =1 ������������������ =������������������ -������
则两序列������������������ 与������������������ (p=1,„,N)的相关系数为:
2
2.1
BP 人工神经网络模型的改进
BP 人工神经网络结构的自我调整
在 BP 人工神经网络拓扑结构中,输入节点与输出节点是由问题的本身决定的, 关键在于隐层的层数与隐节点的数目。对于隐层的层数,许多学者作了理论上的 研究。Lippmann[2]和 Cyberko[3]曾指出,有两个隐层,就可以解决任何形式的分类 问题;后来 Robert Hecht Nielson[5]等人研究进一步指出:只有一个隐层的神经网络, 只要隐节点足够多,就可以以任意精度逼近一个非线性函数。相对来说,隐节点数 的选取很困难。 隐节点少了,学习过程不可能收敛;隐节点多了,网络性能下降,节点 冗余。为了找到合适的隐节点数,最好的办法是在网络的学习过程中,根据环境要 求,自组织地学习、调整自己的结构,最后得到一个大小合适的神经网络模型。
������ ������ =0
������ ������������ ������������������
������������������ =f(������������������������������ )
如果任意设置网络初始权值,那么对每个输入样本 P,网络输出与期望输出(������������������ ) 间的误差为 E=∑������������ =(
������������ =
1 ������
������ ������ =1 ������������������
令������������ =������������������ -������
1
������ ������ =1 ������������������ =������������������ -������������
1.2 传统 BP 网络的评述
传统 BP 网络模型把一组样本的输入/输出问题变为一个非线性优化问题,使 用了优化中的最普通的梯度下降算法,对问题的识别具有很强的功能,对于复杂的 非线性模型仿真从理论上来说其误差可以达到任意小的程度。 但它仍然存在一些 缺陷: 1)传统的 BP 网络既然是一个非线性优化问题,这就不可避免地存在局部极小 问题。网络的极值通过沿局部改善的方向一小步一小步进行修正 ,力图达到使误 差函数 E 最小化的全局解,但实际上常得到的是局部最优点。 2)学习过程中,下降慢, 学习速度缓,易出现一个长时间的误差平坦区 ,即出现 平台。 3)网络结构选择不一,网络过大,在训练中效率不高,而且还会由于过拟合造成 网络性能脆弱,容错性下降,浮点溢出,而太小的网络可能根本不收敛。在实际应用 中,网络结构人为性较大,缺乏规则指导。
������ ������ =1 ������ ������ ������ ������ 2 ������ 2 : ������ ������ =1 ������ ������ : ������ =1 ������ ������
ρ������������ 说明隐节点 i 和 j 的相关程度,ρ������������ 过大,说明节点 i 和 j 功能重复,需要压缩合并。 定义 2°样本发散度S������ S������ =������
论文作者签名:
注:本表格作为课程论文的首页递交,请用水笔或钢笔填写。
人工神经网络 BP 算法的改进及其应用
摘 要:对传统的 BP 算法进行了改进,提出了 BP 神经网络动态全参数自调整 学习算法,又将其编制成计算机程序,使得隐层节点和学习速率的选取全部动态实 现,减少了人为因素的干预,改善了学习速率和网络的适应能力。 计算结果表明:BP 神经网络动态全参数自调整算法较传统的方法优越,训练后的神经网络模型不仅 能准确地拟合训练值,而且能较精确地预测未来趋势。 关键词:人工神经网络;BP 算法;自调整;自组织方法 近年来,国际上掀起了一股人工神经网络研究、开发应用的热潮。人工神经网 络的理论的应用已渗透到各个领域,并在智能控制、模式识别、计算机视觉、自 适应滤波和信号处理、非线性优化、自动目标识别、生物医学工程等方面取得了 显著成效。BP 神经网络模型是人工神经网络的重要模型之一。通常,BP 算法是通 过一些学习规则来调整神经元之间的连接权值,在学习过程中,学习规则以及网络 的拓扑结构不变。 然而,一个神经网络的信息处理功能不仅取决于神经元之间的连接强度 ,而且 与网络的拓扑结构(神经元的连接方式)、神经元的输入输出特性和神经元的阀值 有关。因而,神经网络模型要加强自身的适应和学习能力,应该知道如何合理地自 组织网络的拓扑结构,改变神经元的激活特性以及在必要时调整网络的学习参数 等。 本文基于此,在前人研究的基础上,对传统的 BP 算法进行了改进,提出了 BP 神 经网络动态全参数自调整学习算法,不仅加快了网络的收敛速度,而且可以优化网 络的拓扑结构,从而增强了 BP 神经网络的适应能力。