[发明专利]一种基于自适应空间自注意力图卷积的交通预测方法在审
申请号: | 202110186065.X | 申请日: | 2021-02-14 |
公开(公告)号: | CN112801404A | 公开(公告)日: | 2021-05-14 |
发明(设计)人: | 张勇;林锋;胡永利;尹宝才 | 申请(专利权)人: | 北京工业大学 |
主分类号: | G06Q10/04 | 分类号: | G06Q10/04;G06Q50/30;G06K9/62;G06N3/04;G06N3/08 |
代理公司: | 北京思海天达知识产权代理有限公司 11203 | 代理人: | 刘萍 |
地址: | 100124 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 自适应 空间 注意 力图 卷积 交通 预测 方法 | ||
1.一种基于自适应空间自注意力图卷积的交通预测方法,其特征在于:
1)数据预处理
原始数据包括两部分,一部分是交通数据,交通数据包括流量;另一部分是各个传感器之间的距离;数据预处理包括切分数据集制作训练、验证和测试样本以及图的构建;
1.1训练、验证和测试样本的制作
为了使训练过程更加稳定首先对原始数据进行归一化处理:
其中m是原始数据X的平均值,σx是原始数据X的标准差,X′是归一化后的数据;然后将归一化后的数据按6:2:2的比例切分成3部分;对切分后的3部分分别采用窗口滑动的方式沿着时间维度滑动得到训练集、验证集和测试集,利用一小时的历史交通数据预测未来一小时的交通状况,因此时间窗口的大小取24,前面12个时间步作为输入,后面12个时间步作为标签;
1.2图的构建
图的构建也就是邻接矩阵的构建,原始数据是传感器之间的距离,采用阈值高斯核的方式进行处理得到邻接矩阵A,即:
其中,Ai,j表示邻接矩阵A的第i行第j列的元素,di,j表示节点即传感器vi和vj之间的距离,σd表示各节点间距离的标准差,ε是设定的阈值,设置为0.1;
2)ASSAGCN模型构建
基于图卷积的交通预测就是根据历史交通数据和路网的拓扑结构来预测未来的交通状况,用下式来定义:
{Xt+1,Xt+2…Xt+M}=f(Xt-F+1,Xt-F+2…Xt,A) (3)
其中,Xt+1,Xt+2…Xt+M表示未来交通数据序列,Xt-F+1,Xt-F+2…Xt表示历史交通数据序列,M,F分别表示要预测的未来交通数据序列的长度和输入的历史交通数据序列的长度,t表示当前时刻,A是由公式(2)计算得到的路网的邻接矩阵,f表示交通预测模型;因此,交通预测问题描述为:给定历史交通数据序列Xt-F+1,Xt-F+2…Xt和路网的邻接矩阵A,需要找到一个函数f即交通预测模型将它们映射为未来交通数据序列Xt+1,Xt+2…Xt+M;
提出的自注意力图卷积网络采用3个核心的模块来建模时空相关性,分别是:图卷积模块(GCN)、多头空间自注意力模块(MHSSA)和多感受野空洞因果卷积模块(MRDCC);其中GCN和MHSSA分别用于建模局部空间相关性和全局空间相关性,MRDCC用于建模时间相关性;
2.1全连接层FC进行特征映射
为了提高表达能力,首先利用全连接层(FC)将归一化后的数据映射到高维空间,即:
XFC=WIXI+bI (4)
其中,XI表示全连接层的输入,WI表示全连接层的权重矩阵,bI表示偏置,WI和bI是可学习的参数,是在模型训练时中通过最小化化损失函数来迭代更新的,迭代更新方式将在模型训练部分说明;XFC表示全连接层的输出;
2.2空间相关性建模
从两方面考虑空间相关性:路段之间的连通性即局部空间相关性和交通状况模式相似性即隐含的空间相关性;利用GCN根据路段之间的连通性从局部来聚合节点信息,利用多头空间自注意力机制根据不同路段交通状况的模式相似性从全局来聚合节点信息;
(1)局部空间相关性
为了捕获局部空间相关性,采用切比雪夫多项式的图卷积聚合邻居节点的信息,在谱理论中,图是用它的归一化拉普拉斯矩阵L来表示的:
其中,IN是N×N的单位矩阵,N表示节点数,A是由公式(2)计算得到的邻接矩阵;D是度矩阵,它是一个对角矩阵,对角线元素为Aij是邻接矩阵A的第i行j列的元素;切比雪夫多项式形式的图卷积定义为:
其中,Θ*G表示对图G中的信号x进行图卷积操作,是缩放后的归一化拉普拉斯矩阵,λmax是L的最大特征值,θk(k=0,1,…K)是切比雪夫多项式的第k项的系数,它是可学习的参数,是在模型训练过程中通过优化损失函数不断迭代更新的,具体迭代更新过程在模型训练部分说明;的k阶切比雪夫多项式递归的定义为:采用k阶切比雪夫多项式聚合k阶邻居节点的信息;式(6)是对于一维图信号而言的,它也推广到多维图信号,首先将式(6)简记为:
其中,表示式公式(6)中的那么对于多维图信号的图卷积定义为:
其中,Ci,Co分别表示输入通道数和输出通道数,即输入特征维度和输出特征维度,Xi表示第i个输入通道特征,Yj表示第j个输出通道特征,Θij表示在计算第j个输出通道时对第i个输入通道进行的图卷积操作;
(2)全局空间相关性
采用空间自注意力机制来聚合邻居节点的信息;空间自注意力机制的计算步骤如下:
1)对每个节点的特征向量用3个不同的矩阵WQ,WK,WV进行映射,得到3个向量Query,Key,Value,Query和Key的维度为dk,Value的维度为dv;其中WQ,WK,WV是可学习的参数矩阵,是在模型训练过程中通过优化损失函数不断迭代更新的,具体迭代更新过程在模型训练会详细介绍;用d表示节点特征向量的维度,则WQ和WK的形状为d×dk,WV的形状为d×dv;
2)将每个节点的Query向量与所有节点的Key向量作内积,并经过softmax函数进行归一化得到该节点与所有节点的Attention Score;softmax函数将一个向量的各个元素压缩到0-1之间,softmax函数定义如下:
其中,zi表示向量的第i维,K表示向量的维度;为了使得训练时梯度更加稳定,在进行softmax归一化之前先除以一个缩放因子避免进入softmax函数梯度较小的区域,其中dk就是前面提到的Query和Key的维度;
3)根据该节点与所有节点的注意力分数(Attention Score)对各个节点的Value向量进行加权求和;
如果用N×d的矩阵X表示N个节点的特征向量矩阵,那么上述步骤简单的表示为矩阵相乘的形式:
Q=XWQ (10)
K=XWK (11)
V=XWV (12)
其中,Q的形状为N×dk,它表示N个节点的Query向量构成的矩阵;K的形状为N×dk,它表示N个节点的Key向量构成的矩阵;V的形状为N×dv,它表示N个节点的Value向量构成的矩阵,空间自注意力机制是在空间维度聚合节点信息,对于输入时间序列,不同时间步之间参数是共享的;
采用多头空间自注意力机制,不同的子空间表达了不同的隐含空间相关性;多头空间自注意力机制是通过将Query,Key,Value进行n次线性映射得到n组不同的子空间表示,然后在每一组上执行注意力机制,然后将它们拼接起来再做一次线性映射得到最终结果,空间多头自注意力机制用下式表达:
hi=Attention(XWiQ,XWiK,XWiV) (14)
Multihead=Concat(h1,h2,…,hn)WO (15)
其中,hi表示第i组自注意力机制的输出,n表示head的数量,Multihead表示多头自注意力机制的输出,Concat表示对张量沿着特征维进行拼接操作,WiQ,WiK,WiV是第i组线性映射矩阵,WO是对拼接后的结果经行映射的矩阵,这些都是可学习的参数,是在模型训练过程中通过优化损失函数不断迭代更新的,具体迭代更新过程后续会详细交代;
(3)基于门控机制的局部和全局空间信息融合
采用门控机制融合局部空间信息和全局空间信息,门控机制用于学习两种空间信息的重要程度,然后基于学习到的权重融合这两种信息;门控融合模块GF用下式表示:
其中表示第l个图卷积模块的输出,表示第l个多头空间自注意力模块的输出,W1,W2是映射矩阵,b是偏置,它们都是可学习的参数,是在模型训练过程中通过优化损失函数不断迭代更新的,更新迭代过程在后续模型训练部分会详细交代;g表示门的输出,σ表示sigmoid激活函数,定义如下:
⊙表示哈达玛乘积,即对应位置元素相乘,H(l)是两种空间信息融合后的结果;
2.3基于多感受野空洞因果卷积的时间相关性建模
将空洞卷积的思想引入因果卷积中构成空洞因果卷积;
节点i在t时刻第q个通道的输出值yi,t,q由下式表示:
其中,wk,p,q是卷积核中的元素,xi,t-d(k-1),p是输入特征中的元素,d表示扩张率,τ表示卷积核大小,P表示输入通道数;用S表示输出通道数,那么需要S组卷积核,这S组卷积核的参数可表示为一个形状为τ×P×S的张量Wτ×P×S,它是可学习的参数,是在模型训练过程中通过最小化损失函数不断迭代更新的,迭代更新过程在模型训练部分会详细介绍;值得注意的是,为了保持输入时间序列的长度不变,需要对输入序列两端补0,但是两端补0又会使得输出序列变长,因此在进入下一层之前需要对序列末端进行裁剪;另外,空洞因果卷积是在时间维度上进行的,对于不同的节点卷积核参数是共享的;用形状为N×F×P的张量H表示N个节点F个时间步的特征,*d表示扩张率为d的空洞因果卷积操作,则对H的空洞因果卷积操作记作:
O=W*dH (20)
其中,O是卷积后的结果;为了进一步扩大感受野,堆叠多层空洞因果卷积,每层的扩张率以指数方式增长,第l层的扩张率为:
d(l)=2l-1 (21)
那么第l层的输出可表示为:
其中,ReLU表示修正线性单元,它是神经网络中常用的一种激活函数,定义如下:
不同的层得到不同感受野的输出,浅层捕获到短期的时间相关性,深层捕获到长期的时间相关性,各层的输出沿着特征维度拼接,然后经过一个1×1的卷积层改变通道数;这样就构成了一种多感受野空洞因果卷积(MRDCC),MRDCC用下式表示:
O=Conv(Concat(O1,O2,…,Oc)) (24)
其中,Concat表示沿着特征维度进行拼接,Conv表示1×1的卷积层,O是MRDCC的输出,c表示空洞因果卷积的层数;
2.4训练和验证
训练模型之前首先需要设定好超参数,进行交通流预测,只用到流量这1种特征,因此输入特征维度设置为1;由于我们利用1小时的历史流量数据预测未来1小时的交通流,因此输入时间序列长度和输出时间序列长度均设置为12;切比雪夫多项式的阶数取2,图卷积模块输入层、隐含层、输出层的维度分别取为16、64、128,多头自注意力模块的输入维度、key和value的维度、head的数量分别取为16、128、128、4;
损失函数采用L1损失,多步预测的L1损失定义如下:
其中,L1是关于Wθ的函数,Wθ代表模型中全部的可学习参数,包括公式(4)中的WI和bI,公式(6)中的θk,公式(14)中的WiQ,WiK和WiV,公式(16)中的W1,W2和b以及空洞因果卷积中S组卷积核参数Wτ×P×S;要不断迭代更新Wθ使L1达到最小,X:,i和分别表示时间步i所有节点的标签和预测值;
模型训练和验证过程如下:
1)从训练集中取出一批样本,根据公式(4)计算映射后的特征XFC
2)根据公式(8)对XFC进行两层图卷积操作得到根据公式(14)、(15)对XFC进行运算得到然后根据公式(16)、(17)对和进行融合得到H(1);
3)根据公式(22)、(24)对融合后的特征H(1)进行空洞因果卷积操作得到第1个残差块的输出O(1);
4)根据公式(8)对O(1)进行两层图卷积操作得到根据公式(14)、(15)对O(1)进行运算得到然后根据公式(16)、(17)对和进行融合得到H(2);
5)根据公式(22)、(24)对融合后的特征H(2)进行空洞因果卷积操作得到第2个残差块的输出O(2);
6)对空洞因果卷积后的结果O(2)进行两次1×1的卷积,首先对特征维度进行卷积将特征维数变为1,然后对时间维度进行卷积得到预测结果
7)根据公式(25)计算损失,并按以下方式更新模型中所有可学习的参数Wθ:
其中,η表示学习率,实验中取0.001;表示损失函数L1对可学习参数Wθ求偏导数;
8)循环以上步骤1)–7),直到所有训练样本都取完就完成了一轮训练;
9)一轮训练完成后在验证集上执行步骤1)–6)并根据公式(25)计算验证损失;
10)不断执行上述训练和验证过程,将每轮的验证损失与前一轮相比,如果验证损失连续20次都没有下降就停止训练并保存模型。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京工业大学,未经北京工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110186065.X/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种用于监控和稳定血压的靶向血压控制仪及系统
- 下一篇:重力发动机
- 同类专利
- 专利分类
G06Q 专门适用于行政、商业、金融、管理、监督或预测目的的数据处理系统或方法;其他类目不包含的专门适用于行政、商业、金融、管理、监督或预测目的的处理系统或方法
G06Q10-00 行政;管理
G06Q10-02 .预定,例如用于门票、服务或事件的
G06Q10-04 .预测或优化,例如线性规划、“旅行商问题”或“下料问题”
G06Q10-06 .资源、工作流、人员或项目管理,例如组织、规划、调度或分配时间、人员或机器资源;企业规划;组织模型
G06Q10-08 .物流,例如仓储、装货、配送或运输;存货或库存管理,例如订货、采购或平衡订单
G06Q10-10 .办公自动化,例如电子邮件或群件的计算机辅助管理