一种基于掩码图注意力机制的交通路网编码表征学习方法
文献发布时间:2024-04-18 20:00:50
技术领域
本发明属于交通路网交通流处理领域,尤其涉及一种基于掩码图注意力机制的交通路网编码表征学习方法。
背景技术
随着国内城市现代化的快速发展与城市人口密度的不断增加,交通拥堵日益突出,为社会发展带来了巨大压力,成为了亟待解决的问题。改善城市交通状况需要交通规划者与管理者采取积极措施,对路网交通流进行科学有效的引导与分配将有助于缓解城市交通拥堵问题。近年来,随着城市基础设施不断完善、互联网通信技术的不断发展以及定位设备的广泛使用,大量的交通传感器分布到了道路设施以及个人终端当中,传感器数据已经达到了十分庞大的累积量。交通大数据的时代背景下,对交通大数据的处理分析技术作为智能交通系统重要组成部分无疑是不可或缺的研究重点。
当前,深度学习理论及模型在各个领域的研究愈发深入与广泛,图神经网络、交通流空间特征提取模型及序列表征模型的不断发展,使深度学习模型不断在非欧氏空间任务处理、交通流时空特征提取及序列深度表征等领域展现出显著的成功与巨大的潜力,但目前仍存在某些不足或空缺。路网空间信息提取模型存有缺陷,交通流处理领域也缺乏具有共性能力的预训练模型。此外,编码表征模型在文本处理领域已经得到了广泛的推广及应用,而其在对交通流序列处理领域仍显空白,如何使用序列表征模型及其预训练方法对路网交通流内在特征进行提取与挖掘是现有技术有待解决的一个问题。
发明目的
本发明的目的就是应对现有技术所面临的难题,针对路网交通流处理中的空间特征提取难点问题,提供一种基于掩码图注意力机制的交通路网编码表征学习方法。对于路网拓扑结构,将节点之间的空间邻接关系视作整个图结构的上下文关系,利用BERT强大的上下文语义提取能力解决图注意力网络对路网空间特征提取缺失的问题。使用Transformer编码层架构对图注意力网络的空间聚合能力进行增强,使其能对高阶邻接节点信息进行聚合;使用图注意力网络赋予Transformer编码层架构图数据处理能力,使其能对图数据进行上下文空间特征信息提取,设计并实现出具有强大空间特征提取能力的路网编码表征模型,对路网节点信息进行部分映射计算,并通过掩码预训练方式,使模型具有通用的空间特征提取能力,能在之后的研究中作为预训练模型支撑不同的交通任务,并减少不同应用场景下的训练成本,为在解决交通路网交通流建模问题中面临的空间特征提取难点提供有效的模型支撑。
发明内容
本发明提供了一种基于掩码图注意力机制的交通路网编码表征学习方法,具体包括以下步骤:
步骤1、结合双向编码表征模型及图注意力网络构建基于掩码图注意力机制的交通路网编码表征模型RNERT,通过掩码预训练方式训练模型的路网空间特征提取通用能力,支撑不同的交通任务;
步骤2、通过预训练后的RNERT模型对某个时刻的交通路网缺失值进行补全;
步骤3、基于RNERT构建交通路网门控循环网络GRU-RNERT,将RNERT作为预训练空间特征提取单元嵌入到循环神经网络中,参与门控单元计算,使其能够提取交通路网交通流中的时空多维特征,实现路网交通流时序建模。
优选地,所述步骤1具体进一步包括以下子步骤:
子步骤S11、模型输入,包括将交通流平均速度作为模型输入特征值,模型输入为某一时刻路网节点特征值矩阵与邻接矩阵;对特征矩阵做出归一化处理,采用最大最小标准化法将平均速度转换为[0,1]区间内的小数,计算方式表示为如式(1)所示:
子步骤S12、模型编码计算,所述路网编码表征模型由多个编码层Encoder构成,其输入通过多层编码传递将多阶邻接节点中的空间特征聚合到当前节点中,对输入的交通流特征矩阵进行表征计算,得到维度与输入相同且包含路网空间信息的节点特征矩阵;该节点特征矩阵是指在某一时刻路网所有路段中交通流指标组成的数据矩阵,节点指路网中的路段,节点特征值指路段上的交通流数据;路网邻接矩阵为0、1矩阵,表示不同路段节点间的连接关系,存在连接关系的两条路段在矩阵中的对应位置上赋值为1;所述编码层Encoder由多头图注意力层M-GAT、残差归一化层A&LN与多层感知机制前馈传递层MLP组成;所述路网编码表征模型的计算过程包括:将第l层编码层Encoder
s
s
s
h
其中,s
子步骤S13、模型掩码预训练,对输入进行随机掩码操作,按照15%比例将特征值置为0值或null,对进行过掩码操作的输入数据进行前向传播,并得出维度相同的输出;使用损失函数计算掩码区域真实值与模型输出值之间的误差损失,求解梯度,将误差进行反向传播,直到模型收敛。
优选地,所述多头图注意力层M-GAT的计算过程被表示为如式(6)-(8)所示:
其中,e
所述编码层中第一层的残差归一化层前向传递过程如式(9)-(12)所示:
a=(h
其中,a∈R
所述前馈传递层的计算方法如式(13)所示:
其中,W
优选地,所述步骤3进一步包括以下子步骤:
子步骤S31、模型输入,所述GRU-RNERT模型为步长为L的时间序列,对提取的节点特征值同样进行归一化处理,采用最大最小标准化法将平均速度转换为[0,1]区间内的小数;
子步骤S32、模型循环计算;所述GRU-RNERT模型的模型框架结合了门控循环网络与RNERT模型,通过RNERT单元提取空间信息提取能力,将模型嵌入到模型循环计算过程中,使记忆单元同时对时空特征进行重置与记忆,对模型输入序列中每一时刻的节点特征值、邻接矩阵与上一时刻模型输出,模型内部记忆单元对输入序列的时空信息进行记忆后,作为隐藏向量h继续输出,直到序列全部输入,传递公式为表示为式(14)-(15)所示:
h
h
h
...
h
y
其中,x
子步骤S33、模型时序建模任务训练,GRU-RNERT基于RNERT预训练模型实现,故模型训练被分为RNERT单元预训练与GRU-RNERT具体任务训练两部分;GRU-RNERT具体任务训练采用时序数据预测任务,通过对路网时序数据的外推与预测,训练模型的路网交通流序列时空特征提取能力,其中,ERTGAT单元参数不固定,将其预训练结果视作参数初始值,对模型全部参数进行训练调整;第二步模型训练采取有监督的梯度下降算法,输入步长为L的路网特征值矩阵时间序列,对序列进行下一时刻特征矩阵的外推,并将模型输出加入序列末尾继续作为输入进行后一步外推计算,最终计算模型输出与真实数据间的误差函数值并进行反向传播,更新模型参数,训练模型对路网时间序列数据中的空间与时间特征提取能力。
优选地,子步骤S32中,引入软注意力机制计算模型的最终输出,将GRU-RNERT模型最终的输出表示为如式(16)-(17)所示:
h'
y
其中,GRU-RNERT模型的具体计算流程如式(18)-(20)所示:
其中,e
优选地,对交通路网编码表征模型RNERT进行预训练拟合路网空间规律时选择均方误差作为损失函数,将MSE计算公式表示为如式(21)所示:
其中,n为样本总数;
优选地,所述GRU-RNERT模型的具体传递如式(22)-(27)所示:
r'=W
r=Sigmoid(RNERT(r',A)) (23),
z'=W
z=Sigmoid(RNERT(z',A)) (25)
h'
h
其中,W
附图说明
图1为本发明RNERT模型的结构示意图。
图2为本发明掩码训练法原理示意图。
图3为本发明GRU-RNERT模型计算原理示意图。
图4为本发明GRU-RNERT循环计算过程示意图。
图5为本发明引入软注意力机制的GRU-RNERT循环计算过程示意图
图6a-c为本发明不同超参数下的均方误差点线图。
图7为北京市“万柳桥—丽泽桥”不同时刻下掩码节点真实值与掩码节点模型输出结果对比图。
图8a-b为不同数据缺失率下的实验误差点线图。
图9为不同数据缺失率下的实验误差点线图。
图10a-c为不同数据缺失率下的模型补全效果对比图。
图11为GRU-RNERT模型超参数调优实验结果点线图。
图12a-c为不同预测步长结果平均误差点线图。
图13为本发明GRU-RNERT模型不同预测步长平均绝对误差分布箱型图。
图14为本发明各模型不同预测步长平均绝对误差分布箱型图。
图15a-d为本发明各模型不同预测步长结果对比图。
具体实施方式
下面结合附图和实例进一步说明本发明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本领域技术人员应当理解,文中所使用的步骤编号仅是为了方便描述,不对作为对步骤执行先后顺序的限定。在本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”可以包括复数形式。术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
图1是本发明RNERT模型的结构示意图。如图所示,RNERT模型的输入为节点特征值矩阵与路网邻接矩阵,输出为更新后的特征矩阵。节点特征矩阵是指在某一时刻路网所有路段中交通流指标组成的数据矩阵,仅仅表示该时刻的交通流特征值,而无法对空间关系进行描述,节点即为路网中的路段,节点特征值即为路段上的交通流数据。而路网邻接矩阵为0、1矩阵,表示了不同路段节点间的连接关系,存在连接关系的两条路段会在矩阵中的对应位置上赋值为1。对特征矩阵做出归一化处理,采用最大最小标准化法将平均速度转换为[0,1]区间内的小数,计算方式表示为如式(1)所示:
模型由多个编码层(Encoder)构成,输入通过多层编码传递将多阶邻接节点中的空间特征聚合到当前节点中,对输入的交通流特征矩阵进行表征计算,最终得到维度与输入相同且包含路网空间信息的节点特征矩阵。模型从输入到输出的过程中,完成了从邻接矩阵中的数据空间分布特征深度提取,并将其聚合到路网节点特征值当中,实现了从单纯多维向量输入到聚合了空间特征的特征矩阵的表征,用以支撑后续交通任务的解决。
模型编码层由多头图注意力层(Multi-Head Graph Attention Network,M-GAT)、残差归一化层(Add&Layer Norm,A&LN)与多层感知机前馈传递层(MultilayerPerceptron,MLP)组成,输入先通过多头注意力机制对路网空间信息进行更高一阶聚合,再通过残差归一化层进行层归一化计算,保证样本分布不变,最终通过前馈传递层进行线性计算与非线性激活,增加模型深度,提高模型拟合能力,适应数据非线性规律。
模型对输入进行多次编码计算,每次编码都会使得节点对更高阶的邻接节点信息进行聚合,多次编码后,完成对空间特征的完整提取,解决了图注意力网络无法提取高阶空间特征的缺陷。模型输入在各编码层的传递过程中,其维度始终保持不变,最终输出结果可以视作经过聚合路网空间信息的节点特征矩阵。
对模型编码层具体的计算过程进行进一步阐述,第l层编码层Encoder
s
s
s
h
其中,s
对编码层中的多头图注意力层、残差归一化层与前馈传递层做出进一步解释:
1)多头图注意力层
作为模型及编码层中的核心单元,多头图注意力层负责对输入矩阵的表征计算,从路网邻接矩阵中读取路网拓扑关系,根据路段的上下游邻接关系对节点特征值进行加权计算,对输入数据进行更新迭代,从而完成将空间特征从邻接矩阵提取到节点特征矩阵的过程,并随着输入在多个编码层的传递中,不断对节点特征值进行表征计算,实现多阶空间信息的聚合。
多头注意力层的核心为多头图注意力机制,使用多头注意力机制对路网空间特征进行提取,对节点特征值进行迭代,使空间信息得以聚合。通过多个独立的注意力层分别计算,并将输出进行拼接或平均处理,针对内在的不同特性分别进行处理,对空间特征进行更为全面的捕捉。其计算过程表示为如式(6)-(8)所示:
其中,e
为第k层图注意力网络的共享权值矩阵;a
多头注意力层通过向量拼接将模型输入从向量转变为高维矩阵,增强中间值的信息表达能力,使模型能更好的拟合数据集内在的复杂规律。
2)残差归一化层
残差归一化层先后通过残差与归一化计算解决了模型中可能存在的退化与内部协变量偏移问题,提高模型准确率,降低模型的训练难度。编码层中第一层残差归一化层前向传递过程如式(9)-(12)所示:
a=(h
其中,a∈R
3)前馈传递层
前馈传递层以全连接层的形式对输入进行维度变换,增加模型复杂度与深度,提高模型拟合能力,并且保证其在下一编码层输入维度符合要求。计算方法如式(13)所示:
其中,W
在具备结构基础后,利用路网数据集对其进行预训练,使其充分发挥模型空间提取能力,高度拟合路网空间规律。为了更好的使模型能拟合交通路网空间规律,使用回归任务对模型进行训练。为了实现更好的模型收敛效果,选择均方误差作为损失函数。MSE计算公式如公式所示:
其中,n为样本总数;
作为一个预训练模型,为了使RNERT模型对路网空间特征进行高度拟合,在解决具体交通问题时能充分提取路网交通流空间特征,并对模型的空间特征提取能力进行充分验证,本文采取自监督掩码(mask)预训练方法,不面向具体的下游任务,避免具体任务对模型训练产生的影响,训练并验证模型在空间特征提取方面的通用能力。
图2为本发明掩码训练法原理示意图。如图2所示,掩码训练法是指对输入进行随机掩码操作,按照比例将一定个数的特征值置为0值或null,对进行过掩码操作的输入数据进行前向传播,并得出维度相同的输出。本发明对节点的具体掩码操作为将节点特征值置为零值,即将对应路段的平均速度置为零值,根据模型具体前向传递过程可知,RNERT模型编码层中对路网空间信息进行聚合的过程发生在多头图注意力计算当中。对参与计算的特征矩阵进行随机掩码后,被选中的节点在与具有邻接关系的其余路网节点计算节点重要度及注意力系数并进行最终加权相加时,由于此刻被选中节点已经被置为零值,所以对于其余节点来说,零值节点并不参与最后的加权计算,而对于被选中节点,其余节点的特征值仍会聚合到该位置上。所以,在RNERT模型掩码训练中采用将节点特征值置为零值的方法,不会对其余节点的空间信息聚合造成额外影响,同时也能确保被遮盖节点的空间信息聚合过程顺利进行。
RNERT模型的掩码训练方式可以使其作为一个预训练模型支持具体的下游交通任务。掩码训练不面向具体的交通问题,仅仅对模型的空间特征能力进行训练,在解决具体交通问题时,通过对模型参数的进一步微调实现对任务的适配,可以极大的减少模型应用中的训练成本与样本量要求,提高其在各个任务中的表现。
在掩码训练中特征矩阵掩码率的选择上也需要进行多方面的考虑,对模型采用掩码预训练方式进行训练其目的是为了使模型具备对空间特征的提取能力,而不是解决具体交通任务。掩码率设置过小,在随机进行掩码节点选择的前提下,节点无法均匀分布于整个路网空间中,在此基础上进行训练会导致模型过分关注于小部分节点的还原补全,无法对整个路网的空间拓扑结构进行全面提取。这种情况下,会导致模型在从路网邻接矩阵中提取空间结构并在节点特征矩阵中进行空间信息聚合时,产生空间信息向少部分节点进行过分倾斜的情况发生,训练完成后的模型也无法作为预训练模块为具体交通任务中的空间特征提取进行足够有有力的支撑。当掩码率设置过大时,对数据集造成的信息损失过大,模型无法从残缺的特征矩阵中提取到足够的空间规律,无法对模型参数进行进一步的训练迭代,导致训练后的模型对数据集的内在空间特征拟合度不够,同样无法对后续在具体交通任务的解决上提供有力支持。因此,本发明结合多方因素综合考虑与具体实验结果,掩码预训练中对输入数据的掩码率设置为0.15。
(2)基于掩码图注意力编码表示的数据补全研究
作为智能交通系统的基础,交通数据的采集在实际应用中会受到各种不确定因素的影响,这些因素都可能会导致数据采集受到干扰,造成交通数据的缺失或错误,为数据采集和分析工作带来了种种挑战。目前,交通数据缺失问题仍然十分严重,这种数据缺失或错误的现象对于后续基于交通数据的研究和应用也带来了挑战。交通数据的缺失往往会影响交通管理和应用的精度和效果。同时,数据缺失还可能导致许多数据分析方法失去可用性。
对于交通数据缺失值的填补,当前较为主流的方法多基于多时刻交通流序列进行数据恢复,需要从交通流时序数据中捕捉特征进行对缺失值的计算或生成。当存在类似于数据缺失情况较为分散,某条路段交通流数据缺失严重,无法从时间序列角度为数据补全提供足够特征的情况时,需要考虑从路网空间结构出发,利用当前时刻的其余路段数据及路段间的邻接关系对缺失值进行估计。面临只有单时刻路网交通流的数据缺失情况时,当前方法大多无法只利用路网中其余节点值对缺失值进行计算补全,这使数据补全方法的应用场景受到了巨大的限制。
根据RNERT模型设计实现及模型实验可得,RNERT模型作为预训练模型,通过随机掩码训练方式对路网空间特征的提取进行了充分的学习。能将路网中的路段连接关系表征于路网节点特征值矩阵中,使特征值矩阵从互不相关的多维向量变为聚合了路网空间特征信息的特征向量,这种有效的空间特征提取能力无疑为路网数据缺失值的补全提供了可行的解决方法。
根据模型训练法的详解描述可以得知,在RNERT模型采用的掩码训练中,模型输入为被掩码的路网交通流特征矩阵,输出为掩码节点经过表征的交通流特征矩阵。在对模型进行损失函数计算与误差反向传播时,模型误差由掩码节点原值和掩码位置表征值计算得出,所以随着RNERT在掩码预训练过程中对空间特征提取能力学习的不断加深,模型也能实现对掩码节点的数据还原。这与路网缺失值的补全任务极为相似,由于RNERT在经过训练过程中的参数调优后已经具备了良好的掩码值还原效果,并且为了表现RNERT作为预训练模型在具体交通任务解决中的表现,本发明直接使用训练完成的RNERT模型对单个时刻路网节点交通流缺失值进行补全。
(3)基于图注意力编码表示的交通路网门控循环网络
循环神经网络在拟合时间序列特征上拥有卓越的表现,但是在解决交通路网交通流深度学习建模问题时对时,单纯使用每一时刻路网数据以向量形式作为模型输入,会导致其路网拓扑结构信息丢失,路网数据仅仅被当作多节点数据处理。为了兼顾对数据空间规律的挖掘,需要使用具有强大空间特征提取能力的模型架构。RNERT模型强大的空间信息提取能力与对输入节点特征矩阵进行深度空间信息聚合的独特机制使其可以用来解决传统循环神经网络记忆单元无法记忆空间信息的问题。本发明将RNERT预训练模型作为嵌入式单元,参与到其门控单元计算过程中,从邻接矩阵中提取空间信息并将其聚合到输入矩阵的同时,将时空多维度因素纳入到门控单元的计算中去,构造可以对路网交通流数据进行时空多维特征提取的模型。
图3是GRU-RNERT模型计算原理示意图。如图3所示,GRU-RNERT模型的模型框架结合了门控循环网络与RNERT模型的设计特点,通过RNERT单元强大的空间信息提取能力,将模型嵌入到模型循环计算过程中,使记忆单元不再像传统循环神经网络一般只记忆序列中的时间特征,而是同时对时空特征进行重置与记忆。
模型的输入为当前时刻的路网节点特征矩阵、空间邻接矩阵与前一时刻模型输出的隐藏值,对前一时刻隐藏矩阵与输入矩阵进行横向拼接操作,通过与权值矩阵线性相乘得到维度还原后的临时值,通过RNERT单元计算与激活函数得到模型重置门与更新门。其中,重置门负责决定前一时刻隐藏值有多少能参与到当前时刻的计算当中,并与当前输入进一步计算出当前时刻的临时隐藏值;更新门负责最后模型隐藏值得输出计算,决定输出中前一时刻隐藏值与临时值的各自占比,更新门越大,表示最终输出中前一时刻隐藏值占比更大。得到当前时刻的隐藏值后,继续循环计算,将其作为下一时刻模型的输入,直到输入序列中的所有时刻都计算完成。
因为有RNERT单元的参与,GRU-RNERT模型输入不再是单纯的高维矩阵数据,而是具有拓扑空间结构的路网交通流数据。RNERT单元参与到模型重置门、更新门与临时隐藏值的计算过程中,对特征值进行更新,使其聚合一定邻接范围内的上下文空间信息,使模型在记忆与更新迭代序列信息时,充分考虑到了路网的空间结构与数据中的空间特征。因此模型不再是单纯的时序数据处理模型,而是同时关注于时空多特征提取与规律拟合的神经网络。GRU-RNERT模型的具体传递如式(22)-(27)所示:
r'=W
r=Sigmoid(RNERT(r',A)) (23),
z'=W
z=Sigmoid(RNERT(z',A)) (25)
h'
h
其中,W
图4是GRU-RNERT循环计算过程示意图。如图4所示,对模型输入序列中每一时刻的节点特征值、邻接矩阵与上一时刻模型输出,模型内部记忆单元对输入序列的时空信息进行记忆后,作为隐藏向量h继续输出,直到序列全部输入。式(14)-(15)所示:
h
h
h
...
h
y
其中,x
为了解决在交通流预测中序列过长导致的信息丢失问题,本节对GRU-RNERT模型的循环过程进行进一步改进。图5是引入软注意力机制的GRU-RNERT循环计算过程示意图。如图5所示,继续引入软注意力机制(Soft Attention)计算模型的最终输出,提高GRU-RNERT模型的最终表现,为交通流预测问题提供更可靠的模型方法。GRU-RNERT(Att)模型最终的输出如式(16)-(17)所示:
h'
y
其中,Att(·)的具体计算流程如式(18)-(20)所示:
其中,e
GRU-RNERT基于RNERT预训练模型实现,故模型训练被分为两步实现,分别为RNERT单元预训练与GRU-RNERT具体任务训练,以便于提高训练效率,减少训练时间以及验证RNERT模型的共性能力。GRU-RNERT模型的具体训练任务采用时序数据预测任务,这也是传统循环神经网络常采用的训练方式,通过对路网时序数据的外推与预测,训练模型的路网交通流序列时空特征提取能力,通过模型训练结果与测试集表现,验证GRU-RNERT在路网交通流预测中的优越性以及RNERT预训练模型在路网交通流建模中起到的增益效果。
GRU-RNERT具体任务训练中,ERTGAT单元参数并不固定,而是将其预训练结果视作参数初始值,对模型全部参数进行训练调整。一方面,这种训练方式使得模型训练开销降低,另一方面,对预训练后的ERTGAT单元参数继续调整,可以使模型对预测任务拟合度更高,避免预训练中掩码训练对单元影响过大导致模型对预测任务不敏感。第二步模型训练采取有监督的梯度下降算法,输入步长为L的路网特征值矩阵时间序列,对序列进行下一时刻特征矩阵的外推,并将模型输出加入序列末尾继续作为输入进行后一步外推计算,最终计算模型输出与真实数据间的误差函数值并进行反向传播,更新模型参数,训练模型对路网时间序列数据中的空间与时间特征提取能力,并在训练过程中引入Adam优化器对模型收敛过程进行优化。不同于无监督学习,有监督学习需要给予模型输入特征值以标签值,即输出对应的真实值,以一对输入特征与标签值为样本数据对,构造训练数据集
实施例
本实施例使用的所有数据均是北京市路网交通流数据,每条交通流数据包含五个属性字段,分别为时间、路段名称、路段长度、拥堵指数以及平均速度,采集时间粒度为5分钟,采集时间段为2019年12月7日至2020年1月17日,路段数为250。
为使用图结构对已有交通路网交通流进行表示,将路网中的每条路段都视作一个节点,对路网特征矩阵的提取将从两方面进行,一方面为节点特征值矩阵的构造,包含了路网中某一时刻所有路段的交通流平均速度;另一方面为对路网拓扑关系邻接矩阵的构造,包含了路网中所有路段之间的相互连接关系,两个矩阵共同表示图结构下的交通路网交通流数据。
(1)RNERT模型预训练实验
通过大量的超参数取值实验,对不同超参数组合下的验证集误差值进行比对,取最优结果所在的一定取值区间内的实验MSE结果进行图表展示,实验结果具体值如表3所示。图6为不同超参数下的均方误差点线图,如图6所示,对表中的MSE进行点线图绘制,方便对实验结果进行比对分析。
学习率作为人工神经网络训练中不可或缺的重要超参数,决定了模型参数迭代更新的步长大小,学习率的正确设置会使模型更快的找到全局最优解。
表3 RNERT模型超参数调优实验均方误差结果
/>
如图6中所示,模型合适的学习率LR取值为0.005。除学习率外,实验还对图注意力头数K与前馈传递层隐层结点数F进行超参数调优。结合实验结果及具体分析,为使模型找到复杂度平衡点,实现全局最优解处收敛,达到最佳空间特征提取效果,模型的超参数LR、K与F分别取值0.005、5与6。
完成模型超参数调优后,采用最优超参数组合进行模型训练,完成对路网空间特征提取的学习,并使用测试集数据对模型效果做出初步评判。模型测试集采取与训练集相同的掩码率,最终求得所有输出平均MAE为3.0695km/h,MSE为18.9827,MAPE为6.1789%。表明模型经过训练后能够对路网空间特征进行深度提取并将信息聚合于掩码节点上,实现掩码值的生成,达到掩码预训练的预期效果。
将测试集中单时刻路网数据进行掩码后,作为模型输入得到相应输出值,为了更为直观的对模型训练结果做出评价,图7为北京市“万柳桥—丽泽桥”不同时刻下掩码节点真实值与掩码节点模型输出结果对比图。如图7所示,在所有被掩码路段中选出路段序号最小的“万柳桥—丽泽桥”路段,对测试集中该路段在不同时刻下的交通流平均速度真实值与模型输出值进行比对。可以看出,模型在被掩码节点的输出值与节点交通流真实值十分相近,这说明被掩码后的零值路网节点能够充分的提取并聚合高阶邻接路段中的交通流信息从而对本路段的交通流数据进行还原。此外,即使模型输入为单时刻路网特征矩阵,输入中仅存在路网空间特征而无交通流序列时间特征,但将模型输出按照时间顺序进行排列后,仍然能够拟合完整的路段交通流特征值时间变化趋势。这充分说明路网中的空间依赖关系十分强大,仅仅凭借同一时刻路网中的空间特征就能对掩码路段交通流信息进行准确的推断,更说明RNERT模型经过训练与学习已经具备了强大的交通路网空间特征提取与聚合能力,能够对路网连接拓扑结构中的空间依赖进行完整与深度的挖掘,将路网邻接矩阵中的路段连接关系聚合到交通流节点特征矩阵中,完成对单个时刻路网交通流特征矩阵的空间特征表征。
综上所述,模型在测试集中的表现较为良好,说明RNERT模型具有强大的路网空间特征提取能力,能对路网交通流中复杂的空间依赖关系与规律进行深度挖掘与拟合。
(2)交通路网交通流缺失数据补全实验
实验中分别采用5%、10%、15%、20%、30%、40%、50%、60%与70%的掩码率对测试集中路网节点数据进行随机遮盖,模拟现实情况中不同程度的交通流数据缺失问题,此时掩码率又可称为数据缺失率。将掩码数据输入RNERT预训练模型,利用同时刻的路网交通流数据对缺失值进行补全,不同数据缺失率下的模型实验结果平均误差如表5所示。
表5不同数据缺失率下的补全结果平均误差
/>
图8为不同数据缺失率下的实验误差点线图。如图所示,图8分别对MSE、MAE与MAPE、RMSE进行了点线图绘制。不难看出,当数据缺失率由5%开始逐渐升高直到70%时,测试集误差变化趋势为先减小后变大,但总体上与缺失率呈现正相关性。
当数据缺失率处于5%到20%的区间中时,误差值均处于较低水平,相互之间差值较小,点线图趋势较为平稳,但同时具有先减小后增大的变化趋势,误差值在15%处达到极小值。这是因为数据缺失率较小时,数据缺失节点数量较少,分布在整个路网中不会对路网整体空间信息造成太大影响,利用缺失节点周边的高阶邻接节点,可以完成对缺失值较为准确的还原或补全。从5%到20%,各个缺失率下造成的数据缺失都较为有限,故模型能实现较好的补全效果,使最终误差值处于较低水平,且各缺失率下不会产生太大差异。此外,受到RNERT模型预训练时数据掩码率取值的影响,模型在数据缺失率为15%的情况下表现会略优于其余缺失值情况,故点线图会呈现出先减小后增加的趋势变化,在15%除形成极值点。
当缺失率到达20%到50%区间内,误差值随缺失率的增大而增大,并出现较大涨幅,这是因为此时路网中数据缺失路段数的增加,开始对路网整体空间信息产生破坏,但留存的有效路段仍然达到半数及以上,能够为数据的补全提供足够的信息。当缺失率到达50%以上时,此时路网中半数以上路段出现数据缺失情况,路网中出现大面积的信息丢失,对路网中的空间特征信息造成较大的破坏,仅存的交通流特征值逐渐开始不能为缺失数据补全提供足够的空间特征支持。
实验评价指标平均值与其变化趋势曲线的绘制不足以让我们对实验结果进行更加深入的分析。图9为不同数据缺失率下的实验误差点线图。如图9所示,求得不同数据缺失率下,各时刻缺失数据补全MAE平均值,并依据MAE分布制作箱型图,显示其最大最小值、中位数、四分位数及三四分位数。由箱型图可以看出,不仅仅是评价指标平均值,MAE的整体分布同样也随着数据缺失率的增大呈现先降低后上升的情况,这与上文中的结果分析相互印证。此外,随着数据确实率的增大,MAE四分位至三四分位的分布范围与极致范围也在扩大,这说明模型补全结果的稳定性也在随着空间特征的丢失而降低,对某些邻接空间信息丢失严重的路段进行补全更为困难,产生了较大的误差极值。
但从总体上讲,RNERT模型在实验中取得了较为优越的效果,经过预训练后,模型没有通过对具体任务的微调与下游网络结构的拓展,只依托于预训练模型本身就可不依靠时间序列特征,实现对单时刻路网交通流缺失值的补全。并且在数据缺失量位于5%到30%的范围内时,可以达到MAPE为6.2304%到11.3785%的补全效果。即使缺失量达到40%甚至50%,仅有一半的数据可用,模型仍然能以MAPE为12%的精度对缺失值进行补全。此外,RNERT模型的交通缺失数据补全应用更适用于路网数据,且模型输入并不需要多步时序交通流数据,仅仅凭借单时刻路网节点特征值与路网邻接关系矩阵就可通过对空间特征的深度提取进行补全计算。
对实验总体效果进行分析评价后,选取路网中的某条路段对在其上的数据补全结果进行分析,进一步评价模型在具体路段上的表现。为了方便进行统一的实验结果比对,在进行具体路段效果分析时,除去随机掩码选择外,对特定路段进行指定掩码操作,控制模型输入数据的掩码节点中存在“万柳桥—丽泽桥”这一路段节点,模拟出该条路段数据全部缺失的情景。图10为不同数据缺失率下的模型补全效果对比图。如图10所示,对路网中数据缺失率为5%到70%范围内的不同实验补全结果按照时间顺序进行绘制。
由图10可以看出,当缺失率较小时,补全值与真实值十分相近,随着缺失率增大,补全值与真实值间差值逐渐增大。但几乎所有缺失率下,模型输出值都可以对交通流的变化趋势进行一定的拟合,尤其是当数据缺失率较小时,模型输出与节点真实值曲线尤为相近。在没有输入时间序列的前提下,模型仅仅通过对单时刻的路网特征提取就得到了当前效果,既能保证缺失值补全准确度,又降低了数据补全的样本要求。
综上所述,RNERT模型在交通数据缺失补全的应用中取得了良好的效果,在仅仅依靠某一时刻路网其余路段交通流数据的情况下,就能实现对缺失路段数据的准确补全。并且,针对不同的数据缺失率下,模型均表现出了较为卓越的效果,在缺失率小于甚至等于50%的情形下,模型可以对缺失值进行较小误差的有效补全,具有显著的应用价值;在缺失率大于50%甚至达到70%的情形下,模型仍然能对交通流变化趋势进行估计还原,具有重要的指导意义。同时,这也论证了RNERT模型确实具备十分强大的空间特征提取能力,可以作为预训练模型快速适应具体的交通数据缺失补全任务,并取得可观的应用效果。
(3)路网交通流时序建模实验
模型需要通过进行实验调优的超参数为学习率初始值LR,部分超参数调优实验结果如表6所示,为了对模型误差随着LR的变化趋势进行分析。图11为GRU-RNERT模型超参数调优实验结果点线图。如图11所示,将实验结果绘制以点线图的形式进行分析比对。
结合点线图可知,模型学习率初始值在小于0.01的区间内时,模型参数随梯度下降方向的更新没有足够的步长,无法在全局最优点进行收敛,容易陷入局部最小值点。当学习率初始值大于0.01时,模型参数调整步长过大,同样无法准确的在最优解处收敛,导致模型最终训练效果欠佳,结果误差上升。综上所述,本文将选取0.01作为GRU-RNERT模型的学习率初始值,使模型达到最佳收敛效果。
表6GRU-RNERT模型超参数调优实验结果
为了对模型在交通流预测中的表现进行更为全面的分析,模型在训练完成后,对测试集的输入进行了多步外推计算。其具体计算流程为将外推结果加入序列末尾重新作为模型输入进行下一次前向传递,最终得到输入序列的多步外推序列。实验所采用的数据集中数据采集粒度为5min,故模型每进行一步外推计算,就是对5min后的路网交通流进行一次预测。实验中利用模型对测试集输入进行了最大为10步即60min的外推计算,表7中分别展示了GRU-RNERT与引入了软注意力机制的GRU-RNERT(Att)模型不同步长外推即对不同未来时长交通流进行预测的结果误差指标平均值。
表7不同预测步长结果平均误差
可以看出,MSE、MAE及MAPE三项评价指标表明GRU-RNERT(Att)与GRU-RNERT模型展现出了优秀的预测效果,这表明从平均误差角度来看,GRU-RNERT(Att)与GRU-RNERT模型误差更小,对路网时序的预测更为准确。在对误差指标平均值变化趋势进行分析后,进一步计算不同预测步长下的模型误差分布。图12a-c为不同预测步长结果平均误差点线图。GRU-RNERT的MAE分布状况如图13所示,可以看出,随着预测步长的增加,模型的误差整体分布也呈现着不断上升的趋势。这说明在将模型输出加入输入序列末尾继续对序列外推的过程中,模型输出中的偏差不断累积,使预测值与真实值误差不断增大。这也是由于输入序列中的时空特征逐渐失真,模型提取到错误的特征值并基于此对下一时刻交通流进行预测,导致特征的失真更为严重,如此循环往复,最终造成了模型输出误差随着预测时间步长增加而增大的现象。图14为各模型不同预测步长平均绝对误差分布箱型图。如图所示,通过对模型的误差评价指标可以看出GRU-RNERT模型在路网交通流预测的表现上确实优于传统的循环神经网络,其在对多步预测中信息失真现象的抗性也更加优越。
对模型输出整体误差均值及分布进行统计分析后,继续研究模型在单个路段上的交通流预测表现,图15为各模型不同预测步长结果对比图。如图15所示,绘制GRU、GRU-RNERT与GRU-RNERT(Att)在“马甸桥—蓟门桥”路段上的不同时间步长预测情况。可以看出,虽然模型输出能拟合出真实交通流总体变化趋势,但随着预测步长的增加,四种模型曲线与真实值曲线的贴合度逐渐减弱。如曲线图中所示,在对30min与60min后的交通流进行预测时,由于多步预测中的误差累积,模型输出出现类似于曲线整体滞后的现象,但不难看出,GRU-RNERT(Att)的滞后现象最弱,GRU-RNERT次之,而GRU模型最严重。结合前文中的分析表述,这说明GRU-RNERT(Att)与GRU-RNERT由于具有RNERT空间特征提取的模型结构基础,相较于GRU,二者对路网交通流的内在规律有着更为准确的拟合,能对数据的内在特征从时间与空间多维度进行更为深度与全面的捕捉,导致其对时间序列的外推更为准确,误差更小,并且在多步外推中有着更小的误差累积,取得比GRU模型更好的表现。
综上所述,RNERT预训练模型在路网交通流预测的应用中效果显著,基于RNERT实现的GRU-RNERT模型相较于传统循环神经网络,不仅能记忆时序数据中的时间信息,还能利用强大的空间特征提取单元完成空间信息的提取与聚合,对路网交通流时序数据的内在特征进行更为全面的记忆,以至于能在利用时空特征对序列进行外推时取得比基准模型更为优秀的效果。此外,GRU-RNERT还能在路网交通流时序的多步预测中通过获得更多的特征信息,降低模型误差,从而减小多步预测中的误差累积程度,抵抗来自于输入序列中错误信息的干扰,这些优秀表现使得RNERT与GRU-RNERT模型为路网时序建模提供了更多的模型基础。
实验最终表明,RNERT模型在经过预训练后确实具有强大的路网空间特征提取能力,且能快速适应路网交通流预测任务,支撑具体的下游交通问题,而基于RNERT提出的GRU-RNERT模型也能为路网交通流预测提供可靠有效的模型方法。
- 一种螺头角度可调式多角度固定螺钉
- 一种头部放射治疗用可调角度的固定设备
- 一种眼科手术用可调式头部固定设备