基于LabWindoWs/CV工的AT.神经网络BP算法的实现
发布时间:2008/5/29 0:00:00 访问次数:444
1. 引言
神经网络是虚拟仪器设计中用于信号分析与处理的常用算法。他由输入层、隐含层及输出层组成,可以通过对已知样本学习,掌握经验,从而对未知样本做出判别。学习方法中影响最大的是david rumelhart等人提出的误差反向传播(bp)算法。该学习算法由工作信号正向传播和误差信号反向传播2个学习过程组成。在正向传播过程中,输入信号从输入层经隐单元传向输出层,在输出端产生输出信号。同时,将期望的输出和实际输出之间的二次误差沿原来的传递通路反向传播到输入层,并以此调整各层神经元的权值系数,最终使得误差信号最小。bp算法直观简单,容易实现,但是在实际应用中他也存在2个重要问题:收敛速度慢、目标函数存在局部极小点,限制了该方法的进一步运用。
本文在bp算法的基础上,针对传统bp算法收敛速度较慢的缺点,提出了2点改进:首先,选用奇函数作为激励函数;其次,在误差的反向传播项中,采用新的误差传潘因子。在以上两点改进的基础上,本文给出了该算法在labwindows/cvi环境下的实现方法。
2 神经网络bp算法的改进
设输入层为m,即有m个输入信号,其中的任一输入
通过对传统bp算法的改进,对比图2,3中的cycle值,可以得出如下结论:采用新算法后,学习的收敛速度较以前有较明显的提高。
1. 引言
神经网络是虚拟仪器设计中用于信号分析与处理的常用算法。他由输入层、隐含层及输出层组成,可以通过对已知样本学习,掌握经验,从而对未知样本做出判别。学习方法中影响最大的是david rumelhart等人提出的误差反向传播(bp)算法。该学习算法由工作信号正向传播和误差信号反向传播2个学习过程组成。在正向传播过程中,输入信号从输入层经隐单元传向输出层,在输出端产生输出信号。同时,将期望的输出和实际输出之间的二次误差沿原来的传递通路反向传播到输入层,并以此调整各层神经元的权值系数,最终使得误差信号最小。bp算法直观简单,容易实现,但是在实际应用中他也存在2个重要问题:收敛速度慢、目标函数存在局部极小点,限制了该方法的进一步运用。
本文在bp算法的基础上,针对传统bp算法收敛速度较慢的缺点,提出了2点改进:首先,选用奇函数作为激励函数;其次,在误差的反向传播项中,采用新的误差传潘因子。在以上两点改进的基础上,本文给出了该算法在labwindows/cvi环境下的实现方法。
2 神经网络bp算法的改进
设输入层为m,即有m个输入信号,其中的任一输入
通过对传统bp算法的改进,对比图2,3中的cycle值,可以得出如下结论:采用新算法后,学习的收敛速度较以前有较明显的提高。