本发明涉及本发明涉及交通流预测领域,特别涉及一种基于自适应二维图卷积的起讫点交通流量预测方法。
背景技术:
1、随着城市化进程的加快,大量的人口向城市聚集,城市之间的旅客与货物往来也愈加频繁。截止到2020年末,全国高速公路总里程达15.29万公里。高速公路使得城市之间的通行快捷、便利,公众越来越多选择高速公路作为出行方式,而城市之间的大规模的客货流动向交通系统施加了巨大的压力。起讫点交通流量预测是指从大量的历史交通数据中,提取内在规律,预测研究范围内未来一段时间内由某区域出发驶向另一区域的车流量,即区域之间的交通流量。基于高速公路收费数据的起讫点交通流量预测在高速公路交通管理和区域经济发展指示等方面,具有重大现实意义,一方面,区域间的起讫点交通流量能够反映两者之间的货物和旅客往来规模,可以作为反映两地之间的经济联系重要指标。另一方面,区域之间的起讫点交通流量预测能够为交通管理部门拥堵疏散、路线规划提供决策支撑。
2、国内外学者在起讫点交通流量预测领域使用了诸多方法进行了深度探索,按照时间发展脉络,大致可以分为统计分析方法、机器学习方法和深度学习方法,其中深度学习的方法在近期研究中使用频繁。该类方法在交通流量预测问题上,着重关注空间依赖性捕获和时间依赖性捕获。yub等人提出stgcn进行交通流量预测,该模型使用切比雪夫一阶近似后的图卷积进行空间依赖性捕获,采用门控线性单元进行时间依赖性捕获。wuz等人提出mtgnn,该模型使用节点嵌入矩阵生成自适应邻接矩阵,通过自适应图卷积进行空间依赖性捕获,在捕获时间依赖性方面,使用多尺度一维膨胀卷积,取得了较好的预测效果。
3、但是上述方法存在以下问题:图邻接矩阵的构建依赖于节点距离等先验条件,该类邻接矩阵对节点联系的表征能力较弱,尽管有模型使用自适应邻接矩阵,以期捕获节点间深层次的空间依赖关系,但是起讫点交通流量预测问题具有其自身特点,即起讫点交通流量数据具有起点和终点两个维度,单个维度的图卷积无法完全捕获节点在作为起点和终点时所具有的不同的空间依赖关系;此外诸多文章采用lstm或gru对交通流量数据进行时间依赖性的捕获,该类方法设计了多个门控,以期获取长期和短期的时间依赖关系,但是复杂的门控机制使得模型训练的时间开销较大。因此本发明提出一种基于自适应二维图卷积的起讫点交通流量预测方法,使用自适应二维图卷积进行空间依赖性捕获,在此基础上与时间卷积网络多层堆叠,综合捕获起讫点交通流量数据之间的时空依赖关系。
技术实现思路
1、针对上述技术问题,本发明拟解决的技术问题是,提出一种基于自适应二维图卷积的起讫点交通流量预测方法,该方法在起点维度和终点维度分别建立自适应邻接矩阵,从两个角度对起讫点交通流量数据进行图卷积,充分捕获节点在作为起点和终点时不同的空间依赖关系;使用时间卷积网络捕获不同时间片数据之间的时间依赖关系,能够充分捕获起讫点交通流量数据的时空依赖关系,从而提高了预测精度。
2、本技术的核心创新点有两个:一是在捕获空间依赖性方面提出自适应二维图卷积,其具体做法为:在起点和终点两个维度建立节点嵌入矩阵;使用起点和终点两个维度的节点嵌入矩阵,构建起点和终点两个维度的自适应邻接矩阵;从两个角度对起讫点交通流量数据进行自适应二维图卷积。二是将自适应二维图卷积和时间卷积网络进行多层堆叠,并使用残差连接,防止过拟合现象,在此基础上构建时空卷积块,同时捕获空间依赖性和时间依赖性。
3、本发明解决所述技术问题采用的技术方案是:
4、一种基于自适应二维图卷积的起讫点交通流量预测方法,所述预测方法包括以下内容:
5、s1.依据实际场景中的县级行政区划,将整个研究范围划分为n个区域,根据区域内监测点所采集的原始数据表中入口收费站编号和出口收费站编号,以及收费站基本信息表,确定每个行程的起点区域编号和终点区域编号,根据驶入入口收费站时间确定其所在的时间片编号;初始化为一个全零的三维张量,遍历原始数据表中的每一条记录,确定每条记录所对应的起点区域编号、终点区域编号和时间片编号,将三维张量中对应位置的元素值加一,直至将整个原始数据表所有记录遍历完毕,最终得到的三维张量即为所构建的起讫点交通流量数据集;
6、s2.构建基于自适应二维图卷积的起讫点交通流量预测模型:
7、所述基于自适应二维图卷积的起讫点交通流量预测模型包括多层堆叠的时空卷积块和二维卷积层,所述多层堆叠的时空卷积块依次串联,最后一个时空卷积块的输出连接所述二维卷积层;所述二维卷积层的卷积核大小设置为(t-τ+1)×f,其中,τ表示模型输出的时间片数量,t表示模型输入的时间片数量;f表示隐藏层节点特征维度,隐藏层是模型中除输入和输出之外的层状结构,这包括下文所介绍的自适应二维图卷积模块和时间卷积模块所构成的层状结构;
8、所有时空卷积块结构相同,每个时空卷积块包括由t个自适应二维图卷积模块2d-agcn和一个时间卷积模块tcn串联构成的串联结构;每个时间片的起讫点交通流量数据经一个自适应二维图卷积模块2d-agcn连接时间卷积模块tcn的输入,时间卷积模块tcn的输入为t;所述串联结构的数量为m个,m为不小于1的整数,所有串联结构的输出与第一个串联结构的输入进行矩阵加法运算,构成残差连接,残差连接后的结果为时空卷积块的输出;
9、所述自适应二维图卷积模块在起点和终点两个维度进行图卷积操作;
10、s3.模型训练:将起讫点交通流量数据集按比例划分为训练集、验证集和测试集,模型在训练集和验证集上进行参数更新,损失最小时的模型为最优模型,以最优模型用于起讫点交通流量预测。
11、所述起讫点交通流量数据集的构建过程是:
12、s1.1.依据实际场景中的县级行政区划,将整个研究范围划分为n个区域,每个区域内入口收费站和出口收费站布置一定数量的传感器,用于采集对应位置的原始数据表,原始数据表的关键字段有行程编号pass_id,车辆自驶入入口收费站至驶出出口收费站称为一次行程,pass_id为行程的唯一标识;入口收费站编号start_sta_id;出口收费站编号end_sta_id;起始时间start_time,表示车辆驶入入口收费站的时间;
13、s1.2.获取收费站基本信息表,根据收费站基本信息表构建由收费站编号到区域编号的映射,记为dict_l,具体方法是:收费站基本信息表中关键字段有收费站编号sta_id、收费站经度lng和收费站纬度lat,使用arcgis软件进行空间分析,根据收费站的经度和纬度,将收费站点位投射到相应的县级行政区划区域内,再将收费站所属区域的区域编号作为一个字段值添加到收费站基本信息表中,从而完成该映射的建立;
14、s1.3.构建由起始时间时间到时间片编号的映射,记为dict_2,具体方法是:以原始数据表中最早时间作为时间起点,设定时间片长度为s分钟,每s分钟作为一个时间片,共划分有个时间片,通过界定起始时间处在哪个时间片的时间范围来确定起始时间对应的时间片编号,从而完成该映射的建立;
15、s1.4.通过遍历原始数据表,使用前两步所建立的两个映射,构建起讫点交通流量数据集,具体是:
16、初始化全零的三维张量χ,其中,三维张量的第一个维度表示起点维度,第二个维度表示终点维度,第三个维度表示时间维度,表示根据原始数据表的时间跨度所划分的时间片数量;
17、然后,遍历原始数据表中的每一条记录,根据start_sta_id和dict_1得到该条记录对应的起点区域编号start_area_id,根据end_sta_id和dict_1得到该条记录对应的终点区域编号end_area_id,根据start_time和dict_2得到该条记录对应的时间片编号time_id,则张量χ中的元素xstart_area_idend_areaid,time_id的值加一;重复此步骤直至原始数据表中的所有记录遍历完毕,则最终得到的三维张量即为所构建的起讫点交通流量数据集;
18、个时间片内的起讫点交通流量数据构成起讫点交通流量数据集,在数据集中选取t个时间片的数据作为一个样本为模型的输入,每个时间片的数据各自输入到2d-agcn中。
19、所述自适应二维图卷积模块的获取过程是:将实际场景中的区域抽象为图结构中的节点,将整个研究范围内的所有区域所构成的交通网络进行抽象化,表示为图结构,则实际场景中的区域与图结构中的节点一一对应,采用如下公式表示场景中划分的区域所构成的交通网络:
20、
21、其中v表示节点集合,即划分的区域集合;v∈v表示其中的节点,即某一区域,;|v|=n表示节点数量,即区域数量,节点数量与区域数量相同;ε表示交通网络中的边集;表示交通网络中的邻接矩阵,邻接矩阵中第i行第j列的元素aij表示节点vi与节点vj关联程度;
22、使用softmax函数和relu函数进行归一化处理,从起点角度建立自适应的邻接矩阵
23、
24、其中,表示图中n个节点的嵌入矩阵,d表示节点嵌入的维度;表示eo的转置矩阵;
25、使用softmax函数和relu函数进行归一化处理,从终点角度建立自适应的邻接矩阵
26、
27、其中,表示图中n个节点的嵌入矩阵,d为节点嵌入的维度;表示ed的转置矩阵;
28、同时对输入的起讫点交通流量数据进行自适应的二维图卷积操作,用公式(6)表示:
29、
30、其中,分别表示自适应二维图卷积模块的输入和输出;表示参数矩阵;表示偏置矩阵;σ(·)表示sigmoid函数;×o表示在起点维度图卷积;×d表示在终点维度图卷积;×c表示在特征维度卷积;分别表示起点和终点的自适应邻接矩阵;d表示节点嵌入的维度;分别表示起点和终点的嵌入矩阵。
31、所述串联结构的数量为2个,时空卷积块以历史上t个时间片的起讫点交通流量数据{x1,x2,…,xt}为输入,将该输入复制一份,这两份输入具有不同的数据流向:
32、其中一份输入首先进行空间依赖性的捕获,分别对每个时间片的数据输入到自适应二维图卷积模块进行处理;然后将得到的输出作为时间卷积模块的输入,进行时间卷积,捕获其时间依赖性;按照上述步骤重复运算一次,即将自适应二维图卷积模块和时间卷积模块堆叠两次;
33、另外一份输入则不进行卷积运算,而是与两次堆叠后的结果进行矩阵加法运算,构成残差连接,最终该时空卷积块的输出为
34、本发明还保护一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时可实现所述预测方法的步骤。
35、与现有技术相比,本发明的有益效果是:
36、本发明基于自适应二维图卷积的起讫点交通流量预测方法在起讫点交通流量数据的起点维度和终点维度分别生成起点嵌入矩阵和终点嵌入矩阵,在此基础上建立了起点和终点维度的自适应邻接矩阵,通过在两个维度上进行图卷积,充分捕获节点在分别作为起点和终点时不同的空间依赖关系。为验证该方法的有效性,在起讫点交通流量数据集上进行了相关实验,实验表明,相较于同类的其他模型,该模型能够取得较好的预测效果。