APP下载

基于时空卷积残差网络的空气质量预测

2020-06-16郭茂祖刘银龙

计算机技术与发展 2020年6期
关键词:残差空气质量卷积

李 栋,张 蕾*,郭茂祖,刘银龙

(1.北京建筑大学 电气与信息工程学院,北京 100044;2.中国科学院 信息工程研究所,北京 100093)

0 引 言

城市化的快速发展成为影响城市环境的潜在威胁,城市环境污染的灾害同样严重影响着人类社会的生产生活[1]。2013年,“雾霾”成为年度关键词,据统计显示,中国城市中仅有1%达到世界卫生组织推荐的空气质量标准。与此同时,世界上污染最严重的10个城市有7个在中国。雾霾主要由二氧化硫、氮氧化物和可吸入颗粒物(particulate matter,PM)组成。北京监测的颗粒物主要是细颗粒物(即PM2.5),这种颗粒物本身既是污染物,又是重金属、多环芳烃等有毒物质的载体,影响着人类的健康[2]。如何防范空气污染已被写入国家战略,在治污防污的同时,利用人工智能预测空气质量显得愈发重要。根据预测结果,政府可以建议对重污染企业的停开工,个人可以选择是否增减户外活动等。

受多种因素的影响,如何精确地预测空气质量极具挑战性。首先,为了监测空气质量数据,需要建立空气质量监测站,然而监测站会占用大量的空间位置,并消耗大量的资金成本和劳动力成本[3];其次,空气质量不仅受到自然因素的影响,还受到人类活动的影响。针对前者,将监测站捕获的空气质量数据转换为(稀疏)矩阵,利用数据填充和去噪进行数据预处理;针对后者,考虑到交通、生产生活等和天气现象产生的复杂映射关系,在空间方面,不同的城市功能区,空气质量是不相同的,有各自的变化规律和周期;在时间序列上,空气质量显示出明显的周期性和趋势性。

空气质量具有时空关联关系:(1)在单个位置具有时间依赖性,即如果过去一小时内的AQI是好的,那么此刻的AQI往往也是好的;(2)不同位置之间具有空间依赖性,即如果某位置周围的空气质量存在污染,那么此位置点的空气质量往往也受到极大影响。

为了应对上述挑战,提出时空卷积残差网络ST-ResNet。首先,利用卷积神经网络(convolution neural network,CNN)捕获空气质量在空间分布上的相关性和边缘效应;然后,通过加深网络层数的深度学习方法捕捉城市空气质量与人类活动空间之间的复杂映射关系;最后,引入残差学习,优化网络结构,提高网络性能[4]。

1 相关工作

早在2008年,Huang等人[5]提出将时间效应纳入地理加权回归模型(geographically weighted regression,GWR),即地理和时间加权回归(geographically and temporally weighted regression,GTWR),以此捕捉空间和时间的异质性,并将其应用于加拿大加里市住宅销售的研究案例,结果表明同时模拟空间和时间平稳性有很大好处。2018年,Huang的团队[6]将GTWR模型应用于建立气溶胶光学厚度(aerosol optical depth,AOD)和地表PM2.5之间定量关联(PM2.5-AOD)模型,结果表明,GTWR在没有PM2.5-AOD配对样本时可以准确预测PM2.5和生成历史PM2.5估计值的能力。

2014年,Zheng的团队[7]首次系统地阐述了城市计算的概念、方法和应用,指出空气质量是城市环境计算的重要分支,空气质量数据具有很强的时空属性。之后Zheng的团队[8]设计了一种半监督推理模型,利用现有的、稀疏的监测位置的历史空气质量数据和异质的城市动力学,推断出任意位置的实时空气质量,提供关于如何建立新的空气质量监测点的规划决策。

随着城市计算的兴起和对时空数据的多样化处理,越来越多的时空结合机器学习的算法被提出,用于解决各类城市问题。Yao等人[9]提出的时空动态网络(STDN)用于预测对出租车的需求,算法基于CNN捕捉局部空间的相互作用,通过长短期记忆网络(long short-term memory,LSTM)捕捉短期的时间依赖性,添加注意力处理动态空间相似性和时间周期相似性;Guo等人[10]考虑交通流的时空相关性,提出一种新的基于注意力的时空图像卷积网络,利用三个组件分别考虑三个属性,即最临近的、每日周期和每周周期,将三个组件的输出加权融合以获得最终预测结果;Zhang等人[11]为解决人流量预测问题提出时空残差网络(spatio-temporal residual networks,ST-ResNet),该网络设计三个残差卷积支网,分别考虑人流量的时间接近度、周期和趋势性,将三个分支输出动态聚合分配权重,再与特殊事件(如天气、节日等)全连接后,输出预测结果。

