将基于主成分分析(PCA)的BP神经网络预报方法引入大气污染预报,建立SO2浓度预报模型。结果表明:应用主成分分析对数据进行前处理,以原始预报因子的主成分作为BP神经网络的输入,降低了数据维数,消除了样本间存在的相关性,大大加快了BP神经网络的收敛速度。对模型进行预报验证,预报值与实际值之间的绝对误差为0.0098,预报值与实际值的相关系数达到0.885,得到较好的预报效果。并且比一般的BP神经网络模型具有较高的拟合和预报精度。
Based on principal components analysis (PCA), the BP (Back Propagation) neural network forecast method is introduced in air pollution prediction and the SO2 concentration prediction model is established. The results indicate that by applying the principal component analysis in the data pre-processing and taking the principal components of primitive predictor as the input of neural network, it can reduce the dimension of data, eliminate the correlation between the samples, and largely speed up the convergence rate. The verification of forecast model shows that the absolute error between the forecasts and the real value is 0.0098, and the correlation coefficient between them reaches 0.885. The PCA-BP model has a fit accuracy better than the common BP model.
随着大气污染问题日趋严重,城市空气污染作为一个主要的环境问题正迅速凸现出来[
近些年来,人工神经网络(Artificial Neural Network,ANN)技术得到较大发展,尤其是BP神经网络,广泛用于大气科学领域[
研究所用SO2浓度数据由丹东市环境监测中心提供,包括城区4个环境空气质量自动监测站2005年、2006年采暖季(12月至次年3月)SO2浓度日均值。同步气象资料来源于丹东市气象台,包括气温、气压、风速等常规地面观测资料。用2005年的数据作为主成分分析和神经网络训练学习样本,建立神经网络模型,并采用2006年的数据进行预报验证。
计算4个空气自动站SO2浓度的平均值,以代表丹东城区日平均SO2浓度,将其作为预报量,将气温、气压、风速、相对湿度、蒸发等气象要素作为预报因子,进行相关分析,结果如
SO2浓度与气象因子相关系数
预报因子 | 相关系数 | 预报因子 | 相关系数 | |
注:**表示显著水平达到0.01 | ||||
平均气温 | -0.396** | 最大风速 | -0.429** | |
最高气温 | -0.319** | 相对湿度 | 0.271** | |
最低气温 | -0.440** | 最小相对湿度 | 0.142 | |
日照时数 | -0.152 | 平均气压 | 0.147 | |
蒸发量 | -0.574** | 混合层厚度 | -0.340** | |
平均风速 | -0.515** | 前日SO2浓度 | 0.290** |
由
基于PCA-BP神经网络SO2浓度预报模型的建立,关键在于预报因子的主成分分析以及BP神经网络输入模型的确定和训练数据的选取。下面以丹东城区SO2日平均浓度预报为例,介绍预报模型的建立方法。
将
方差分解主成分提取分析
主成分 | 特征值 | 方差贡献比/% | 累积方差贡献比/% |
1 | 3.447 | 38.305 | 38.305 |
2 | 2.932 | 32.579 | 70.883 |
3 | 1.046 | 11.619 | 82.502 |
4 | 0.836 | 9.293 | 91.795 |
5 | 0.328 | 3.639 | 95.435 |
6 | 0.164 | 1.824 | 97.259 |
7 | 0.133 | 1.474 | 98.733 |
8 | 0.105 | 1.165 | 99.899 |
9 | 0.009 | 0.101 | 100.000 |
特征值对应的特征向量(载荷)
因子 | 主成分 | |||
1 | 2 | 3 | 4 | |
0.026 | -0.115 | 0.813 | -0.563 | |
0.416 | 0.366 | 0.036 | -0.011 | |
0.399 | 0.356 | -0.014 | -0.127 | |
0.397 | 0.362 | 0.091 | 0.075 | |
-0.090 | 0.471 | -0.288 | -0.452 | |
-0.320 | 0.362 | 0.276 | 0.322 | |
-0.373 | 0.318 | 0.217 | 0.135 | |
0.401 | -0.115 | 0.314 | 0.542 | |
-0.315 | 0.358 | 0.156 | 0.204 |
由
从主成分系数可以看出,平均气温、相对湿度在第一主成分上有较高载荷,第二主成分中蒸发量有较高的载荷,前日SO2浓度在第三和第四主成分上有较高的载荷。
利用式(1)~(4)求得的4个主成分(
SO2浓度预报BP神经网络模型
将PCA处理后的2006年采暖季数据作为BP神经网络的训练样本,设隐层节点数初值为5,通过改变隐层节点数对网络进行训练,训练结果如
不同隐层节点数的BP神经网络训练结果
隐层节点 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
系统误差 | 0.2158 | 0.1403 | 0.1090 | 0.0719 | 0.0583 | 0.0235 | 0.0492 | 0.0425 |
由
其中:
利用式(5)对2005年采暖季SO2浓度进行拟合检验,并对2006年采暖季SO2浓度进行预报验证。
为了对比分析,建立了一般BP神经网络模型(数据未进行PCA处理)。利用2005年采暖季数据进行拟合检验。
PCA-BP和BP神经网络模型SO2浓度拟合值与实际值对比
利用2006年采暖季数据进行预报验证,
PCA-BP和BP神经网络模型SO2浓度预报值与实际值对比
(1) 将主成分分析引入BP神经网络的前处理,以原始预报因子的主成分作为网络的输入,降低了数据维数,消除了样本间存在的相关性,大大加快了BP神经网络的收敛速度,并且比一般的BP神经网络模型具有较高的拟合和预报精度。
(2) 将PCA-BP神经网络模型应用于丹东城区采暖季SO2浓度预报,预报值与实际值之间的绝对误差为0.0098,预报值与实际值的相关系数达到0.885。
(3) 应用2005年一个采暖季的资料建立PCA-BP神经网络模型,并对2006年采暖季SO2浓度进行预报试验,虽然得到了比较好的预报效果,但不排除偶然性的存在。随着观测资料的积累,将对模型做适当调整,以期建立更加稳健的预报模型。
(4) 鉴于PCA-BP神经网络模型对对采暖季SO2浓度具有良好的预报效果,可推广应用于其他大气污染物的浓度预报,但该方法是否适用,而且是否存在季节性的差异,能否应用于大气污染物浓度的逐时预报,还有待进一步研究,并将撰文详述。
张继娟, 魏世强.我国城市大气污染现状与特点[J].四川环境, 2006, 25(3):104.
徐大海, 朱蓉.大气平流扩散的箱格预报模式与污染潜势指数预报[J].应用气象学报, 2000, 11 (1): 1-12.
马雁军, 杨洪斌, 张云海. BP神经网络法在大气污染预报中的应用研究[J].气象, 2003, 29(7):49.
刘罡, 李听, 胡非.大气污染物浓度的神经网络预报[J].中国环境科学, 2000, 20(5):429-431.
王俭, 胡筱敏, 郑龙熙, 等.基于BP模型的大气污染预报方法的研究[J].环境科学研究, 2002, 15(5):62-64.
周秀杰, 苏小红, 袁美英.基于BP网络的空气污染指数预报研究[J].哈尔滨工业大学学报, 2004, 36(5):582-585.
张承福.人工神经网络在天气预报中的应用研究[J].气象, 1994, 20(6):43-47.
周曾奎, 韩桂荣, 朱定真, 等.人工神经网络台风预报系统[J].气象, 1996, 22(1):18-21.
汤子东, 郑世芳, 奚秀芬. BP人工神经元网络在春季降水量预报中的应用[J].气象, 1997, 23(8):34-37.
施丹平.人工神经网络方法在降水量级中期预报中的应用[J].气象, 2001, 27(6):40-45.
段婧, 苗春生.人工神经网络在梅雨期短期降水分级预报中的应用[J].气象, 2005, 31(8):31-36.
米红, 张文璋.实用现代统计分析与SPSS应用[M].北京:当代中国出版社, 2000, 10.
丛爽编. 面向MATLAB工具箱的神经网络理论与应用(第2版)[M]. 北京: 中国科学技术大学出版社, 2003. 5.