本发明属于数据挖掘领域,尤其涉及一种基于卷积神经网络的短期交通流量预测方法及系统。
背景技术:
进入21世纪以来,社会经济的高速发展使得人们越来越依赖各类交通工具,也就使得城市的交通问题越来越突出。准确地对各个交通路口路段的车流量进行预测可以指导驾驶员选择驾驶路线,有效地缓解拥堵问题。同时,准确的交通流量预测也是建设智慧城市的重要组成部分。
在预测方法上,目前已经有移动平均模型,k近邻模型,自回归模型以及神经网络模型。这些模型在应用时候只针对每个路口的车流量的时间序列数据进行分析,或者利用有相似的流量曲线的路口减少预测误差。而且现有的交通流量预测方法,有的根据地理位置上下游来选择路口,这样存在的问题是:由于限行或者信号灯控制等因素,地理位置相近的路口间交通流量影响不是确定的;更远的上游路口可能对当前路口交通流量数据有重要影响,这样无法发现路口间影响的强弱,即无法通过地理位置直接判断路口间影响强弱;而且现有的交通流量预测时路口数据组合大多数是人为设定,这样无法根据实际数据动态获取。然而,由于交通流数据的统计是基于动态的车辆位置信息,因此不同路口间的流量数据存在复杂的直接或者间接的关系,以上的模型或方法无法有效处理这些关系,预测误差相对较高。
技术实现要素:
为了解决现有技术的缺点,本发明提供一种基于卷积神经网络的短期交通流量预测方法及系统。本发明利用交通网络中各个路口间的交通关系找到各路口流量间的内在联系,并针对数据量巨大的情况采用卷积神经网络来充分利用这些数据,减少预测误差。
为实现上述目的,本发明采用以下技术方案:
一种基于卷积神经网络的短期交通流量预测方法,该方法从服务器侧进行描述,该方法包括:
接收各个路口的过车记录数据,生成交通流量数据集和轨迹数据集;
将轨迹数据集作为CBOW模型的输入,得到路口的向量表达,进而通过计算向量的距离得到路口间的交通流量影响关系;
根据路口间的交通流量影响关系、每个路口的交通流量及其对应的周平均交通流量和周众数交通流量,构建特征矩阵并作为预测模型的输入;
应用卷积神经网络作为预测模型,对预测模型的参数进行训练,将测试数据集输入至预测模型并计算输出预测值与目标值的平均误差,选择误差最小所对应的参数作为预测模型的最优参数,得到最优预测模型,进而输出交通流量的最佳预测值。
本发明的基于卷积神经网路的短期交通流量预测考虑了时间和空间两个维度上的交通流量影响关系,可以实现更加准确的预测。
在服务器内设置轨迹长度阈值,删除轨迹数据集内小于轨迹长度阈值的轨迹数据。在大范围的统计数据中无法避免产生部分异常值,因此为了保证预测模型的精确以及预测结果的准确性,需要删除轨迹数据集内小于轨迹长度阈值的轨迹数据。
路口间的交通流量影响关系采用相应路口间欧氏距离表示;路口间欧氏距离越小,则相应路口间的交通流量影响越大。
所述特征矩阵中的数据包括路口的三种流量数据,分别为路口交通流量,及其对应的周平均交通流量和周众数交通流量;
所述特征矩阵的横向为时间轴,每个路口的每种流量数据为一行,自左而右按时间先后排序;纵向为空间轴,每个路口的三种流量数据为一组,自上而下按其他路口对与第一个路口的影响大小排序。
每个路口与一组特征矩阵相对应,每个特征矩阵与一个目标值相对应。这一组特征矩阵数据均来自于同一组路口,即第一个路口和对第一个路口影响最大的k(k≥1)个路口。
每个特征矩阵及其目标值构成一个训练样本;目标值为与所述特征矩阵中前三行数据对应路口的下一个时间段的真实流量值。
本发明采用CBOW模型在轨迹数据上发现路口间的影响关系,并以此为依据组合特征矩阵,可以发现距离较远而影响较大的路口集合;能找出路口间影响的强弱,只考虑影响最强的k(k≥1)个路口;而且路口影响因子可以动态获取,无需人为标注;特征矩阵中包含周平均数据和周众数数据,可以不止依赖实时交通流量进行预测,因此能够有效降低交通流量数据中异常值的不利影响。
一种基于卷积神经网络的短期交通流量预测系统,该系统包括服务器,所述服务器包括:
数据集生成模块,其用于接收各个路口的过车记录数据,生成交通流量数据集和轨迹数据集;
交通流量影响关系计算模块,其用于将轨迹数据集作为CBOW模型的输入,得到路口的向量表达,进而通过计算向量的距离得到路口间的交通流量影响关系;
特征矩阵构建模块,其用于根据路口间的交通流量影响关系、每个路口的交通流量及其对应的周平均交通流量和周众数交通流量,构建特征矩阵并作为预测模型的输入;
预测模块,其用于应用卷积神经网络作为预测模型,对预测模型的参数进行训练,将测试数据集输入至预测模型并计算输出预测值与目标值的平均误差,选择误差最小所对应的参数作为预测模型的最优参数,得到最优预测模型,进而输出交通流量的最佳预测值。
在所述交通流量影响关系计算模块中,路口间的交通流量影响关系采用相应路口间欧氏距离表示;路口间欧氏距离越小,则相应路口间的交通流量影响越大。
所述特征矩阵中的数据包括路口的三种流量数据,分别为路口交通流量,及其对应的周平均交通流量和周众数交通流量;
所述特征矩阵的横向为时间轴,每个路口的每种流量数据为一行,自左而右按时间先后排序;纵向为空间轴,每个路口的三种流量数据为一组,自上而下按其他路口对与第一个路口的影响大小排序。
每个路口与一组特征矩阵相对应,每个特征矩阵与一个目标值相对应。这一组特征矩阵数据均来自于同一组路口,即第一个路口和对第一个路口影响最大的k(k≥1)个路口。
每个特征矩阵及其目标值构成一个训练样本;目标值为与所述特征矩阵中前三行数据对应路口的下一个时间段的真实流量值。
本发明还提供了一种基于卷积神经网络的短期交通流量预测方法,该方法从数据采集装置和服务器混合侧进行描述,包括:
数据采集装置采集交通流量数据和轨迹数据分别形成交通流量数据集和轨迹数据集;
服务器接收交通流量数据集和轨迹数据集;
服务器将轨迹数据集作为CBOW模型的输入,得到路口的向量表达,进而通过计算向量的距离得到路口间的交通流量影响关系;
服务器根据路口间的交通流量影响关系、每个路口的交通流量及其对应的周平均交通流量和周众数交通流量,构建特征矩阵并作为预测模型的输入;
服务器应用卷积神经网络作为预测模型,对预测模型的参数进行训练,将测试数据集输入至预测模型并计算输出预测值与目标值的平均误差,选择误差最小所对应的参数作为预测模型的最优参数,得到最优预测模型,进而输出交通流量的最佳预测值。
在服务器内设置轨迹长度阈值,删除轨迹数据集内小于轨迹长度阈值的轨迹数据。
在服务器内设置轨迹长度阈值,删除轨迹数据集内小于轨迹长度阈值的轨迹数据。在大范围的统计数据中无法避免产生部分异常值,因此为了保证预测模型的精确以及预测结果的准确性,需要删除轨迹数据集内小于轨迹长度阈值的轨迹数据。
路口间的交通流量影响关系采用相应路口间欧氏距离表示;路口间欧氏距离越小,则相应路口间的交通流量影响越大。
所述特征矩阵中的数据包括路口的三种流量数据,分别为路口交通流量,及其对应的周平均交通流量和周众数交通流量;
所述特征矩阵的横向为时间轴,每个路口的每种流量数据为一行,自左而右按时间先后排序;纵向为空间轴,每个路口的三种流量数据为一组,自上而下按其他路口对与第一个路口的影响大小排序。
每个路口与一组特征矩阵相对应,每个特征矩阵与一个目标值相对应。这一组特征矩阵数据均来自于同一组路口,即第一个路口和对第一个路口影响最大的k(k≥1)个路口。
每个特征矩阵及其目标值构成一个训练样本;目标值为与所述特征矩阵中前三行数据对应路口的下一个时间段的真实流量值。
一种基于卷积神经网络的短期交通流量预测系统,包括:
数据采集装置,其用于采集交通流量数据和轨迹数据分别形成交通流量数据集和轨迹数据集;
服务器,其包括:
数据集生成模块,其用于接收各个路口的过车记录数据,生成交通流量数据集和轨迹数据集;
交通流量影响关系计算模块,其用于将轨迹数据集作为CBOW模型的输入,得到路口的向量表达,进而通过计算向量的距离得到路口间的交通流量影响关系;
特征矩阵构建模块,其用于根据路口间的交通流量影响关系、每个路口的交通流量及其对应的周平均交通流量和周众数交通流量,构建特征矩阵并作为预测模型的输入;
预测模块,其用于应用卷积神经网络作为预测模型,对预测模型的参数进行训练,将测试数据集输入至预测模型并计算输出预测值与目标值的平均误差,选择误差最小所对应的参数作为预测模型的最优参数,得到最优预测模型,进而输出交通流量的最佳预测值。
在所述交通流量影响关系计算模块中,路口间的交通流量影响关系采用相应路口间欧氏距离表示;路口间欧氏距离越小,则相应路口间的交通流量影响越大。
所述特征矩阵中的数据包括路口的三种流量数据,分别为路口交通流量,及其对应的周平均交通流量和周众数交通流量;
所述特征矩阵的横向为时间轴,每个路口的每种流量数据为一行,自左而右按时间先后排序;纵向为空间轴,每个路口的三种流量数据为一组,自上而下按其他路口对与第一个路口的影响大小排序。
每个路口与一组特征矩阵相对应,每个特征矩阵与一个目标值相对应。这一组特征矩阵数据均来自于同一组路口,即第一个路口和对第一个路口影响最大的k(k≥1)个路口。
每个特征矩阵及其目标值构成一个训练样本;目标值为与所述特征矩阵中前三行数据对应路口的下一个时间段的真实流量值。
一种基于卷积神经网络的短期交通流量预测方法,该方法从数据采集装置侧进行描述,包括:
数据采集装置采集交通流量数据和轨迹数据分别形成交通流量数据集和轨迹数据集;
数据采集装置将形成的交通流量数据集和轨迹数据集均传送至服务器,使得服务器接收交通流量数据集和轨迹数据集后,将轨迹数据集作为CBOW模型的输入,得到路口的向量表达,进而通过计算向量的距离得到路口间的交通流量影响关系;再根据路口间的交通流量影响关系、每个路口的交通流量及其对应的周平均交通流量和周众数交通流量,构建特征矩阵并作为预测模型的输入;应用卷积神经网络作为预测模型,对预测模型的参数进行训练,将测试数据集输入至预测模型并计算输出预测值与目标值的平均误差,选择误差最小所对应的参数作为预测模型的最优参数,得到最优预测模型,进而输出交通流量的最佳预测值。
路口间的交通流量影响关系采用相应路口间欧氏距离表示;路口间欧氏距离越小,则相应路口间的交通流量影响越大。
所述特征矩阵中的数据包括路口的三种流量数据,分别为路口交通流量,及其对应的周平均交通流量和周众数交通流量;
所述特征矩阵的横向为时间轴,每个路口的每种流量数据为一行,自左而右按时间先后排序;纵向为空间轴,每个路口的三种流量数据为一组,自上而下按其他路口对与第一个路口的影响大小排序。
每个路口与一组特征矩阵相对应,每个特征矩阵与一个目标值相对应。这一组特征矩阵数据均来自于同一组路口,即第一个路口和对第一个路口影响最大的k(k≥1)个路口。
每个特征矩阵及其目标值构成一个训练样本;目标值为与所述特征矩阵中前三行数据对应路口的下一个时间段的真实流量值。
一种基于卷积神经网络的短期交通流量预测系统,该系统包括数据采集装置,所述数据采集装置用于采集交通流量数据和轨迹数据分别形成交通流量数据集和轨迹数据集;
数据采集装置还用于将形成的交通流量数据集和轨迹数据集均传送至服务器,使得服务器接收交通流量数据集和轨迹数据集后,将轨迹数据集作为CBOW模型的输入,得到路口的向量表达,进而通过计算向量的距离得到路口间的交通流量影响关系;再根据路口间的交通流量影响关系、每个路口的交通流量及其对应的周平均交通流量和周众数交通流量,构建特征矩阵并作为预测模型的输入;应用卷积神经网络作为预测模型,对预测模型的参数进行训练,将测试数据集输入至预测模型并计算输出预测值与目标值的平均误差,选择误差最小所对应的参数作为预测模型的最优参数,得到最优预测模型,进而输出交通流量的最佳预测值。
路口间的交通流量影响关系采用相应路口间欧氏距离表示;路口间欧氏距离越小,则相应路口间的交通流量影响越大。
所述特征矩阵中的数据包括路口的三种流量数据,分别为路口交通流量,及其对应的周平均交通流量和周众数交通流量;
所述特征矩阵的横向为时间轴,每个路口的每种流量数据为一行,自左而右按时间先后排序;纵向为空间轴,每个路口的三种流量数据为一组,自上而下按其他路口对与第一个路口的影响大小排序。
每个路口与一组特征矩阵相对应,每个特征矩阵与一个目标值相对应。这一组特征矩阵数据均来自于同一组路口,即第一个路口和对第一个路口影响最大的k(k≥1)个路口。
每个特征矩阵及其目标值构成一个训练样本;目标值为与所述特征矩阵中前三行数据对应路口的下一个时间段的真实流量值。
本发明所涉及到的名词解释如下:
(1)交通流量数据集,其内包含的元素为交通流量数据;其中,交通流量数据:对于每一个有监测的路口,统计在某一时间段内通过的车辆数目来表示交通流量的大小。
(2)轨迹数据集,其内包含的元素为轨迹数据;其中,轨迹数据:对于每一辆车,统计其顺序经过的路口ID,即一条轨迹数据是一串路口ID数值。
本发明的有益效果为:
(1)不同于传统交通流量预测方法,基于卷积神经网路的短期交通流量预测考虑了时间和空间两个维度上的交通流量影响关系,可以实现更加准确的预测。
(2)本发明应用卷积神经网路方法进行预测提升了模型的学习能力,能够在大数据环境中得到良好的应用。
(3)本发明所述的城市交通流量预测系统,适用于对城市区域密集交通网络中各个监测路口的车流量进行预测,并且可以实现与智能交通系统的对接。
(4)本发明采用CBOW模型在轨迹数据上发现路口间的影响关系,并以此为依据组合特征矩阵,可以发现距离较远而影响较大的路口集合;能找出路口间影响的强弱,只考虑影响最强的k(k≥1)个路口;而且路口影响因子可以动态获取,无需人为标注;特征矩阵中包含周平均数据和周众数数据,可以不止依赖实时交通流量进行预测,因此能够有效降低交通流量数据中异常值的不利影响。
附图说明
图1是本发明的基于卷积神经网络的短期交通流量预测方法实施例一流程示意图;
图2是本发明的特征矩阵计算流程图;
图3为预测模型样本数据结构图;
图4是基于卷积神经网络的短期交通流量预测系统的实施例一结构示意图;
图5是本发明的基于卷积神经网络的短期交通流量预测方法的实施例二流程示意图;
图6是本发明的基于卷积神经网络的短期交通流量预测系统的实施例二的结构示意图;
图7为系统单次运行的完整流程;
图8为本发明的模型与现有其他模型试验比较结果;
图9是本发明的基于卷积神经网络的短期交通流量预测方法的实施例三流程示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。本发明利用深度学习方法可以较为有效的利用当前数据量大的特点而训练得到较为准确的模型。
本发明所涉及到的名词解释如下:
(1)交通流量数据集,其内包含的元素为交通流量数据;其中,交通流量数据:对于每一个有监测的路口,统计在某一时间段内通过的车辆数目来表示交通流量的大小,用表示。
其中,li是路口的ID,d代表日期,n是日期d中的第n个时间段,n为正整数。
例如,当时间间隔设置为10分钟时,f00201(0)代表0号路口在2月1日第一个时间段即00:00到00:10的交通流量。
(2)轨迹数据集,其内包含的元素为轨迹数据;其中,轨迹数据:对于每一辆车,统计其顺序经过的路口ID,即一条轨迹数据是一串路口ID数值用Tp表示,即Tp:{l0,l1,l2,...,ls-1,ls}。
其中,p是车辆的ID,{l0,l1,l2,...,ls-1,ls}中的元素为路口ID,按车辆p通过的时间先后排序。
例如,一辆ID为001的车顺序通过了la,lb,lc和ld路口,则会有一条轨迹数据T0001:{la,lb,lc,ld}。
本发明中的CBOW模型,是Continuous Bag-of-Words模型,是现有模型。
图1是本发明的基于卷积神经网络的短期交通流量预测方法实施例一流程示意图,如图所示的基于卷积神经网络的短期交通流量预测方法,该方法从服务器侧进行描述,包括:
步骤1:接收交通流量数据集和轨迹数据集;
步骤2:将轨迹数据集作为CBOW模型的输入,得到路口的向量表达,进而通过计算向量的距离得到路口间的交通流量影响关系;
步骤3:根据路口间的交通流量影响关系、每个路口的交通流量及其对应的周平均交通流量和周众数交通流量,构建特征矩阵并作为预测模型的输入;
步骤4:应用卷积神经网络作为预测模型,对预测模型的参数进行训练,将测试数据集输入至预测模型并计算输出预测值与目标值的平均误差,选择误差最小所对应的参数作为预测模型的最优参数,得到最优预测模型,进而输出交通流量的最佳预测值。
在步骤1中,需要统计交通流量和轨迹两种数据,具体方法包括:
(1-1)通过智能交通系统查询得到某时间段内的过车记录,以天为单位文件存储。过车记录基本格式为<pid,bid,time>,pid为车辆ID,bid为通过路口ID,time为通过时间。
(1-2)以天为单位,遍历所有数据集,按bid统计单位时间间隔x内通过该路口的车辆数目,并根据bid文件存储计数结果。即对每一个bid有一个交通流量数据文件,每行为一天的流量数据。
(1-3)遍历所有数据集,统计有相同pid的记录为一条轨迹数据,并将每条轨迹数据中的记录按时间time由小到大排序,为简化后续操作,将排序后的轨迹数据删除time并只留一个pid字段用于标记不同轨迹。
(1-4)对于交通流量数据,对于缺失数据的日期和有异常点的数据进行删除和修复,数据修复可采用平均值法等;对于轨迹数据,设置相应的轨迹长度阈值,小于此长度的轨迹数据删除。
在步骤2中,应用CBOW模型将路口ID用数字向量表示,目的是用向量的距离远近表现路口间影响因子的大小。CBOW模型是具有三层网络结构的买模型,有输入层,隐含层和输出层;本方法中,输入层为轨迹数据。
具体方法包括:
(2-1)对于每一个路口li,均设定一个随机初始化的数字向量v(li)与之对应。
(2-2)对于一条轨迹中的任意一个路口对应的向量v(li),考虑其前后各c(c≥1)个路口向量对其的影响,计算CBOW模型中的隐含层中间量X(li)。
而对于v(li),则有对应参数向量Θ(li),输出结点为
(2-3)应用负采样方法进行参数学习。定义而参数Θ(li)的调整方法为其中η为学习率,NEG(li)为li对应的负采样集合。
(2-4)循环进行(2-2)和(2-3)直到模型收敛。
(2-5)通过CBOW模型训练会得到<li:v(li)>(v(li)∈Rw)元组,其中w为路口向量的长度,为正整数;则任意两个路口间的影响因子计算可表示为distance(li,lj)=-||v(li)-v(lj)||;那么对于任意一个路口la,可以计算得到对其影响因子最大的k个路口{lb,lc,ld,...},所以可以将这k+1个路口数据分为一组,即存在分组Ga:{la,lb,lc,ld,...},其中元素按对la的影响因子由大到小排序。
其中,路口间的交通流量影响关系采用相应路口间欧氏距离表示;路口间欧氏距离越小,则相应路口间的交通流量影响越大。
在步骤3中,将按照步骤2中的分组将交通流量数据重组为适合预测模型应用的训练样本,包括:
(3-1)计算每一个交通流量数据对应的周平均交通流量
(3-2)计算每一个交通流量数据对应的周众数交通流量其中mode()为取众数函数,β是离散参数,经验取值为2到10.
(3-3)对于步骤2中得到的分组Ga,对其中的每一个路口,都统计和计算得到其交通流量、周平均流量和周众数流量。
构建具有3×(k+1)行,p列的特征矩阵。
其中,第3i+1行数据自左而右为第3i+2行数据自左而右为第3i+3行数据自左而右为
其中,p为选择的时间轴方向上的数据的数量;k为对路口l0的影响因子最大的路口的数目,d为数据所属日期;此矩阵对应的目标值为
每个路口与一组特征矩阵相对应。
图2是本发明的特征矩阵计算流程图,如图所示:首先将轨迹数据投入CBOW模型获得每个路口对应的数字向量,以便于量化和计算路口间交通影响关系;然后通过计算向量间的欧式距离获得路口间交通影响因子的大小;再根据影响因子的大小查找对任意一个路口有最大影响的k(k≥1)个路口,并把它们分为一组;最后将分组信息存储以供预测模型训练和测试样本的组织参考。
图3中,展示了预测模型的训练样本的特征矩阵的数据结构。特征矩阵的横向为时间轴,每个路口的每种数据一行,自左而右按时间先后排序;纵向为空间轴,每个路口的三种流量数据一组,自上而下按其他路口与第一路口的影响因子大小排序。
在步骤4中,需要将步骤3中生成的特征矩阵与对应目标值数据作为卷积神经网络的输入,进行迭代训练,方法如下:
(4-1)将步骤3中的特征矩阵和目标值样本分别作为key和value转储为lmdb格式,提供给caffe读取。
(4-2)将数据分为训练集合和测试集合,构建卷积神经网络结构,并设定学习速率等学习参数,在训练集合上执行回归学习,并用测试集计算误差;记录对应参数和误差值。
(4-3)设定不同参数和网络结构进行(4-2)中的学习,选择误差值最小的参数和网络结构作为预测模型的参数。
(4-4)针对不同的p和k值循环进行步骤3和步骤4,选择误差最小对应的预测模型参(p和k值)和输出预测值分别为预测模型的最优参数和交通流量的最佳预测值。
(1)交通流量数据集,其内包含的元素为交通流量数据;其中,交通流量数据:对于每一个有监测的路口,统计在某一时间段内通过的车辆数目来表示交通流量的大小。
(2)轨迹数据集,其内包含的元素为轨迹数据;其中,轨迹数据:对于每一辆车,统计其顺序经过的路口ID,即一条轨迹数据是一串路口ID数值。
本发明不同于传统交通流量预测方法,基于卷积神经网路的短期交通流量预测考虑了时间和空间两个维度上的交通流量影响关系,可以实现更加准确的预测。本发明应用卷积神经网路方法进行预测提升了模型的学习能力,能够在大数据环境中得到良好的应用。
本发明所述的城市交通流量预测系统,适用于对城市区域密集交通网络中各个监测路口的车流量进行预测,并且可以实现与智能交通系统的对接。
本发明采用CBOW模型在轨迹数据上发现路口间的影响关系,并以此为依据组合特征矩阵,可以发现距离较远而影响较大的路口集合;能找出路口间影响的强弱,只考虑影响最强的k(k≥1)个路口;而且路口影响因子可以动态获取,无需人为标注;特征矩阵中包含周平均数据和周众数数据,可以不止依赖实时交通流量进行预测,因此能够有效降低交通流量数据中异常值的不利影响。
图4是本发明的一种基于卷积神经网络的短期交通流量预测系统的实施例一的结构示意图,如图所示的基于卷积神经网络的短期交通流量预测系统,该系统包括服务器,所述服务器包括:数据集生成模块、交通流量影响关系计算模块、特征矩阵构建模块和预测模块。
其中:
(1)数据集生成模块,其用于接收交通流量数据集和轨迹数据集。
(2)交通流量影响关系计算模块,其用于将轨迹数据集作为CBOW模型的输入,得到路口的向量表达,进而通过计算向量的距离得到路口间的交通流量影响关系。
在所述交通流量影响关系计算模块中,路口间的交通流量影响关系采用相应路口间欧氏距离表示;路口间欧氏距离越小,则相应路口间的交通流量影响越大。
(3)特征矩阵构建模块,其用于根据路口间的交通流量影响关系、每个路口的交通流量及其对应的周平均交通流量和周众数交通流量,构建特征矩阵并作为预测模型的输入。
每个路口与一组矩阵相对应;所述特征矩阵中的数据包括路口的三种流量数据,分别为路口交通流量,及其对应的周平均交通流量和周众数交通流量;
所述特征矩阵的横向为时间轴,每个路口的每种流量数据为一行,自左而右按时间先后排序;纵向为空间轴,每个路口的三种流量数据为一组,自上而下按其他路口对与第一路口的影响大小排序。
每个路口与一组矩阵相对应;每个特征矩阵及其目标值构成一个训练样本;目标值为与与其对应的特征矩阵的前三行数据对应路口的下一个时间段的真实流量值。
(4)预测模块,其用于应用卷积神经网络作为预测模型进行训练,训练结束后将测试集输入预测模型并计算输出预测值与目标值的误差,选择误差最小对应的预测模型参数和输出预测值分别为预测模型的最优参数和交通流量的最佳预测值。
图5是本发明的基于卷积神经网络的短期交通流量预测方法的实施例二流程示意图,如图所示的基于卷积神经网络的短期交通流量预测方法,该方法从数据采集装置和服务器混合侧进行描述,包括:
步骤(1):数据采集装置采集交通流量数据和轨迹数据分别形成交通流量数据集和轨迹数据集。
步骤(2):服务器接收交通流量数据集和轨迹数据集;
在服务器内设置轨迹长度阈值,删除轨迹数据集内小于轨迹长度阈值的轨迹数据。
步骤(3):服务器将轨迹数据集作为CBOW模型的输入,得到路口的向量表达,进而通过计算向量的距离得到路口间的交通流量影响关系。
路口间的交通流量影响关系采用相应路口间欧氏距离表示;路口间欧氏距离越小,则相应路口间的交通流量影响越大。
步骤(4):服务器根据路口间的交通流量影响关系、每个路口的交通流量及其对应的周平均交通流量和周众数交通流量,构建特征矩阵并作为预测模型的输入。
每个路口与一组矩阵相对应;所述特征矩阵中的数据包括路口的三种流量数据,分别为路口交通流量,及其对应的周平均交通流量和周众数交通流量;
所述特征矩阵的横向为时间轴,每个路口的每种流量数据为一行,自左而右按时间先后排序;纵向为空间轴,每个路口的三种流量数据为一组,自上而下按其他路口对与第一路口的影响大小排序。
每个路口与一组矩阵相对应;每个特征矩阵及其目标值构成一个训练样本;目标值为与与其对应的特征矩阵的前三行数据对应路口的下一个时间段的真实流量值。
步骤(5):服务器应用卷积神经网络作为预测模型进行训练,训练结束后将测试集输入预测模型并计算输出预测值与目标值的误差,选择误差最小对应的预测模型参数和输出预测值分别为预测模型的最优参数和交通流量的最佳预测值。
本实施例采用CBOW模型在轨迹数据上发现路口间的影响关系,并以此为依据组合特征矩阵,可以发现距离较远而影响较大的路口集合;能找出路口间影响的强弱,只考虑影响最强的k(k≥1)个路口;而且路口影响因子可以动态获取,无需人为标注;特征矩阵中包含周平均数据和周众数数据,可以不止依赖实时交通流量进行预测,因此能够有效降低交通流量数据中异常值的不利影响。
图6是本发明的基于卷积神经网络的短期交通流量预测系统的实施例二结构示意图,如图所示的基于卷积神经网络的短期交通流量预测系统,包括:
数据采集装置,其用于采集交通流量数据和轨迹数据分别形成交通流量数据集和轨迹数据集;
服务器,其包括:
数据集生成模块,其用于接收交通流量数据集和轨迹数据集;
交通流量影响关系计算模块,其用于将轨迹数据集作为CBOW模型的输入,得到路口的向量表达,进而通过计算向量的距离得到路口间的交通流量影响关系;
特征矩阵构建模块,其用于根据路口间的交通流量影响关系、每个路口的交通流量及其对应的周平均交通流量和周众数交通流量,构建特征矩阵并作为预测模型的输入;
预测模块,其用于应用卷积神经网络作为预测模型进行训练,训练结束后将测试集输入预测模型并计算输出预测值与目标值的误差,选择误差最小对应的预测模型参数和输出预测值分别为预测模型的最优参数和交通流量的最佳预测值。
在所述交通流量影响关系计算模块中,路口间的交通流量影响关系采用相应路口间欧氏距离表示;路口间欧氏距离越小,则相应路口间的交通流量影响越大。
每个路口与一组矩阵相对应;每个特征矩阵及其目标值构成一个训练样本;目标值为与与其对应的特征矩阵的前三行数据对应路口的下一个时间段的真实流量值。
每个路口与一组矩阵相对应;所述特征矩阵中的数据包括路口的三种流量数据,分别为路口交通流量,及其对应的周平均交通流量和周众数交通流量;
其中,特征矩阵的横向为时间轴,每个路口的每种流量数据为一行,自左而右按时间先后排序;纵向为空间轴,每个路口的三种流量数据为一组,自上而下按其他路口对与第一路口的影响大小排序。
针对服务器,则有训练阶段和应用阶段两种不同的阶段。
1.训练阶段。训练阶段是计算机学习的过程,会决定如何构建预测模型,对时效性要求较低。
在训练之前,数据采集装置首先由数据采集器从智能交通系统的数据查询接口收集指定范围的过车记录数据;然后交由数据生成组件统计分析得到各个路口的车流量数据和每辆车的轨迹数据;
在大范围的统计数据中无法避免产生部分异常值,因此需要交由数据清洗模块进行异常值修复;修复后的轨迹数据作为CBOW模型的输入,最终计算得到对每个路口的车流量有最大影响的k(k≥1)个路口,将这些记录存储供服务器读取。
服务器首先根据获取的交通流量数据集和轨迹数据集,计算得到的路口影响关系切分和重组流量数据,形成可供预测模型读取训练的训练样本和测试样本。样本的生成受时间段数目和影响路口数目影响,首次运行时需要多次调整参数,选择最优值作为系统日常运行的默认参数。有了训练样本和测试样本,就可以进行预测模型的训练和测试,测试值为选择最优参数提供依据。最优参数配置下对各个路口流量预测的模型存储供应用阶段的预测任务调用。
需要注意的是,由于交通网络并不是一成不变的,而且容易受自然和人为因素影响,训练得到的最优值也会在较长周期内发生变化,因此训练阶段并不是只执行一次,应当在充分考虑实际需求和硬件负载的情况下,不断进行模型参数的更新。
2.应用阶段。应用阶段对实时性要求较高,因此会简化各个模块的功能,或只运行必要的部分。
从智能交通系统收集来的过车记录只进行流量数据的生成。由于此处数据不再复用,且预测完成后数据即过期,则不对数据进行存储,直接由内存提供给服务器使用。
服务器根据训练阶段学习得到的空间关系数据和最优组织参数将数据准备模块生成的流量数据重组为预测模型的输入。然后调用训练阶段得到的预测模型和参数直接计算得到输出,即预测值。最终将各个路口的流量预测值反馈给智能交通系统。
在图7中,系统单次运行的完整流程演示了系统模块调用策略。首先收集过车记录数据,再判断当前系统是否处于训练阶段,如果是,则执行训练阶段的流程,如果不是则判断是否处于应用阶段。训练阶段需要执行流量数据和轨迹数据,并计算空间关系和进行模型训练和调优;若系统处于应用阶段,则先确定是否已经执行过训练阶段并有可调用的模型参数,如果是,则执行应用流程,若不是,则直接结束。应用流程只需要生成流量数据,并调用训练阶段得到的模型参数进行预测,返回结果并结束。
在图8中,展示了一种基于卷积神经网络的短期交通流量预测模型(DGCNN)与现有的移动平均模型(MA)、差分移动平均自回归模型(ARIMA)和栈式自动编码机(SAE)在真实数据集上的实验的结果,实验结果以平均相对误差(MRE)表示。由图5可看出,卷积神经网络的短期交通流量预测模型(DGCNN)、移动平均模型(MA)、差分移动平均自回归模型(ARIMA)和栈式自动编码机(SAE)的平均相对误差分别为0.11、0.15、0.144和0.128。因此,可以看出DGCNN的效果要明显好于现有其他模型。
本实施例采用CBOW模型在轨迹数据上发现路口间的影响关系,并以此为依据组合特征矩阵,可以发现距离较远而影响较大的路口集合;能找出路口间影响的强弱,只考虑影响最强的k(k≥1)个路口;而且路口影响因子可以动态获取,无需人为标注;特征矩阵中包含周平均数据和周众数数据,可以不止依赖实时交通流量进行预测,因此能够有效降低交通流量数据中异常值的不利影响。
图9是本发明的基于卷积神经网络的短期交通流量预测方法的实施例三流程示意图,如图所示的基于卷积神经网络的短期交通流量预测方法,该方法从数据采集装置侧进行描述,包括:
数据采集装置采集交通流量数据和轨迹数据分别形成交通流量数据集和轨迹数据集;
数据采集装置将形成的交通流量数据集和轨迹数据集均传送至服务器,使得服务器接收交通流量数据集和轨迹数据集后,将轨迹数据集作为CBOW模型的输入,得到路口的向量表达,进而通过计算向量的距离得到路口间的交通流量影响关系;再根据路口间的交通流量影响关系、每个路口的交通流量及其对应的周平均交通流量和周众数交通流量,构建特征矩阵并作为预测模型的输入;最后应用卷积神经网络作为预测模型进行训练,训练结束后将测试集输入预测模型并计算输出预测值与目标值的误差,选择误差最小对应的预测模型参数和输出预测值分别为预测模型的最优参数和交通流量的最佳预测值。
每个路口与一组矩阵相对应;所述特征矩阵中的数据包括路口的三种流量数据,分别为路口交通流量,及其对应的周平均交通流量和周众数交通流量;
所述特征矩阵的横向为时间轴,每个路口的每种流量数据为一行,自左而右按时间先后排序;纵向为空间轴,每个路口的三种流量数据为一组,自上而下按其他路口对与第一路口的影响大小排序。
路口间的交通流量影响关系采用相应路口间欧氏距离表示;路口间欧氏距离越小,则相应路口间的交通流量影响越大。
每个路口与一组矩阵相对应;每个特征矩阵及其目标值构成一个训练样本;目标值为与与其对应的特征矩阵的前三行数据对应路口的下一个时间段的真实流量值。
本实施例采用CBOW模型在轨迹数据上发现路口间的影响关系,并以此为依据组合特征矩阵,可以发现距离较远而影响较大的路口集合;能找出路口间影响的强弱,只考虑影响最强的k(k≥1)个路口;而且路口影响因子可以动态获取,无需人为标注;特征矩阵中包含周平均数据和周众数数据,可以不止依赖实时交通流量进行预测,因此能够有效降低交通流量数据中异常值的不利影响。
与图9本发明的基于卷积神经网络的短期交通流量预测方法相对应的预测系统,包括:
数据采集装置,所述数据采集装置用于采集交通流量数据和轨迹数据分别形成交通流量数据集和轨迹数据集;
数据采集装置还用于将形成的交通流量数据集和轨迹数据集均传送至服务器,使得服务器接收交通流量数据集和轨迹数据集后,将轨迹数据集作为CBOW模型的输入,得到路口的向量表达,进而通过计算向量的距离得到路口间的交通流量影响关系;再根据路口间的交通流量影响关系、每个路口的交通流量及其对应的周平均交通流量和周众数交通流量,构建特征矩阵并作为预测模型的输入;最后应用卷积神经网络作为预测模型进行训练,训练结束后将测试集输入预测模型并计算输出预测值与目标值的误差,选择误差最小对应的预测模型参数和输出预测值分别为预测模型的最优参数和交通流量的最佳预测值。
其中,路口间的交通流量影响关系采用相应路口间欧氏距离表示;路口间欧氏距离越小,则相应路口间的交通流量影响越大。
每个路口与一组矩阵相对应;每个特征矩阵及其目标值构成一个训练样本;目标值为与与其对应的特征矩阵的前三行数据对应路口的下一个时间段的真实流量值。
每个路口与一组矩阵相对应;所述特征矩阵中的数据包括路口的三种流量数据,分别为路口交通流量,及其对应的周平均交通流量和周众数交通流量;
特征矩阵的横向为时间轴,每个路口的每种流量数据为一行,自左而右按时间先后排序;纵向为空间轴,每个路口的三种流量数据为一组,自上而下按其他路口对与第一路口的影响大小排序。
本实施例采用CBOW模型在轨迹数据上发现路口间的影响关系,并以此为依据组合特征矩阵,可以发现距离较远而影响较大的路口集合;能找出路口间影响的强弱,只考虑影响最强的k(k≥1)个路口;而且路口影响因子可以动态获取,无需人为标注;特征矩阵中包含周平均数据和周众数数据,可以不止依赖实时交通流量进行预测,因此能够有效降低交通流量数据中异常值的不利影响。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。