动态隐神经元BP网络的多气体分析的MATLAB实现
2012-12-27张庆伟
秦 悦,张庆伟
(大连民族学院机电信息工程学院学生,辽宁大连 116605)
动态隐神经元BP网络的多气体分析的MATLAB实现
秦 悦,张庆伟
(大连民族学院机电信息工程学院学生,辽宁大连 116605)
目前,甲醛、甲苯所造成的室内空气、大气环境的污染已引起人们的广泛关注,对这些气体的低浓度识别与检测一直是人们最为关心的话题[1]。气敏传感器阵列模式识别技术的基本原理是将不同选择性的气敏元件组成传感器阵列,用它测量多种气体得到一组响应数据,建立线性响应方程组,并根据线性方程组的不同解法解此方程组,可以识别气体种类和组成成分[2-3]。
1 BP结构
图1 BP神经网络
2 实验方法
将实验测得的18组数据分为两组进行数据归一化处理,其中偶数组作为训练组,奇数组作为测试组。在MATLAB环境下通过newff函数创建一个BP神经网络,其中网络的输入层节点数为6,输出层节点数为3,隐含层神经元数设为动态变量,其范围为3~13,由sim函数对开始数据进行训练与仿真。
3 实验结果
经过一定时间的训练后,实验结果满足要求,训练停止,训练结果如图2。
图2 定性分析训练结果
训练完成后可得到不同隐含层神经元个数下对三种气体的识别误差,其训练结果见表1。
表1 隐含层神经元数与实验误差关系
采用4个隐含层神经元,能使训练误差TRI_P达到最小,最小值为2.29%,训练次数为1259,训练时间满足实验要求。因此,BP神经网络最佳隐含层神经元数是4。
式中:Creal与Ctest分别表示浓度的真实值与预测值;M为样本数。
将偶数组作为训练过的神经网络输入,气体训练的辨识结果见表2。
表2 训练气体辨识结果
实验结果表明,上述训练得到的BP神经网络,在干扰气体存在条件下,能对单一微量气体进行定性识别。当输出大于0.7时即可识别,由式1得出该网络结构识别正确率RATE_P为100%。
式中:m为预测正确样本数;M为实际样本数。
4 结语
从实际的MATLAB仿真结果看,基于MATLAB的动态隐神经元BP人工神经网络在气体的定性识别方面取得了良好的效果,实验误差与收敛速度均达到实验要求。BP网络实现过程中,适当的算法改进如动态隐神经元、增加动向量等方法可在一定程度上改善BP算法,以达到提高测量精度的目的。实验结果对室内家居中的甲醛等有害气体的检测具有实际意义,为微量有害气体检测提供依据。
[1]甘信华,石勇,林保国.基于MATLAB的BP神经网络在大气环境质量评价中的应用[J].安徽化工,2008,35(5):59-61.
[2]林剑峰.动态可重构神经网络实现及气体识别方法研究[D].大连:大连理工大学,2009.
[3]杜海英,王兢,张涛.基于人工神经网络的微量甲醛气体识别方法[J].长春工业大学学报,2008,29(1):52 -54.
TP183
A
1009-315X(2012)05-0523-02
2011-12-04;最后
2012-06-07
大连民族学院太阳鸟计划资助项目(20110623);中央高校基本科研业务费专项资金资助项目(DC12010301)。
指导教师:杜海英(1978-),女,辽宁大连人,讲师,主要从事传感器及检测技术的研究。
(责任编辑 刘敏)