在这些城市计算的方法中,CNN被广泛用于捕捉空间相似性,这是因为CNN在提取像素之间的高维度特征方面具有良好的性能。余威等人[12]提出利用CNN处理城市中建筑物的遥感影像,设计了两种端到端全卷积神经网络的分割方法以提高遥感影像中对建筑物分割的精度。贾翻连等人[13]针对视频图像中的人群密度估计,修改CNN网络结构,引入离散小波变换替换CNN中的子采样层,并使网络中权重矩阵自适应重新分配以改善震荡现象。

在城市计算范畴之外,很多学者开始追寻多源数据中潜在的时空属性并建立和学习新的映射关系。吴云乘等人[14]提出基于位置的服务已成为人们轨迹隐私中的重要环节,考虑到地理空间的限制和时间序列上位置的相关性,提出一种差分隐私位置发布机制DPLRM以提高位置或轨迹隐私保护的准确性和有效性。范晓杰等人[15]提出一种新的人体动作识别框架,该框架考虑局部时空特征行为,提取其中高效特征点,提高人体动作识别的效果。

2 ST-ResNet模型

考虑到城市空气质量的特性,文中采用时空卷积残差网络模型进行计算,如图1所示。由三个深度残差卷积子网分别拟合城市空气质量周期性、趋势性和时间接近度。首先,将城市空间划分成网格形式,为每个网格填充AQI,这里的AQI是指将常规监测的几种空气污染物浓度简化为单一的概念性指数值形式;然而,由于监测站点的稀疏导致AQI网格成为稀疏矩阵,根据空间相关性,进行矩阵插值,生成完整的空气质量矩阵,并将其作为CNN的输入;然后,将三个子网的输出加权,充分考虑到要预测的AQI处于的周期位置和趋势位置;最后拟合最临近时间的AQI,三者有机结合得到最终预测结果。

图1 时空卷积残差网络结构

2.1 空间转换

空间转换的目的是将现实世界的物理空间转换为思维世界的抽象空间。文中将北京市及周边圈成一个矩形,按照经纬度将其划分为32×32的网格,每个网格中所赋予的像素值为其位置的AQI数据,位于北京市地区之外的网格赋值为零。最后,将北京市的空气质量转换为AQI像素矩阵。

由前文所述,该AQI像素矩阵为稀疏矩阵,无法体现空气质量分布在空间上的相似性。为了解决这些问题,考虑到由于污染物的分散,某一地理位置的空气质量不仅取决于其监测点的数据,还受临近区域的影响,因此,采用经典的空间插值法——逆距离加权插值法(inverse distance weighted interpolation,IDW)[16],利用已知网格的AQI值对未知网格的AQI值进行插值:

(1)

2.2 子网结构

子网结构的主体是CNN,CNN作为深度学习的代表算法,具有优秀的表征学习能力,即可从输入信息中提取高阶特征。传统深度CNN大多被用于图像识别,伴随着城市计算的兴起及对时空数据的认知,越来越多的学者开始运用CNN处理时空数据的空间相似性。

文中关注城市空气质量,含住宅区、工厂区、森林区等,不同区域的空气质量受人类活动、交通状况等影响,CNN可以进行有效处理,利用深层CNN捕捉更远空间中空气质量的相互影响和人类活动对空气质量影响的映射关系,显示出CNN对空间结构分层捕获的强大能力。将上一节处理后的AQI像素矩阵作为卷积的输入,设置卷积核的大小为3×3,所以低层3×3大小的网格中的九个点通过卷积生成高层特征图的一个特征点,这意味着深层即足够多的卷积就可以捕捉整个城市范围的空间依赖性。

增加卷积网络的深度可以提升模型的预测性能,但当深度达到某一峰值会产生梯度消失或梯度爆炸的问题。针对这一现象,文中使用恒等映射残差网络(ResNet V2)优化网络结构[17]。ResNet V2的结构如图2所示,输入通过捷径连接(shortcut connections)到输出,形成全等映射层,此时网络需要学习的是期望X到Y的映射关系F(x)与输入x的差值H(x),称为残差。

图2 残差单元结构

训练H(x)比训练F(x)更加简单,且输入的全连接保证了随网络层数的加深,原始输入信息的完整性;输出Y(L)与下一层输入X(L+1)的映射关系依然为全等映射,即Y(L)=X(L+1),残差结构表示如下:

xl+1=xl+F(xl,Wl)

(2)

将式(2)进行归一化:

xl+1=xl+F(BN(xl)+Wl)

(3)

通过递归可以得到任意深层单元L的特征式:

(4)

2.3 全连接

图3(a)为城市空气质量某星期的变化趋势,x轴是时间轴,单位是星期,y轴是每天AQI的平均值,可以看出,每周的AQI都具有一定的变化趋势,但不同周对应的曲线不同,说明在不同的时间域中AQI的变化趋势不同。图3(b)显示出空气质量的变化具有一定的周期性,x轴为每年的月份,y轴为每月的AQI平均值,可以看出春季(5月)与冬季(1月)的峰值高于夏季、秋季的峰值。图3(c)描述了一天内的各个时间点AQI的变化,图中曲线比较柔和,说明AQI值不是瞬间剧烈变化,显示出AQI变化的时间接近度属性。

图3 AQI变化曲线

综上所述,在时间序列上,AQI的变化受周期、趋势和时间接近度的影响,但影响的权重不同,因此,分别对三个属性分配不同的权重进行连接:

(5)

(6)

通过训练网络,优化预测矩阵与实际矩阵之间的均方误差作为损失函数:

(7)

其中,θ为可学习参数。

2.4 ST-ResNet算法

ST-ResNet算法的训练过程和预测过程如下:

算法1:ST-ResNet模型的训练。

输入:历史数据;接近度、周期性、趋势性的序列长度:lc,lp,lq;间隔周期:p;趋势跨度:q

输出:ST-ResNet模型M

1D←∅

2 for 所有时间间隔t(1≤t≤n-1)do:

3 生成接近度三维数组:

生成周期性三维数组:

Sp=[Xt-lp·p,Xt-(lp-1)·p,…,Xt-p]

生成趋势性三维数组:

Sq=[Xt-lq·q,Xt-(lq-1)·q,…,Xt-q]

4 put({Sc,Sc,Sq},Xt)intoD

5 初始化可学习参数θ

6 repeat 7~8:

7 从全部样本D中随机抽取小批次样本Db

8 优化目标函数,在小批次样本Db中找到最优参数θ

9 until 迭代达到阈值,得到最优参数θ

10 output 完成训练的ST-ResNet模型

算法2:ST-ResNet模型的预测。

输入:完成训练ST-ResNet模型M;历史数据;接近度、周期性、趋势性的序列长度:lc,lp,lq;间隔周期:p;趋势跨度:q;被预测跨度:k

输出:预测的AQI矩阵

1 for时刻n~n+k-1 do:

2 生成接近度三维数组:

Sc=[Xt-lc,Xt-(lc-1),…,Xt-1]

生成周期性三维数组:

Sp=[Xt-lp·p,Xt-(lp-1)·p,…,Xt-p]

生成趋势性三维数组:

Sq=[Xt-lq·q,Xt-(lq-1)·q,…,Xt-q]

3 实 验

本节以北京市2017-2018年空气质量数据为基础,进行时空卷积残差网络模型的训练和测试,并与经典的LSTM模型[18]进行比较和评估。

3.1 实验数据及环境

实验数据包括2017-2018年北京市各类空气质量数据及日均AQI。监测时间间隔为1次/时,每天24次,包含东四、天坛、奥体中心、丰台花园、云岗、房山、大兴、亦庄、通州、顺义、昌平、门头沟、平谷、怀柔、密云、延庆等监测站点捕获的数据。基于IDW算法对实际监测数据进行插值填充,得出北京市AQI像素图,作为ST-ResNet模型的数据输入。实验基于TensorFlow框架进行程序设计。

3.2 实验步骤

(1)预处理。

