王嘉 周昱 顾杰
摘 要:目前国家用于空气质量监测的空气质量监测中心站建设成本过高,导致无法进行密集部署,实现环境监测设备的网格化部署,需要降低环境监测硬件成本,利用广泛布点取得海量数据,提出了利用光散射法颗粒物传感器采集到的监测数据,采用基于改进BP神经网络方法进行训练,建立传感器实际测量值、天气等影响因素与监测站标准值的映射关系,实现空气颗粒物校校准模型;通过理论分析及实验对比结果表明,基于BP神经网络算法构建的模型在空气颗粒物指数的评价上具有较好的精度和泛化能力,为科学、准确的精细化城市空气颗粒物指数评价和管控提供了可能。
关键词:bp神经网络算法;空气颗粒物;光散射法
中图分类号:TP212.9 文献标识码:A 文章编号:1671-2064(2019)09-0036-05
日益复杂的大气污染状况正在对传统的大气污染源监测方式提出挑战,国控点的成本及后期运营费用较高,很难进行大面积、精密化布点,并且“说不清污染来源”的问题仍然存在。近年来,作为人工智能领域兴起的研究热点,人工神经网络的研究工作不断深入,已经取得了很大的进展。神经网络由于其学习和适应、自组织、函数逼近和大规模并行处理等能力,因而具有用于智能系统的潜力。其在模式识别、智能机器人、自动控制、预测估计、生物、医学、经济等领域已成功地解决了许多现代计算机难以解决的实际问题。本文提出了基于bp神经网络算法通过使用低成本的光散射法传感器采集的空气颗粒物数值及其他大气相关特征值进行训练学习,从而建立特征值与国控点空气颗粒物指数的模型映射,再用此模型将特征值转换成标准的空气颗粒物指数,为实现空气监测设备的高密度网格化部署提供一种思路。
1 环境空气国控点监测原理
当前实施的环境空气国控点监测系统监测点位采用的是振荡天平法和β射线法。
1.1 振荡天平法
振荡天平法是在质量传感器内使用一个振荡空心锥形管,在空心锥形管振荡端上安放可更换的滤膜,振荡频率取决于锥形管特性和他的质量。当采样气流通过滤膜,其中的颗粒物沉积在滤膜上,滤膜质量变化导致振荡频率变化,通过测量振荡频率的变化计算出沉积在滤膜上颗粒物的重量,再根据采样流量、采样现场环境温度和气压计算出该时间的颗粒物标态质量浓度。该方法对空气湿度变化较为敏感,为降低湿度影响,对振荡天平室一般进行50℃加热,这样会损失一部分不稳定的半挥发性物质。
1.2 β射线法
利用β射线衰减量测试采样期间增加的颗粒物重量。样气由采样泵吸入采样管,经过滤膜过滤后排出。颗粒物沉淀在采样滤膜上,当β射线通过沉积着颗粒物的滤膜时β射线能量衰减,通过对衰减量的测定计算出颗粒物的浓度。β射线吸收法是国际上使用较为广泛的标准方法。
采用上述两种方法的监测点位数量有限、成本高昂,以点代面的方法导致时效性不足,無法适应空气颗粒物指数日报与预报的技术要求,达不到精细化管控的目标,且无法实现对监测体系中时空动态趋势分析、污染减排评估、污染来源追踪、环境预警预报等能力的深度挖掘。
2 基于光散射法和改进BP神经网络算法的监测方式
利用光散射法的在空气悬浮颗粒物监测的优点并结合BP神经网络算法弥补光散射法存在的缺点,就可以实现高密度网格化布局的低成本、多参数集成的紧凑型微型环境空气监测系统,网格化的监测体系可在区域内全覆盖,实现高时空分辨率的大气污染监测,结合信息化大数据的应用实现污染来源追踪、预警预报等功能,为环境污染防控提供更为及时有效的决策支持。
2.1 光散射法
光散射等效方法原理光散射法测量质量浓度的原理是建立在微粒的Mie散射理论基础上的。当光照射在空气中悬浮的颗粒物上时,产生散射光。在颗粒物性质一定的条件下,颗粒物的散射光强度与颗粒物的粒径成正比。通过测量散射光强度,就可以对不同粒径的颗粒物进行计数,然后应用转换系数,求得颗粒物质量浓度。
光散射法以其速度快、稳定性好、体积小的优点被人们广泛的应用在实时监测中。光散射法与颗粒物的折射率、粒子的形态以及它的成分有关。而大气中的湿度有可能是影响这几个方面的主要因素,如果在一定的湿度环境中测量大气中颗粒物的质量浓度,得到的测量结果应该不理想,会产生一定程度的误差。如果要得到理想的测量结果,就需要消除湿度对质量浓度的影响。
2.2 BP神经网络算法
BP神经网络是一种通过BP算法实现的人工神经网络。人工神经网络是受自然神经元静息和动作电位的产生机制启发而建立的一个运算模型。神经元通过位于细胞膜或树突上的突触接受信号。当接受到的信号足够大时(超过某个门限值),神经元被激活然后通过轴突发射信号,发射的信号也许被另一个突触接受,并且可能激活别的神经元,神经元生理结构如图1所示。
人工神经元模型已经把自然神经元的复杂性进行了高度抽象的符号性概括。神经元模型基本上包括多个输入(类似突触),这些输入分别被不同的权值相乘(收到的信号强度不同),然后被一个数学函数用来计算决定是否激发神经元,该函数被称作激活函数,如图2所示。人工神经网络把这些人工神经元融合一起用于处理信息。
权值越大表示输入的信号对神经元影响越大。权值可以为负值,意味着输入信号收到了抑制。权值不同那么神经元的计算也不同。通过调整权值可以得到固定输入下需要的输出值。调整权重的过程称为“学习”或者“训练”。
以最简单的一维线性函数y=wx+b为例,通过调整w和b两个参数可以使该函数左右上下移动,在引入激活函数σ(wx+b)后,线性函数即可变成更复杂的非线性函数,如图3所示。
所谓激活函数,就是在神经网络的神经元上运行的函数,负责将神经元的输入映射到输出端。常见的激活函数包括Sigmoid、TanHyperbolic(tanh)、ReLu、softplus以及softmax函数。这些函数有一个共同的特点那就是他们都是非线性的函数。引入非线性函数作为激励函数,神经网络就可以逼近任意函数。如图4,5所示。
更复杂的神经网络模型及对应的函数:
基于神经网络算法可以构造出任意复杂的函数的理论依据,我们可以建立一个特定的神经网络模型,使用光散射法采集的传感数据作为特征值,对应的国控点或省控点数据作为特征标签进行训练不断调整网络模型的权重,拟合出一个对应的函数,然后使用该函数来做校准。同时考虑到环境湿度对光散射法的影响,训练数据还需要增加温度和湿度两个特征值,这样训练得到的模型会更加精确。
BP算法是目前用来训练人工神经网络的最常用且最有效的算法。基于BP算法的神经网络能学习和存储大量的输入一输出模式映射关系,而无需事前揭示描述这种映射关系的数学方程。它的学习规则是使用最速下降法,通过反向传播来不断调整网络的权值和阈值,其实质就是求解误差函数最小值问题。
2.3 Bp神经网络算法的改进
在训练数据之前,需要先将数据进行标准化,然后利用标准化过后的数据去进行训练。不同的特征值量纲与量纲单位也是不同的,这便会影响到训练的过程乃至结果,数据的标准化处理可以消除指标之间的量纲影响,用以此来解决特征值的可比性。
本文使用的BP神经网络训练数据包括pm2.5,pm10,湿度,温度四个维度,每个维度之间的数量级差别较大,直接训练会导致每一维的梯度下降不同,使用同一个学习率也就很难迭代到代价函数最低点。经过归一化处理后,代价函数变得“更圆”,也就很容易进行梯度下降,提高训练速度。常用归一化方法有最大-最小标准化,Z-score标准化,函数转化等。这里使用最大-最小标准化是对原始数据进行线性变换,设minA和maxA分别是A的最小值和最大值,将A的一个原始值x通过最大-最小标准化映射到区间[0,1]的值x'。公式如下:
3 空气颗粒物校准模型的实现
本次对空气颗粒物pm2.5和pm10的神经网络模型构建、训练、测试通过R语言的Neuralnet神经网络包实现。使用安装在余姚龙山公园国控点附近的空气检测设备的光散射法传感器采集的pm2.5和pm10原始数据以及温湿度四个指标作为特征值,对应余姚国控点发布的pm2.5和pm10指数作为特征标签进行模型训练,pm2.5和pm10的模型构建说明详如表1和表2所示。
Pm10模型训练部分R语言代码片段:
# 读取训练数据
input <- read.csv("pm10_training.csv",header = TRUE,sep = ",")
# 设置训练参数
dataCol <- "PM10"
labelCol <- "PM10_LABEL"
inputCols <-c(dataCol,"HUMIDITY","TEMPERATURE","PM25")
# 设置训练数据样本比率
trainingSetRatio <-0.9
# 歸一化
Maxs <- apply(input,2,max)
Mins <- apply(input,2,min)
# 训练神经网络模型
net<-Training(input,trainingSetRatio,dataCol, labelCol,inputCols, 0.0111)
# 读取验证数据
ca_input <- read.csv("pm10_calibrated.csv",header = TRUE,sep = ",")
# 使用训练好的模型验证数据
predict<-Calibrate(net,ca_input,inputCols,Maxs,Mins,labelCol)
# 计算性能指标
label<-as.data.frame(ca_input[labelCol])
r2<-RSquare(predict,label)
mse<-Mse(predict,label)
经过训练后的用于预测PM10及PM2.5的两个神经网络模型分别如图6,8所示。
采用训练后的神经网络模型进行测试测试数据:2018.8.6至2018.8.12(该时间段内有余姚环保局提供的余姚龙山公园国控点数据做参照),PM10及PM2.5与国控点测试对比结果分别如图7,9所示。
4 结语
(1)由于训练数据其值域有较大的差别,训练时间增大,引起无法收敛。本次实验编程利用BP神经网络算法的时候对数据进行归一化处理,经过归一化处理之后,训练时间大大缩短并达到了收敛,可见对于神经网络来说,对数据进行归一化处理显得尤为重要,同时通过遍历隐含层的层数以及单层的节点数来寻找最优的神经网络模型,利用模型校准的数据与国控点数据生成的两条曲线的趋势和吻合度都比较良好,达到了预期的效果。
(2)通过实验验证了所构建的基于光散射法和改进bp神经网络算法的空气颗粒物校准模型具有一定的实用性和有效性,这种以软件做校准的空气颗粒物监测方式为低成本大规模的网格化部署,明确空气污染的趋势和扩散规律,以此来确定污染物源头和缩小污染物范围,实现监管辖区内热点范围全覆盖、科学分析、高效管理提供了可行性依据。
参考文献
[1] 石灵芝,邓启红,路婵,刘蔚巍.基于BP人工神经网络的大气颗粒物PM10质量浓度预测[J].中南大学学报:自然科学版,2012,43(5):1964-1974.
[2] 吉祝美.环境空气质量标准新标准解读[J].污染防治技术,2012,25(6):67-69.
[3] 刘锋,李春燕,谭祥勇,王鹏飞.基于机器学习在空气质量指数中的应用[J].重庆工商大学学报:自然科学版,2017,34(3):83-86.
[4] 韩力群.人工神经网络理论、设计及应用[M].北京:化学工业出版社,2002(11):55.