1.一种面向区域流量预测的时空全局语义表示学习方法,其特征在于:包括如下步骤:S1:建立面向区域流量预测的时空全局语义表示学习模型ST‑GSP,所述ST‑GSP包括依次排列的语义流编码器、transformer编码器和融合过程三部分;
所述语义流编码器对不同距离的空间依赖关系和外部因素的影响进行编码;
所述transformer编码器用于捕获不同尺度的时间依赖关系之间的相关性;
所述融合过程融合了历史表示和未来时间间隔上的外部因素,以获取最终的表示;
S2:采用自监督学习的方法对ST‑GSP进行训练;
S3:将待预测时间点之前的历史数据输入训练好的ST‑GSP,ST‑GSP的输出即为待预测时间点的流量。
2.如权利要求1所述的面向区域流量预测的时空全局语义表示学习方法,其特征在于:所述S1中语义流编码器包括ResNet和多层感知器两个组件,所述ResNet叠加R层的残差单元,每个残差单元由两层卷积层组成,并省略了池化层;
所述多层感知器由两个全连接层和激活函数组成。
3.如权利要求2所述的面向区域流量预测的时空全局语义表示学习方法,其特征在于:所述S1中语义流编码器的编码过程如下:S111:对于给定的历史流向地图,将每个流向地图送入卷积,如下公式(1)所示:其中*表示卷积操作,f是激活函数, 和 是可学习的参数, 表示一个历史流向地图;
S112:将外部因素向量Et输入多层感知器来提取特征,如下公式(1)所示:Mt=f(f(Et·W1+b1)·W2+b2)#(2)其中W1和W2分别是两个权重,b1和b2分别是两个偏置,f是激活函数, 是外部因素的特征表示,将Mt重塑得到向量M′t,S113:将 和M′t相加,并将总和输入ResNet,如下公式所示:其中 是残差函数, 包括第r个残差单元中的所有可学习参数,*表示卷积操作,f是激活函数, 和 是可学习的参数, 为 和M′t相加的和没有实际含义, 是第l个残差单元的输出, 是第r+1个残差单元的输出;
S114:将 重塑为向量 然后使用全连接层进行降维:其中 是在特定时间间隔t的语义流量嵌入,dmodel是嵌入维度;W3和b3分别是权重和偏置;
S115:给定时间近邻性的输入流向图 周期的输入流向图和趋势的输入流向图 三个尺度的时间依赖关系的流量输入及其对应的外部因素E,采用S111‑S114的方法分别对应的得到时间近邻性的语义流嵌入 周期的语义流嵌入和趋势的语义流嵌入
4.如权利要求1或3所述的面向区域流量预测的时空全局语义表示学习方法,其特征在于:所述S1中transformer编码器由交替的MSA层和MLP块组成;
在每个MLP块之前应用层归一化LN,并在每个MLP块之后应用残差连接;
所述MLP有两层,且使用GELU激活。
5.如权利要求4所述的面向区域流量预测的时空全局语义表示学习方法,其特征在于:所述S1中transformer编码器的编码过程如下:S121:多头自注意MSA中对于输入的长度为H的序列 中的每个元素,计算序列中所有值V的加权和,然后并行运行k个被称为“头”的自注意操作,并投影它们的联合输出:
[Q,K,V]=zUqkv#(5)MSA=[SA1(z),SA2(z),...,SAk(z)]Umsa#(7)其中 Q、K和V分别表示多头自注意MSA中查询、键和值分别打包得到的矩阵;
c p q
S122:将Fpre和语义流嵌入序列[F ,F ,F ]连接起来,然后将生成的序列作为transformer 编码器的输入:c p q
z0=[Fpre,F,F,F]zn=LN(MSA(zn‑1)+zn‑1) n=1,...,N#(8)zn=LN(MLP(zn)+zn) n=1,...,N其中
6.如权利要求5所述的面向区域流量预测的时空全局语义表示学习方法,其特征在于:所述S1中融合过程由两个主要部分组成:全连接层和多层感知器;第一个模块即全连接层将表示与未来时间间隔的历史表示合并,第二个模块即多层感知器将表示与外部因素融合。
7.如权利要求6所述的面向区域流量预测的时空全局语义表示学习方法,其特征在于:所述S1中融合过程的具体步骤如下:在第一个模块中,对transformer编码器的所有输出进行合并,并对其进行降维;
首先扁平化zN,然后一个全连接层将扁平化的zN重塑得到z′N, 公式如下:其中W4和b4是权重和偏置, 是一种考虑全局时间依赖性的表示;
在第二个模块中,使用多层感知器提取未来时间区间的外部因素特征,生成外部表示MT,然后将 与MT合并,公式如下:其中tanh是激活函数,
将 重塑得到 即为预测的区域流量。
8.如权利要求7所述的面向区域流量预测的时空全局语义表示学习方法,其特征在于:所述S2中采用自监督学习的方法对ST‑GSP进行训练,具体过程如下:所述ST‑GSP的训练包括预训练和微调两个阶段;
c p q c p q
S201:构建初始训练集D:D中的每个实例由序列(Xt,{X ,X ,X})和序列(Et,E ,E ,E)构成 ,其中 Xt 为预 测目标 , 包 含l 个近 邻流 量图 ,包含d个周期流量图, 包含w个趋势流c p q c p q
量图,序列(Et,E ,E ,E)是序列(Xt,{X ,X ,X })所对应的外部因素;S202:对ST‑GSP中的参数进行初始化,并对ST‑GSP进行预训练;
S211:令s=当前迭代次数%(l+1);
c p q
S212:初始训练集D中包括多个实例,每个实例中的序列(Xt,{X ,X ,X})由 表示,j=
1,2…J,g=1,2…G,j表示一个序列中的元素,g表示序列的序号;
在第g个实例中选择第j=s+1个元素作为预测目标;
将第g个实例中第s+1个元素外其余所有元素的输入流向图和所对应的外部因素构成第g个预训练样本,第g个实例中选择第j=s+1个元素的值为第g个预训练样本的真实值;
所有预训练样本构成预训练样本集D1;
S213:从D1中随机采样b个预训练样本;
S214:将b个预训练样本输入ST‑GSP中,得到b个预训练样本的对应的预测值,使用公式(11)计算b个预训练样本对应的预测损失,再计算b个预测损失的平均值作为当前迭代次数的预测损失:
其中,Xt表示训练样本对应的真实值, 为ST‑GSP模型输出的预测值;
根据当前迭代次数的损失反向传播更新ST‑GSP的参数;
S215:是否达到预训练的最大迭代次数,如果达到预训练最大迭代次数,则将当前ST‑GSP作为次优ST‑GSP,并执行S221,如果没有达到预训练最大迭代次数,则返回S211;
S221:将初始训练集D中第g个实例中选择第1个元素即Xt作为预测目标;
将第g个实例中第1个元素外其余所有元素的输入流向图和所对应的外部因素构成第g个微调训练样本,第g个实例中选择第1个元素的值为第g个预训练样本的真实值;
所有微调训练样本构成微调训练样本集D2;
S222:从D2中随机采样b个微调训练样本;。
S223:将b个微调训练样本输入次优ST‑GSP中,得到b个微调训练样本的对应的预测值,再采用公式(11)计算b个预测损失的平均值作为当前迭代次数的预测损失;
根据当前迭代次数的损失反向传播更新次优ST‑GSP的参数;
S224:是否达到微调训练的最大迭代次数,如果达到微调训练最大迭代次数,则将当前次优ST‑GSP作为最优ST‑GSP;,如果没有达到预训练最大迭代次数,则返回S221。
9.如权利要求8所述的面向区域流量预测的时空全局语义表示学习方法,其特征在于:所述S3预测待预测时间点的流量的过程如下:获取待预测时间点前面一段时间内的历史数据,从该历史数据中划分出三个尺度的输入流向图和每个尺度对应外部因素作为最优ST‑GSP的输入,最优ST‑GSP的输出即是预测待预测时间点的流量。