实验四 Matlab 神经网络以及应用于汽油辛烷值预测 一、实验目的 1. 掌握 MATLAB创建 BP神经网络并应用于拟合非线性函数 2. 掌握 MATLAB创建 REF神经网络并应用于拟合非线性函数 3. 掌握 MATLAB创建 BP神经网络和 REF神经网络解决实际问题 4. 了解 MATLAB神经网络并行运算 二、实验原理 2.1 BP神经网络 2.1.1 BP神经网络概述 BP神经网络 Rumelhard和 McClelland于1986年提出。从结构上将,它是一种典型的多层前向型神经网络,具有一个输入层、一个或多个隐含层和一个输出层。层与层之间采用权连接的方式,同一层的神经元之间不存在相互连接。理论上已经证明,具有一个隐含层的三层网络可以逼近任意非线性函数。 隐含层中的神经元多采用 S型传递函数,输出层的神经元多采用线性传递函数。图1所示为一个典型的BP神经网络。该网络具有一个隐含层,输入层神经元数据为 R,隐含层神经元数目为 S1,输出层神经元数据为 S2,隐含层采用 S型传递函数 tansig,输出层传递函数为 purelin。 图1 含一个隐含层的 BP网络结构 2.1.2 BP神经网络学习规则 BP 网络是一种多层前馈神经网络,其神经元的传递函数为 S 型函数,因此输出量为 0到 1 之间的连续量,它可以实现从输入到输出的任意的非线性映射。由于其权值的调整是利用实际输出与期望输出之差,对网络的各层连接权由后向前逐层进行校正的计算方法,故而称为反向传播(Back-Propogation)学习算法,简称为 BP 算法。BP 算法主要是利用输入、输出样本集进行相应训练,使网络达到给定的输入输出映射函数关系。算法常分为两个阶段:第一阶段(正向计算过程)由样本选取信息从输入层经隐含层逐层计算各单元的输出值;第二阶段(误差反向传播过程)由输出层计算误差并逐层向前算出隐含层各单元的误差,并以此修正前一层权值。 BP 网络的学习过程主要由以下四部分组成: 1)输入样本顺传播 输入样本传播也就是样本由输入层经中间层向输出层传播计算。这一过程主要是 输入样本求出它所对应的实际输出。 ① 隐含层中第i 个神经元的输出为 111111,,2,1sibpwfaRjijiji ② 输出层中第k 个神经元的输出为: 2211222,2,1,1sibawfakSiikik 其中f1(·), f2 (·)分别为隐含层和输出层的传递函数。 2)输出误差逆传播 在第一步的样本顺传播计算中我们得到了网络的实际输出值,当这...