logo资料库

基于随机森林回归分析的PM2.5浓度预测模型.pdf

第1页 / 共10页
第2页 / 共10页
第3页 / 共10页
第4页 / 共10页
第5页 / 共10页
第6页 / 共10页
第7页 / 共10页
第8页 / 共10页
资料共10页,剩余部分请下载后查看
08-17211-\í
研究与开发 基于随机森林回归分析的 PM2.5 浓度预测模型 杜续 1,冯景瑜 1,2,吕少卿 1,2,石薇 1 (1. 西安邮电大学通信与信息工程学院,陕西 西安 710121; 2. 西安邮电大学陕西省信息通信网络及安全重点实验室,陕西 西安 710121) 摘 要:针对神经网络算法在当前 PM2.5 浓度预测领域存在的易过拟合、网络结构复杂、学习效率低等问题, 引入 RFR(random forest regression,随机森林回归)算法,分析气象条件、大气污染物浓度和季节所包含的 22 项特征因素,通过调整参数的最优组合,设计出一种新的 PM2.5 浓度预测模型——RFRP 模型。同时,收 集了西安市 2013—2016 年的历史气象数据,进行模型的有效性实验分析。实验结果表明,RFRP 模型不仅能有 效预测 PM2.5 浓度,还能在不影响预测精度的同时,较好地提升模型的运行效率,其平均运行时间为 0.281 s, 约为 BP-NN(back propagation neural network,BP 神经网络)预测模型的 5.88%。 关键词:PM2.5 浓度预测;随机森林回归分析;BP 神经网络 中图分类号:TP391 文献标识码:A doi: 10.11959/j.issn.1000−0801.2017211 PM2.5 concentration prediction model based on random forest regression analysis DU Xu1, FENG Jingyu1,2, LV Shaoqing1,2, SHI Wei1 1. Institute of Communication Engineering, Xi’an University of Posts and Telecommunications, Xi’an 710121, China 2. Shaanxi Key Laboratory of Information Communication Network and Security, Xi’an University of Posts and Telecommunica- tions, Xi’an 710121, China Abstract: The random foreat regression algorithm was introduced to solve the shortcomings of neural network in predicting the PM2.5 concentration, such as over-fitting, complex network structure, low learning efficiency. A novel PM2.5 concentration prediction model named RFRP was designed by analyzing the 22 characteristic factors includ- ing the meteorological conditions, the concentration of air pollutants and the season. The historical meteorological data of Xi’an in 2013—2016 were collected to verify the effectiveness of the model. The experimental results show that the proposed model can not only predict the PM2.5 concentration effectively, but also improve the operating effi- ciency of the model without affecting the prediction accuracy. The average run time of the proposed model is 0.281 s, which is about 5.58% of the neural network prediction model. Key words: PM2.5 concentration prediction, random forest regression analysis, back propagation neural network 收稿日期:2017−03−30;修回日期:2017−06−29 基金项目:国家自然科学基金资助项目(No.61301091);陕西省工业公关计划基金资助项目(No.2016GY-113);陕西省教育厅 专项科研计划基金资助项目(No.15JK1671);西安邮电大学“西邮新星”团队支持计划基金资助项目(No.2015-01) Foundation Items: The National Natural Science Foundation of China (No.61301091), The Industrial Science and Technology Project of Shaanxi Province (No.2016GY-113), The Natural Science Foundation of Education Department of Shaanxi Province (No.15JK1671), The New Star Team of Xi’an University of Posts & Telecommunications (No.2015-01) 2017211-1
·67· 1 引言 2013 年至今,以 PM2.5[1](可入肺颗粒物) 为首要污染物的雾霾问题在我国愈发严峻,不 仅严重威胁着人们的日常生活与健康以及地球 的气候系统,还造成了我国经济利益的巨大损 失。美国环境流行病学教授 Schwart 研究发现 PM2.5 的日平均浓度每增加 10 μg/m3,当日心 肺疾病的病死率会提高 1.5%[2]。中国社会科学 院的相关专家研究证明,随着 GDP 的不断增 加,PM2.5 浓度持续呈上升状态;能源消耗结 构中煤炭消耗所占比每升高 1%,PM2.5 浓度 会增加 0.064%或 0.052%[3]。PM2.5 已经成为 我 国 的 环 境 公 害 。 因 此 , 科 学 、 准 确 地 预 测 PM2.5 浓 度 , 提 前 做 好 预 防 措 施 , 对 于 降 低 PM2.5 对国家和人民造成的危害有着十分重要 的现实意义。 针对 PM2.5 浓度预测问题,国内外学者做 了大量研究工作,提出了一系列模型。在预测 方法方面,主要有线性回归[4]、时间序列[5]、 灰色模型[6]、支持向量机[7]、贝叶斯[8]等传统方 法以及近期以神经网络(neural network,NN) 算法[9,10]为主导的人工智能方法。传统方法具 有结构简单易识别、模型解释能力强等特点, 但 PM2.5 的形成属于一个复杂的物理变化过 程,具有明显的时空分异和非线性特征,因此 传统方法很难反映实际情况。目前,神经网络 算法具有较强的非线性和自我学习能力,已广 泛应用于空气污染预测领域,主要是通过建立 单个预测模型来预测 PM2.5 浓度。比如,参考 文献[11]采用模糊神经网络,将外部气象条件 作为特征,具有较好的实时性,但未考虑其他 大气污染物对 PM2.5 浓度的影响;参考文献[12] 采用模糊神经网络,只考虑了大气污染物浓度 而忽略了气象条件;参考文献[13]对气象条件 和大气污染物浓度进行逐步回归,预测结果比 电信科学 2017 年第 7 期 较合理,但回归模型较为简单,导致精确度不 高。但是,神经网络算法对于高维特征的预测 问题具有收敛速度慢、易造成过拟合的问题, 且需要大量调整参数以确定网络结构。 鉴于此,本文利用随机森林回归(random forest regression,RFR)算法可以同时处理连续、 离散属性,运行效率高,具有较强的顽健性、抗 噪声、防止过拟合等优点,从预测方法和特征选 取两个方面寻求创新,采用风力、降水、温度等 气象条件,CO、NO、SO2 等大气污染物浓度和季 节以及前一天的 PM2.5 浓度等 22 项特征作为输入 变量,结合集成思想,设计出一种新的 PM2.5 浓 度预测模型——RFRP 模型。 2 RFR 算法 RFR 算法是由 Leo Breiman 和 Adele Cutler[14] 于2001 年共同提出的一种基于决策树的集成学习 算法。RFR 算法是机器学习算法中精确度较高的 算法,能克服单个预测或分类模型的缺点,被广 泛应用于经济、医学、生物等领域,但在环境领 域应用较少。 2.1 原理 t , t , T ) } { 1,2, , θ = 定义 1[14] 随机森林回归算法是由一组回归 ··· 构成的组合模型。 决策子树 ( h x 其中 θt 是服从独立同分布的随机变量,x 表示自 变量,T 表示决策树的个数。利用集成学习的思 想取各决策子树 ( h X θ 的均值作为回归预测 结果: } ) { , t ( ) h x { ( h x , θ t } ) (1) T 1 = ∑ T ) 1 = t t , h x θ 为基于 x 和θ的输出。 其中, ( 为了克服决策树模型精度不高、易出现过拟 合的问题,RFR 引入了 bagging(套袋)[15]和随机 子空间[16]的思想。 (1)bagging 思想 从原始样本中有放回地随机抽取多个训练样 2017211-2
研究与开发 本,且每个训练样本量等于原始样本量,并对每 个训练样本分别构建回归决策子树 T,最后取各 棵树的平均值作为最终预测结果。 假设 S 为原始样本,N 为 S 中的样本数,则 S 中每个样本没有被抽取的概率为 定理 1 当 N → ∞ 时: N 1 − 1 N 。 1 − N 1 N ≈ ≈ 1 e 0.368 (2) 式(2)表明,每次约有 36.8%的样本未被 抽 取 , 称 为 OOB(out-of-bag, 袋 外 数 据 )。 bagging 思想不仅可以使用随机化建立更多的 回归决策子树,同时还保证了子树与子树之间 的独立性。 (2)随机子空间思想 在构建回归决策子树的过程中,每个分裂节 点都从总的特征空间中随机抽取特征子空间 F 作 为节点的候选特征集,并从中选取最优特征进行 分裂。该方法既保证了树与树之间的节点以及每 棵树节点之间特征子集都不同,又保证了树的独 立性和多样性,进而提高了 RFR 节点分裂的随 机性。 在 RFR 中,回归决策子树 T 和特征子空间中 的特征个数 f 决定着模型最终的预测性能。 2.2 泛化误差 泛化误差反映了模型对训练集以外的数据的 预测能力,是判断模型好坏的重要指标。 定义 2 假 设 从 独 立 同 分 布 的 随 机 向 量 (X,Y)中 抽 取 训 练 集 , 形 成 的 训 练 集 之 间 各 自 独 立 。 则 输 出 h(X) 的 均 方 泛 化 误 差 为 ,X YE ( 当回归决策树足够多时,根据强大数定律, ( Y h X 。 )2 − ) 且 ( h X t ) = ( h X θ t , ) ,可得到如下定理。 定理 2[14] 当 t → ∞ 时 , 均 方 泛 化 误 差 收 敛 于 : ·68· ) , θ 2 ) = ∗ PE b ( ( Y E h X − θ E X Y , ( ( Y h X − , θ t ) 2 ) → E X Y , (3) 其中, tθ 为第 t 棵回归决策树子的随机变量, Eθ为数学期望。式(3)右边即 RFR 的泛化误差 bPE ∗ 。 定理 2 表明,RFR 随着回归决策子树 t 的增 加会逐步收敛,不会出现过拟合的问题,但 bPE ∗ 最 终会趋于一个稳定值。 定义 3 每一棵回归决策树 ( h X θ 的平均泛 , ) 化误差定义为: PE c ∗ = E E θ X Y , ( ( Y h X − ) , θ )2 (4) 定理 3[14] 假设对于所有的随机变量θ,回 , ) EY E h X θ = ( , X 归决策子树都是无偏的,即 则有: ∗ PE c 其中,ρ为残差 PEρ∗ ≤ b ) ( Y h X θ , 相关系数,θ和θ′ 相互独立。 2.3 算法流程 − 和 (5) ) 的 Y h X θ′ − , ( 步骤 1 利用 bagging 思想,随机产生样本 子集。 步骤 2 利用随机子空间思想,随机抽取 f 个 特征,进行节点分裂,构建单棵回归决策子树。 步骤 3 重复步骤 1、步骤 2,构建 T 棵回归 决策子树,每棵树自由生长,不进行剪枝,形成 森林。 步骤 4 T 棵决策子树的预测值取平均,作为 最终结果。 3 基于 RFR 算法的 PM2.5 浓度预测模型 设计 基于 RFR 算法建立 PM2.5 浓度预测模型(以 下简称 RFRP 模型)的整体设计思想是:先确定与 PM2.5 浓度相关的特征因素,并收集整理数据集, 应用 RFR 算法建立模型,然后通过调整参数的最 优组合,不断优化模型。其设计流程如图 1 所示。 2017211-3
·69· 电信科学 2017 年第 7 期 预测。 3.1 特征选取与数据预处理 特征选取涉及影响 PM2.5 浓度的不同要素, 选择出相关的、信息量大的、有差异的、独立的 影响特征,是建立预测模型中关键的一步。特征 选取是将原始数据转化为特征,以便更好地表示 模型处理的实际问题,提升对于未知数据的准确 性。模型可以通过优质特征描述的数据的固有结 构进行很好的学习,即使不是最优的模型,优质 的特征也可以得到较好的效果。通过特征选择, 也可以提高模型的运行效率,使模型泛化能力更 强,减少过拟合。 经过充分的调研和实验分析,选取气象条件、 大气污染物浓度和季节所包含的22 项因素为特征 分析对象。另外,考虑到气象条件和大气污染物 浓度存在的时延,前日的气象条件和大气污染物 会对当日的 PM2.5 浓度产生影响,因此,需要将 前日的数据作为一项重要的指标。 对天气后报网(http://www.tianqihoubao.com) 和天气网(http://www.tianqi.com)上的公开数据 进行爬取,整理出西安市 2013 年 10 月 29 日— 2016 年 12 月 28 日的历史数据,共 1 156 条。其 中,随机选取其中的 75%作为训练集建立模型, 剩余的 25%用来测试模型的准确率。表 1 列出了 选取出的具体特征因素。 图 1 RFRP 模型的设计流程 根据图 1,可将其主要设计步骤总结如下。 步骤 1 选取相关特征 1f , nf ,收集数 2f ,…, 据并进行预处理,得到建模数据。 步骤 2 将建模数据作为 RFR 算法的输入, 训练得到 RFRP 模型。 步骤 3 调整参数,优化模型。 步骤4 应用优化后的模型对新的数据进行 特征类型 气象条件 大气污染物 季节 具体特征 当(前)天风力 当(前)天风向 当(前)天最高温 当(前)天最低温 当(前)天天气 当(前)天 O3 当(前)天 NO2 当(前)天 CO 当(前)天 SO2 当(前)天 PM10 前天 PM2.5 季节 表 1 特征因素选取 符号 Wind_pow_1(2) Wind_dir_1(2) Tem_high_1(2) Tem_low_1(2) Weather_1(2) O3_1(2) NO2_1(2) CO_1(2) SO2_1(2) PM10_1(2) PM2.5_2 Mon 2017211-4 取值 [1,2,3,4,5] [1,2,3,4,5,6,7,8,9] real real [1,2,3,4] real real real real real real [1,2,3,4]
研究与开发 ·70· 如表 1 所示,选取气象条件、大气污染物浓 度和季节 3 个方面共 22 个相关特征因素。其中温 度和各大气污染物浓度属于数值型特征用“real” 表示,其余均属于非数值型。在处理非数据值型 特征时,本文对其进行了量化:将非数值型特征 转化为离散的数值型特征,并放入“[]”,以此表 示 取 值 范 围 。 如 “Wind_pow_1(2) ” 的 取 值 为 “[1,2,3,4,5]”,分别代表 5 种风力类型:微风、 1~2 级、3 级、3~4 级、4~5 级;“Weather_1(2)” 的取值为“[1,2,3,4,]”,代表 4 种天气类型:晴、 多云、霾、降水。 对原始数据进行预处理,形成一个 22×N 的 矩阵: A = a 1 a 2 f 1 f 1 … Nf 1 a a 1 a 2 f 2 f 2 … … a 1 a 2 f 22 f 22 … 〓 … a … Nf 22 a Nf 2 (6) 其中,每一行代表同一时间各个相关特征的 实测值;每一列代表同一相关特征的样本数量, f 用 N 表示; 1 f f… 代表选取的风力、风向等 , 2 22 项相关特征。 22 , , 由于 RFR 算法对数据的单位和量纲并不 敏感以及两大随机特性,所以不需要对整理好 的数据进行归一化处理和特征选择。在 BP-NN 算法中,不同属性单位的数据不仅影响神经网 络 的 输 出 精 度 , 还 降 低 了 程 序 运 行 的 收 敛 速 度,所以需要将数据进行归一化处理,保证数 据值在同一区间,避免不同特征数量级差别较 大所造成的影响。与 BP-NN 算法相比,RFR 算法大大简化了数据处理过程,提高了数据处 理效率。 3.2 RFRP 模型的实现 RFRP 模型的实现流程如图 2 所示。 在 PM2.5 预测模型的实现过程中,RFR 算法 作为一种集成学习算法,应用并行方式建立许多 小而薄弱的 PM2.5 浓度预测模型,各子模型独立 图 2 基于 RFR 算法的 PM2.5 浓度预测模型的实现流程 地学习并预测出 PM2.5 浓度值,最后再将所有预 测值取平均作为最终的预测结果。因此,应用基 于 RFR 算法建立的模型,其预测结果优于任何一个 单预测模型做出的预测。 原始数据经过预处理后,得到矩阵 A,直接 作为 RFR 算法的输入。利用 Bootstrap 重采样随 机生成样本子集,同时产生 OOB 数据。在树的每 个节点随机选择 f 个特征进行分裂(f
·71· 电信科学 2017 年第 7 期 Function RandomForestRegression(S,F) //定 义随机森林回归函数 for i from 1 to T do: S(i) ← randomly split S // 对 S 进 行 Bootstrap 重采样随机生成样本子集 hi ← Subtree(S(i),F) //调用 Subtree 函数 end for return hi end Function Function Subtree(S,F) //定义建立子树函数 at each node: //在每个节点操作 f ← randomly select features from F //从 F 中随机选取 f 个特征(f60 时,接近收敛。 同时,随着 t 值的增加,模型的训练时间也 在直线上升。综合误差和效率两个方面考虑,选 取最优值 t=60。OOB 误差和模型训练时间随 t 的 变化情况如图 3 所示。 其次固定 t=60,观察 OOB 误差和模型运行时 间随 f 的变化情况,如图 4 所示。由图 4 可知,随 着 f 增加,模型的训练时间总体呈上升趋势;而 OOB 误差先迅速下降,之后下降缓慢。在 f>18 后, 模型 OOB 误差变化幅度很小,但其训练时间上升 幅度较大。因此,选择 f=18 为最优。综合上述实 验,最终选定模型的最优参数组合为 t=60,f=18。 式(7)、式(8)中, iQ 为真实值; ˆ 测值; cQ 为真实值的均值;N 为样本数。 iQ 为预 (2)模型效率 指模型的训练时间。训练时间越小,说明模 型预测效率越高。 3.4 参数优化 影响 RFRP 模型预测能力的参数主要有两个: 2017211-6
研究与开发 ·72· 由表 2 可以看出,无论是训练集还是测试集, RFRP 模型的确定性系数 2R 均达到 90%以上,说 明模型具备良好的学习能力与泛化能力;就误差 而言,训练集和测试集上的误差分别为 0.165 和 0.159,在可接受的范围内。此外,RFRP 模型在 测试集上的各项指标均未远远超过训练集上的各 项指标,说明模型没有出现过拟合,泛化性能较 好,能够有效地预测 PM2.5 的浓度。测试集上的 预测结果如图 5 所示。 图 3 OOB 误差和模型训练时间随回归决策子数 t 的变化情况 图 4 OOB 误差和模型训练时间随特征选择个数 f 的变化情况 4 实验结果分析 本文在 Python 环境下进行实验。实验设备 配置:操作系统 Ubuntu16.04 LTS,处理器 Intel Core i7-4790 CPU @ 3.60 GHz×8,内存 16 GB, 硬盘 1 TB。 在上述实验环境配置下,采用构造回归决策 子树为 60、特征子空间为 18 的最优参数组合对训 练集进行训练,建立 PM2.5 浓度预测模型。该模 型反映了 PM2.5 浓度与各影响因素之间复杂的非 线性关系。运用该模型对测试集进行预测,并计 算模型的精度和效率,结果见表 2。 表 2 RFRP 模型性能分析 数据集 训练集 测试集 MRE 0.165 0.159 2R 0.942 0.934 训练时间/s 0.283 0.281 图 5 RFRP 模型在测试集上的预测结果 5 算法对比分析 为进一步验证 RFRP 模型在 PM2.5 浓度预 测问题上的优劣,综合评价模型性能,本文应 用参考文献[18]描述的 BP-NN 算法预测模型进 行理论分析和实验对比,并采用相同数据集建 立 PM2.5 浓度预测模型对测试集上的数据进行 预测。 5.1 原理方法对比 随机森林是以单棵决策树作为基本分类预 测器的一个集成学习模型,结合了集成学习理 论和随机子空间的两大随机思想,分别用于随 机选取训练样本和随机选取分裂属性值。同时 克服了决策树易过拟合的缺点,对于噪声和异 常值不敏感,具有较好的顽健性,是一种有效 的分类预测方法,具有较高的精度和较强的泛 化能力。参考文献[14]针对随机森林的优势给出 了数学理论上的推理证明。随机森林的收敛定理 2017211-7
·73· (convergence theorem),即式(3)证明了随机森 林 不 会 出 现 过 拟 合 问 题 ; 泛 化 误 差 界 (generalization error bound),即式(5)给出了随 机森林预测的一个理论上界;袋外估计(out-of-bag estimation),即式(2)提出了一种利用袋外数据 估计泛化误差界的 OOB 误差估计方法,该方法效 率较高,其结果近似于需要大量计算的 K 折交叉 验证。 与随机森林相比,BP-NN 也适用于求解内部 机制较复杂的非线性问题。BP-NN 是一种按误差 逆传播算法训练的多层前馈网络,基本思想是根 据梯度下降法,使得网络的实际输出和期望输出 均方差得到最小,拓扑结构包括输入层(input layer)、隐含层(hidden layer)、输出层(output layer)[19],分为信息正向传播和误差反向传播。 通过实际输出与期望输出之间的误差来调整各层 连接权值和各节点之间的阈值,调整参数的过程 是周而复始的,一直到满足终止条件为止,这个 过程也是 BP-NN 的学习训练过程。 图 6 是本文设计的 3 层 BP-NN 预测模型的网 络结构。 电信科学 2017 年第 7 期 (2)局部最小化[21] 从数学角度分析,BP-NN 属于一种局部搜索 的优化方法。 (3)网络结构复杂难定[21] 关于网络结构的选择,并没有权威的理论指 导,往往根据经验选择。而网络结构的选择会直 接影响网络是否收敛,出现过拟合、容错性下降 等问题。 (4)数据需要进行归一化处理[22,23] BP-NN 的隐含层一般采用的是 Sigmoid 函 数,根据 Sigmoid 函数特点,需要将输入向量进 行归一化后才能作为网络的输入量。目的在于提 高收敛速度和灵敏性及有效避开函数的饱和区。 5.2 预测结果对比 与 RFR 算法不同,BP-NN 算法需要对数据进 行归一化处理。本文采用隐含层为 Logistic 激活 函数的 BP-NN,网络结构为 22-10-1,即输入层 节点数为 22,隐含层节点数为 10,输出层节点 数为 1。此外,本实验将与 LR(linear regression, 线性回归)、SVM(support vector machine,支持 向量机)两个经典算法进行比较。4 个模型预测 结果对比见表 3。 表 3 RFRP 模型和 BP-NN 模型预测结果对比 模型 RFRP BP-NN 训练时间/s 0.281 4.766 0.108 0.132 MRE 0.159 0.161 0.322 0.216 2R 0.934 0.971 0.827 0.893 LR SVM 图 6 本文设计的 BP-NN 预测模型结构 BP-NN 具有大规模并行、自学习、自适应、 高容错、泛化能力强等优点,但随着应用领域的 扩大,BP-NN 也暴露出了一些缺点和不足。 (1)收敛速度慢[20] BP-NN 本质为梯度下降法,优化的目标函数 较复杂,会出现“锯齿形”现象。 由表 3 可知,在模型精度方面,RFRP 和 BP-NN 表现明显优于 LR 和 SVM。而 RFRP 和 BP-NN 两 个模型相差不多:RFRP 的 MRE 误差为 0.159,相 比于 BP-NN 的 0.161,降低了 0.002,而确定性系数 还略低于 BP-NN 的 0.971。但在模型的运行效率方 面,RFRP、LR、SVM 的模型训练时间均远少于 BP-NN 的 4.766 s。 综合比较预测结果,RFRP 和 BP-NN 两个模 型在 PM2.5 浓度预测问题上的效果优于 LR、 2017211-8
分享到:
收藏