吕秋明,莫欣岳*,李 欢
(海南大学 网络空间安全学院(密码学院),海南 海口)
空气污染是全球性的环境问题,尤其在城市地区。随着工业和交通运输业的迅速发展,城市空气污染问题愈发突出。作为空气污染的重要成分之一,PM2.5对环境和人类健康的影响已引起广泛重视。随着人们对环境和生活质量需求的提高,对空气质量的关注也越来越高。因此政府部门不断加强对空气质量的管控,对以PM2.5为首的空气污染物开展预报预警,有助于采取及时有效的防控措施,保障生态环境和公众健康[1]。
近年来,机器学习特别是深度学习技术的成功应用也为空气污染预报提供了新的思路和方法。深度学习是一种基于人工神经网络的模型算法,具有很强的特征提取和自适应学习能力,可以对复杂的非线性关系进行学习和模拟。针对空气污染预报问题,已有学者尝试基于深度学习的方法开展研究[2]。例如Tao等[3]结合卷积神经网络(CNN)与双向门控循环单元网络(BiGRU)提出一种深度学习模型(CBGRU),该模型通过CNN 对数据下采样减少数据的复杂性,并使用BiGRU挖掘时间信息特征。
不同深度学习算法具有不同特点,例如卷积神经网络(CNN)具有较好的特征提取能力,而长短期记忆网络(LSTM)擅长时间序列分析。本研究引入多种深度学习算法,不仅融合了CNN和双向长短期记忆网络(BiLSTM)的特性,而且加入先进的注意力机制(Attention),建立了深度学习组合模型CNN-BiLSTM-Attention。基于深度学习组合模型开展PM2.5浓度预报,并对模型的预报效果进行了量化分析和评价。本研究旨在通过深度学习方法实现PM2.5浓度的有效预报,为公众的健康防护和政府的空气污染防控提供支持,同时助力于深度学习技术应用和发展。
1.1 研究区域 北京市位于中国华北地区,是中国的首都,也是政治中心、文化中心和科技创新中心。随着城市化进程的加速,伴随而来的环境问题也日益凸显。北京也是空气污染较严重的城市之一,PM2.5污染形势始终不容乐观。为了改善空气质量,北京市政府采取了一系列管控措施,如加强空气质量的监测和预警、推广清洁能源、机动车限行等。
1.2 数据集与预处理 本研究使用了北京市常规空气污染物浓度监测数据(http://zx.bjmemc.com.cn/getAqiList.shtml?timestamp=1689873072321),具 体 包 括PM2.5、PM10、SO2、NO2、CO、O3。数据时间跨度为2013 年3 月1日至2017 年2 月28 日,数据粒度为小时级别。其中,训练集、验证集和测试集的比例分别为80%、10%和10%。鉴于预报量PM2.5浓度序列的时间规律和与其它污染物复杂的相互作用,使用6 种常规空气污染物历史浓度数据作为预报因子。为消除不同污染物量级的影响,使用Min-Max归一化算法对原始数据进行归一化。然后通过滑动时间窗口算法将原始时间序列转化为监督学习任务。
2.1 卷积神经网络 卷积神经网络(Convolutional Neural Network,CNN)是一种广泛应用于计算机视觉领域的深度学习模型[4]。CNN 的主要思想是通过卷积运算和池化操作提取图像特征,然后通过全连接层进行分类或回归等任务。CNN的卷积层通过卷积核在输入数据上进行卷积运算,提取局部特征,并且具有平移不变性。池化层则通过对卷积层输出的特征图进行下采样操作,减少特征的维度和数量,从而进一步提高计算效率和泛化能力。
2.2 长短期记忆网络 长短期记忆网络(Long Short Term Memory, LSTM)是一种循环神经网络(RNN)的改进模型,主要用来解决时间序列的长期依赖问题[5]。相较于传统的RNN,LSTM包含三个门控单元(输入门,遗忘门,输出门)。LSTM结构见图1,在每个时间步,LSTM会根据当前输入和前一时刻的状态,通过三个门控单元进行计算,从而控制信息的流入和流出。
图1 LSTM 结构
双向长短期记忆网络(Bidirectional Long Short Term Memory Network, BiLSTM)由两个单向的LSTM组成,每个时刻的输入会同时提供给前向和后向的LSTM,两个隐含层独立计算状态和输出,BiLSTM的最终输出由两个LSTM的输出共同决定。
式中:W 和b 是相应的权重和偏置向量;h,x,C˜ 和C 分别是输出,输入,候选记忆和记忆单元;f,i 和o 分别是遗忘门,输入门,输出门单元。
2.3 注意力机制 注意力机制(Attention)是一种用于加强神经网络对输入序列中重要部分关注度的机制。在序列数据的处理中,往往需要对每个时间步的输入进行加权求和,以得到一个整体的表示。Attention 机制通过根据当前状态动态地计算权重向量,使得模型能够更加灵活地对输入序列进行建模,从而提高模型的性能[6]。
2.4 建立CNN-BiLSTM-Attention 模型 本研究基于上述深度学习算法建立了CNN-BiLSTM-Attention 的串联组合模型,模型的主要架构和功能如下:(1) 输入层,输入的数据是一个二维张量,该层的shape 参数为(window,input_size);(2) 卷积层,使用Conv1D 函数创建一个卷积层,激活函数为ReLU;(3) 池化层,使用MaxPooling1D 函数创建一个池化层;(4) Dropout 层,使用Dropout 函数创建一个Dropout 层;(5) BiLSTM层,使用Bidirectional 和LSTM函数创建一个BiLSTM层,包含一个正向和一个反向的LSTM层,激活函数为tanh;(6) Dense 层,全连接层,该层用于将BiLSTM层的输出传递给Attention 层,激活函数为sigmoid;(7)Attention 层,使用Dense 函数创建一个全连接层,激活函数为sigmoid;(8) 乘法层,使用Multiply 函数将Attention 层的输出与BiLSTM层的输出按元素相乘,以加权计算LSTM层的输出;(9) Flatten 层,该层用于将数据展平,以传递给Dense;(10) 输出层,使用Dense函数创建一个全连接层,该层有1 个神经元,激活函数为tanh,用来得到模型的最终输出值。
模型评估是在测试集上对模型进行性能评估的过程。对于时间序列预测任务,通常使用以下统计指标评估模型的性能[7]:平均绝对误差(Mean Absolute Error,MAE),均方误差(Mean Squared Error,MSE)和决定系数(R2)。
MAE 是预测值与真实值之间的平均绝对误差,它表示模型预测值与真实值之间的平均距离。MAE 计算公式如下:
MSE 是预测值与真实值之间的平均平方误差,它表示模型预测值与真实值之间的平均偏差的平方。MSE 计算公式如下:
R2分数是用于评估回归模型拟合程度的指标,取值范围在0 到1 之间,其中1 表示回归模型完美拟合所有数据,0 表示回归模型无法解释目标变量的方差。R2计算公式如下:
4.1 模型训练Epoch 的选定 Epoch 指使用训练集的全部样本对模型训练一次的过程。采用控制变量法逐步调整Epoch 次数,测试Epoch 取值对模型预报效果的影响。以MAE 为标准,实验结果显示,MAE 随着Epoch 次数的增加先减少后增加,当Epoch 取20 时MAE 达到极小值,其它指标也显示出了类似的规律。因此,基于模型预报效果和计算成本的考虑,本次试验选择20 作为模型最终的Epoch 参数。详见表1。
表1 Epoch 次数对预报效果的影响
4.2 时间窗口的选定 较长的时间窗口可以捕捉到更长期的时间依赖关系,但也会增加模型的复杂度和计算成本;而较短的时间窗口可能会限制模型的数据挖掘能力。不同类型的数据也具有不同的规律,例如周期性,故时间窗口的大小对不同类型数据的预测效果影响也不同。通过调整时间窗口的大小,来观察模型性能的变化,进而选定最合适的时间窗口。表2 显示,随着时间窗口的变大,模型的预报准确性呈现先上升后下降的规律,在窗口大小取12 时模型的MAE,MSE 和R2达到极值分别为0.015 44,0.000 78 和0.935 33。
表2 时间窗口大小对模型的影响
4.3 模型预报性能 为验证本研究提出的深度学习组合模型CNN-BiLSTM-Attention 的预报性能,在测试集上对照PM2.5浓度的监测值,对其预报效果进行评估。图2 显示,组合模型可以准确地学习污染物浓度的变化规律并做出预测,预测结果不仅能反映污染物的变化趋势,而且对极值的预报也较为准确,仅在个别极值点上预报值略低于实际值。
图2 CNN-BiLSTM-Attention 预报结果
此外, 在测试集上将提出的组合模型CNN-BiLSTM-Attention 与基准模型LSTM进行了详细的对比,以验证模型的性能变化。表3 显示,相比于LSTM,使用BiLSTM并结合CNN,以及引入Attention 机制建立组合模型可以有效提升模型预报性能。通过对测试集上预报结果MAE,MSE 和R2的比较,LSTM的三种统计指标分别为0.091 49,0.017 33 和0.952 74,CNNBiLSTM-Attention 的三种指标分别为0.017 93,0.001 00 和0.955 35,后者比前者各项均有提升,分别提升了80%,94%和0.3%。
表3 LSTM与CNN-BiLSTM-Attention 预报效果对比
本研究引入多种深度学习方法,包括卷积神经网络(CNN),双向长短期记忆网络(BiLSTM)和注意力机制(Attention), 建 立 了 深 度 学 习 组 合 模 型CNN-BiLSTM-Attention。针对北京市PM2.5小时浓度开展了预报,并基于三种统计指标和基准模型对实验结果进行了分析,进而评估模型的预报性能。
实验结果表明:对于深度学习模型Epoch、时间窗口等超参数的调节可以有效提高模型性能;提出的深度学习组合模型CNN-BiLSTM-Attention,结合了CNN 特征提取和缓解模型过拟合问题的优势、BiLSTM准确捕捉长时间序列信息中隐含特征的优点以及Attention 机制可以根据输入序列中不同位置重要性而赋予不同权重的能力,能够对PM2.5的浓度变化进行准确预测;相对于基准模型LSTM,CNN-BiLSTM-Attention 在MAE、MSE和R2指标上有显著提升,分别为80%、94%和0.3%。
在今后的工作中,将针对基于深度学习的污染预测问题,开展进一步研究。例如:不断引入更多先进的深度学习算法,通过对比实验验证不同深度学习算法的效果和适用性;开展集合预报,同时建立多个不同预报模型并对预报结果进行融合,进一步提高预报结果的准确性和稳定性。