集成学习在PM2.5预测中的应用研究
2023-03-04祭海洋付均元周一鸣
祭海洋 李 玉 付均元 周一鸣
(东北林业大学,黑龙江 哈尔滨 150040)
0 引言
对空气中的PM2.5进行实时预测,能更好地对社会生产生活进行指导,具有很强的现实意义。PM2.5的形成原因有很多,PM2.5的预测方法[1-7]可分为机理性模型预测和非机理性模型进行检测。机理性模型对各个环境因子的要求多,要考虑多种PM2.5产生和扩散的因素。非机理性模型只把与PM2.5有关的相关因子通过机器学习模型进行分析,最终实现对PM2.5的预测。考虑到单机器学习模型的预测精度与对新数据的泛化能力较低,因此本研究采用集成学习模型对PM2.5含量进行预测。由于集成学习合并了多个机器学习模型,克服了单一预测方法的缺点,对数据的预测效果更好。
1 PM2.5预测原理
1.1 预测原理
PM2.5实时预测主要是通过建立不同的机器学习模型对历史数据进行训练,在得到不同模型[7-15]的合适参数值后,进行模拟仿真。可设第i个PM2.5影响因子为Xi,其预测值Y,计算公式见式(1)。
1.2 预测试验数据集
空气中的PM2.5不是单一的空气污染物,其形成的原因较为复杂,不仅与空气中的多种污染物有关(空气中的细微颗粒污染物、硫的氧化物SOx、氮的氧化物NOx、CO 和PM10等对PM2.5的形成具有较大影响),还与气象因素密切相关(露点、温度、大气压、湿度、风速、累计降雨量),通过对文献进行分析,本研究选取影响PM2.5实时浓度的十个指标。本研究的数据集采用2014—2021 年哈尔滨气象局发布的气象数据,数据包含十项特征,见表1。
表1 数据集特征
由于获取到的数据集中包含许多缺失数据,本研究采用差值法对缺失数据进行补全。
1.3 特征提取
考虑到PM2.5的形成与多种因素有关,计算各个因子的皮尔逊相关系数(见图1)。除去相关性不足0.5的因子。
图1 各指标相关性系数
1.4 标准化
由于以上十项特征的单位、数据量不统一,无法将其与PM2.5进行直接比较。为观察不同因子与PM2.5之间的关系,将每项特征进行标准化处理,全部缩放到0~1范围内,见式(2)。
式中:min 为数据中最小值;max 为数据的最大值。
2 集成学习
集成学习(Ensemble learning)是通过构建并结合多个学习器来完成学习任务,集成多个模型能克服传统单一的机器学习模型在预测精度上存在的不足。根据个体在学习器中的生成方式,集成学习模型可分为两大类。第一类是个体学习器不存在过于强的依赖关系,可同时生成的并行化方法,如Bagging 类算法。第二类是个体学习器存在强依赖性关系,必须串行生成的序列化方法,如Boosting类算法。
2.1 随机森林模型(Random forests)
随机森林是对Bagging算法[2]的一种优化,其通过建立大量不相关的分类树,并取这些分类树的平均值,从而获得结果。在许多问题中,随机森林很容易进行训练和调优。因此,随机森林模型被广泛地应用。随机森林的训练过程描述如下。
若总共训练B棵分类树,对每一棵分类树Ti,从训练样本中随机选取一个大小为N的引导样本Z*。在引导样本中,随机选择m个维度的变量,按照自上向下的递归分裂原则,在Ti分类树中从根节点开始对引导样本进行划分。对节点本身,按照节点纯度最小的原则,分裂为左节点和右节点,其分别包含训练数据的一个子集。
在此类问题中,随机森林用于回归时,回归树的纯度可用两个子节点方差之和来描述。当划分特征为A,划分点为s,将样本划分为z1和z2两部分时,上述对节点的划分可用公式(3)来描述。
其中,c1和c2的计算公式见式(4)。
最后,对数据X′模型给出其预测值,其计算公式见式(5)。
2.2 Adaptive Boosting算法(AdaBoost)
AdaBoost算法[7]最主要的特点是前面的分类器会为后面的分类器创造条件,后面的分类器是基于前面分类器创造的条件进行改进的,以获得对前面错误样本的更优预测。
AdaBoost回归算法的运行过程如下。
刚开始时,所有样本具有相同的权重。即对总共m个训练样本,在第t次训练前第i个样本的权重为ωt,i,其计算公式见式(6)。
每轮训练后都会得到一个基学习器,每轮结束后都会根据上一轮分类器的分类效果来调整每个样本的权重,提高上一轮预测偏差大的样本权重,并降低预测偏差小的样本权重。
对第t次迭代训练出的模型ℎt()·,先要计算该模型的样本最大误差Et,见式(7)。
再计算每个样本在此轮模型中的相对误差et,i,见式(8)。
然后求出基学习器ℎt()·在训练数据集中的回归误差率εt,见式(9)。
进一步求出基学习器ℎt()·的权重系数αt,见式(10)。
并以此来更新每个训练样本的权重系数,见式(11)。
其中,Zt为规范化参数,见式(12)。
下一轮的训练要根据新得到样本权重来指导本轮中的基分类器训练。重复上述步骤,直至达到设定的训练轮数,每轮训练都会得到一个基分类器。
在所有弱学习器的共同作用下,得到最终的强学习器H(·),训练T轮的学习器对输入X′的预测值见式(13)。
3 试验结果与分析
基于多种机器学习和哈尔滨气象的数据集,来完成对PM2.5浓度的预测。试验方法如下。①对原始气象数据进行处理,构建符合要求的数据集。②调用训练集对机器学习模型进行训练。③调用验证集对结果模型进行验证评估。④对预测效果进行统计学分析,并判断预测的精确度,通过拟合度和回归精度等指标来选出最佳的预测模型。⑤用最优模型对PM2.5含量进行预测,并与实际的PM2.5含量进行对比。
3.1 试验环境
本研究的试验环境详见表2。
表2 试验环境介绍
3.2 多模型选择
本研究采用XGboost(Xtreme Gradient Boosting)[8]、RF(Random Forest)、GBDT[10](Gradient Boosting Decision Tree)、AdaBoost[9](Adaptive boosting)等方法对数据进行预测。
3.3 结果分析
基于模型对经过预处理和转换后的测试集数据进行预测,预测结果和实际结果如图2 所示。从图2 可以看出,集成类学习模型的预测效果较好。在对测试集进行预测时,不同集成学习的预测指标大小如图3 所示。其中,GBDT 模型的MSE 为334.204 6,RMSE 为18.281 3,MAPE 为83.438 9,SMAPE 为50.616 9,且预测PM2.5含量与实际PM2.5含量变化趋势的吻合度最好,满足回归预测过程中的经验误差要求。因此,集成学习模型预测模型在预测PM2.5浓度的拟合度要好于其他机器学习模型。
图2 各个模型的预测结果
图3 各个模型的预测结果指标大小