人工神经网络技术从上世纪40年代出现以来,经过了半个多世纪的发展,目前已经成为一门新兴的 科学技术,其特有的非线性适应性信息处理能力,克服了传统人工智能方法的缺点,在模式识别和 图像处理、控制与优化、预报和智能信息管理,以及通信、空间科学等领域得到了成功的应用<1 >。金属的腐蚀行为是一个复杂的过程,受到环境、成分、表面状态以及热处理工艺等各种因素的 影响,各因素与腐蚀之间的关系是非线性的,利用传统的分析方法很难建立准确的预测模型,因此 自上世纪90年代起,在中国开始将人工神经网络技术应用于腐蚀研究领域,主要用于研究大气、 海水和土壤环境中金属材料的腐蚀影响因素,以及相关的腐蚀预测模型研究<2~5>。孔德英等 <6>利用人工神经网络技术建立了青岛海域全浸区碳钢、低合金钢合金成分与平均腐蚀速率之间 的关系模型,预测结果与实海结果基本一致。崔大为等<7>利用人工神经网络和有色金属8年的 腐蚀数据建立的腐蚀预测模型用于预测有色金属16年的腐蚀速度,预测结果误差在20%以内。 作者将铜及铜合金成分与海水环境因素做为共同影响腐蚀速度的因素,建立与平均腐蚀速率之间的关系模型,用于预测不同成分的铜及铜合金在不同海域的1、2、4、8年平均腐蚀速度。1神经网络结构设计11.1网络模型随着神经网络的发展,目前已有数十种的神经网络模型,主要分为3大类:前向网络(Feedforward NNs)、反馈网络(Feedback NNs)和自组织网络(Self-organizing NNs)。其中前向网络模型中的误差反传网络模型(Back Propagating NNs)是迄今为止用得最普遍和最广泛的神经网络模型。BP网络是一种单向传播的多层前向网络 ,其结构如图1所示。网络包括:一个输入层、一个输出层,一个或多个隐含层。网络将输入层的 信息传播到隐含层节点上,经过传递函数运算后,输出到输出层节点上,计算输出值与期望输出值 之间的误差,并将误差信号沿原来的连接通路返回,通过修改各层神经元的权值,逐次向输入层传 播并进行计算,再经过正向传播过程,这两个过程反复运用,直到误差信号达到期望值后,网络训练过程结束。MarineSciences/Vol.30,No.3/2006 17图1基于BP算法的神经元网络结构Fig.1 Structure diagram of neural network based on BP arithmetic近年来应用于腐蚀研究领域的人工神经网络模型都是采用BP网络模型,预测 结果比较理想,因此作者也采用BP网络模型。1.2网络结构神经网络传递函数主要有3种:正 切S型函数(tansig)、对数S型函数(logsig)和线性函数(pruelin), 正切S型函数将神经元输入范围(-∞,+∞)映射到(-1,+1)之间;对数S型函数则将神 经元输入范围(-∞,+∞)映射到(0,+1)之间;线性函数是神经元可采用的最简单的函数 ,只是简单地将神经元输入经阈值调整后传递到输出层。在本模型中输出层的传递函数为线性函数 。对数S型函数的模型虽然网络收敛速度慢,训练时间较长,但预测结果重现性相对较好,且预测 精度较高,因此在本模型中隐含层的传递函数采用对数S型函数。作者将影响铜及铜合金在实海环 境中腐蚀速度的主要因素分为实海环境因素和材料成分因素,实海环境因素主要包括:年平均温度 、年平均氧浓度、年平均盐度、pH、平均流速以及生物附着6种因素。主要成分因素包括:Mn、Ni、Si、Zn、Fe和Sn6种成分,因此网络结构的输入层节点数量为12;输出值为全浸1、2、4、8年的4个平均腐蚀 速度,输出层节点数为4。由于增加层数主要可以更进一步降低误差,提高精度,但使网络复杂化 ,增加网络的训练时间,而误差精度的提高还可以通过增加隐含层的神经元数来获得<8>,因此 在本工作中只将隐含层的层数确定为一层,主要通过增加隐含层的神经元节点数来提高精度。隐含 层中神经元的数量在理论上没有一个明确的规定,数量太少,网络不够健壮,误差收敛速度慢,误 差较大,而数量太多,造成训练时间加长,容易过度拟合,误差不一定最佳。虽然有公式<9>可 供参考,但由于网络结构对神经元数量是比较敏感的,因此比较实际的做法是通过对不同神经元数 进行训练比较对比,最终确定最佳的神经元数量。经过对比训练后确定隐含层节点的数量为20。 最终的BP神经网络结构为12-20-4三层,隐含层的传递函数为对数S型函数,输出层传递 函数为线性函数。2训练样本和验证样本由于神经网络经过训练后能够反映训练样本中的规律,因 此样本的准确性和合理性直接影响到神经网络预测模型训练结果的精度,而且实际铜及铜合金的腐 蚀速度规律性较差,为了避免训练样本中存在的异常数据造成预测模型得到错误的规律或误差较大 ,需要对训练样本进行筛选,在本工作中样本筛选的原则:铜及铜合金在海水中一般腐蚀规律是平 均腐蚀速度随时间逐渐减小。根据以上规律选择了8种铜及铜合金分别在青岛、厦门和榆林三地的 19组数据作为训练样本,TUP、QSn6.5-0.1和QSi3-1在青岛、厦门和榆林的 5组数据作为验证样本。训练样本中的环境因子数据采用公开发表的各试验地点的环境观测数据, 生物附着因素由于没有明确的量化指标,因此,在本工作中参考了孔德英等<6>提出的生物影响 因子指标,即青岛及舟山海域的生物因子为0.1,厦门海域的生物因子为0.8,榆林海域的影 响因子为0.4。3训练次数神经网络模型的训练次数是影响模型预测结果的精度以及模型训练时 间主要因素之一。按常理,训练次数越多,模型的均方差(MSE)越小(图2),即模型的预测 精度应当越高,然而,将验证样本输入模型进行仿真后,模型的预测结果的误差精度并不是海洋科 学/2006年/第30卷/第3期随训练次数的增加而减小(图3),而是在训练开始阶段,误差迅速减小,在达到一个最小值后,开始逐图2训练误差曲线Fig.2Error curve of training图3仿真误差曲线Fig.3 Error curve of simulation渐增加,从而造成模型的预测精度降低,这种现象说明模型出现了过度拟合现 象,使模型的容错性能下降,模型包含了过多训练样本中的错误信息,因此训练次数并不是越多越 好,而是存在一个最佳值。在本工作中训练次数最佳值是根据验证样本的仿真平均相对误差来确定。4模型预测结果及讨论将19组训练样本输入模型后经过10050次的训练后仿真误差达到最小值,记录此时网络的权值和阈值,得到了铜及铜合金在实海环境 中平均腐蚀速度的预测模型。将5组验证样本输入训练好的预测模型后得到的预测值与真实值的对比和误差值,预测结果见表1。表1BP神经网络模型的预测值及误差Tab.1 The predicted data and the error gained by BP neural network model材料名称地点周期真实值(mm/a)预测值(mm/a)误差(%)1 0.0200 0.0147 26.51 2 0.0072 0.0113 56.91 4 0.0063 0.0060 4.760 8 0.0070 0.0057 18.57 1 0.0130 0.0133 1.952 2 0.0092 0.0096 4.384 4 0.0073 0.0072 1.103 TUP厦门厦门8 0.0058 0.0053 8.301 1 0.0150 0.0150 0.087 2 0.0120 0.0120 0.088 4 0.0110 0.0110 0.147 8 0.0070 0.0077 9.985 1 0.0140 0.0156 11.44 2 0.0099 0.0113 13.88 4 0.0072 0.0084 17.04 QSn6.5-0.1 QSi3-1榆林青岛8 0.0049 0.0063 27.55 1 0.0310 0.0310 0.017 2 0.0210 0.0210 0.075 4 0.0150 0.0150 0.291榆林8 0.0110 0.0110 0.123从表1中可以看出除了TUP在厦门和QSi3-1在青岛海域的两组预测值误差较大外 ,其他3组预测数据的误差都在10%以内,其中QSi3-1在榆林的预测结果误差均小于1%,误差平均值为10.16%,预测结果精度比较理想。MarineSciences/Vol.30,No.3/2006 19图4不同海水环境因素对腐蚀速度的影响Fig.4 Influence of different seawater factors on corrosion rate利用该模型分析了环境因素对铜及铜合金平均腐蚀速度的影响规律,分析结果见图4。从图 中可以看到如下规律:(1)随着温度的升高,4个周期的腐蚀速度都显著增加。(2)随着pH 、氧浓度和盐度的升高,浸泡1年的试样腐蚀速度明显下降,但其他3个周期腐蚀速度变化规律不 明显。(3)潮水平均流速的变化对腐蚀速度的影响不明显。众所周知,铜及铜合金具有较好的耐 蚀性能主要是由于材料表面能够形成一层致密的氧化物保护膜。该氧化膜主要由氢氧化铜、氯氧化 铜、碱式碳酸铜和硫酸钙等混合物的氧化亚铜组成<10>,因此海水中的pH和盐度的升高能够 促进该氧化物膜的形成,从而降低平均腐蚀速度。另外,从图5的实际环境数据与腐蚀数据的关系 可以看出随着温度的升高,浸泡1年铜及铜合金的腐蚀速度逐渐增加,但海水中海水氧浓度却逐渐 降低。这主要是由于温度升高使海洋生物大量生长,虽然铜合金本身有一定的防污作用,但海洋生 物仍然能较多地附着在材料表面(实际挂片存在这种现象)。大量生长的海洋生物消耗了水中的氧,从而造成了海水中氧浓度的下降,而生物的附着会破坏铜
More abstracts about the BP神经网络在铜及铜合金海水腐蚀预测中的应用