CN113096388B - 一种基于梯度提升决策树的短时交通流量预测方法 - Google Patents
一种基于梯度提升决策树的短时交通流量预测方法 Download PDFInfo
- Publication number
- CN113096388B CN113096388B CN202110303409.0A CN202110303409A CN113096388B CN 113096388 B CN113096388 B CN 113096388B CN 202110303409 A CN202110303409 A CN 202110303409A CN 113096388 B CN113096388 B CN 113096388B
- Authority
- CN
- China
- Prior art keywords
- data
- model
- training
- layer
- vehicle flow
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G08—SIGNALLING
- G08G—TRAFFIC CONTROL SYSTEMS
- G08G1/00—Traffic control systems for road vehicles
- G08G1/01—Detecting movement of traffic to be counted or controlled
- G08G1/0104—Measuring and analyzing of parameters relative to traffic conditions
- G08G1/0125—Traffic data processing
- G08G1/0129—Traffic data processing for creating historical data or processing based on historical data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/243—Classification techniques relating to the number of classes
- G06F18/24323—Tree-organised classifiers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G08—SIGNALLING
- G08G—TRAFFIC CONTROL SYSTEMS
- G08G1/00—Traffic control systems for road vehicles
- G08G1/01—Detecting movement of traffic to be counted or controlled
- G08G1/056—Detecting movement of traffic to be counted or controlled with provision for distinguishing direction of travel
-
- G—PHYSICS
- G08—SIGNALLING
- G08G—TRAFFIC CONTROL SYSTEMS
- G08G1/00—Traffic control systems for road vehicles
- G08G1/065—Traffic control systems for road vehicles by counting the vehicles in a section of the road or in a parking area, i.e. comparing incoming count with outgoing count
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Molecular Biology (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Chemical & Material Sciences (AREA)
- Analytical Chemistry (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Traffic Control Systems (AREA)
Abstract
本发明公开了一种基于梯度提升决策树的短时交通流量预测方法,所述建立模型的方法,包括:1)对原始高速公路收费站交通流量数据进行预处理;2)对数据进行数据分析和数据聚集(数据切片)、数据特征提取操作;3)构建梯度决策树模型,将数据输入模型并开展训练工作;4)将模型移植至分布式平台上,进行切分点抽样统计优化及逐层训练优化调整;5)构建三层Stacking模型进行多模型融合后对数据进行进一步训练。本发明设计的相关方法具有快速提取车辆流量特征的功能,能够在短时间内对车辆流量进行预测。
Description
技术领域
本发明是一种基于梯度提升决策树的短时交通流量预测方法,主要用于短时交通流量的预测等,属于道路交通预测技术领域。
背景技术
短时交通流预测间隔较小,通常为5~15分钟,主要用于交通流量、交通流速度和交通流密度这三个物理量进行总结分析。短时交通流预测在智能交通信息系统中扮演者一个不可缺少的角色,具有很大的研究价值,逐渐发展成为当今交通领域内探究的一个热点。道路交通内在的时变性、非线性和高度不确定性等复杂的特性,为准时、实时交通流预测带来了很大的困难。近年来,国内外研究学者对城市道路交通展开了深入的研究,并结合统计学理论,数学公式及人工智能技术等制定出了相关的短时交通流预测方法,根据所运用的不同原理方法,主要有以下几类:线性理论方法的预测、非线性理论方法的预测、组合原理方法的预测,及其它方法的预测等。
(1)基于线性理论方法的交通流短时预测,此类方法主要按道路交通流量周期变化,通过对交通流历史数据的总结、分析及推断,考虑因素较为单一、计算简单。其典型的方法有:历史平均模型,其用来进行交通流短时预测时,实验过程简单且速率快,但预测准确度低,不能有效克服出现的随机干扰因素,如异常天气及交通事故等;时间序列模型,其建模简单,但要获得理想的预测精度,需要保证交通流数据充足和交通量的周期性需平稳波动;自回归滑动平均模型,自回归滑动平均模型是将自回归模型与滑动平均模型进行相结合而成的,其计算简单、适用于平稳序列,易于实现的特点使得在一段时间内得到了大量的运用,但也存在样本数据需求多、预测模型局限性强,鲁棒性较差的缺点。
(2)基于非线性理论方法针对交通流高度非线性与变化波动性强的特性显现出了较好的预测能力。非线性理论预测方法主要是根据现有的历史交通流数据集进行不断学习,并进行归纳总结,不需要明确的数学公式,通过自身总结的规律来实现交通流预测。其典型的方法有:非参数回归预测方法、支持向量回归预测方法、神经网络预测方法等,这些经典的方法更好的诠释了对非线性问题处理的优势所在。但是,该类预测方法通常会假定交通流中的相关的影响因素及其关系都隐藏于历史数据中,需要大量的样本数据集进行处理分析。支持向量机(Support Vector Machine SVM)是一类基于结构风险最小化的统计学习方法,对模式识别中的数据分类有着良好的处理效果,解决解决样本数据小的问题时有着良好的适应性。在处理交通流预测中,在某种程度上预测精度能与某些神经网络进行媲美,因此近年来被得到了广泛的运用。但是,选用基于SVM的预测方法做预测时,其计算复杂度高、存储大,最主要原因在于二次规划的求解问题;同时,核函数与他相关参数的选取也会对最终的预测结果容易产生很大影响。神经网络是通过各个神经元之间的相互作用将大量信息处理单元按一定的规则相互连接而形成的信息网络,从而实现网络信息处理能力的快速处理,其不足主要体现在网络易产生局部极小值、初始值敏感、算法收敛速度慢、泛化能力弱等。
(3)基于组合原理的短时交通流预测是指根据不同的运用场景建立不同的数学统计预测模型,并运用不同的样本数据集来获取交通流的波动变化信息,进而实现更高的预测准确度。常见的预测方法结合方式有两类:第一类使用非线性方法对交通流样本数据进行聚类,然后再选用线性方法或非线性方法进行预测每一类数据,其常用方法有模糊神经网络方法;第二类则是使用非线性方法分解交通流样本数据,然后选用线性或非线性方法对分解后的数据进行预测,其常用有小波分析法及谱分析法等。最终的获取的预测结果则是根据不同预测方法的准确度,使用条件及使用度等分别进行赋予不同权值的来确定的。
(4)其它短时交通流预测方法。除了以上基于三种不同理论的交通流短时预测方法之外,研究者们还运用一些其他领域中运用较好的方法来对短时交通流进行预测。
发明内容
本发明的目的是针对高速公路收费口处真实车流数据,克服现阶段交通流量预测中存在的技术缺陷,提供一种基于梯度提升决策树的短时交通流量预测方法,包括:
1)对原始高速公路收费站交通流量数据进行预处理,直至达到能够对神经网络进行训练和测试的目的。
根据所述方法,其中步骤1)包括:
数据清理:伴随着数据采集方式的不断丰富,在数据采集过程中由于各种各样的原因会给原始数据带来多种脏数据,比如大量原始数据的丢失、数据处理错误、数据的格式不统一和系统记录错误等。本发明采用是的高速收费站车辆通过的原始数据,所以也需要对原始数据进行分析,进行数据的清洗,同时也会保证数据对后面算法建模的准确性。
本发明主要的数据清理分为以下两点:首先是数据处理错误,由于高速路收费站分别对应着车辆进入高速公路和离开高速公路,因此在进行交通流量预测时需要明确车辆行驶方向,在进行流量预测时分开进行预测。但在数据中,偶尔有因为系统问题将车辆行进方向标注错误的情况出现,因此需要按照高速收费站ID数据纠正这部分错误数据。其次是系统记录错误,相同的车辆在同时段同高速收费站出现次数理论上应该只有1次,但在实际过程中,高速卡口相机存在着对同一辆通过的车辆多次拍照的情况,因此需要对同一时段超过1次记录的数据进行剔除。具体数据处理错误类型参见附图1。
2)在对原始高速公路收费站交通流量数据预处理之后,对数据集进行分析,对数据规律有一个大致的了解和认识。
数据集的分析在车辆短时流量预测中起着举足轻重的作用,通过对汽车流量数据进行分析可以获知汽车流量变化的内在规律,因此在开展神经网络训练和学习之前开展一个正确的数据集分析往往能够起到事半功倍的效果。本发明方法所针对的数据是某区域高速收费站车辆历史流量数据,这里面只涉及到时间序列变化,不涉及到空间维度的移动。
根据所述方法,其中步骤2)包括:
本发明针高速收费站车辆流量数据,结合实际问题从时间属性和外部特征两方面进行分析与讨论。
本发明针对高速收费站车流数据首先在时间维度层面开展分析工作,本发明方法的目的是对高速收费口实现短期流量预测,其本质上是在时间维度上开展的预测工作,因此时间序列数据对预测结果往往能够起到决定性作用。因此本发明先对历史数据进行统计分析,从邻近性、周期性和趋势性三个属性入手考察车流量数据在时间维度上的依赖程度。
A.邻近性:对高速公路收费口一天的流量数据进行分析,考察在连续的时间区间范围内,车辆流量数据的变化。如果是循序渐进、不存在突变的情况,则说明车流数据较为正常;如果数据突变较多、存在断层现象,则在很大程度上说明高速车流存在异常情况。
B.周期性:对某一收费口连续一周的车辆流量数据进行分析,考察在连续的时间段内,车辆数据是否有较强的周期性,如果每天的车辆流量变化趋势都很相似,则说明流量数据较为正常。
C.趋势性:对某一区域连续几周的车辆流量数据间隔性采样进行分析,在间隔性为一周的时间段内,考察车辆流量数据的总体趋势。
除了可以从上述几个属性的角度对车辆流量数据进行分析外,还需要对外部事件给数据带来的变化进行分析。一般情况下,外部事件的影响要具体问题具体分析,在特定时间和特定区域都可能会存在不同的特定事件影响情况。例如在“黄金周”、小长假等特殊时间点,高速公路进出车流量将会发生明显变化;又或者如果收费站位于旅游景点区域,则在国家法定假日时段对车流量带来的影响也将会比较明显;除此之外,天气状况、突发交通事故、道路管制等外部事件均会对车辆流量带来一定程度的影响。
3)在对数据规律有大致的了解和认识后,对数据进行数据聚集(数据切片)操作。
对数据的聚集可以对大规模无规律的数据进行比较简单的分类,从而得到算法建模所需要的数据集合,然后可以根据聚集的数据直观的统计数据集的变化趋势,再根据数据集的变化趋势来安排所需要的实验和特征。这样的做法在数据处理中经常能够用到,使用这样的方法也有助于提升模型训练的速度、提高模型预测的准确率。
根据所述方法,其中步骤3)包括:
由于车辆流量数据属于时序数据,往往不同时间段有着不同的数据特征,因此本发明对车辆流量数据按照时间段进行划分,分别按照30分钟、20分钟和10分钟三个尺度对车辆流量数据进行切片划分,方便后续利用模型对数据特征进行提取和学习。
4)在完成数据聚集(数据切片)操作后,对数据进行特征提取操作。
根据所述方法,其中步骤4)包括:
梯度提升树是一种有监督的学习方法,因此需要大量带有数据标签的训练样本,本发明使用的数据集包含了高速路口全部收费窗口的流量数据。对于机器学习算法而言,每次都只针对一个收费口的流量进行预测,因此还需要从原始数据中提取大量的训练样本和测试样本。通过步骤2)中对数据集进行的分析可以知晓,流量预测会受到多种因素影响,同时也与时间序列紧密相关。具体而言,影响本发明流量情况的因素主要有时间依赖性和外部事件两类。在对切片数据进行构造的过程中,也主要是从这两方面对数据开展特征抽取的工作,从而拼接特征,构造训练样本。
时间特征提取:时间序列特征是影响车辆流量状况的最主要特征,这也使得不少相关研究单从时间序列角度入手对流量进行预测也能够取得一定的预测结果。在本发明中,使用以下三种操作对时间序列的特征进行提取:分别针对不同的邻近性、周期性和趋势性设置不同的提取周期和提取长度。
抽取外部特征:一般情况下,针对车流流量问题,往往包含天气因素、节假日因素、道路紧急状况因素等外部特征。而天气因素主要包括气候类型、温度、降水情况、风速等。在本发明中,没有相关数据提示,因此可以默认本发明中车辆流量不受外部因素影响或者外部因素带来的影响极小。
4)在完成数据特征提取操作后,对数据利用梯度决策树进行训练。
在机器学习领域,决策树算法具有结构简单、模型易于解释、训练过程快的优点。但是单棵决策树易因为表达能力有限带来过拟合问题,从而对短时交通流预测问题而言存在着准确率较低的问题。为了提高算法的表达能力和鲁棒性,将决策树模型和集成学习进行融合,从而获得梯度优化决策树与随机森林两类算法。因为前者预测准确率更高,因此本发明主要使用梯度优化决策树模型来开展预测工作。
根据所述方法,其中步骤4)包括:
梯度优化决策树模型如附图2所示,它的训练过程是线性的。图中T为真实值,第二棵树的目标是真实值T与第一棵树训练结果T1的残差T-T1,第三棵树训练优化的目标是真实值与第1、2棵树训练结果的残差T-T1-T2。模型的最终结果T′是将每一棵决策树的结果累加得到,如下式:
T′=T1+T2+T3
对梯度优化决策树进行基于梯度下降值进行优化,这种方法的主要思路为:每一次新模型的简历是在之前模型损失函数的梯度下降方向。损失函数是用来描述模型的误差大小,损失函数越大,则说明模型误差越大。如果模型能够使损失函数持续下降,则模型预测的准确率在不断提升。因此,如果让算法的每一步沿着损失函数下降最快的方向不断建立新模型,这样就能够使算法沿着下降最快的方向快速收敛。直到满足要求后,建立满足要求的若干个组合加权子模型,算法流程如下:
上述算法具体流程如下:
(1)Fk0(x)是一个N*K维的矩阵,其中N为车辆流量数据样本的数量,K为车辆流量特征的数量。该矩阵即为估计值矩阵,其初始值全部随机设定。
(2)进行M次循环代表需要迭代M次,最终生成M棵决策树。
(3)对每个车辆流量样本的函数估计值做Logistic变换。Logistic函数如下式所示,将车辆流量样本值转换为[0,1]之间的概率值,通过该变换公式就可以把样本的估计值转换为该样本属于某一类的概率值。
(4)按列遍历所有车辆流量样本的每个类别的概率(共需要K次)。
(5)求每个车辆流量样本在第k类上概率梯度。该梯度公式即残差:第i个样本属于第k个类别的残差=真实的概率-估计的概率,如下式:
(6)沿着梯度方法学习到J个叶子结点的回归树。输入所有车辆流量样本xi,i=1,N,以及每个车辆流量样本在第k个类别上概率的残差作为更新方向,学习到有J个叶子的回归树。学习的基本过程和回归树类似:遍历车辆流量样本的特征维数,选择一个特征作为分割点,需要满足最小均方差的原则,或者满足:左子树样本目标值(残差)和的平方均值+右子树样本目标值(残差)和的平方均值-父结点所有车辆流量样本目标值(残差)和的平方均值最大的准则。一旦学习到J个叶子结点,就停止学习。结果是该回归树中每个叶子上都会有许多个车辆流量样本分布在上面。
(7)求每个叶子结点j的增益。增益计算公式如下式:
(8)更新所有车辆流量样本在第k类下的估计值。上一步中求得的增益是基于梯度计算得到的,利用这个增益更新样本的估计值。第m次迭代中的第k类下,所有车辆流量样本的估计值F可以通过上次迭代m-1中,这些车辆流量样本的估计值+增益向量求得,这个增益向量需要把所有的J个叶子结点的增益值求和,然后和向量1相乘,如下式:
(9)每一类(每一列)都建立一个回归树不断进行更新,最后原始的K类的N个样本的估计值矩阵都更新了一遍,带着这个新的估计值矩阵,进入m+1次的迭代学习。
至此训练过程结束,完成模型的训练。
5)在对模型进行训练的过程中,将模型移植至分布式平台上,进行切分点抽样统计优化调整。
根据所述方法,其中步骤5)包括:
在单机环境下的决策树针对连续变量进行训练时,选择切分点的策略一般是通过对所有特征点的纯度进行排序,然后找到取纯度最低的相邻两个特征点,将它们之间的点作为切分点。这样的方案如果应用于分布式环境下对所有特征点进行排序,会产生大量的网络I/O操作,带来计算效率较低的问题。为解决这一问题,对切分点进行抽样统计,对各分区采用一定的子特征策略进行抽样,然后生成各个分区的统计数据,并最终得到切分点,具体流程如附图3所示。
本发明通过切分点抽样统计的方式,有效减少网络I/O的开销,提高了分布式梯度优化决策树的运行效率。
6)在分布式平台上对模型进行训练的过程中,对模型进行逐层训练优化调整。
根据所述方法,其中步骤6)包括:
一般常见的决策数生成过程通常是通过递归调用的方式构造树,其本质是按照深度优先方式构造决策树,具体流程如附图4所示。这一方法的优势是利用递归的方式,实现较为简单。但其也存在相应的缺点:即在构造决策树的同时,需要大量的将同一个子节点的数据汇集到一起,造成大量的网络I/O开销。
因此在本发明中,使用在分布式环境下采用逐层构建树节点的策略,其本质上是广度优先,具体流程如附图5所示。该方法流程是当一层节点全部分裂完成后再分裂下一层节点。同层节点分裂的过程可以通过并行处理的方式运行,充分利用分布式计算带来的优势。这样遍历所有车辆流量数据的次数等于所有树中的最大层数,每次遍历时,需要计算同层每个节点所有切分点统计参数,遍历完成后再根据节点的特征进行划分,决定是否切分,以及如何切分。
7)在进行上述优化后,采用三层Stacking模型进行多模型融合,提升训练效果。
根据所述方法,其中步骤7)包括:
在Stacking模型中,往往能够使用多个模型展开训练工作,从而提升训练效果。例如LASSO,Ridge,GBDT,ADABoost,XgBoost等模型均可构成Stacking模型中的某一层模型。
在本发明中,三层Stacking模型的第一层用了9个模型(LASSO,Ridge,GBDT,ADABoost,XgBoost,XgBoost2,ExtraTrees,Liner,RandomForest),第二层用了3个模型(GBDT,XgBoost,XgBoost2),第三层是将第二层取平均。与此同时,为了增加第二层模型之间的不相关程度,第二层的输入不是第一层所有模型的输出,其中(LASSO,Ridge,GBDT,ADABoost,XgBoost,XgBoost2,ExtraTrees,Liner)的输出为第二层GBDT的输入,(LASSO,Ridge,GBDT,ADABoost,XgBoost,XgBoost2,ExtraTrees,Liner,RandomForest)的输出为第二层XgBoost的输入,(Ridge,GBDT,ADABoost,XgBoost,XgBoost2,ExtraTrees,Liner,RandomForest)输出是第二层XgBoost2的输入。同样的,参数设置是在默认参数的基础上增强了泛化能力。
8)模型训练结束,进行训练结果测试,对未来时段内的车辆流量数据进行预测,并输出预测结果。
根据所述方法,其中步骤8)包括:
利用测试集数据对网络模型的训练结果进行测试,通过调整网络模型参数不断提升训练效果。
将已知时段的车辆流量数据输入网络,预测未来时段的车辆流量情况并输出网络。
本发明与现有技术相比,具有以下技术优势:
1.在进行车辆流量预测前,先对车辆流量数据进行预处理及特征分析,避免了盲目开展训练的问题,从而能够提升训练效率,提高训练精度。
2.在不考虑空间因素的条件下,构建梯度决策树对高速路口车辆流量数据进行预测,利用梯度决策树寻找最优子叶,从而对车辆流量数据进行更为准确的预测。
3.将系统移植到分布式系统中,并进行相应的优化处理,从而显著提升本发明方法的训练速率,大幅减少训练所需时间。。
4.本发明方法立足于真实数据设计方法,并支持单机及网络两种使用模式,效果良好,在未来能够取得更好的经济效益。
附图说明
图1为数据处理错误类型示意图。
图2为梯度优化决策树模型结构图。
图3为切分点抽样统计优化调整示意图。
图4为深度优先方式决策树示意图。
图5为广度优先方式决策树示意图。
具体实施方式
本发明使用9月19日到10月18日期间3个收费站共五个方向的车辆通过记录作为训练集。预测集中使用10月19日到10月25日共七天每天6点到8点、15点到17点的车辆通过记录,预测当天8点到10点,17点到19点以20分钟为单位的车流量。同时再使用10月19日到10月25日所有的车辆通过记录作为训练集。预测集中使用10月25日到10月31日6点到8点、15点到17点的车辆记录,预测10月25日到10月31日8点到10点,17点到19点以20分钟为单位的车流情况。
本发明涉及到的数据做出如下数据定义:
数据功能描述:本发明数据表示通过某收费站的交通流量
首先对数据进行预处理工作,针对错误数据,将因系统问题被错误标注的车辆行进方向按照高速收费站ID数据进行纠正。针对系统记录错误数据,删除同一时段超过1次记录的数据。
在进行数据预处理时,发现数据中有部分车辆没有“vehicle_type”信息,本发明通过分析数据发现:记录在案的载重量大于等于5的车辆都是货车,载重量为4的车辆以客车居多,载重量3,2的车辆货车居多,载重量1的车辆客车居多。剩下载重量为0的车辆,但一般情况下不会出现载重量为0的车辆,因此单独处理这批数据。依据上述思路,“vehicle_type”为空的记录根据其载重量以及相同载重量的记录中较多的“vehicle_type”去填充空值。具体填充如下:
每个收费站和方向分开分析,分别有:1号收费站0方向;1号收费站1方向;2号收费站0方向;3号收费站0方向;3号收费站1方向。
通过进一步观察,发现存在7万条记录没有车辆类型,而且全部都是各收费站0方向,因此减少0方向的部分特征:包括货车数量、客车数量、货车载重量、客车载重量等。使用如下特征替代:重量0-2的车辆数量、重量3-4的车辆数量、重量5-7的车辆数量。
在对数据预处理完成后,通过对数据从邻近性、周期性和趋势性三个属性入手考察车流量数据在时间维度上的依赖程度。通过分析可以发现本发明数据相邻数据呈曲线型变化趋势,不存在数据突变的情况;同时在一周时间段内呈现近似周期性变化;在变化趋势上,清晨至傍晚车流量较大,傍晚至次日清晨车辆较少,这符合实际情况。
对外部事件给数据带来的变化进行分析。分析车流波形发现10月1日到10月7日之间的车流波形和其他时间区别非常大,所有收费站的所有方向都是如此。因为使用的是中国境内某高速收费站的数据,因此具有典型的“十一”黄金周特点,这样的数据会对训练带来较大误差,所以将训练集中这段时间的数据全部删除。
接下来对数据进行数据聚集(数据切片)操作:每块数据按照20分钟切片,统计20分钟内通过的车流数量。以两个小时(6段)车流量为特征,用最后一个特征向后偏移20*offset时段的车流为因变量构建预测集,其中offset=1,2,3...6。构建过程类似时间窗每次向后平移20分钟。以2017年9月19日为例,时间切片之后车流数据如下:
时间段 | 车流量 |
00:00:00~00:20:00 | a |
00:20:00~00:40:00 | b |
00:40:00~01:00:00 | c |
01:00:00~01:20:00 | d |
01:20:00~01:40:00 | e |
01:40:00~02:00:00 | f |
02:00:00~02:20:00 | g |
02:20:00~02:40:00 | h |
在此基础上,构建训练集:
区分收费站和方向的原因是构建的预测集中需要用前两个小时预测后两个小时车流,在尝试过不区分收费站和方向的情况后,发现效果没有区分的好。
对训练数据集进行切分,按照20分钟的尺度切分后,每一切片里除了有车流量,还有货车数量、客车数量、客车载重量、货车载重量等特征;与此同时2个小时内的数据也包含总的车流量、总货车数、总客车数、总货车载重量、总客车载重量、平均货车载重量、平均客车载重量等数据。针对上述数据利用梯度决策树展开训练,采用默认参数,同时增加一些泛化能力。
构建三层Stacking模型并对数据进行训练,第一层使用9个模型(LASSO,Ridge,GBDT,ADABoost,XgBoost,XgBoost2,ExtraTrees,Liner,RandomForest),第二层使用3个模型(GBDT,XgBoost,XgBoost2),第三层是将第二层取平均。为了增加第二层模型之间的不相关程度,第二层的输入不是第一层所有模型的输出,其中(LASSO,Ridge,GBDT,ADABoost,XgBoost,XgBoost2,ExtraTrees,Liner)的输出为第二层GBDT的输入,(LASSO,Ridge,GBDT,ADABoost,XgBoost,XgBoost2,ExtraTrees,Liner,RandomForest)的输出为第二层XgBoost的输入,(Ridge,GBDT,ADABoost,XgBoost,XgBoost2,ExtraTrees,Liner,RandomForest)输出是第二层XgBoost2的输入。采用默认参数,并增强了泛化能力。
使用平均绝对百分误差(MAPE)对预测结果进行评价:
算法 | MAPE/% | 模型训练时间/min |
GBDT | 4.141 | 38.6 |
KNN | 5.629 | 66.8 |
RUTP-ARIMA | 13.873 | 44.5 |
从结果可以看出,本发明设计的GBDT模型效果最佳,且模型训练耗时最短。
Claims (1)
1.一种基于梯度提升决策树的短时交通流量预测方法,其特征在于:包括:
1)对原始高速公路收费站交通流量数据进行预处理,直至达到能够对神经网络进行训练和测试;
根据所述方法,其中步骤1)包括:
采用的原始数据是高速收费站车辆,对原始数据进行分析,进行数据的清洗;需要对同一时段超过1次记录的数据进行剔除;
2)在对原始高速公路收费站交通流量数据预处理之后,对数据集进行分析;
所针对的数据是某区域高速收费站车辆历史流量数据;
针对高速收费站车辆流量数据,结合实际问题从时间属性和外部特征两方面进行分析与讨论;
对历史数据进行统计分析,从邻近性、周期性和趋势性三个属性考察车流量数据在时间维度上的依赖程度;
3)在对数据规律了解和认识后,对数据进行数据聚集操作;
由于车辆流量数据属于时序数据,不同时间段有着不同的数据特征,因此对车辆流量数据按照时间段进行划分,分别按照30分钟、20分钟和10分钟三个尺度对车辆流量数据进行切片划分;
4)在完成数据聚集操作后,对数据进行特征提取操作;
使用的数据集包含了高速路口全部收费窗口的流量数据;影响流量情况的因素有时间依赖性和外部事件两类;在对切片数据进行构造的过程中,从这两方面对数据开展特征抽取的工作,从而拼接特征,构造训练样本;
5)在完成数据特征提取操作后,对数据利用梯度决策树进行训练;将决策树模型和集成学习进行融合,从而获得梯度优化决策树与随机森林两类算法;因为前者预测准确率更高,因此使用梯度优化决策树模型来开展预测工作;
6)在对模型进行训练的过程中,将模型移植至分布式平台上,进行切分点抽样统计优化调整;
通过切分点抽样统计的方式,有效减少网络I/O的开销,提高了分布式梯度优化决策树的运行效率;
7)在分布式平台上对模型进行训练的过程中,对模型进行逐层训练优化调整;
当一层节点全部分裂完成后再分裂下一层节点;遍历所有车辆流量数据的次数等于所有树中的最大层数,每次遍历时,需要计算同层每个节点所有切分点统计参数,遍历完成后再根据节点的特征进行划分,决定是否切分,以及如何切分;
8)在进行上述优化后,采用三层Stacking模型进行多模型融合,提升训练效果;
三层Stacking模型的第一层用了9个模型,9个模型为LASSO,Ridge,GBDT,ADABoost,XgBoost,XgBoost2,ExtraTrees,Liner,RandomForest,第二层用了3个模型,3个模型为GBDT,XgBoost,XgBoost2,第三层是将第二层取平均;与此同时,为了增加第二层模型之间的不相关程度,第二层的输入不是第一层所有模型的输出,其中LASSO,Ridge,GBDT,ADABoost,XgBoost,XgBoost2,ExtraTrees,Liner的输出为第二层GBDT的输入,LASSO,Ridge,GBDT,ADABoost,XgBoost,XgBoost2,ExtraTrees,Liner,RandomForest的输出为第二层XgBoost的输入,Ridge,GBDT,ADABoost,XgBoost,XgBoost2,ExtraTrees,Liner,RandomForest输出是第二层XgBoost2的输入;同样的,参数设置是在默认参数的基础上增强了泛化能力;
9)模型训练结束,进行训练结果测试,对未来时段内的车辆流量数据进行预测,并输出预测结果;
利用测试集数据对网络模型的训练结果进行测试,通过调整网络模型参数不断提升训练效果;
将已知时段的车辆流量数据输入网络,预测未来时段的车辆流量情况并输出网络;
根据所述方法,其中步骤4)包括:
梯度优化决策树模型的训练过程是线性的;T为真实值,第二棵树的目标是真实值T与第一棵树训练结果T1的残差T-T1,第三棵树训练优化的目标是真实值与第1、2棵树训练结果的残差T-T1-T2;模型的最终结果T′是将每一棵决策树的结果累加得到,如下式:
T′=T1+T2+T3
对梯度优化决策树进行基于梯度下降值进行优化,这种方法的主要思路为:每一次新模型的简历是在之前模型损失函数的梯度下降方向;损失函数是用来描述模型的误差大小,损失函数越大,则说明模型误差越大;如果模型能够使损失函数持续下降,则模型预测的准确率在不断提升;因此,如果让算法的每一步沿着损失函数下降最快的方向不断建立新模型,这样就能够使算法沿着下降最快的方向快速收敛;直到满足要求后,建立满足要求的若干个组合加权子模型;上述算法具体流程如下:
(1)Fk0(x)是一个N*K维的矩阵,其中N为车辆流量数据样本的数量,K为车辆流量特征的数量;该矩阵即为估计值矩阵,其初始值全部随机设定;
(2)进行M次循环代表需要迭代M次,最终生成M棵决策树;
(3)对每个车辆流量样本的函数估计值做Logistic变换;Logistic函数如下式所示,将车辆流量样本值转换为[0,1]之间的概率值,通过该变换公式就可以把样本的估计值转换为该样本属于某一类的概率值;
(4)按列遍历所有车辆流量样本的每个类别的概率,共需要K次;
(5)求每个车辆流量样本在第k类上概率梯度;该梯度公式即残差:第i个样本属于第k个类别的残差=真实的概率-估计的概率,如下式:
(6)沿着梯度方法学习到J个叶子结点的回归树;输入所有车辆流量样本xi,i=1,N,以及每个车辆流量样本在第k个类别上概率的残差作为更新方向,学习到有J个叶子的回归树;学习的基本过程和回归树类似:遍历车辆流量样本的特征维数,选择一个特征作为分割点,需要满足最小均方差的原则,或者满足:左子树样本目标值和的平方均值+右子树样本目标值和的平方均值-父结点所有车辆流量样本目标值和的平方均值最大的准则;学习到J个叶子结点,就停止学习;该回归树中每个叶子上都会有许多个车辆流量样本分布在上面;
(7)求每个叶子结点j的增益;增益计算公式如下式:
(8)更新所有车辆流量样本在第k类下的估计值;上一步中求得的增益是基于梯度计算得到的,利用这个增益更新样本的估计值;第m次迭代中的第k类下,所有车辆流量样本的估计值F可以通过上次迭代m-1中,这些车辆流量样本的估计值+增益向量求得,这个增益向量需要把所有的J个叶子结点的增益值求和,然后和向量1相乘,如下式:
(9)每一类都建立一个回归树不断进行更新,最后原始的K类的N个样本的估计值矩阵都更新了一遍,带着这个新的估计值矩阵,进入m+1次的迭代学习;
至此训练过程结束,完成模型的训练。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110303409.0A CN113096388B (zh) | 2021-03-22 | 2021-03-22 | 一种基于梯度提升决策树的短时交通流量预测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110303409.0A CN113096388B (zh) | 2021-03-22 | 2021-03-22 | 一种基于梯度提升决策树的短时交通流量预测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113096388A CN113096388A (zh) | 2021-07-09 |
CN113096388B true CN113096388B (zh) | 2022-09-09 |
Family
ID=76669123
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110303409.0A Active CN113096388B (zh) | 2021-03-22 | 2021-03-22 | 一种基于梯度提升决策树的短时交通流量预测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113096388B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114202366A (zh) * | 2021-12-15 | 2022-03-18 | 广东电力信息科技有限公司 | 一种基于电力行业营销系统实时数据的预测方法 |
CN113988488B (zh) * | 2021-12-27 | 2022-06-21 | 上海一嗨成山汽车租赁南京有限公司 | 一种多因子预测车辆通过etc概率的方法 |
CN114565196B (zh) * | 2022-04-28 | 2022-07-29 | 北京零点远景网络科技有限公司 | 基于政务热线的多事件趋势预判方法、装置、设备及介质 |
CN115035715B (zh) * | 2022-05-26 | 2023-08-29 | 浙江省机电设计研究院有限公司 | 基于决策树和多元辅助信息的高速公路流量预测方法 |
CN115423148B (zh) * | 2022-07-29 | 2023-10-31 | 江苏大学 | 一种基于克里金法和决策树的农机作业性能预测方法与装置 |
CN115366281A (zh) * | 2022-08-22 | 2022-11-22 | 青岛科技大学 | 基于机器学习的模温机温度控制方法、装置及可存储介质 |
CN115630711B (zh) * | 2022-12-19 | 2023-04-07 | 华控清交信息科技(北京)有限公司 | 一种训练XGBoost模型的方法和多方安全计算平台 |
CN116881854B (zh) * | 2023-09-08 | 2023-12-22 | 国际关系学院 | 融合XGBoost计算特征权重的时间序列预测方法 |
CN117706376B (zh) * | 2024-02-04 | 2024-05-24 | 深圳海辰储能科技有限公司 | 电池容量预测方法、装置、电子设备及存储介质 |
CN117744540B (zh) * | 2024-02-19 | 2024-04-30 | 青岛哈尔滨工程大学创新发展中心 | 水下无人航行器的水下作业水动力特性趋势预测方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106713324A (zh) * | 2016-12-28 | 2017-05-24 | 北京奇艺世纪科技有限公司 | 一种流量检测方法及装置 |
CN108961788A (zh) * | 2018-07-20 | 2018-12-07 | 张鹏 | 交通信号灯智慧变换方法 |
CN109670277A (zh) * | 2019-02-19 | 2019-04-23 | 南京邮电大学 | 一种基于多模态数据融合与多模型集成的旅行时间预测方法 |
CN110322695A (zh) * | 2019-07-23 | 2019-10-11 | 内蒙古工业大学 | 一种基于深度学习的短时交通流预测方法 |
AU2018432145A1 (en) * | 2018-07-13 | 2020-08-13 | Nanjing University Of Science And Technology | Method for short-term traffic flow prediction based on spatiotemporal correlation |
-
2021
- 2021-03-22 CN CN202110303409.0A patent/CN113096388B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106713324A (zh) * | 2016-12-28 | 2017-05-24 | 北京奇艺世纪科技有限公司 | 一种流量检测方法及装置 |
AU2018432145A1 (en) * | 2018-07-13 | 2020-08-13 | Nanjing University Of Science And Technology | Method for short-term traffic flow prediction based on spatiotemporal correlation |
CN108961788A (zh) * | 2018-07-20 | 2018-12-07 | 张鹏 | 交通信号灯智慧变换方法 |
CN109670277A (zh) * | 2019-02-19 | 2019-04-23 | 南京邮电大学 | 一种基于多模态数据融合与多模型集成的旅行时间预测方法 |
CN110322695A (zh) * | 2019-07-23 | 2019-10-11 | 内蒙古工业大学 | 一种基于深度学习的短时交通流预测方法 |
Non-Patent Citations (2)
Title |
---|
基于决策树理论的交通流参数短时预测;薛红军等;《交通信息与安全》;20160628;第34卷(第03期);70-77 * |
基于梯度提升决策树的交通流量预测方法研究;陈俊刚;《硕士学位论文电子期刊工程科技Ⅱ辑》;20180430;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113096388A (zh) | 2021-07-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113096388B (zh) | 一种基于梯度提升决策树的短时交通流量预测方法 | |
CN106251625B (zh) | 大数据环境下立体城市交通路网全局状态预测方法 | |
CN108269401B (zh) | 一种基于数据驱动的高架桥交通拥堵预测方法 | |
CN108417033B (zh) | 基于多维因素的高速路交通事故分析预测方法 | |
CN110458336B (zh) | 一种基于深度学习的网约车供需预测方法 | |
CN110782658B (zh) | 一种基于LightGBM算法的交通量预测方法 | |
CN112270355B (zh) | 基于大数据技术与sae-gru的主动安全预测方法 | |
Xu et al. | Short-term traffic volume prediction using classification and regression trees | |
CN113704956A (zh) | 一种基于数字孪生技术的城市道路在线微观仿真方法及系统 | |
CN113344254A (zh) | 一种基于LSTM-LightGBM-KNN的高速公路服务区车流预测方法 | |
CN111860989B (zh) | 一种基于蚁群算法优化的lstm神经网络短时交通流量预测方法 | |
CN110675632B (zh) | 针对多特征空间和数据稀疏的车辆短时轨迹预测控制方法 | |
CN114596700B (zh) | 一种基于门架数据的高速公路路段实时流量估计方法 | |
CN111292534A (zh) | 一种基于聚类与深度序列学习的交通状态估计方法 | |
CN110555989A (zh) | 一种基于Xgboost算法的交通量预测方法 | |
CN110826785B (zh) | 一种基于k-medoids聚类和泊松逆高斯的高风险路段识别方法 | |
CN114463972A (zh) | 一种基于etc门架通信数据的路段区间交通分析预测方法 | |
CN115907611B (zh) | 一种基于配件市场价值的配件库存管控方法 | |
CN112149922A (zh) | 高速公路隧道下行线出入口区域事故严重程度预测方法 | |
CN114117903B (zh) | 一种基于bp神经网络的轨道交通短时客流预测方法 | |
CN116187835A (zh) | 一种基于数据驱动的台区理论线损区间估算方法及系统 | |
CN111145535B (zh) | 一种复杂场景下的行程时间可靠性分布预测方法 | |
CN110490365B (zh) | 一种基于多源数据融合预测网约车订单量的方法 | |
CN115269758A (zh) | 面向乘客诱导的路网客流状态推演方法及系统 | |
CN116756825A (zh) | 一种中小跨径桥梁的群结构性能预测系统 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |