Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 8

运用机器学习方法预测空气中臭氧浓度

蔡旺华      
摘要: 臭氧(O3)浓度变化与天然源、移动源和点源的排放量存在某些隐含的关联。根据臭氧浓度变化的
特性,基于污染源在线排放数据、气象监测数据以及空气质量监测数据构造特征,运用机器学习方法进行
逐小时臭氧浓度预测。该方法不仅充分利用了臭氧浓度变化时序数据,而且考虑了气象条件变化对污染物
浓度变化的影响,最重要的是将点源排放氮氧化物这一臭氧生成的重要前体物纳入模型考虑。在金砖国家
领导人厦门会晤前后(2017 年 8 月 31 日至 9 月 9 日),运用该方法对厦门市溪东、洪文、鼓浪屿和湖里
中学四个大气自动监测站的臭氧小时浓度平均值进行滚动预报,比较准确地模拟出臭氧浓度的日周期性变
化,同时对峰值和低谷能够进行较为有效的捕捉和刻画。按照《环境空气质量标准》(GB3095—2012)
臭氧日最大八小时浓度平均值进行评价,四个站点均取得了 90%的预报等级准确率。
关键词: 机器学习    预测    臭氧浓度    
Using Machine Learning Method for Predicting the
Concentration of Ozone in the Air
CAI Wanghua       
Abstract: There are some implicit associations between changes ofozone concentration and emissions
from natural sources, mobile sources and point sources. According to the characteristics of
ozoneconcentration change, this paper used machine learning method to predict the hourly ozone
concentration based on the online discharge data of pollutants, meteorological monitoring data and air
quality monitoring data. This method not only made full use of time series data of ozone concentration
change, but also took into account the influence of the change of meteorological conditions on the
change of pollutant concentration. The most important point was to consider the point source nitrogen
oxides emission, an important precursor of ozone generation, into the model. In the period before and
after BRICS XiamenSummit (from August 31, 2017 to September 9th), this method was applied to
ozone 1 hour average concentration rolling forecast of four automatic atmospheric monitoring stations
including Xidong, Hongwen, Gulangyu and Huli Middle School in Xiamen, the diurnal periodic variation
of ozone concentration was accurately simulated and the peak and trough were also effectively
captured and characterized.According to the average of maximum 8 hours concentration in the ozone
day of "Ambient Air Quality Standard" (GB3095-2012), all four sites achieved the accuracy of forecast
grade of 90%.
Key Words: machine learning    prediction    ozone concentration    

臭氧(O3)是一种淡蓝色气体,是天然大气的重要微量成分, 约 90%的臭氧存在于平流层, 仅有
10%左右的臭氧分布在对流层中[1]。臭氧是《环境空气质量标准》(GB3095—2012)中包含光化学烟雾
的标志性污染物,高浓度近地面臭氧对人体健康有较大的危害[2]。城市中的臭氧主要由氮氧化物
(NOx)、挥发性有机物(VOCs)在适宜条件下作用产生[3], 主要来源于机动车、各类工厂和自然植被。
随着经济活动的加剧和机动车保有量的激增,臭氧污染问题渐趋严重[4],2017 年福建省空气质量的首要污
染源即为臭氧。如何准确预报臭氧浓度成为一个重要课题。

常见的大气污染物浓度预测方法主要有两类:基于数值模式的预测方法[5, 6]和基于统计模型的预测方
法[7-10]。数值模式的预测方法是以大气动力学理论为基础,在给定的气象条件、污染源排放清单以及初始
边界条件下,通过一套复杂的偏微分方程组模拟大气污染物在实际大气中的各种物理化学过程,预报污染
物浓度动态分布和变化趋势。基于统计模式的预测方法以空气质量监测数据、气象监测数据等多种类型数
据为基础,利用统计方法,建立预测模型,实现大气污染物浓度预测。传统的统计模型预测仅考虑单一大
气污染物浓度变化,利用 ARIMA、Holt-Winters 等时间序列预测模型进行浓度预测[11],预测精度较低且预
测时效较短。后有方法提出利用大气污染物浓度和温度、湿度等气象因素进行多元线性回归,预测精度相
比 ARIMA 等时间序列预测模型要准。近年来,随着机器学习算法的不断发展,支持向量机、人工神经网
络等机器学习算法被不断引入大气污染物浓度预测任务中来[12, 13],这些方法对多源数据进行综合考虑,预
测效果有所提升。

相比基于数值模式的预测方法,基于统计模型的预测方法具有以下两个优点:一是此类方法的输入
采用真实监测值,比采用估算值的数值模式更加准确[14];二是此类方法计算速度快,通常在秒级即可完成
计算,而数值模式运算消耗时间动辄以小时计。但是,目前国内常见的基于统计模型的大气污染物浓度预
测方法一般只对空气质量监测数据、气象数据进行回归分析。由于输入特征单一,未考虑到引起大气污染
物浓度变化的可能原因,如点源、移动源排放变化等,从而导致了现有此类方法往往表现得不够理想。

本文提出了一种结合臭氧浓度变化机理的机器学习方法用于臭氧浓度预测,是福建省生态环境大数
据平台建设中的大数据应用之一。福建省生态环境大数据平台由福建省环保厅于 2015 年 9 月启动建设,
在建设过程中,正值 2017 年 9 月 3 日至 5 日金砖国家领导人厦门会晤。为此,在 8 月 31 日至 9 月 9 日,
运用本文提出的方法对厦门市臭氧浓度进行了较为准确的预测,为保障空气质量提供了支持。

1 臭氧浓度预测模型 1.1 臭氧预测模型机制

臭氧浓度变化可以简单分为生成、分解和扩散三部分[15, 16]。其中,生成部分主要考虑三类污染源
(天然源、移动源和点源)的影响。因为在一段时期内,可以认为天然源的影响基本稳定,无人工干预下
的移动源的影响呈现较规律的周期性变化,所以此方法主要考虑相对变化较大的点源对臭氧浓度变化的影
响,从而进行臭氧浓度预测;分解和扩散的部分主要考虑湿度、风速等气象条件对臭氧浓度变化的影响
[17]
。因此本方法采用的数据主要有以下四类:①空气质量监测数据;②周边点源(以下本文所提“点源”
均指有在线监测废气排放的污染源)排放数据;③气象监测数据;④预报时刻的气象预测数据。根据各类
数据对臭氧浓度变化的影响构造特征,预测 24 小时后的臭氧浓度。

因为各个大气监测站所处位置不同,各种条件一般会有较大差异,臭氧浓度变化规律也可能不同,
所以对每个大气自动监测站单独训练臭氧浓度预测模型。

该方法的流程如图 1 所示。首先获取上文提及的空气质量监测数据、周边点源排放数据、气象监测
数据和预报时刻的气象数据等四类数据,然后进行数据预处理、特征抽取步骤,获取训练数据集和测试数
据集。然后利用训练数据集和机器学习的 XGBoost 算法进行模型训练,得到预测模型,再利用预测模型
和测试数据集得到预测臭氧浓度。

图 1 臭氧浓度预测模型流程

臭氧浓度预测模型架构如图 2 所示,对图 1 的特征抽取和模型训练两部分进行展开。由图 2 可见,


模型输入特征基于起报时刻 t 前 h 天的点源数据(图 1 中 h=5,即 t 前 120 小时)、臭氧浓度监测数据和
气象监测数据以及预报时刻气象数据构造。模型目标为预报时刻(t+24)的臭氧浓度相较于起报时刻
(t)臭氧浓度的变化值。采用变化值为目标是为了减小臭氧浓度周期性变化以及一些潜在未知因素的影
响。基于 XGBoost 算法,可以获得预报时刻相较起报时刻的臭氧浓度变化预测值,再结合起报时刻的臭
氧浓度,即可获得预报时刻的臭氧浓度预测值。

图 2 臭氧浓度预测模型架构

1.2 特征抽取

本文提出的算法包括三部分特征:点源特征、臭氧浓度和气象特征,以下依次进行说明。考虑到各
个大气监测站点所处的位置不同,该算法针对单个大气监测站点设计。

点源特征按照点源地理位置分布抽取,如图 3 所示,五星点为目标大气监测站点,黑色圆点为点源。
针对每个大气监测站点,考虑与其所属城市接壤的所有城市内的点源,构造如图 2 的区域,并将其划分
为若干个长宽均为 M 的小方格。针对每个小方格,计算其中心点和当前环境监测站点的相对方向和距离
(图 2 中所示的叉划线),同时统计其所包含的点源,则所有点源均明确隶属于某个方格。对前述已划
定的每个小方格,计算起报时刻 t 前 h 天内的机制特征,以每 24 小时为 1 个时间段,每个时间段抽取二维
特征,分别是污染物扩散规律特征和污染物传播时间特征。对每个小方格每个时间段,若主要风向有利于
污染物到当前关注的环境监测站点的输送,即可以根据平均风速和点源排放量计算该二维特征。当风向不
易于污染物输送或者方格内暂无点源排放时,该二维特征均为 0。

图 3 点源网格划分特征抽取示意图

臭氧浓度特征采用起报时刻 t 的臭氧小时平均浓度。

气象特征通过预报时刻 t+24 前若干个小时的气象因素构造,因为湿度和风速对臭氧的扩散和分解至


关重要,所以本算法中采用其预测时刻前 4 小时、前 6 小时和前 24 小时的最大值、最小值和平均值作为
特征。
将上述三种特征直接拼接构成输入特征,对应的输出结果为预测时刻 t+24 与起报时刻 t 的臭氧浓度
差值,之后利用 XGBoost 算法拟合针对每个大气监测站点的模型即可。

1.3 XGBoost 算法

本文采用的 XGBoost[18](eXtreme Gradient Boosting)是一种梯度提升算法扩展。梯度提升算法是


一种用于回归和分类问题的机器学习技术,以多个弱预测模型集成的形式产生预测模型。通常会选择树这
一弱预测模型作为基学习器,例如,本文所提出预测模型采用回归树作为基学习器。当然,XGBoost 基
学习器也可以是其他分类器。

假设 XGBoost 一共生成了 k 棵树,对任一输入 x,每棵树都有一个输出 fx(x),则该 XGBoost 模型的

输出为 。在迭代过程中,利用梯度下降思想,以已生成树为基础,以最优化目标函数为

总目标,迭代生成新树。每次迭代学习的目标是减少已生成的模型的累计结果的损失值。不同于传统梯度
提升决策树(gradient boosting decision tree,GBDT),XGBoost 对代价函数进行二阶泰勒展开,利用
了一阶导数和二阶导数。另外,XGBoost 的代价函数中包含正则项,这相当于给复杂模型以一定的惩罚,
模型复杂度得以控制,所以模型不易出现过拟合问题。

XGBoost 算法能够利用 CPU 多线程并行,具有运行速度快,准确度较高,不易过拟合等优点[19],


算法普适性好,在多种应用上表现良好,但未见在臭氧浓度预测的文献。

2 模型预测 2.1 数据准备

该方法采用的各类数据源,除测试过程所需的气象预报数据外,均来源于福建省生态环境大数据平
台。该方法涉及的数据源包括以下四类:大气监测站的空气质量监测数据、大气监测站的气象监测数据、
点源(在线监测的废气排放污染源)数据和气象预报数据。大气监测站的空气质量监测数据格式参见表
1,以小时平均深度代表每个大气监测站点在每个整点时刻的臭氧浓度;大气监测站的气象监测数据和气
象预报数据的数据格式相同,参见表 2,记录每个大气监测站点每个时刻的温度、湿度、气压、风速和风
向等 5 个监测指标;点源监测数据格式参见表 3,记录每个点源小时排放监测值的 NOx 折算浓度。

表 1 大气监测站的空气质量监测数据

表 2 大气监测站的气象监测数据

表 3 点源(在线监测的废气排放污染源)数据
该方法采用 2016 年 9 月 1 日至 2017 年 8 月 30 日一年的上述三种数据源,针对厦门市溪东、洪文、
鼓浪屿和湖里中学四个大气监测站点各自的训练模型。利用金砖领导人厦门会晤前后共 10 天(2017 年 8
月 31 日至 9 月 9 日)的数据和对应的气象预报数据进行模型测试。训练数据和测试数据量如表 4 所示,
因数据缺失或异常,各站点的训练、测试数据条数可能不同。

表 4 各站点数据量统计

2.2 模型训练和参数设置

对每个大气监测站点,在训练集上使用 10 折交叉验证方法进行模型训练和参数调优,最后在测试
集上测试结果。所谓 10 折交叉验证,即将数据集划分为 10 个子集,依次取其中 9 个子集为训练集,剩余
1 个子集为测试集,最终以在 10 个测试集上的平均精度评价模型。

本次实验在训练 XGBoost 模型时设置了三个参数:树的深度(max_depth)为 4、学习率


(learning_ rate)为 0.1 和树的个数(n_estimators)为 500,其余参数使用默认值,具体设置方法可参
见 XGBoost 文档[20]。根据以上参数在四个站点的训练集上训练各个站点的 XGBoost 模型,并在测试集上
进行结果验证。

3 预测结果分析

福建省厦门市东临台湾海峡,与泉州、漳州和龙岩市毗邻。厦门市有溪东、洪文、鼓浪屿和湖里中
学四个大气自动监测站,其中溪东是背景点,受城市污染干扰较少。

以上所提出的结合臭氧生成机理和机器学习方法的臭氧预测方法对厦门市 8 月 31 日至 9 月 9 日四个
大气自动监测站的臭氧 1 小时平均浓度进行预测,实验结果如图 4~图 7 所示,其中气象数据采用气象预
报数据。

图 4 溪东站臭氧浓度实测值、预测值对比
图 5 洪文站臭氧浓度实测值、预测值对比

图 6 鼓浪屿站臭氧浓度实测值、预测值对比

图 7 湖里中学站臭氧浓度实测值、预测值对比

在图 4~图 7 中,实线表示各站点实测值,虚线表示模型预报值。每个图的上半部分为臭氧 1 小时
平均浓度值对比(一级限值是 160µg/ m3, 二级限值是 200 µg/m3),下半部分为臭氧 8 小时滑动平均值对
比(一级限值是 100µg/m3, 二级限值是 160 µg/m3)。可以看出,本文提出的方法对臭氧浓度的变化趋势
捕捉较为准确,除了比较准确地表现臭氧浓度的日周期性变化,同时对峰值和低谷处能进行较为有效的捕
捉和刻画。此外,该方法的预报浓度和等级准确率都较高。

臭氧浓度预测值与实测值对比如表 5 所示,其中对比了臭氧小时浓度的绝对误差最大值、绝对误差
最小值、平均绝对误差和平均相对误差,臭氧八小时浓度滑动平均值的绝对误差最大值、绝对误差最小值、
平均绝对误差和平均相对误差。

表 5 厦门四站点臭氧预测值与实测值对比

从表 5 中可以看出,除背景监测站点溪东外,其余三个大气监测站点的臭氧小时浓度的平均相对误
差在 21.8%~ 26.3%,平均绝对误差在 14.21~ 15.97μg/ m3;臭氧八小时浓度滑动平均值的平均相对误差
为 19.0%~ 23.4%,平均绝对误差为 13.21~ 15.01μg/m3。四个站点臭氧小时浓度平均值和八小时浓度滑
动平均值的绝对误差最小值均小于 0.2μg/m3。以上结果显示,该方法有较高的预报准确率。此外,表 5
的结果显示溪东站点的平均相对误差较大,是因为溪东站点存在小时臭氧浓度极小的时刻,如 9 月 9 日
1:00 -7:00 这 7 个时刻的臭氧浓度均在 10μg/m3 以下,因而导致该时刻的臭氧小时浓度平均相对误差极大。

除了对比臭氧小时浓度平均值和臭氧八小时浓度滑动平均值之外,根据臭氧日报等级计算方法,计
算并对比了每天臭氧浓度八小时浓度滑动平均最大值计算对应的空气质量分指数 IAQI 及其等级,统计结
果参见表 6。四个站点均有 1 天日报等级错误,日报预报等级正确率较高,均为 90%。

表 6 厦门市四站点臭氧预测结果日报等级正确率

臭氧日报 IAQI 值及等级参见表 7。溪东站点在 9 月 9 日等级预报错误,9 月 6 日洪文、鼓浪屿和湖


里中学三个站点日报等级均错误。除预报等级错误的天数外,其余日报臭氧 IAQI 预测值和真实值间的差
值多在 10 以内。

表 7 厦门市四站点日报等级及预测值

通过厦门市四个大气监测点,可计算厦门市日报等级及预测值,参见表 8,仅有 9 月 6 日一天日报


等级错误,其余 9 天内 7 天日报 IAQI 差值都在 5 以内,说明等级预报较准,且日报 IAQI 差异较小。

表 8 厦门市日报等级及预测值

通过以上结果可以看出,该方法也存在一些不足。由于目前对造成臭氧浓度变化的原因仅考虑点源
的排放,针对其他原因导致的臭氧浓度突变可能捕捉不到,因此会出现如限行情况变化(8 月 31 日至 9
月 5 日厦门机动车单双号限行,外地车辆不许进入岛内)和中元节期间(闽南地区祭祀祖宗习俗)等特殊
原因导致 9 月 6 日臭氧浓度实测值较高但预测值较低的情况。等级预报方面,在日报等级接近级别边界的
情况下,由于臭氧小时浓度的预报不够精准,在计算日报结果(臭氧八小时均值的最大值)时,可能出现
等级预报错误的现象。这些都是该方法未来的改进方向。

4 结论

本文应用机器学习方法,较为准确地预测了大气中的臭氧浓度。该方法有别于数值模式的预报方法,
可扩展性强,能够直接增加其他影响臭氧浓度变化的特征,并实现快速滚动预报。本文提出的预测方法充
分考虑不同站点所处的不同地理位置及其可能受到的不同周边的影响,因此,可以方便推广到其他地区的
臭氧浓度预测,但需采用该地区一年或一年以上的数据集进行学习训练。同时,该方法针对臭氧浓度突变
值和等级边界的预报准确性还有待进一步提高。
参考文献

You might also like