CN114611399A - 一种基于NGBoost算法的PM2.5浓度长时间序列预测方法 - Google Patents
一种基于NGBoost算法的PM2.5浓度长时间序列预测方法 Download PDFInfo
- Publication number
- CN114611399A CN114611399A CN202210268175.5A CN202210268175A CN114611399A CN 114611399 A CN114611399 A CN 114611399A CN 202210268175 A CN202210268175 A CN 202210268175A CN 114611399 A CN114611399 A CN 114611399A
- Authority
- CN
- China
- Prior art keywords
- data
- concentration
- model
- day
- ngboost
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
- G06F30/27—Design optimisation, verification or simulation using machine learning, e.g. artificial intelligence, neural networks, support vector machines [SVM] or training a model
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2119/00—Details relating to the type or aim of the analysis or the optimisation
- G06F2119/02—Reliability analysis or reliability optimisation; Failure analysis, e.g. worst case scenario performance, failure mode and effects analysis [FMEA]
Abstract
本发明公开了一种基于NGBoost算法的PM2.5浓度长时间序列预测方法,该方法综合气象和其他污染物影响因素,提出了基于自然梯度提升的PM2.5浓度预测模型,以提升长时间序列PM2.5浓度预测的精度。使用Isolation Forest算法对采集到的目标站点空气污染物及气象数据进行了异常值判定、通过斯皮尔曼相关系数进行特征选择等预处理作为总数据集;提出数据时序离散化方法,使用所有天中同一小时的数据构成模型输入。然后进行了数据规范化、数据集划分比例、阈值等参数调优实验进行模型优化。最后将离散化后的多维数据集采用NGBoost算法,得出对目标站点未来一天PM2.5浓度的小时级精确化预测值。本发明为PM2.5浓度长时间序列预测提供了一个开放的研究框架。
Description
技术领域
本发明涉及空气污染物浓度预测、基于机器学习建模等技术。具体涉及一种应用于长时间序列预测PM2.5浓度的方法。
背景技术
近年来,随着城市化和工业化的发展,大气污染逐渐成为了一个严重社会问题。人们长时间暴露于高浓度的PM2.5中会提升患有癌症和呼吸系统疾病的风险。并且由于PM2.5空气中的停留时间过长而形成的雾霾会导致能见度降低,进而造成交通拥堵、航班延误等问题,极大的影响了人们正常的工作和生活。因此PM2.5浓度预测技术,作为空气质量监控的重要手段之一,可以通过提前预警让人们提前做好防护措施,是改善城市交通、提高居民健康指数的有效途径。
面对常态化雾霾污染和不断升高的PM2.5浓度值,我们迫切需要一个能够提前长时间序列预测PM2.5浓度值的方法。虽然目前已有多种PM2.5浓度预测模型,但是当前模型主要聚焦于PM2.5浓度的单步预测,即预测1小时之后的PM2.5浓度,只适用于短期决策问题。而且现有的PM2.5浓度多步预测主要依赖于深度神经网络技术,具有强学习能力的同时也需要高性能计算和存储的支持。因此,为了便利民众出行和保护公众身体健康,我们亟需实现一种基于NGBoost算法的长时间序列PM2.5浓度预测方法,为管理部门决策提供关键支撑。
发明内容
本发明解决的问题是:提出了一种基于NGBoost算法的PM2.5浓度长时间序列预测方法,弥补了当前无法高效、准确的预测未来一天PM2.5浓度值的不足。本发明综合分析了其他空气污染物和气象因素对PM2.5浓度的影响,增加了预测的准确性。并且本发明采用了NGBoost算法进行模型训练,降低了模型复杂度和训练时间,能够更快的得到PM2.5浓度预测值。最重要的是,本发明提出了一种数据时序离散化的方法对训练集进行处理,避免采用复杂的神经网络进行预测的同时提高了模型性能和准确率。
本发明的技术解决方案为:本发明提出了一种基于NGBoost算法的PM2.5浓度长时间序列预测方法。该方法利用IsolationForest算法筛选出样本中的异常值,并利用斯皮尔曼相关性系数筛选与PM2.5浓度强相关的特征信息。在此基础上对数据进行时序特征离散化,得到不同天数中同一小时的二维数据列表,并结合天数数据共同沟通了三维数据矩阵作为模型输入。然后进行了数据规范化、数据集划分比例、阈值等参数调优以辅助优化模型。最后采用NGBoost算法对多维特征数据进行训练,得出目标站点未来一天的小时级PM2.5浓度预测值。
附图说明
图1是本发明的整体步骤流程图
具体实施方式
(1)数据准备:
(a)获取某地区目标空气监测站点连续N天的小时级监测数据,构成PM2.5浓度多步预测的运行数据。
其中空气污染物数据主要包括以下字段:PM2.5浓度、PM10浓度、NO2浓度、CO浓度、O3浓度、SO2浓度。
气象数据主要包括以下字段:温度、气压、相对湿度、风向、风速。
以上两部分数据共同构成总数据集Z。Z为二维矩阵,包含了12列数据,即按以上顺序排列的空气污染物和气象表的11个特征字段加上对应的小时级时间字段共同构成特征集合FS={fs1,fs2,fs3…fs12},其中第i行第j个特征对应的值为zij,设α为总数据集的行数减1,n为所有样本的数量和,则0≤i≤α且0≤j≤11。
(2)数据预处理,具体步骤包括:
(a)异常值的处理。本文主要采用Isolation Forest算法剔除总数据集中的异常值。首先依据现实生活和监测数据常识,将空气污染物浓度小于0的数据转换为空值。随后采用Isolation Forest算法,将样本随机切分成若干个树。随后通过随机采样数据对每棵树进行训练,进而保证每棵树的方差达到运行者要求。最后利用如下公式计算Z中所有样本点的异常值评分矩阵SC,其中SC={sc00,sc01,sc02…scxy}(x=12,y=α)。
其中E[h(zij)]为zij在多棵树中路径长度的期望值。c(n)是包含n个样本数据集的树平均路径长度,用来标准化记录zij的路径长度。H(*)为调和数,ξ为欧拉常数,其值约等于0.57722。
(b)特征值选择。本文采用了斯皮尔曼相关性系数检查PM2.5浓度和其他特征的相关性以及其他特征之间的相关性。首先利用如下公式计算任意两个特征fi、fj之间的相关性rij:
其中n表示样本的数量和,α为从0开始的索引最后一行的行数,dk表示两个特征数据集合中数据次序的差值,Z'i和Z'j为分别为数据集Z'中第i个特征和第j个特征对应的数值列。
随后设检查PM2.5浓度和其他特征的相关性系数最小阈值为η,其他特征的相关性以及其他特征之间的相关性系数最大阈值为θ。当或时,则删除第j个特征对应的数值列Zj,不作为后续模型的输入数据,其他数据列保持不变。依照以上操作最终得到模型的输入数据集Zinput。
(3)数据时序离散化,具体步骤包括:
(b)时序离散化训练集数据。首先将训练集中数据,按照时间顺序排列。按照时刻分组,取出训练集中不同天数同一时刻的特征数据并将利用其组成24个二维数据矩阵。设第i小时的数据mi∈MT×F,其中T代表了训练集包含的天数且T≤d,L代表了预处理后剩余的特征数量。由此可以得到三维数据矩阵MH×T×F,其中H=24代表了一天中的24小时。随后取出PM2.5浓度对应的数据设为YH×T作为模型的标签,设第i天第j小时的标签数据yij∈Y。随后将剩余的数据矩阵M'H×T×(F-1)设为即将入模的三维特征矩阵。
(4)参数调优,具体步骤包括:
(a)数据规范化。为了消除不同特征变量见量纲的相互影响,对数据进行规范化处理。设映射区间为[a,1],m'ijk∈MH×T×F,利用如下公式进行数据最大-最小规范化:
设置a分别等于-1、0进行实验,通过比对实验结果得到能使模型表现最佳的映射区间。
(b)数据集划分比例选择。设定训练集和测试集的比例为(6:4)、(7:3)、(8:2)、(9:1)进行对比实验,通过实验结果选出最优的划分比例。
(c)阈值大小选择。选择不同的阈值来降低模型预测的不准确性,设阈值范围为[0.75,0.9],以0.01的步长遍历搜索,通过实验结果找到能使模型表现最优的阈值。
(d)以上(a)—(c)的对比实验中,每一次调整模型参数时,均在数据集中进行十次随机采样。利用采样后的十组数据,在相同模型参数的条件下训练模型。十次训练得到的预测性能值取平均作为该模型参数的最终预测性能,本发明使用此方法来更精准的提取最优参数。
(5)使用NGBoost算法训练模型,具体步骤包括:
(a)选择合适的评分规则。评分规则以预测的概率分布P和一个观察值y作为输入,并且需要满足如下公式:
其中S为评分结果,Q为结果y的真实分布,P为不同于Q的其他分布。设参数θ为输入M'T×(L-1),则Pθ代表了参数的概率分布。在本文中,我们选用极大似然估计法L作为评分规则,评分计算公式如下:
L(θ,y)=-log Pθ(y)#(5)
(b)定义广义自然梯度。首先根据我们选用的极大似然估计法方法,需要计算Kullback-Leibler散度。根据公式(5)中的极大似然估计法中评分L的计算方法,我们可以得到Kullback-Leibler散度的计算公式如下:
随后计算费希尔信息量ΓL,公式如下:
最后依据公式(9)中广义自然梯度定义,定义极大似然估计评分规则下对应的广义自然梯度,得到的结果如下:
(c)使用NGBoost算法对未来一天PM2.5浓度进行预测。首先将步骤三中得到的三维特征矩阵M'H×T×(F-1)和标签数据YH×T进行循环遍历,每次只选取所有天数中第i小时的特征和标签数据,即 和随后计算初始化参数θ0,计算公式如下:
其中随后构建U个基学习器f,设当前循环为第u个学习器中第k天的数据,每个学习器学习结果都基于前一阶段学习器集合的参数梯度其中本文选用浅层决策树作为基学习器,参数梯度的计算方式参考公式(10)。随后拟合参数梯度,利用如下公式得到学习器的缩放因子φu:
θuk=θ(u-1)k-r(φu·fu(xk))#(13)
其中r为学习率,要求u≥0才进行公式(13)的计算。当所有天数和基学习器数量遍历结束之后,就可以得到第T+1天中第i小时的PM2.5浓度预测值。最后等待24小时的数据全部遍历结束之后,可以得到第T+1天全天的PM2.5浓度预测值。
(6)输出该站点未来一天PM2.5浓度预测值。
Claims (5)
1.一种基于NGBoost算法的PM2.5浓度长时间序列预测方法,其特征在于,该方法的实施步骤如下:
(1)获取某地区目标空气监测站点的空气污染物和气象数据,并对数据进行存储和预处理;
(2)对步骤(1)获得的数据进行时序离散化,提取不同天数中同一小时的特征数据构成特征矩阵;
(3)对数据进行规范化、调整模型数据集划分比例、阈值参数,进行多组对比实验,完成参数调优;
(4)使用NGBoost算法对离散化后的二维特征矩阵进行训练和验证;
(5)输出目标站点未来一天的小时级PM2.5浓度预测结果。
2.根据权利要求1所述的基于NGBoost算法的PM2.5浓度长时间序列预测方法,其特征在于,所述步骤(1)中,进行数据预处理包括:
(1)利用Isolation Forest算法剔除总数据集中的异常值;首先将空气污染物浓度小于0的数据转换为空值,采用Isolation Forest算法,将样本随机切分成若干个树;通过随机采样数据对每棵树进行训练,进而保证每棵树的方差达到运行者要求;最后利用如下公式计算Z中所有样本点的异常值评分矩阵SC,其中SC={sc00,sc01,sc02...scxy},x=12,y=α;
其中E[h(zij)]为zij在多棵树中路径长度的期望值;c(n)是包含n个样本数据集的树平均路径长度,用来标准化记录zij的路径长度;H(*)为调和数,ξ为欧拉常数;
(2)计算PM10浓度、NO2浓度、CO浓度、O3浓度、SO2浓度、温度、气压、相对湿度、风向、风速特征序列与PM2.5浓度序列的斯皮尔曼相关性系数,选择与PM2.5相关性强的因素作为输入模型的特征;首先利用如下公式计算任意两个特征fi、fj之间的相关性rij:
其中n表示样本的数量和,α为从0开始的索引最后一行的行数,dk表示两个特征数据集合中数据次序的差值,Z′i和Z′j为分别为数据集Z′中第i个特征和第j个特征对应的数值列;
随后设检查PM2.5浓度和其他特征的相关性系数最小阈值为η,其他特征的相关性以及其他特征之间的相关性系数最大阈值为θ;当1≤j≤10或2≤i,j≤10∧i≠j时,则删除第j个特征对应的数值列Zj,不作为后续模型的输入数据,其他数据列保持不变;依照以上操作最终得到模型的输入数据集Zinput;
(3)由筛选得到的特征序列构建目标站点的三维数据矩阵Zinput。
3.根据权利要求1所述的基于NGBoost算法的PM2.5浓度长时间序列预测方法,其特征在于,所述步骤(2)中,进行数据离散化包括:
随后时序离散化训练集数据;首先将训练集中数据,按照时间顺序排列;按照时刻分组,取出训练集中不同天数同一时刻的特征数据并将利用其组成24个二维数据矩阵;设第i小时的数据mi∈MT×F,其中T代表了训练集包含的天数且T≤d,L代表了预处理后剩余的特征数量;由此可以得到三维数据矩阵MH×T×F,其中H=24代表了一天中的24小时;随后取出PM2.5浓度对应的数据设为YH×T作为模型的标签,设第i天第j小时的标签数据yij∈Y;随后将剩余的数据矩阵M′H×T×(F-1)设为即将入模的三维特征矩阵。
4.根据权利要求1所述的基于NGBoost算法的PM2.5浓度长时间序列预测方法,其特征在于,所述步骤(3)中,进行参数调优包括:
(1)数据规范化;为了消除不同特征变量见量纲的相互影响,对数据进行规范化处理;设映射区间为[a,1],m′ijk∈MH×T×F,利用如下公式进行数据最大-最小规范化:
设置a分别等于-1、0进行实验,通过比对实验结果得到能使模型表现最佳的映射区间;
(2)数据集划分比例选择;设定训练集和测试集的比例为(6∶4)、(7:3)、(8:2)、(9:1)进行对比实验,通过实验结果选出最优的划分比例;
(3)阈值大小选择;选择不同的阈值来降低模型预测的不准确性,设阈值范围为[0.75,0.9],以0.01的步长遍历搜索,通过实验结果找到能使模型表现最优的阈值;
(4)以上(a)—(c)的对比实验中,每一次调整模型参数时,均在数据集中进行十次随机采样;利用采样后的十组数据,在相同模型参数的条件下训练模型;十次训练得到的预测性能值取平均作为该模型参数的最终预测性能。
5.根据权利要求1所述的基于NGBoost算法的PM2.5浓度长时间序列预测方法,其特征在于,所述步骤(4)中,使用NGBoost模型训练参数调优后的模型包括:
(1)选择合适的评分规则;评分规则以预测的概率分布P和一个观察值y作为输入,并且需要满足如下公式:
其中S为评分结果,Q为结果y的真实分布,P为不同于Q的其他分布;设参数θ为输入M'T×(L-1),则Pθ代表了参数的概率分布;选用极大似然估计法L作为评分规则,评分计算公式如下:
L(θ,y)=-logPθ(y)#(5)
(2)定义广义自然梯度;首先根据我们选用的极大似然估计法方法,需要计算Kullback-Leibler散度;根据公式(5)中的极大似然估计法中评分L的计算方法,得到Kullback-Leibler散度的计算公式如下:
随后计算费希尔信息量ΓL,公式如下:
最后依据公式(9)中广义自然梯度定义,定义极大似然估计评分规则下对应的广义自然梯度,得到的结果如下:
(3)使用NGBoost算法对未来一天PM2.5浓度进行预测;首先将步骤三中得到的三维特征矩阵M′H×T×(F-1)和标签数据YH×T进行循环遍历,每次只选取所有天数中第i小时的特征和标签数据,即 和随后计算初始化参数θ0,计算公式如下:
其中随后构建U个基学习器f,设当前循环为第u个学习器中第k天的数据,每个学习器学习结果都基于前一阶段学习器集合的参数梯度选用浅层决策树作为基学习器,参数梯度的计算方式参考公式(10);随后拟合参数梯度,利用如下公式得到学习器的缩放因子φu:
θuk=θ(u-1)k-r(φu·fu(xk))#(13)
其中r为学习率,要求u≥0才进行公式(13)的计算;当所有天数和基学习器数量遍历结束之后,得到第T+1天中第i小时的PM2.5浓度预测值;最后等待24小时的数据全部遍历结束之后,得到第T+1天全天的PM2.5浓度预测值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210268175.5A CN114611399A (zh) | 2022-03-17 | 2022-03-17 | 一种基于NGBoost算法的PM2.5浓度长时间序列预测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210268175.5A CN114611399A (zh) | 2022-03-17 | 2022-03-17 | 一种基于NGBoost算法的PM2.5浓度长时间序列预测方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114611399A true CN114611399A (zh) | 2022-06-10 |
Family
ID=81865871
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210268175.5A Pending CN114611399A (zh) | 2022-03-17 | 2022-03-17 | 一种基于NGBoost算法的PM2.5浓度长时间序列预测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114611399A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115453064A (zh) * | 2022-09-22 | 2022-12-09 | 山东大学 | 一种细颗粒物空气污染成因分析方法及系统 |
-
2022
- 2022-03-17 CN CN202210268175.5A patent/CN114611399A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115453064A (zh) * | 2022-09-22 | 2022-12-09 | 山东大学 | 一种细颗粒物空气污染成因分析方法及系统 |
CN115453064B (zh) * | 2022-09-22 | 2023-09-05 | 山东大学 | 一种细颗粒物空气污染成因分析方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110503245B (zh) | 一种机场航班大面积延误风险的预测方法 | |
CN109117883B (zh) | 基于长短时记忆网络的sar影像海冰分类方法及系统 | |
KR102172925B1 (ko) | 딥러닝 기반 기후 변화 예측 시스템의 동작 방법 | |
CN111027629B (zh) | 基于改进随机森林的配电网故障停电率预测方法及系统 | |
Shah et al. | Rainfall prediction: Accuracy enhancement using machine learning and forecasting techniques | |
CN107292417B (zh) | 基于重污染序列案例库的区域重污染判别预报方法及装置 | |
Singh et al. | Weather forecasting using machine learning techniques | |
CN109063983B (zh) | 一种基于社交媒体数据的自然灾害损失实时评估方法 | |
CN111506637A (zh) | 一种基于kpi指标的多维异常检测方法、装置及存储介质 | |
CN114611399A (zh) | 一种基于NGBoost算法的PM2.5浓度长时间序列预测方法 | |
Abdellaoui et al. | Deep multi-stations weather forecasting: explainable recurrent convolutional neural networks | |
Abdulraheem et al. | Weather prediction performance evaluation on selected machine learning algorithms | |
CN114021627A (zh) | 一种融合lstm与场景规则知识的异常轨迹检测方法及装置 | |
CN113836808A (zh) | 一种基于重污染特征约束的pm2.5深度学习预测方法 | |
CN113128769A (zh) | 基于深度学习的智能航班延误预测方法 | |
CN117332815A (zh) | 一种工业园区大气污染的预测方法及预测预警系统 | |
CN114943290B (zh) | 一种基于多源数据融合分析的生物入侵识别方法 | |
CN115858763A (zh) | 多模态数据融合的城管事件分析方法及其应用 | |
CN115630732A (zh) | 一种面向城市运营的企业迁移大数据监测预警方法及装置 | |
CN113743453A (zh) | 一种基于随机森林的人口数量预测方法 | |
CN114841412A (zh) | 一种海参生长水质中酸碱度的预测方法 | |
CN114741972A (zh) | 一种空气污染物浓度季节性预测模型的构建方法 | |
Li et al. | Study on most important factor and most vulnerable location for a forest fire case using various machine learning techniques | |
Yang et al. | A data-driven method for flight time estimation based on air traffic pattern identification and prediction | |
CN116821799B (zh) | 基于gru-dnn的地灾预警数据分类方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |