人工神经网络(简称神经网络)是人工智能学科中的一个分支。对人工智能的研究主要分为两个方向,一个是基于人类思维活动的所谓符号(逻辑)主义,专家系统的成功开发与应用,为人工智能走向工程实际和理论联系实际作出了重要贡献;另一个是模拟大脑微观结构、神经网络的连接机制和学习算法的连接主义。前者一度成为AI研究的主流,而后者由于技术条件的限制曾经一度徘徊不前,直到20世纪80代中期,Hopfield网络和BP算法的成功,才为其注入了新的活力。目前对人工神经网络的研究和应用正方兴未艾。
BP网络是一种多层前馈神经网络,名字源于网络权值的调整规则。采用的是后向传播学习算法,即BP学习算法,反向传播的本质是有导师的学习,即通过学习不断修正网络的权值和阈值,直到网络输出误差平方和达到最小。BP学习算法是Rumelhart等在1986年提出的。BP算法理论依据坚实,推导过程严谨、物理概念清晰并且通用性好,使它至今仍是前馈网络的主要算法。其不足之处是学习过程收敛速度慢,并且容易出现局部极值,因而是非完备的。
在神经网络的实际应用中,BP网络广泛应用于函数逼近、模式识别/分类、数据压缩等,80%~90%的神经网络模型采用了BP网络或者它的变化形式,它也是前馈网络的核心部分,体现了神经网络最精华的部分。
BP网络是一种单向传播的多层前向网络,其结构如图3.4所示。由图可见,BP网络是一种具有3层或3层以上的神经网络,包括输入层、中间层(隐层)和输出层。上下层之间实现全连接,而每层神经元之间无连接。
一般来说,神经网络预测的步骤如下:
①样本的预处理,由于各种神经网络的激活函数、学习规则等不同,所以在输入之前需对输入样本作归一化处理;
②输入预处理后的样本 y ;
③使用选定的神经网络训练算法,训练网络的连接强度;
④还原处理。
图3.4 BP网络结构