神经网络简介:神经网络是大脑的一个组成部分。James在1890年的《心理学》一书中这样描述神经网络的基本原理:大脑皮层每一点的活力是由其它点势能释放的综合效能产生的,这些势能与如下因素有关:(1)相关点的兴奋次数;(2)兴奋的强度;(3)与其不相连的其它点所接受的能量。他的这一原理一直沿用至今。到目前为止,神经网络的研究主要分为两个派别:一派主要包括生物学家、物理学家和心理学家等,他们研究的主要目的是给出大脑活动的描述和精细模型;另一派主要包括工程技术人员等,他们关心的是怎样利用神经网络的基本原理,来构造解决实际问题的算法,使得这些算法具有有效的计算能力,我们称之为神经网络的工程应用研究,或称为人工神经网络(artificialneuralnetwork,ANN),简称为神经网络。人工神经网络可以分为前向型和反馈型两类:前向型神经网络的特点是信息传递由后层神经元向前层神经元传递,同一层内的神经元之间没有信息交流;反馈型神经网络中的神经元之间不但相互作用,而且自身也有信息内耗。BP神经网络是一种多层前向神经网络,名字源于网络权值的调整规则采用的是后向传播学习算法(也称为反推学习规则),即BP学习算法(back-propagation,BP)。BP学习算法是Rumelhart等在1986年提出的。至此以后,BP神经网络得到了广泛的实际应用,据统计,80%~90%的神经网络模型都采用了BP网络或者它的变形。BP神经网络理论BP神经网络是一种单向传播的多层前向型网络,其结构如图所示。由图可见,BP网络是一种具有三层或三层以上的神经网络,包括输入层、中间层(隐层)和输出层。上下层之间实现全连接,而每层神经元之间无连接。当一对学习样本提供给网络后,神经元的激活值从输入层经各中间层向输出层传播,在输出层的各神经元获得网络的输入响应。接下来,按照减少目标输出与误差的方向,从输出层经过各中间层逐步修正各连接权值,最后回到输入层,这种算法称为“误差逆传播算法”,即BP算法,随着这种误差逆的传播修正不断进行,网络对输入模式响应的正确率也不断上升。BP网络的传递函数要求必须是可微的,常用的有Sigmoid型的对数、正切函数或线性函数,即xexsig11)(logxxxxeeeexsig)(tanxxpurelin)(BP网络学习规则下面以一个三层BP网络为例,介绍BP网络的学习过程及步骤。首先对符号的形式及意义说明如下:网络输入向量),...,,(21nkaaaP;网络目标向量),...,,(21qkyyyT;中间层单元输入向量),..,(2,1pksssS,输出向量),..,,(21pkbbbB;输出层单元输入向量),...,,(21lqllLk;输出向量),...,,(21cqccCk;输入层至中间层的连接权ijw,ni,...2,1,pj,..2,1;中间层至输出层的连接权jtvpj,..2,1,qt,...,2,1;中间层各单元的输出阈值j,pj,..2,1;输出层各单元的输出阈值t,qt,...,2,1;参数mk,...,2,1,为训练样本序号。BP网络学习过程及步骤如下:(1)初始化。给每个连接权值ijw、jtv、阈值j、t赋予区间)1,1(内的随机值。1x2x(2)随机选取一组输入和目标样本),...,,(21kkkknaaaP、),...,,(21kkkkqyyyT提供给网络。(3)用输入样本),...,,(21kkkknaaaP、连接权ijw和阈值j计算中间层各单元的输入js,然后用js通过传递函数计算中间层各单元的输出jb。nijkiijjaws1,pj,..2,1)(jjsfb,pj,..2,1(4)利用中间层的输出jb、连接权jtv和阈值t计算输出层各单元的输出tL,然后通过传递函数计算输出层各单元的响应tC。tpjjjttbvL1,qt,...,2,1)(ttLfC,qt,...,2,1(5)利用网络目标向量),...,,(21kkkkqyyyT,网络实际输出tC,计算输出层的各单元一般化误差ktd。)1()(tttktktCCCyd,qt,...,2,1(6)利用连接权jtv、输出层的一般化误差ktd和中间层的输出jb计算中间层各单元的一般化误差kje。)1(][1jjqtjtktkjbbvde(7)利用输出层各单元的一般化误差ktd与中间层各单元的输出jb来修正连接权jtv和阈值t。jktjtjtbdNvNv)()1(ktttdNN)()1(qt,...,2,1,pj,..2,1,10(8)利用中间层各单元的一般化误差kje,输入层各单元的输入),...,,(21kkkknaaaP来修正连接权ijw和阈值j。kikjijijaeNwNw)()1(kjjjeNN)()1(ni,...2,1,pj,..2,1,10(9)随机选取下一个学习样本向量提供给网络,返回到步骤(3),直到m个训练样本训练完毕。(10)重新从m各学习样本中随机选取一组输入和目标样本,返回步骤(3),直到网络全局误差E小于预先设定的一个极小值,即网络收敛。如果学习次数大于预先设定的值,网络就无法收敛。(11)学习结束可以看出,在以上的学习步骤中,(7)~(8)步为网络误差的“逆传播过程”,(9)~(10)步则用于完成训练和收敛过程。用BP神经网络预测本实验中的过滤效应与透气量。对于BP网络,有一个非常重要的定理,即对于任何在闭区间内连续的函数都可以用单隐层BP网络逼近,因而一个三层BP网络就可以完成任意的n维到m维的映射,因此,本实验使用三层BP网络进行预测,学习函数:输入层到隐层使用tansig函数,隐层到输出层使用logsig函数。在原数据表中选取同一条件下的每一组数据中的第一个数据作为测试数据,剩余数据为训练数据样本。训练数据如下表。表3-4聚乳酸熔喷非织造布在不同工艺下的过滤效率温度/℃DCD/cm定量/g·m-2过滤效率/%温度/℃DCD/cm定量/g·m-2过滤效率/%2501045017.162701510090.892501045016.782701510089.872501045017.18270209892.472501045013.30270209894.732501527047.35270209893.572501527047.37270209894.152501527048.32270253274.402501527049.71270253265.802502024039.15270253266.982502024043.16270253271.872502024043.02290521133.102502024042.12290521144.10250256372.80290521145.49250256373.44290521135.67250256374.612901019549.06250256372.972901019554.46270511276.792901019543.89270511275.412901019546.76270511273.782901517860.16270511272.812901517858.222701015284.992901517859.092701015286.942901517860.012701015283.652902016164.082701015282.782902016169.802701510091.262902016165.862701510093.282902016163.09表3-5聚乳酸熔喷非织造布在不同工艺条件下的透气量温度/℃DCD/cm定量/g·m-2透气量/L·m-2·s-1温度/℃DCD/cm定量/g·m-2透气量/L·m-2·s-1测试数据如下表过滤效率预测误差如图25010450492701510036625010450512701510031925010450432702098513250104504027020984252501527016627020983722501527017627020983092501527017427025321020250152701662702532107925020240108270253212892502024018927025321020250202402442905211547250202401062905211588250256374829052116652502563856290521157925025637882901019584925025637482901019556627051125332901019570627051123862901019580527051125242901517813042705112468290151781038270101523952901517811192701015231929015178105627010152226290201611152270101523012902016112252701510038129020161147527015100357290201611173三层BP网络的设计本实验中输入向量是3维向量,因此输入层为3个单元,输出向量是2维向量,因此输出层维2个单元,隐层单元数按经验公式amnn1,1n为隐层单元数,n为输入单元数,m为输出单元数,]10,1[a为常数。实验结果如下表:隐层数23456迭代次数6285000510421537训练误差0.0079990.003100.0018620.0017910.003751隐层数789迭代次数1181731303训练误差0.0017910.0017910.00183767因此,隐层数取7个单元较为合适,网络训练如图预测结果如下表温度/℃DCD/cm定量/g·m-2过滤效率/%透气量/L·m-2·s-1测量值预测值误差(%)测量值预测值误差(%)2501045017.7616.109.316545.7529.612501527049.1348.102.09136170.50-252502024040.5841.95-3.38228161.729.05250256375.1073.452.1997778519.62270511268.8274.69-8.54323477.75-47.912701015281.4784.58-3.82397310.2521.85052701510089.3491.32-2.21379355.756.1413270209892.9593.92-1.04447404.759.451270253270.6569.751.269141102-20.548290521135.9739.59-10.0397594.7500-49.8112901019544.2848.54-9.62579731.5000-26.3282901517854.9559.369.319961129.2-13.37852902016158.7465.70-11.8512751256.31.4706由以上结果透气量平均值的预测结果如下表温度/℃DCD/cm定量/g·m-2透气量/L·m-2·s-1温度/℃DCD/cm定量/g·m-2透气量/L·m-2·s-1观察值平均值预测值观察值平均值预测值250104504927015100366355.75355.75250104505145.7545.752701510031925010450432702098513404.75404.752501045040270209842525015270166270209837225015270176170.5170.527020983092501527017427025321020250152701