如图1所示,在首层卷积Conv1中设置卷积核为3×3大小的64层滤波,输出结果规格为32×32;每个残差单元(ResUnit 1…ResUnitL)由两个卷积核构成,每个残差单元的输出均为32×32的矩阵;在末层卷积Conv2中设置卷积核为3×3大小的单层滤波,输出的规格为32×32。所有卷积的运算操作均采用零填充卷积,即允许对核的宽度和输出的大小进行独立的控制。基于Adam[19]进行优化,每批32个输入单位。

(2)网络训练。

在捕捉趋势性、捕捉周期性和捕捉时间相似度的三个组件中(如图1所示),输入序列长度分别为lc,lp,lq,将序列长度均设置为3,即lc=3,lp=3,lq=3。

在一组对应的映射关系中,每隔一周取一个时刻的数据,连取三周的数据组成三个通道,形成32×32×3的数据维度,作为捕捉周期性组件中每批次个体的输入数据;每隔一天取一个时刻的数据,连取三天组成捕捉趋势性组件的32×32×3维度的输入;取距离预测目标最临近的三个时刻的数据组成32×32×3维度的数据作为捕捉时间相似的组件的输入。在训练输入小批次的规格(batch size)为32的情况下,训练模型的输入数据规模为32×32×32×3。

采用均方根误差(RMSE)作为评价标准:

(8)

其中,y(i)表示AQI真实数据,h(x(i))表示经过网络预测得到的AQI数据;m为矩阵中有效的网格数,即32×32的矩阵地图中不包含零值的网格部分。选取经典的LSTM模型进行性能对比,分别构建3层、6层、12层、24层、48层的LSTM。

3.3 实验结果

通过历史AQI数据,预测未来一年的AQI,分别将LSTM与ST-ResNet进行比较,获得的RMSE结果如表1所示。

表1 LSTM与ST-ResNet模型对比结果

由实验结果得出,LSTM模型在深度为3~48时,误差在26%~27%之间,而ST-ResNet模型的误差在20%左右,比LSTM的准确率提升了7%左右。

此外,改变ST-ResNet自身结构,采用控制变量法,分别改变卷积核大小和卷积核数目进行对比,获得的RMSE结果如表2所示。

表2 改变卷积核大小和卷积核数目对比实验结果

由表2可以看出卷积核大小与误差率的关系:随着卷积核的增大,误差率下降,3×3大小的卷积核与4×4大小的卷积核之间准确率相差不大,5×5大小的卷积核误差率最小。然而卷积核扩大到5×5,会增加额外的计算量和运算时间,增加超参数个数,也就增加了网络优化的难度,所以5×5大小的卷积核收益不大,多采用3×3大小的卷积核。同理,表2也展示出卷积核数量与误差率的关系。

图4显示出改变深度后ST-ResNet模型的误差率,ST-ResNet模型的误差率随着网络深度的增加而降低,但是当深度到达一定程度后会出现拐点现象,误差率骤然上升,经过分析得出:(1)随着深度增加,训练的难度增加;(2)当深度到达一定程度会出现梯度消失或梯度爆炸。

图4 网络深度-误差走势

4 结束语

面向城市计算,提出基于卷积残差网络的时空数据学习方法,以此解决城市环境污染、空气质量预测等问题。考虑到空间属性和时间属性,用残差网络优化传统CNN结构,采用Adam算法加速网络训练效率。相比经典的LSTM算法,所提模型在处理时空数据时,既考虑到时间与空间的耦合,又与高维度上复杂的映射关系相结合,将具有时空属性的监测数据进行充分挖掘,有利于城市环境监测预测和精细化管理。在未来工作中,将加强深度学习模型对多源异构时空数据的分析和处理,将时空关联特性进行更好的解释和评价。另外,还将考虑多方因素,如人流量等外部事件对空气质量的影响,在深度网络结构中加入图神经网络,试图解释语义空间的内容,以便对城市空气质量预测的理想化趋于现实化。

猜你喜欢

残差空气质量卷积
基于全卷积神经网络的猪背膘厚快速准确测定
基于残差-注意力和LSTM的心律失常心拍分类方法研究
乌海市雾对空气质量的影响
用于处理不努力作答的标准化残差系列方法和混合多层模型法的比较*
融合上下文的残差门卷积实体抽取
一种基于卷积神经网络的地磁基准图构建方法
基于3D-Winograd的快速卷积算法设计及FPGA实现
一种并行不对称空洞卷积模块①
基于深度残差网络图像分类算法研究综述①