本发明涉及大气污染因子预测领域,具体涉及一种大气污染因子浓度时空分布预测方法及系统。
背景技术:
现有预测大气污染因子的手段有如下三种:通过线性回归模型(线性回归模型是一种机器学习中的数学模型,该模型假设输入输出间具有线性关系,通过线性叠加的方式来逼近这种线性关系)实现站点预测,通过双三次样条插值算法(插值算法是一种数据拟合或函数逼近技术,通过数据建立一种逼近真实函数关系的数学模型,通常在1维或2维空间中插值曲线或曲面)预测,通过差分自回归滑动均值模型实现时间预测。
通过线性回归模型实现站点预测
线性回归模型假定回归函数y=f(x)在输入x=(x1,x2,…,xn)上是线性的,即给定一个输入x,输出y,它们之间存在线性关系。给定一个容量为N的训练样集xi是集合D中的第i个特征向量(特征向量是由n个属性构成的n维向量,该向量表示了事物的特征,用来作为学习机器的学习样本),即模型的输入,如未做特殊说明则向量都为列向量。yi是第i个特征向量xi对应的输出,即模型的输出,假定输入xi和yi之间存在线性关系,因此可以用以下线性模型来逼近这种关系:
式(1.1)中wj表示n维特征向量x的第j个属性对应的参数(或称权值),b0是特征向量x的偏置(或称阈值)。令则式(1.1)可以改写为:
式(1.2)中w表示参数向量w0表示偏置,T表示转置,其中参数向量w是未知的,因此通过样本训练集合D来求解出w,从而实现线性回归模型对输入输出之间所假定线性关系的逼近。通过最小二乘学习法可得到式(1.2)的最小二乘解。
最小二乘学习法是对模型的输出f(xi)和训练集输出的平方误差:
为最小时的参数w的学习,即:
对式(1.4)求偏导,并求极值点,可得:
根据式(1.5)得到最小二乘解,因此线性回归模型在训练集D上的预测的结果可以表示为:
通过上述方法根据监测站和微观站之间的数据建立线性回归模型,可实现微观站未知大气污染因子浓度的预测。
通过双三次样条插值算法预测
双三次样条插值是一种曲面拟合技术,在二维空间中拟合出一个曲面。在大气污染因子浓度空间分布中,通常基于站点经纬度以及某种大气污染因子浓度数据,拟合出该大气污染因子浓度的空间分布曲面方程:
式(2.1)中,U=[1,u′,hiu′2,hiu′3],W=[1,w′,kiw′2,kiw′3],u,w为矩形网格的长和宽,
通过大气监测站数据求解出式(2.1)中的角点信息矩阵B得到大气污染因子浓度空间分布的曲面方程,从而预测监测区域某一位置的大气污染因子浓度;
通过差分自回归滑动均值模型实现时间预测;差分自回归滑动平均模型(ARIMA)是一种基于平稳序列的时间序列数学模型,通常应用在1维空间当中,通过ARIMA模型可实现时间上的预测。
利用差分形式的ARIMA(p,d,q)模型拟合数据的过程,实质上是先对观测数据先进行d次差分处理,然后再拟合ARMA(p,q)模型,通过时间序列求解ARIMA(p,d,q)模型参数;
其中a表示自回归模型AR(p)的自回归系数,b表示滑动平均模型MA(q)的参数,{Xt}表示平稳时间序列,{εt}是零均值白噪声。通过求解(3.1)中的a,b参数即可得到描述平稳时间序列的ARIMA(p,d,q)模型,将模型应用于时间序列,即可进行大气污染因子浓度的时间预测。
通过上述分析,现有技术的缺点如下:
线性回归模型假设特征向量中的特征属性(特征属性是特征向量中的某一个属性,表示事物某一方面的特征,多个属性构成了一个表示事物的特征向量)不存在关系,若特征属性间存在共线性,则会导致模型的预测精度下降,而在大气污染因子浓度预测场景中,特征属性间往往是存在联系的。同时,在线性回归模型中,通常是基于某个监测站的数据建立与其他某个站之间的线性关系,浪费了其他站与站之间的关系,并且随着监测站地理位置与强站的远离,将加大预测误差;
基于站点监测数据拟合空间分布曲面需要大量的站点大气污染因子浓度数据,双三次样条插值算法的误差取决于对监测区域网格化分割的密集度,这种方式将提高监测成本。同时,双三次样条插值是建立在二维空间中的插值曲面,仅考虑经纬度,无法加入气象参数对空间浓度分布的影响,形成空间分布模型的预测误差;
ARIMA(p,d,q)建模的基础是建立在平稳时间序列上,对于非平稳时间序列需要先进行差分,而后再建立数学模型,若多次差分仍为非平稳时间序列,则建立的ARIMA(p,d,q)将对预测结果产生很大的偏差,同时ARIMA(p,d,q)模型很难将气象因素考虑进去,这也将导致模型预测精度的损失。
技术实现要素:
本发明所要解决的技术问题是提供一种大气污染因子浓度时空分布预测方法及系统,可以解决当前大气污染因子监测技术中需大量监测设备、大气污染因子浓度预测不精确及无法动态分析未来分布趋势等问题。
本发明解决上述技术问题的技术方案如下:一种大气污染因子浓度时空分布预测方法,包括以下步骤,
S1,基于监测区域内所有站点的历史监测数据构造稀疏特征向量,将所述稀疏特征向量作为因子分解机的输入,通过所述因子分解机的输出预测目标站点无法监测的目标大气污染因子浓度的历史数据;
S2,将所述目标站点的目标大气污染因子浓度的历史数据结合气象参数,训练长短期记忆神经网络,通过训练好的所述长短期记忆神经网络,预测所述目标站点的目标大气污染因子浓度的未来数据;
S3,将所述目标站点的目标大气污染因子浓度的未来数据结合气象参数和所述站点的地理经纬度,训练径向基神经网络,通过训练好的所述径向基神经网络预测所述监测区域内目标位置点的目标大气污染因子浓度的未来数据。
本发明的有益效果是:本发明采用因子分解机(FM)可基于稀疏特征向量进行学习,通过少量监测大气污染因子齐全的监测站及大量监测大气污染因子不全的微观站,可预测微观站不能监测的大气污染因子,降低了区域大气污染因子的监测成本;采用长短期记忆神经网络(LSTMNN)实现大气污染因子浓度沿时间轴分布的预测,LSTMNN的输入可以是n维特征向量,不再局限于1维,可综合考虑气象、地理因素对未来大气污染因子浓度的影响,输出向量的维度与输入相同,因此能实现多种大气污染因子的同时预测,提高了时间分布的准确性及时效性;通过径向基神经网络(RBFNN)进行空间分布预测,输入特征向量不局限于1维,可综合考虑需预测区域的气象、地理因素对大气污染因子浓度的影响,提高了空间分布的准确性。
在上述技术方案的基础上,本发明还可以做如下改进。
进一步,所述站点包括监测站和微观站;所述监测站为监测大气污染因子种类齐全的大气监测站;所述微观站为监测大气污染因子种类不全的大气监测站。
进一步,在所述S1中,所述稀疏特征向量由五部分编码阵列构成,分别为站点的独热编码阵列、当前采集到的大气污染因子的独热编码阵列、被当前站点采集过的大气污染因子信息的编码阵列、采集时间的编码阵列和当前站点最近监测过的一种大气污染因子信息的编码阵列。
进一步,所述S2具体为,
S21,将所述目标站点的目标大气污染因子浓度的历史数据按时间先后进行排序,并以排序后的所述目标站点的目标大气污染因子浓度的历史数据结合气象参数作为特征属性构建时间序列;
S22,对所述时间序列进行Z标准化处理得到样本,以相邻两个样本构成第一输入输出样本对,训练长短期记忆神经网络;
S23,基于训练好的所述长短期记忆神经网络,以所述目标站点的目标大气污染因子浓度的当前数据作为输入样本,预测所述目标站点的目标大气污染因子浓度的未来数据。
进一步,所述S3具体为,
S31,以所有所述监测站的地理经纬度和气象参数作为特征属性构建输入,以所述长短期记忆神经网络预测的所述目标站点的目标大气污染因子浓度的未来数据作为输出,构建第二输入输出样本对;
S32,Z标准化处理所述第二输入输出样本对,并根据Z标准化处理后的所述第二输入输出样本对训练所述径向基神经网络;
S33,基于训练好的所述径向基神经网络,在所述监测区域内确定所述目标位置点的地理经度纬度,结合离所述目标位置点最近的所述监测站的气象参数构造输入向量,预测所述目标位置点的目标大气污染因子浓度的未来数据。
基于上述一种大气污染因子浓度时空分布预测方法,本发明还提供一种大气污染因子浓度时空分布预测系统。
一种大气污染因子浓度时空分布预测系统,包括以下模块,
变量预测模块,其用于基于监测区域内所有站点的历史监测数据构造稀疏特征向量,将所述稀疏特征向量作为因子分解机的输入,通过所述因子分解机的输出预测目标站点无法监测的目标大气污染因子浓度的历史数据;
时间预测模块,其用于将所述目标站点的目标大气污染因子浓度的历史数据结合气象参数,训练长短期记忆神经网络,通过训练好的所述长短期记忆神经网络,预测所述目标站点的目标大气污染因子浓度的未来数据;
空间预测模块,其用于将所述目标站点的目标大气污染因子浓度的未来数据结合气象参数和所述站点的地理经纬度,训练径向基神经网络,通过训练好的所述径向基神经网络预测所述监测区域内目标位置点的目标大气污染因子浓度的未来数据。
本发明的有益效果是:本发明采用因子分解机(FM)可基于稀疏特征向量进行学习,通过少量监测大气污染因子齐全的监测站及大量监测大气污染因子不全的微观站,可预测微观站不能监测的大气污染因子,降低了区域大气污染因子的监测成本;采用长短期记忆神经网络(LSTMNN)实现大气污染因子浓度沿时间轴分布的预测,LSTMNN的输入可以是n维特征向量,不再局限于1维,可综合考虑气象、地理因素对未来大气污染因子浓度的影响,输出向量的维度与输入相同,因此能实现多种大气污染因子的同时预测,提高了时间分布的准确性及时效性;通过径向基神经网络(RBFNN)进行空间分布预测,输入特征向量不局限于1维,可综合考虑需预测区域的气象、地理因素对大气污染因子浓度的影响,提高了空间分布的准确性。
在上述技术方案的基础上,本发明还可以做如下改进。
进一步,所述站点包括监测站和微观站;所述监测站为监测大气污染因子种类齐全的大气监测站;所述微观站为监测大气污染因子种类不全的大气监测站。
进一步,在所述变量预测模块中,所述稀疏特征向量由五个编码阵列构成,分别为站点的独热编码阵列、当前采集到的大气污染因子的独热编码阵列、被当前站点采集过的大气污染因子信息的编码阵列、采集时间的编码阵列和当前站点最近监测过的一种大气污染因子信息的编码阵列。
进一步,所述时间预测模块具体用于,
将所述目标站点的目标大气污染因子浓度的历史数据按时间先后进行排序,并以排序后的所述目标站点的目标大气污染因子浓度的历史数据结合气象参数作为特征属性构建时间序列;
对所述时间序列进行Z标准化处理得到样本,以相邻两个样本构成第一输入输出样本对,训练长短期记忆神经网络;
基于训练好的所述长短期记忆神经网络,以所述目标站点的目标大气污染因子浓度的当前数据作为输入样本,预测所述目标站点的目标大气污染因子浓度的未来数据。
进一步,所述空间预测模块具体用于,
以所有所述监测站的地理经纬度和气象参数作为特征属性构建输入,以所述长短期记忆神经网络预测的所述目标站点的目标大气污染因子浓度的未来数据作为输出,构建第二输入输出样本对;
Z标准化处理所述第二输入输出样本对,并根据Z标准化处理后的所述第二输入输出样本对训练所述径向基神经网络;
基于训练好的所述径向基神经网络,在所述监测区域内确定所述目标位置点的地理经度纬度,结合离所述目标位置点最近的所述监测站的气象参数构造输入向量,预测所述目标位置点的目标大气污染因子浓度的未来数据。
附图说明
图1为本发明一种大气污染因子浓度时空分布预测方法的流程图;
图2为本发明稀疏特征向量的结构示意图;
图3为长短期记忆神经网络拓扑结构示意图;
图4为径向基神经网络拓扑结构示意图;
图5为本发明一种大气污染因子浓度时空分布预测系统的结构框图。
具体实施方式
以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
如图1所示,一种大气污染因子浓度时空分布预测方法,包括以下步骤,
S1,基于监测区域内所有站点的历史监测数据构造稀疏特征向量,将所述稀疏特征向量作为因子分解机(因子分解机是一种因子分解技术,结合了因子分解技术的高预测精度和特征工程中的灵活性,通过采用与线性回归模型、支持向量机类似的求解方法逼近因子分解模型,对高稀疏的特征向量尤为有效)的输入,通过所述因子分解机的输出预测目标站点无法监测的目标大气污染因子浓度的历史数据;
S2,将所述目标站点的目标大气污染因子浓度的历史数据结合气象参数,训练长短期记忆神经网络(长短时记忆神经网络是循环神经网络的一个变种,是一种基于时间序列的神经网络,可在n维空间中建立用于时间预测的模型),通过训练好的所述长短期记忆神经网络,预测所述目标站点的目标大气污染因子浓度的未来数据;
S3,将所述目标站点的目标大气污染因子浓度的未来数据结合气象参数和所述站点的地理经纬度,训练径向基神经网络(径向基神经网络是一种基于径向基插值法的神经网络,通过高斯径向基函数映射到高维特征空间当中,在n维超空间中拟合超曲面),通过训练好的所述径向基神经网络预测所述监测区域内目标位置点的目标大气污染因子浓度的未来数据。
本发明采用因子分解机(FM)可基于稀疏特征向量进行学习,通过少量监测大气污染因子齐全的监测站及大量监测大气污染因子不全的微观站,可预测微观站不能监测的大气污染因子,降低了区域大气污染因子的监测成本;采用长短期记忆神经网络(LSTMNN)实现大气污染因子浓度沿时间轴分布的预测,LSTMNN的输入可以是n维特征向量,不再局限于1维,可综合考虑气象、地理因素对未来大气污染因子浓度的影响,输出向量的维度与输入相同,因此能实现多种大气污染因子的同时预测,提高了时间分布的准确性及时效性;通过径向基神经网络(RBFNN)进行空间分布预测,输入特征向量不局限于1维,可综合考虑需预测区域的气象、地理因素对大气污染因子浓度的影响,提高了空间分布的准确性。
本发明利用监测数据构建变量预测模型(因子分解机)、时间预测模型(长短期记忆神经网络)和空间预测模型(径向基神经网络),并将三者结合形成监测区域大气污染因子浓度的时空分布预测。为方便描述,用监测站代指监测大气污染因子种类齐全并且数据精确的大气监测站,用微观站代指监测大气污染因子不全且数据相比较为粗糙的大气监测站,用站点代指监测站和微观站。
在变量预测模型中,将大气污染因子视为变量,通过建立的变量预测模型预测微观站无法监测的大气污染因子浓度,本发明采用因子分解机(Factorization Machine,以下简称FM)作为变量预测模型。
FM是一种因子分解技术,目前,因子分解机在智能信息系统和机器学习领域吸引了一大批研究者,相比于传统因子分解技术,FM采用一种更为一般化的建模方式。FM仅通过特征工程(特征工程,其本质是一项工程活动,目的是最大限度地从原始数据中提取特征以供算法和模型使用,对数据进行预处理使得数据满足建立模型的要求)构造特征向量就可以逼近大多数因子分解模型,在p维特征向量下,FM的二阶数学模型(可推广到任意阶)可表示为:
式(1)中表示变量预测模型的预测值,x表示变量预测模型输入的特征向量,xj表示特征向量的第j个属性,vj表示xj的因子分解,vjf表示vj的第f个元素,k表示vj的维度,wj表示第j个属性的权值。
在本发明的背景下,表示某大气污染因子浓度的预测值,x表示按FM所要求的特征工程构造的稀疏特征向量,所述稀疏特征向量由五部分编码阵列构成,分别为站点的独热编码阵列、当前采集到的大气污染因子的独热编码阵列、被当前站点采集过的大气污染因子信息的编码阵列、采集时间的编码阵列和当前站点最近监测过的一种大气污染因子信息的编码阵列。如图2所示,I部分为站点的独热编码(独热编码即One-Hot编码,又称一位有效编码,其方法是使用N位状态寄存器来对N个状态进行编码,每个状态都有它独立的寄存器位,并且在任意时候,其中只有一位有效,例如:001,010,100),当前站点所在的位置为1,其他站点为0;II部分为当前采集到的大气污染因子的独热编码,当前被采集的大气污染因子所在的位置为1,其他为0;III部分为被当前站点历史采集过的所有大气污染因子信息(设个数为n),则被当前站点采集过的大气污染因子的位置为其他为0;IV部分为采集的时间,其维度为1,用来表示站点采集数据时的时间,表示方法时将记录中最早的日期作为基数1,以后每增加1个采样周期就加1;V部分为当前站点最近监测过的一种大气污染因子的信息,若当前站点采集当前大气污染因子浓度数据前还有采集过其他大气污染因子,则将当前站点上一次采集的大气污染因子的位置取为1,其他为0,若当前站点之前没有采集过其他大气污染因子,则所有位置都取0;VI部分为某大气污染因子浓度的预测值。
在变量预测模型中,要解决的问题是大气污染因子浓度预测,因此是回归问题,其优化目标函数可表示为:
式(2)中N表示样本集合容量。对于变量预测模型的自由参数w0,wi,vjf的学习方法可采用随机梯度下降法、交替最小二乘法和马尔科夫链蒙特卡罗法。这里以随机梯度下降法为例,利用式(1)不难计算出关于θ的偏导数,其中θ泛指变量预测模型的自由参数,偏导如下:
根据式(3)采用随机梯度下降法对变量预测模型进行训练。
所述S2具体为,
S21,将所述目标站点的目标大气污染因子浓度的历史数据按时间先后进行排序,并以排序后的所述目标站点的目标大气污染因子浓度的历史数据结合气象参数(如果目标站点有采集气象参数,则此处的气象参数就对应此目标站点与历史数据相同时间段的气象参数,如果目标站点没有采集气象参数,则可以用与历史数据相同时间段的区域气象参数代替)作为特征属性构建时间序列(时间序列是将采集到的数据按时间依次排列的序列,因此在时间序列中的数据是有序的,其中的数据可以看成是某个随机变量的观测值);
S22,对所述时间序列进行Z标准化处理,以相邻两个样本构成第一输入输出样本对,训练长短期记忆神经网络;
S23,基于训练好的所述长短期记忆神经网络,以所述目标站点的目标大气污染因子浓度的当前数据(当前数据就是所述目标站点的目标大气污染因子浓度的实时数据)作为输入样本,预测所述目标站点的目标大气污染因子浓度的未来数据。
在时间预测模型中,本发明采用长短期记忆神经网络(Long Short Term Memory Neural Network,以下简称LSTMNN)进行大气污染因子在监测区域时间维度上的预测。LSTMNN是循环神经网络(RNN)的一个变种,与RNN相同的是LSTMNN同样具有记忆功能。在传统RNN当中,循环层只有一个状态,即h,它对于短期输入非常敏感,而LSTMNN在RNN的基础上增加了一个单元状态,即c,来存储长期状态,从而使得网络对短期、长期都较为敏感,这也使得LSTMNN更好的解决了RNN梯度在反向传播过程中出现的梯度消失问题。其网络结构中的某一层神经网络拓扑结构图如图3所示,在图3中ht-1表示循环层t-1时刻输出向量,xt表示循环层t时刻输入向量(上层输出向量),ct-1表示t-1时刻单元状态,Ft表示t时刻遗忘门,It表示输入门,c’t表示循环层即时单元状态,Ot表示输出门,ht表示t时刻循环层输出向量,yt表示输出层输出向量,图中表示加操作,表示乘操作,f表示激活函数。LSTMNN的前向计算过程的公式可总结为:
输出层yj(t):
循环层输出hj(t):
hj(t)=Oj(t)·f(cj(t))=Oj(t)·f(Fj(t)·cj(t-1)+Ij(t)·c′j(t))
输出门Oj(t):
单元状态cj(t):
cj(t)=Fj(t)·cj(t-1)+Ij(t)·c′j(t)
单元即时状态向量c′t:
输入门Ij(t):
遗忘门Fj(t):
在LSTMNN的前向计算过程的公式中,σ表示sigmoid激活函数,f表示tanh激活函数,w表示网络自由参数。参数学习算法采用随机梯度下降法,损失函数定义为:
其中dj表示目标输出,yj表示网络实际输出。通过将站点采集的大气污染因子浓度数据及气象参数构建成时间序列样本数据集,并用于训练调整网络自由参数,将训练好的LSTMNN应用于监测区域污染因子浓度数据的时间分布预测。
所述S3具体为,
S31,以所有所述监测站的地理经纬度和气象参数(如果目标站点有采集气象参数,则此处的气象参数就对应此目标站点与历史数据相同时间段的气象参数,如果目标站点没有采集气象参数,则可以用与历史数据相同时间段的区域气象参数代替)作为特征属性构建输入,以所述长短期记忆神经网络预测的所述目标站点的目标大气污染因子浓度的未来数据作为输出,构建第二输入输出样本对;
S32,Z标准化处理所述第二输入输出样本对,并根据Z标准化处理后的所述第二输入输出样本对训练所述径向基神经网络;
S33,基于训练好的所述径向基神经网络,在所述监测区域内确定所述目标位置点的地理经度纬度,结合离所述目标位置点最近的所述监测站的气象参数构造输入向量,预测所述目标位置点的目标大气污染因子浓度的未来数据。
在空间预测模型中,采用径向基神经网络(Radial Basis Function Neural Network,以下简称RBFNN)进行污染因子在监测区域的空间分布预测。在一维插值拟合中,通过拟合直线或曲线来表示输入输出之间的关系,在二维插值拟合中,则通过拟合曲面来表示输入输出间的关系,而在n维空间的插值法中,通常采用RBF技术在基函数基础上拟合超曲面来表示输入输出之间的关系。RBFNN是建立在RBF插值技术的理论上,在神经网络背景下,RBFNN一般是三层,即输入层、隐含层、输出层。其中,隐含层由RBF集构成,用于对输入数据的进行非线性变换,隐含层神经元个数即变换后的维数越高,逼近就越精确,因此,理论上RBFNN可以以任意精度逼近数据真实的函数关系,隐含层到输出层是则线性的(激活函数为线性函数),其网络拓扑结构如图4所示,数学模型可表示为:
在本发明的背景下,表示监测区域中某一位置污染因子的浓度,w0表示输出层神经元的阈值,wi表示隐含层第i个神经元与输出层神经元之间的连接连接权值,m表示隐含层神经元个数,ci表示RBF中心,G(x,ci)表示RBF。在RBFNN中RBF一般采用高斯函数,其数学模型可表示为:
其中,σ表示中心宽度,通过以下公式计算:
其中,d=maxc‖cj-ci‖,j=1,2,…,m;i=1,2,…,m。
对于RBFNN中的RBF中心集可以采用中心自组织算法对RBF中心进行调整,其步骤如下:
第一步,令表示RBF在第n次迭代时的中心;
第二步,初始化:选择随机值作为中心的初始值,惟一的限制是要求每一个中心的初值不同,将中心的欧几里得范数保持为一个较小的值可能会更理想一些;
第三步,抽取样本:在样本数据集中随机抽取样本向量x,作为第n次迭代的输入向量;
第四步,相似匹配:令i(x)表示中心集中与输入向量x欧式距离最小的第i个向量的下标:
i(x)=arg mini‖x(n)-ci(n)‖,i=1,2,…,m;
第五步,更新:用下述规则调整径向基函数的中心:
此式意义在于,只调整第四步中所确定的中心集向量,其他向量不变,其中η是学习率,0<η<1;
第六步,继续:将n增加1返回(3)重复上述过程,直到中心ci的改变量很小时停止。
隐含层与输出层之间的连接权值及阈值,可采用LMS学习算法进行学习,目标函数如下:
根据归一化或z标准化后的数据训练RBFNN,RBFNN训练好后可将其应用与污染因子空间分布的预测。
下面假设某微观站无法监测PM2.5,以该站预测PM2.5的时空分布来说明本发明。
步骤一,采集所有站点的历史监测数据,按照FM所需的特征向量的形式构造稀疏特征向量,并训练FM;构造用来进行预测的稀疏特征向量,步骤如下:
(1)图2中I部分目标站点编码取1,其他取0;
(2)图2中II部分PM2.5编码取1,其他取0;
(3)图2中III部分按目标站点历史监测污染因子进行处理;
(4)图2中IV部分按时间进行处理;
(5)图2中V部分按数据采集数据进行处理。
将构造好的稀疏特征向量作为FM输入,计算FM输出即为目标站点PM2.5的浓度值。
步骤二,在步骤一的基础上预测目标站点的PM2.5浓度的历史数据,对预测的目标站点的PM2.5浓度的历史数据按时间先后进行排序,以PM2.5和气象参数(具体包括风速、风向、湿度、气压、温度)为特征属性构建时间序列,对时间序列进行Z标准化处理,以相邻两个样本构成输入、输出样本对,训练LSTMNN。训练好LSTMNN后,以当前时刻的数据作为输入样本,预测目标站点PM2.5浓度的未来数据。
步骤三,在步骤二的基础上以所有监测站的地理经纬度和气象参数(具体包括风速、风向、湿度、气压、温度)为特征属性构建输入,LSTMNN预测的PM2.5浓度的未来数据作为输出,构建输入、输出样本对,Z标准化处理样本,并训练RBFNN。给定目标位置点(监测区域内任意位置点)的地理经纬度,结合离目标位置点最近监测站的气象参数(具体包括风速、风向、湿度、气压、温度)构造输入向量,预测目标位置点的PM2.5浓度的未来数据。
综上即可实现PM2.5在监测区域的时空分布预测。
相比于在监测区域建设密集监测站的传统方式,本发明可降低站点的建设成本。相比于线性回归模型,FM考虑了特征向量的特征属性之间的关系,并且FM可以有效的处理稀疏样本。相比于二维空间内的曲面插值,RBFNN的输入可以是n维的,这使得空间预测模型可以考虑监测区域某一位置的大气参数,如温度、湿度、风速、风向等,提高空间预测的精度,并且空间预测模型输出也可以是高维,若训练空间预测模型采用的训练样本对是n维输入,m维输出,则空间预测模型可输出某个位置的多种污染因子浓度。相比于ARIMA(p,d,q),LSTMNN的输入可以是n维的,这使得时间预测模型可以考虑监测站某一时刻的大气参数,如温度、湿度、风速、风向等,提高时间预测的精度,并且时间预测模型输出也可以是高维的,若训练时间预测模型采用的训练样本对是n维输入,m维输出,则可输出某个时刻的多种污染因子浓度,并且可实现时间序列的长期预测。
基于上述一种大气污染因子浓度时空分布预测方法,本发明还提供一种大气污染因子浓度时空分布预测系统。
如图5所示,一种大气污染因子浓度时空分布预测系统,包括以下模块,
变量预测模块,其用于基于监测区域内所有站点的历史监测数据构造稀疏特征向量,将所述稀疏特征向量作为因子分解机的输入,通过所述因子分解机的输出预测目标站点无法监测的目标大气污染因子浓度的历史数据;
时间预测模块,其用于将所述目标站点的目标大气污染因子浓度的历史数据结合气象参数,训练长短期记忆神经网络,通过训练好的所述长短期记忆神经网络,预测所述目标站点的目标大气污染因子浓度的未来数据;
空间预测模块,其用于将所述目标站点的目标大气污染因子浓度的未来数据结合气象参数和所述站点的地理经纬度,训练径向基神经网络,通过训练好的所述径向基神经网络预测所述监测区域内目标位置点的目标大气污染因子浓度的未来数据。
本发明采用因子分解机(FM)可基于稀疏特征向量进行学习,通过少量监测大气污染因子齐全的监测站及大量监测大气污染因子不全的微观站,可预测微观站不能监测的大气污染因子,降低了区域大气污染因子的监测成本;采用长短期记忆神经网络(LSTMNN)实现大气污染因子浓度沿时间轴分布的预测,LSTMNN的输入可以是n维特征向量,不再局限于1维,可综合考虑气象、地理因素对未来大气污染因子浓度的影响,输出向量的维度与输入相同,因此能实现多种大气污染因子的同时预测,提高了时间分布的准确性及时效性;通过径向基神经网络(RBFNN)进行空间分布预测,输入特征向量不局限于1维,可综合考虑需预测区域的气象、地理因素对大气污染因子浓度的影响,提高了空间分布的准确性。
在本具体实施例中:
所述站点包括监测站和微观站;所述监测站用于指代监测大气污染因子种类齐全的大气监测站;所述微观站代指监测大气污染因子种类不全的大气监测站。
在所述变量预测模块中,所述稀疏特征向量由五个编码阵列构成,分别为站点的独热编码阵列、当前采集到的大气污染因子的独热编码阵列、被当前站点采集过的大气污染因子信息的编码阵列、采集时间的编码阵列和当前站点最近监测过的一种大气污染因子信息的编码阵列。
所述时间预测模块具体用于,
将所述目标站点的目标大气污染因子浓度的历史数据按时间先后进行排序,并以排序后的所述目标站点的目标大气污染因子浓度的历史数据结合气象参数作为特征属性构建时间序列;
对所述时间序列进行Z标准化处理,以相邻两个样本构成第一输入输出样本对,训练长短期记忆神经网络;
基于训练好的所述长短期记忆神经网络,以所述目标站点的目标大气污染因子浓度的当前数据作为输入样本,预测所述目标站点的目标大气污染因子浓度的未来数据。
所述空间预测模块具体用于,
以所有所述监测站的地理经纬度和气象参数作为特征属性构建输入,以所述长短期记忆神经网络预测的所述目标站点的目标大气污染因子浓度的未来数据作为输出,构建第二输入输出样本对;
Z标准化处理所述第二输入输出样本对,并根据Z标准化处理后的所述第二输入输出样本对训练所述径向基神经网络;
基于训练好的所述径向基神经网络,在所述监测区域内确定所述目标位置点的地理经度纬度,结合离所述目标位置点最近的所述监测站的气象参数构造输入向量,预测所述目标位置点的目标大气污染因子浓度的未来数据。
本申请的方法和系统可以实现如下目的:
(1)由于化工特征污染因子监测设备价格居高不下,若监测区域建造的所有监测站都安装这些设备将造成很高的监测成本,本发明采用机器学习算法模型,可通过少量特征污染因子监测设备达到预测未安装这些设备的微观站周围的特征污染因子浓度的目的,以期降低监测站建设成本。
(2)由于产生的数据构成的特征向量将是稀疏的,而传统预测算法在稀疏特征向量上的预测效果很差,并且未能考虑特征向量属性间的联系,因此采用FM进行预测。
(3)在预测到微观站大气污染因子浓度后,进行时空分布预测,对区域分布和区域未来分布进行预测,形成一个监测区域大气污染因子的时空分布场,实现监测区域内未来某一时刻某一位置的浓度值的预测,为了预测的精确性因而选择可表示复杂关系的神经网络,并考虑气象、地理位置参数,使得预测结果更加精确。
在本发明中,通过采用机器学习、神经网络预测微观站未知污染因子浓度值;采用FM,有效解决稀疏样本问题,同时考虑了特征属性间的联系;采用LSTMNN进行时间预测,可综合考虑气象参数的变化,进行时间序列的长期预测;采用RBFNN进行高维空间中的超曲面插值,可综合考虑气象参数等;结合FM、LSTMNN、RBFNN、实现监测区域污染因子浓度的时空分布预测。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。