浙江大学学报(工学版), 2025, 59(9): 1986-1995 doi: 10.3785/j.issn.1008-973X.2025.09.022

交通工程

基于多通道图聚合注意力机制的共享单车借还量预测

王福建,, 张泽天, 陈喜群, 王殿海

浙江大学 建筑工程学院 智能交通研究所,浙江 杭州 310058

Usage prediction of shared bike based on multi-channel graph aggregation attention mechanism

WANG Fujian,, ZHANG Zetian, CHEN Xiqun, WANG Dianhai

Institute of Intelligent Transportation Systems, College of Civil Engineering and Architecture, Zhejiang University, Hangzhou 310058, China

收稿日期: 2024-11-29  

基金资助: 国家自然科学基金重点资助项目 (52131202);国家自然科学基金重点资助项目 (72431009).

Received: 2024-11-29  

Fund supported: 国家自然科学基金重点资助项目(52131202);国家自然科学基金重点资助项目(72431009).

作者简介 About authors

王福建(1969—),男,副教授,博士,从事智能交通系统研究.orcid.org/0000-0002-6006-4423.E-mail:ciewfj@zju.edu.cn , E-mail:ciewfj@zju.edu.cn

摘要

针对共享单车短期借还量预测中存在的空间范围小、模型时空信息捕捉能力不足及准确性有限等问题,提出基于多通道图聚合注意力机制的预测方法. 根据共享单车在不同区域的流量,采用基于流量调整的虚拟站点划分方法,将城市划分为多个共享单车虚拟站点,并以站点间的借还量矩阵构建动态邻接矩阵,形成共享单车图网络结构. 通过多通道图聚合模块捕捉不同时间段的站点空间信息,并结合多头自注意力模块捕捉时间相关性. 引入交叉注意力机制模块,结合外生变量,获取不同变量之间的潜在联系. 在深圳市和纽约市进行实验,结果表明,与其他深度学习方法相比,该模型在不同时间段和地区均表现出显著优势,保持了稳定且较低的预测误差,证明了动态邻接矩阵以及融合外部特征的交叉注意力机制模块能够有效提高共享单车借还量的预测准确率.

关键词: 共享单车 ; 多源数据 ; 深度学习 ; 虚拟站点划分 ; 动态邻接矩阵 ; 交叉注意力

Abstract

A prediction method based on the multi-channel graph aggregated attention mechanism was proposed, to address the challenges of limited spatial scope, insufficient spatiotemporal information capture, and low accuracy in short-term bike-sharing demand prediction. Firstly, the city was divided into multiple bike-sharing virtual stations using a flow-adjusted virtual station partitioning method according to bike flows in different areas. A dynamic adjacency matrix was constructed using the origin-destination (OD) matrix between stations to form a bike-sharing graph network structure. Next, spatial information of stations across different time periods was captured via a multi-channel graph aggregation module, which was combined with a multi-head self-attention module to capture temporal correlations. Finally, a cross-attention mechanism, along with exogenous variables, was introduced to uncover potential relationships among various variables. Experiments conducted in Shenzhen and New York demonstrated that the model significantly outperformed other deep learning methods across various time periods and regions, maintaining stable and low prediction errors. The results confirmed that the dynamic adjacency matrix and the cross-attention mechanism integrating external features could effectively enhance the prediction accuracy of shared bike usage.

Keywords: shared bike ; multi-source data ; deep learning ; virtual station partitioning ; dynamic adjacency matrix ; cross-attention mechanism

PDF (2518KB) 元数据 多维度评价 相关文章 导出 EndNote| Ris| Bibtex  收藏本文

本文引用格式

王福建, 张泽天, 陈喜群, 王殿海. 基于多通道图聚合注意力机制的共享单车借还量预测. 浙江大学学报(工学版)[J], 2025, 59(9): 1986-1995 doi:10.3785/j.issn.1008-973X.2025.09.022

WANG Fujian, ZHANG Zetian, CHEN Xiqun, WANG Dianhai. Usage prediction of shared bike based on multi-channel graph aggregation attention mechanism. Journal of Zhejiang University(Engineering Science)[J], 2025, 59(9): 1986-1995 doi:10.3785/j.issn.1008-973X.2025.09.022

随着共享经济的迅速发展,共享单车在许多城市已成为广受欢迎的交通方式,但在实际运营中用户需求的波动性是一个巨大的挑战. 因此,对共享单车短期借还量的准确预测,是共享单车运营的关键.

目前,诸多学者已开展对共享单车借还量预测的研究工作. 他们基于国内外共享单车数据集展开实验,部分学者选用无桩单车数据集(如北京市西城区[1]、上海市浦西[2]地区的数据),研究范围仅限于一个城市的部分区域,忽略了跨区域使用共享单车的情况;还有学者利用有桩单车数据集(如南京市[3]、天津市[4]地区的),然而,这些单车桩位仅仅集中在城市的局部区域,无法覆盖整个城市. 因此,这些研究在空间范围上存在着较为明显的局限性. 为了提高预测精度,在进行预测时须引入外生变量信息. 已有文献[5-6]证实了外部信息对预测精度的积极影响. 例如Feng等[5]引入天气和POI变量作为外部信息. 现有研究在处理POI数据时存在局限性,不同规模的店铺或住宅常被赋予相同的POI数值,难以精准反映区域人流量.

在模型选择方面,早期研究多依赖传统时间序列分析方法[79]或者机器学习方法[10-11],准确率相对较低. 深度学习的兴起推动了共享单车借还量预测领域的进步. 在空间信息捕捉方面,大多数学者使用各种图模型进行建模[12-13]. Jia等[12]使用图网络对数据进行预测,成功将单车站点转化为图结构,最终绝对误差约为10. 但该方法的局限在于图结构中每个节点的权重相同,导致空间信息部分损失. 在动态图模型方面,目前研究[14-17]主要采用了Hawkes过程来映射全图的链接形成过程,引入RNN学习历史的动态图结构信息来预测最新的拓扑结构. 而在共享单车借还量预测问题中,划分站点后数量不变,不存在节点增减,拓扑结构保持不变. 并且,只对站点借还量进行预测,不预测节点间的连接关系. 在时间信息捕捉方面,早期大多数学者使用LSTM模型[1,3,18-19],最小误差约为12%[3]. 2017年基于注意力机制的Transformer模型[20]出现后,在时序预测领域表现突出. Liu等[21]以及He等[6]通过构建各自的注意力机制模型,在国外一些城市数据集上进行了实验,证明了注意力机制在共享单车预测的有效性,但在外生变量与内生变量融合方面仍有不足. 针对该问题,在其他领域上,Li等[22-23]使用交叉注意力机制的方法,将图像视频和文字2种模态的数据通过交叉注意力机制融合,取得了较好的效果,证明该机制在多源数据领域能够有效捕捉相关性.

针对已有研究的不足,本研究使用多通道图聚合注意力机制模型进行共享单车借还量预测,主要贡献如下:1)提出基于流量调整的区域划分方法,使得预测范围覆盖全市,而非仅限城市的部分区域. 2)构建融合多通道动态邻接矩阵的图聚合模块与交叉注意力机制模块的深度学习模型,优化在捕捉空间、时间及变量相关性方面的表现. 3)进行特征工程,在外生变量上引入天气、POI以及表示站点人流量的热力值数据,通过热力值辅助判断站点吸引力,提高模型准确率.

1. 模型输入

使用深圳市2021年5—8月的共享单车数据集,数据主要包括骑行单车的编号、骑行的上下车时间、骑行的上车地点等. 深圳市日均单车使用量约为120万.

由于用户可以在任何允许的区域内借还单车,缺乏实际存在的站点,必须人为划定虚拟站点作为研究的基本单位. 目前研究中,虚拟站点的分类主要有2种方法. 1)利用适当的算法方法将借还车点聚类为多个类别(DBSCAN[24]、K-means[25]、社区发现[19]等). 该方法的缺点是须预设一定的聚类参数,使用不同参数所获得的结果差异显著;聚类后区域形状不规则,不利于后续单车运营公司的管理;一些边缘点在聚类过程中容易被误判为噪声而被丢弃,无法实现对区域的全面覆盖[25]. 2)按区域划分,将整个研究空间均匀划分为若干等大小的区域[26-27]. 这种方法的缺点是不同区域的流量差异大,影响预测的准确性.

本研究采用基于流量调整的区域划分方法,考虑深圳的城市规模、预测难度以及借还量序列矩阵的稀疏性,将研究区域划分为2 km×2 km的网格,统计每个网格内的借还量,借还量低于下限阈值(第一四分位数)的网格与周围网格合并,确保需求较高的区域网格密集,需求较低的区域(如郊区)网格稀疏. 调整前后,研究区域的变异系数(标准差与均值的比值)从1.45降至1.34. 如图1所示为虚拟站点划分图,每个网格为1个站点,共254个.

图 1

图 1   深圳市共享单车虚拟站点

Fig.1   Virtual shared bike stations of Shenzhen


以15 min为时间步长统计每个站点在每个时间步长下借车数$ {P}_{i}^{T} $和还车数$ {A}_{i}^{T} $. $ T $表示以15 min为时间间隔的时间段计数标志.

共享单车借还量的时间特征包括邻近性、趋势性和周期性[28]. 以1个时间步长为滞后阶数,计算不同滞后阶数下借还量时间序列的自回归系数. 当天、前1天和前1周同时刻的自回归系数(0.95、0.93、0.91)大于其他时间的. 因此,使用前1周同一时刻的前10个时间步长作为趋势性(trend)特征$ {\boldsymbol{X}}_{i}^{\mathrm{t}\mathrm{r}}=\left[{P}_{i}^{T-7 \times 96},{P}_{i}^{T-7 \times 96-1},\cdots ,{P}_{i}^{T-7 \times 96-9}\right] $、前1天同一时刻的前10个时间步长作为周期性(period)特征 $ {\boldsymbol{X}}_{i}^{\mathrm{p}\mathrm{e}}=[{P}_{i}^{T-96},{P}_{i}^{T-96-1},\cdots ,{P}_{i}^{T-96-9}] $、以及当前时刻的前10个时间步长作为邻近性(closeness)特征 $ {\boldsymbol{X}}_{i}^{\mathrm{c}\mathrm{l}}= [{P}_{i}^{T-1},{P}_{i}^{T-2},\cdots ,{P}_{i}^{T-10}] $. 30个时间步长的借还车数量共计60个数据作为输入.

为了提高预测精度,引入外生变量信息:天气数据$ {\boldsymbol{X}}^{\mathrm{w}} $(降水量、风力大小、气温等)、相关时间数据$ {\boldsymbol{X}}^{\mathrm{t}} $(星期、小时)、兴趣点(POI)以及热力值$ {\boldsymbol{X}}^{\mathrm{p}} $等. 其中,分别统计每个站点内商业、住宅、办公、景点、医院、政府、地铁、公交等数量为POI. 此外,统计每个站点内的日均人流量作为热力值数据.

将邻近性、趋势性和周期性3个序列进行拼接得到借还量序列$ {\boldsymbol{X}}_{0} $,将3类外生变量数据进行拼接,得到外生变量序列$ {\boldsymbol{X}}_{\mathrm{o}\mathrm{u}\mathrm{t}\mathrm{e}\mathrm{r}} $.

$ \begin{array}{*{20}{c}} {{{\boldsymbol{X}}_0}\left( T \right) = {\text{concat}}\;({{\boldsymbol{X}}^{{\text{tr}}}}\left( T \right),{{\boldsymbol{X}}^{{\text{pe}}}}\left( T \right),{{\boldsymbol{X}}^{{\text{cl}}}}\left( T \right)),} \end{array} $

$ \begin{array}{*{20}{c}} {{{\boldsymbol{X}}_{{\text{outer}}}}\left( T \right) = {\text{concat}}\;({{\boldsymbol{X}}^{\text{t}}}\left( T \right),{{\boldsymbol{X}}^{\text{w}}}\left( T \right),{{\boldsymbol{X}}^{\text{p}}}\left( T \right)).} \end{array} $

2. 模型构建

提出多通道图聚合注意力机制模型(multi-channel graph aggregation attention model,MCGA),使用图聚合的方法获取每个站点的空间信息,再通过注意力机制捕捉不同时间下和不同变量间的相对关联信息,其结构如图2所示. 模型首先将3个不同时间段的借还量序列数据通过3个图聚合模块,拼合后作为自注意力机制的输入. 在自注意力模块中通过多层迭代获取时间信息,得到输出. 输出结果与外部变量序列一起作为交叉注意力机制的输入,再通过多层迭代后得到交叉注意力机制模块的输出,经过线性变换和激活后得到最终的结果.

图 2

图 2   多通道图聚合注意力机制模型

Fig.2   Multi-channel graph aggregation attention model


2.1. 基于动态邻接矩阵的图聚合模块

不同于一般矩阵,共享单车是基于真实世界的一张图网络. 每个站点之间包含充足的空间信息. 因此,须基于图论的方法来捕获共享单车站点网络之间的空间特征.

将每个共享单车站点视为图中的1个节点,用$ \boldsymbol{V} $表示,$ \boldsymbol{V}=[{v}_{1},{v}_{2},\cdots, {v}_{n}] $,其中n为自行车站点的数量. 用无向线段连接自行车站点,并将其视为图的边,用E表示,$ \boldsymbol{E}=[{e}_{11},{e}_{12},\cdots, {e}_{nn}] $,其中$ {e}_{ij}=\left\{{v}_{i},{v}_{j}\right\} $表示连接2个站点$ {v}_{i} $$ {v}_{j} $的线段. 每条边的权重由邻接矩阵$ \boldsymbol{A} $表示:

$ {{\boldsymbol{A}} = \left[ {\begin{array}{*{20}{c}} {{a_{11}}}& \ldots &{{a_{1n}}} \\ \vdots & {} & \vdots \\ {{a_{n1}}}& \cdots &{{a_{nn}}} \end{array}} \right]} , $

$ \begin{array}{*{20}{c}} {{a_{ij}}\left( T \right) = \dfrac{{a_{ij}^{\rm{o}}\left( T \right) - \mathop {\min }\limits_{1 \leqslant k \leqslant n} \left( {a_{ik}^{\rm{o}}\left( T \right)} \right)}}{{\mathop {\max }\limits_{1 \leqslant k \leqslant n} \left( {a_{ik}^{\rm{o}}\left( T \right)} \right) - \mathop {\min }\limits_{1 \leqslant k \leqslant n} \left( {a_{ik}^{\rm{o}}\left( T \right)} \right)}}.} \end{array} $

式中:$ {a}_{ij}^{{\mathrm{o}}}\left(T\right) $表示上一周7 d内$ i、j $车站往来的借还车量;$ {a}_{ij}\left(T\right) $为邻接矩阵的元素值,通过对$ {a}_{ij}^{\mathrm{o}}\left(T\right) $按行归一化后得到.

须注意,与主要由二进制值(0和1)代表2点间是否联通的传统邻接矩阵不同,本研究引入带有权重的动态邻接矩阵. 原因如下:1)共享单车站点之间的连接不同于轨道网络或道路网络,其没有固定的站点和明确的道路布局,空间可变性复杂,而邻接矩阵若只含0和1,是稀疏的,不利于捕捉空间相关性;2)单车骑行距离通常小于3 km,但也不会过短,因此仅根据欧氏距离来衡量2点之间的权重是不合适的;3)单车站点之间的关系不仅取决于相邻关系,还受到周围环境的影响,如河流、公园以及道路连通情况等. 因此,选用前一周各站点间借还量作为节点间的加权邻接矩阵的元素. 由于站点只关心自己与其他车站的相对邻接关系,通过按行归一化的方法将矩阵的元素值转化为0~1.0,0表示2个站点之间的相关性较低,1.0表示相关性较高. 此外,使用动态邻接矩阵,站点的邻接关系会周期性更新,有利于提高预测的准确性.

基于动态邻接矩阵,提出图聚合模块,如图3所示. 具体步骤如下.

图 3

图 3   基于动态邻接矩阵的图聚合模块

Fig.3   Graph aggregation module with dynamic neighborhood matrices


1)将每个节点$ i $的邻边节点$ j $的值向量$ {\boldsymbol{h}}_{j}^{k} $,即借还量序列数据,按$ ij $边的权重加权相加后聚合到邻域向量$ {\boldsymbol{h}}_{N\left(i\right)}^{k} $中,其中每个邻边节点的值向量为上一次进行迭代后的结果:

$ {\boldsymbol{h}}_{N\left( i \right)}^k = \mathop \sum \limits_{j = 1}^n {a_{ij}}{\boldsymbol{h}}_j^k. $

式中:k为迭代次数.

2)将每个节点的邻域向量$ {\boldsymbol{h}}_{N\left(i\right)}^{k} $与其本身值向量$ {\boldsymbol{h}}_{i}^{k-1} $拼接,通过全连接矩阵融合两者的特征信息,并使用非线性激活函数进行激活:

$ {{\boldsymbol{h}}}_{i}^{k}=\sigma \left({{\boldsymbol{W}}}^{k}\text{concat}\;\left({{\boldsymbol{h}}}_{i}^{k-1},{{\boldsymbol{h}}}_{N\left(i\right)}^{k}\right)+{\boldsymbol{b}}\right). $

式中:$ \mathrm{c}\mathrm{o}\mathrm{n}\mathrm{c}\mathrm{a}\mathrm{t} $表示2个向量进行拼接,$ \sigma $为激活函数,$ {\boldsymbol{W}}^{k} $为待学习权重矩阵,$ \boldsymbol{b} $为待学习偏置向量.

3)反复执行步骤1)、2),经$ k $轮迭代得到输出结果:$ {{\boldsymbol{X}}_{i}=\boldsymbol{h}}_{i}^{k} $.

图聚合模块利用节点之间边的权重捕捉相邻节点的特征,使节点间的关系反映在网络中. 然后通过全连接实现每个节点值向量与邻点值向量的融合,使最终每个节点的特征向量是融合自身与周围站点之后的结果.

由于借还量时间序列分为趋势性、周期性和邻近性3部分,它们的邻接矩阵也不一致,因此采用多通道图聚合的方法,使得空间信息捕捉更加准确. 3部分时间序列分别使用各自的图聚合模型,每个模型的迭代次数为2次,整个过程表达式如下:

$ {\boldsymbol{X}}_{{\text{ga}}}^{{\text{tr}}} = {f_{{\mathrm{ga}}}}\left( {{f_{{\mathrm{ga}}}}\left( {{{\boldsymbol{X}}^{{\text{tr}}}}} \right)} \right), $

$ {\boldsymbol{X}}_{{\text{ga}}}^{{\text{pe}}} = {f_{{\mathrm{ga}}}}\left( {{f_{{\mathrm{ga}}}}\left( {{{\boldsymbol{X}}^{{\text{pe}}}}} \right)} \right), $

$ {\boldsymbol{X}}_{{\text{ga}}}^{{\text{cl}}} = {f_{{\mathrm{ga}}}}\left( {{f_{{\mathrm{ga}}}}\left( {{{\boldsymbol{X}}^{{\text{cl}}}}} \right)} \right), $

$ {f}_{\text{ga}}\left(h\right)= \sigma \left({{\boldsymbol{W}}}^{k} \text{concat}\;\left({\boldsymbol{h}},{\boldsymbol{Ah}}\right)+{\boldsymbol{b}}\right), $

$ {{\boldsymbol{X}}_{{\text{ga}}}} = {\text{concat}}\;\left( {{\boldsymbol{X}}_{{\text{ga}}}^{{\text{tr}}},{\boldsymbol{X}}_{{\text{ga}}}^{{\text{pe}}},{\boldsymbol{X}}_{{\text{ga}}}^{{\text{cl}}}} \right). $

式中:$ {f}_{\mathrm{g}\mathrm{a}} $表示图聚合函数,$ {\boldsymbol{X}}_{\mathrm{g}\mathrm{a}} $为最后的输出.

2.2. 注意力机制

注意力机制借鉴Transformer模型[20],有2部分输入:车借还量的时间序列与其他外生变量. 在多源数据的学习上,传统Transformer模型存在以下问题:1)多源数据的物理意义以及分布特征存在较大的差别,天气数据和借还量数据分别代表不同的物理环境,放在同一个注意力机制中会造成权重偏差,使模型无法很好地理解不同物理量的含义;2)多源数据的采样间隔也不一致,外生变量中的天气、POI、热力值等数据在较长的时间段内变化程度较小,而借还量数据则是固定15 min时间间隔进行采样的;3)自注意力机制更关注序列内部本身的相关性,对于不同来源的交互关系捕捉能力较弱.

针对以上问题,在Transformer的基础上去掉decoder部分,改为加入交叉注意力模块. 注意力机制模块由2部分组成,一部分是多头自注意力机制模块,类似于Transformer的encoder模块,另一部分为多头交叉注意力机制模块. 多头自注意力机制的输入为借还量时间序列,用来获取借还量的时间相关性;交叉注意力机制则是以借还量时间序列以及外生变量序列为输入,来获取外生变量与借还量之间的潜在联系.

2.2.1. 输入和编码

输入1:共享单车借还量时间序列$ {\boldsymbol{X}}_{\mathrm{g}\mathrm{a}} $. 输入2:外生变量序列$ {\boldsymbol{X}}_{\mathrm{o}\mathrm{u}\mathrm{t}\mathrm{e}\mathrm{r}} $.为了使注意力机制能够处理时间序列数据,采用位置编码方法,利用频率不同的正弦和余弦函数来编码数据在时间序列上的位置信息:

$ \begin{array}{c}{{\mathrm{PE}}}_{\left({\mathrm{pos}},2i\right)}=\mathrm{sin}\;\left(\dfrac{{\mathrm{p o s}}}{{10\;000}^{{2i}/{{d}_{\text{m}}} }}\right),\end{array} $

$ \begin{split} {{\mathrm{PE}}}_{\left({\mathrm{pos}},2i+1\right)}= &{\mathrm{cos}}\left(\dfrac{{\mathrm{pos}}}{{10\;000}^{{2i}/{{d}_{\text{m}}} }}\right);\\1 \leqslant & 2i \leqslant {d_{{\text{m}}}}.\end{split}$

式中:pos表示序列中的位置,$ i $表示编码位置,$ {d}_{{\mathrm{m}}} $表示编码长度.

将位置编码与值编码进行叠加,得到注意力机制的输入:

$\begin{split} {\boldsymbol{X}}_0^{{\text{ec}}} =& {\text{Value encoding}}\left( {{{\boldsymbol{X}}_{{\text{ga}}}}} \right)+ \\& {\text{Position encoding}}\left( {{{\boldsymbol{X}}_{{\text{ga}}}}} \right), \end{split}$

$ \begin{split} {\boldsymbol{X}}_{{\text{outer}}}^{{\text{ec}}} =& {\text{Value encoding}}\left( {{{\boldsymbol{X}}_{{\text{outer}}}}} \right)+ \\ &{\text{Position encoding}}\left( {{{\boldsymbol{X}}_{{\text{outer}}}}} \right).\end{split} $

2.2.2. 注意力机制模块

自注意力机制通过计算每个元素与序列中其他元素之间的相似性来确定每个元素的重要性权重. 这使得模块能够捕捉时间序列中不同时间步长的数据之间的依赖关系,尤其是长期依赖关系.

自注意力机制包含多头注意力模块、残差归一模块以及前馈网络模块. 如图4所示为整个注意力机制的结构图. 其中每个注意力头包括:查询向量$ \boldsymbol{Q} $表示当前问题中须关注的特征;键向量$ \boldsymbol{K} $用于匹配值向量和查询向量;值向量$ \boldsymbol{V} $表示最重要获取的信息. 它们是通过使用参数矩阵$ {\boldsymbol{W}}_{\mathrm{q}} $$ {\boldsymbol{W}}_{\mathrm{k}} $$ {\boldsymbol{W}}_{\mathrm{v}} $对输入向量$ {\boldsymbol{X}}_{0}^{\mathrm{e}\mathrm{c}} $进行点乘得到的. 查询向量与键向量点乘得到序列的自相关性,再通过放缩和激活,在值向量中获得最终的信息.

图 4

图 4   注意力机制模块

Fig.4   Attention mechanism module


整个过程表述如下:

$ \begin{array}{*{20}{c}} {{{\boldsymbol{Q}}_{{{\boldsymbol{X}}_0}}} = {\boldsymbol{X}}_0^k{{\boldsymbol{W}}_{\text{q}}},} \end{array} $

$ \begin{array}{*{20}{c}} {{{\boldsymbol{K}}_{{{{{\boldsymbol{X}}}}_0}}} = {\boldsymbol{X}}_0^k{{\boldsymbol{W}}_{\text{k}}},} \end{array} $

$ \begin{array}{*{20}{c}} {{{\boldsymbol{V}}_{{{{{\boldsymbol{X}}}}_0}}} = {\boldsymbol{X}}_0^k{{\boldsymbol{W}}_{\text{v}}},} \end{array} $

$ {{\mathbf{head}} = {\text{softmax}}\left( {\dfrac{{{{\boldsymbol{Q}}_{{{\boldsymbol{X}}_0}}}{{\boldsymbol{K}}_{{{\boldsymbol{X}}_0}}}^{\text{T}}}}{{\sqrt d }}} \right){{\boldsymbol{V}}_{{{\boldsymbol{X}}_0}}},} $

$ {\boldsymbol{X}}_0^k = {\boldsymbol{X}}_0^{{\text{ec}}}. $

式中:$ d $表示向量维度.

多头注意力机制是Transformer中注意力机制模型的扩展. 它允许并行计算多个注意力头,这些注意力头生成代表信息的顺序向量. 通过特定的线性变换和连接操作,来自不同注意头的信息被融合在一起. 因此,它可以将注意力焦点放在不同的特征上,提供丰富的特征表示,从而增强模型的泛化能力并减少过拟合.

$ {{\bf{MultiHead}} = {\text{concat}}\;\left( {{\bf{head}}_1, \cdots ,{{\bf{head}}_{{h}}}} \right){{\boldsymbol{W}}^0}} . $

在共享单车需求预测方面,须融合多模式数据,如订单数据、时间数据和天气数据,这些数据表达不同的特征. 交叉注意力机制模型可以捕捉不同数据源之间的相关性,有效利用多模式数据进行交通需求预测.

交叉注意力模块也由查询向量、键向量以及值向量3部分组成. 但与自注意力机制不同的是,交叉注意力机制的查询向量来自借还量时间序列,而键向量和值向量来源于外生变量序列. 这使得模型能够更加关注借还量时间序列与外生变量之间的内在联系,从而提高外生变量在模块中的重要性.

在交叉注意力模块中,查询向量$ {\boldsymbol{Q}} $在第1层中由自注意力机制的输出$ {\boldsymbol{X}}_{0}^{\mathrm{s}\mathrm{a}} $和参数矩阵$ {\boldsymbol{W}}_{\mathrm{q}} $点乘得到,在其余几层中由上一层交叉注意力机制的输出$ {\boldsymbol{X}}_{0}^{\mathrm{c}\mathrm{r},k} $和参数矩阵$ {\boldsymbol{W}}_{\mathrm{q}} $点乘得到. 键向量$ \boldsymbol{K} $由外生变量序列$ {\boldsymbol{X}}_{\mathrm{o}\mathrm{u}\mathrm{t}\mathrm{e}\mathrm{r}}^{\mathrm{e}\mathrm{c}} $和参数矩阵$ {\boldsymbol{W}}_{\mathrm{k}} $点乘得到. 值向量$ \boldsymbol{V} $由外生变量序列$ {\boldsymbol{X}}_{\mathrm{o}\mathrm{u}\mathrm{t}\mathrm{e}\mathrm{r}}^{\mathrm{e}\mathrm{c}} $和参数矩阵$ {\boldsymbol{W}}_{\mathrm{v}} $点乘得到. 然后和自注意力机制类似,查询向量与键向量进行点乘,通过放缩和激活函数,得到注意力得分,体现借还量序列与外生变量的潜在关联. 最后再与值向量点乘,得到交叉注意力机制的输出.

$ {{\boldsymbol{Q}}_{{{\boldsymbol{X}}_0}}^{{\text{cr}}} = {\boldsymbol{X}}_0^{{\text{cr}},k}{{\boldsymbol{W}}_{\text{q}}},} $

$ {{\boldsymbol{K}}_{{{\boldsymbol{X}}_{{\mathrm{outer}}}}}^{{\text{cr}}} = {\boldsymbol{X}}_{{\text{outer}}}^{{\text{ec}}}{{\boldsymbol{W}}_{\text{k}}},} $

$ {{\boldsymbol{V}}_{{{\boldsymbol{X}}_{{\mathrm{outer}}}}}^{{\text{cr}}} = {\boldsymbol{X}}_{{\text{outer}}}^{{\text{ec}}}{{\boldsymbol{W}}_{\text{v}}},} $

$ \begin{array}{*{20}{c}} {{{\bf{head}}^{{\text{cr}}}} = {\mathrm{softmax}}\;\left( {\dfrac{{{\boldsymbol{Q}}_{{{\boldsymbol{X}}_0}}^{{\text{cr}}}{\boldsymbol{K}}{{_{{{\boldsymbol{X}}_{{\mathrm{outer}}}}}^{{\text{cr}}}}^{\text{T}}}}}{{\sqrt d }}} \right){\boldsymbol{V}}_{{{\boldsymbol{X}}_{{\mathrm{outer}}}}}^{{\text{cr}}}} ,\end{array} $

$ {\boldsymbol{X}}_0^{{\text{cr}},k} = {\boldsymbol{X}}_0^{{\text{sa}}}. $

3. 实 验

3.1. 超参数设置

首先,为了提高深度学习的效率,获得更稳健的参数信息,将原始数据进行归一化处理,并将数据分为训练集、验证集和测试集. 训练集、验证集、测试集分别占数据总量的80%、10%、10%.

模型的超参数主要包括学习率、批处理大小、训练遍历次数等. 超参数的优化通常采用随机搜索法. 参考常用的设置,并通过手动调整来选择最佳设置. 最后,学习率设为0.0001,批处理大小设为32. 为了确保训练过程的收敛性,遍历次数设为1000,并使用早停法来确定模型的停止时间,这样既能确保模型的收敛性,又能缩短训练时间. 此外,使用Adam优化器来优化模型参数. 为了避免过拟合问题,每个子层都采用drop-out(丢弃),丢弃率设置为0.1.

3.2. 误差指标

使用3个损失函数作为误差指标来评估深度学习模型的预测性能,即平均绝对误差(mean absolute error,MAE)、均方根误差(root mean square error,RMSE)和加权平均绝对百分比误差 (weighted mean absolute percentage error,WMAPE)等. 这3个指标的数学表达式分别为

$ \begin{array}{*{20}{c}} {{\mathrm{MAE}} = \dfrac{1}{n}\displaystyle \mathop \sum \limits_{i = 1}^n \left| {{y_i} - \hat {{y_i}}} \right|,} \end{array} $

$ {{\mathrm{RMSE}} = \sqrt {\dfrac{1}{n}\displaystyle\mathop \sum \limits_{i = 1}^n {{\left( {{y_i} - \hat {{y_i}}} \right)}^2}} ,} $

$ {\mathrm{WMAPE}}= {{{\displaystyle \sum }}_{i=1}^{n}\left|{y}_{i}-\hat {{y}_{i}}\right|}\bigg/{{{\displaystyle \sum }}_{i=1}^{n}{y}_{i}}. $

式中:$ y_i $为真实值,$ \hat{y}_i $为预测值.

3.3. 用于比较的基准模型

选择以下模型作为基准与本研究模型进行比较.

1)ARIMA:差分自回归移动平均模型,通过差分之类的方法平滑时间序列,从而发现序列的自相关性并预测未来数据[9].

2)Time-GCN:具有不同时间层的图卷积网络模型[12],应用于空间信息预测任务,为图数据挖掘提供强大的工具. 该模型通过Adam优化器进行训练. 学习率为0.0001,批处理大小为32.

3)LSTM:长短期记忆模型,专门用于解决一般 RNN的长期依赖问题[3],通过输入门、输出门和遗忘门解决隐藏状态的长期依赖问题. 该模型通过Adam优化器进行训练. 学习率为0.0001,批处理大小为32,隐层维度为128.

4)CNN-bi-LSTM[19]:将CNN模型与LSTM后端集成的混合模型. 该架构使用CNN层对输入数据进行特征提取,并与LSTM相结合以支持序列预测. 该模型通过Adam优化器进行训练. 学习率为0.0001,批处理大小为32. LSTM使用双向RNN,有2个堆叠层,隐藏层维度为128.

5)GCN-LSTM-FCN:使用GCN对建成环境进行建模,使用LSTM网络提取时间特征,并使用全连接对天气影响进行建模[4]. 该模型通过Adam进行训练. 学习率为0.0005,批处理大小为 32.

6)GCN-Transformer:使用原始的GCN模型和Transformer[20]模型. 参数设置与本研究的相同.

7)GraphAgg-iTransformer:将本研究的多通道图聚合和iTransformer[29]模型相结合,来验证本研究交叉注意力机制的有效性.

8)ST-AGCN:时空注意力图卷积网络[21],该模型将概率自注意力机制和切比雪夫GCN这2个模块集成在编码器-解码器框架中. 学习率为0.0005,批处理大小为64.

3.4. 结果

为了验证模型的可扩展性和迁移性,使用美国纽约市2024年1—6月有桩共享单车的数据,包括上下车时间和站点(以站点编号表示). 纽约市日均单车使用量约为10万,合并站点后有约900个车站.

表1所示为深圳和纽约共享单车数据集在不同预测模型下的误差. 其中,表现最好的模型用星号表示. 在2个数据集上,MCGA模型都优于其他基准模型. 总体而言,ARIMA模型只使用时间序列自相关性,没有考虑其他外部数据,因此表现最差. 相比之下,LSTM模型只考虑时间序列信息,不能较好地处理空间信息,而time-GCN 模型只考虑空间信息,处理时间信息的能力不足. 因此,这3种模型的实现效果也不如其他时空模型. CNN-bi-LSTM和GCN-LSTM-FCN模型的预测精度也小于MCGA模型的,说明这2个模型在处理长时间序列问题上的表现不如MCGA. 与GCN-Transformer模型相比,MCGA模型的精度也更高,而与iTransformer以及ST-AGCN模型相比,模型在精确率上也都优于该模型. 综上所述,MCGA模型在预测深圳共享单车借还量方面取得良好的效果.

表 1   深圳和纽约共享单车数据集在不同预测模型下的误差

Tab.1  Errors of Shenzhen and New York bike-sharing datasets under different prediction models

模型深圳纽约
MAERMSEWMAPEMAERMSEWMAPE
ARIMA10.59517.7280.2011.8623.5050.416
Time-GCN5.24110.1020.1001.6022.9740.358
LSTM5.51210.3470.1051.5172.8060.339
CNN-bi-LSTM4.8639.2490.0921.2162.2140.271
GCN-LSTM-FCN3.1005.8410.0591.1752.2090.262
GCN-Transformer2.0113.3050.0381.0231.9860.228
GraphAgg-iTransformer1.6852.6910.0320.9731.8260.217
ST-AGCN1.7152.8920.0330.9751.8100.218
MCGA1.519*2.578*0.029*0.969*1.799*0.216*

新窗口打开| 下载CSV


增加消融实验来验证注意力头的数量以及注意力层数的合理性. 模型中共有8个注意力头,并设置8层注意力层. 增加以及减少头数和层数进行敏感性分析,如表2所示. 基准模型在MAE指标取得最优,在RMSE指标取得次优. 综合考虑模型的复杂度,本模型是较合理的.

表 2   MCGA模型在不同超参数下的误差

Tab.2  Errors of MCGA with different hyperparameters

头/层MAERMSE
8/81.519*2.578
4/81.5392.601
16/81.5342.593
8/61.5292.594
8/101.5222.570*

新窗口打开| 下载CSV


3.5. 误差分析

3.5.1. 外生变量的影响

为了验证外部信息的有效性,分别从原模型中去除时间信息、天气信息、POI和热力值信息进行消融实验.

表3所示为模型去除不同外部信息后的效果. 首先,去除外部信息后,所有模型的准确度都有所下降,证明外部信息对提高模型精度是有效的. 其次,不同的外部信息对模型精度有不同的帮助. 时间信息对模型准确性的提高最大,为 17.5%,而POI信息对模型准确性的提高最小,为 10.8%. 原因在于时间信息和天气信息是动态变化的信息,能够实时影响人们的出行,而POI是静态的,是一定时间内的固定数据,对共享单车借还量变化的敏感度较低.

表 3   不同外生变量下MCGA的误差

Tab.3  Error of MCGA with different external information

模型MAERMSEWMAPE
全部1.519*2.578*0.029*
去除时间信息1.8432.9460.037
去除天气信息1.7122.7000.033
去除POI信息1.7032.6220.032

新窗口打开| 下载CSV


3.5.2. 误差的空间分布

虽然模型总体上表现良好,在不同地区的表现是否相同也很重要. 因此,分别统计各地区的误差. 如图5所示为不同站点1个时间步长的MAE分布情况. 可以看出,大部分站点的MAE在3辆以内,说明模型在大部分站点的绝对误差都较小. 如图6所示为不同站点1个时间步长的WMAPE分布. 可以看出,大部分站点的WMAPE小于10%,说明模型在大部分站点的相对误差也较小,尤其是需求量大的站点,由于需求量大,供需失衡会较严重,是研究的重点对象,这些站点的WMAPE低于5%,表明模型具有良好的性能. 然而,在需求量相对较小的站点(1个时间步长少于5辆车),WMAPE略高,大于10%. 由于这些站点的需求量相对较小,较小的需求量变化也会引起较大的波动,而且数据噪声相对较大,导致预测精度偏低.

图 5

图 5   不同站点的MAE

Fig.5   MAE chart in different stations


图 6

图 6   不同站点的WMAPE

Fig.6   WMAPE chart in different stations


3.5.3. 误差的时间分布

绘制模型在不同时间段的误差热图. 如图7所示为不同时间段1个时间步长的MAE图. 可以看出,误差分布的周期性更加明显. 工作日的误差高于双休日同一时段的误差. 在同一天内,早晚高峰时段8:00—9:00和18:00—19:00的误差高于其他时段的,清晨的误差较小. 不过,总体误差小于4辆. 如图8所示为是不同时间段1个时间步长的WMAPE图. 可以看出,除清晨几个时间段误差高于10%外,其余时间段误差均小于10%. 特别是在需求量较大、使用失衡现象较严重的白天时段,误差基本小于4%. 因此,模型在不同时段都表现良好.

图 7

图 7   不同时间的MAE

Fig.7   MAE in different time


图 8

图 8   不同时间的WMAPE

Fig.8   WMAPE in different time


为了进一步阐述时空误差分布,依据借还量选择3个站点,绘制借还量的预测值和真实值. 如图9所示为高借还量站点的对比图. 该站点在工作日会出现2个明显的高峰,借还量达1000辆. 可以看出,模型在几个高峰期的误差较小,能够较好地捕捉高峰时段的信息. 如图10所示为中等借还量站点的对比,该站点平日只有1个上午高峰,需求量超过200辆车. 模型在高峰时段的误差也较小. 如图11所示为低借还量站点的对比图,该站点在平峰时段的借还量基本低于10辆车. 在这些时段,模型与实际值的偏差略大.

图 9

图 9   高借还量站点预测值和真实值的比较图

Fig.9   Comparison between predicted and true value of station with high usage


图 10

图 10   中等借还量站点预测值和真实值的比较图

Fig.10   Comparison between predicted and true value of station with middle usage


图 11

图 11   低借还量站点预测值和真实值的比较图

Fig.11   Comparison between predicted and true value of station with low usage


4. 结 语

提出多通道图聚合注意力机制(MCGA)模型,用于预测共享单车的借还量. 通过在深圳和纽约的实验全面评估了模型的性能. 结果表明,基于MAE、RMSE和WAMPE等评价指标,MCGA在预测准确性方面优于其他深度学习模型. 特别是在借还量较大的站点和时间段,模型表现出更高的预测精度和更小的误差.

模型架构引入多通道动态邻接矩阵模块,能够根据交通状态的变化实时捕捉共享单车的空间依赖关系. 同时,融合POI、天气状况及区域热力值等多种外部因素,以增强模型对环境变化的感知能力. 在时间建模方面,采用自注意力机制挖掘借还量序列在时间维度上的内在关联性,并通过交叉注意力机制揭示不同变量之间的潜在联系. 注意力机制的优势主要得益于其多头结构设计,该结构能够在多个特征子空间中并行提取关键信息,有效识别重要特征、抑制噪声干扰,从而显著提升预测性能. 然而,实验也发现模型在低使用频率站点的预测中仍存在一定局限,相对误差偏高,这将是后续研究的重点方向之一.

参考文献

YU L, FENG T, LI T, et al

Demand prediction and optimal allocation of shared bikes around urban rail transit stations

[J]. Urban Rail Transit, 2023, 9 (1): 57- 71

DOI:10.1007/s40864-022-00183-w      [本文引用: 2]

TANG W, YANG C, WANG H, et al

Spatiotemporal demand prediction for bike sharing based on WT-ConvLSTM

[J]. Advances in Civil Engineering, 2024, 2024 (1): 2551687

DOI:10.1155/adce/2551687      [本文引用: 1]

XU C, JI J, LIU P

The station-free sharing bike demand forecasting with a deep learning approach and large-scale datasets

[J]. Transportation Research Part C: Emerging Technologies, 2018, 95: 47- 60

DOI:10.1016/j.trc.2018.07.013      [本文引用: 4]

YANG Y, SHAO X, ZHU Y, et al

Short-term forecasting of dockless bike-sharing demand with the built environment and weather

[J]. Journal of Advanced Transportation, 2023, 2023 (1): 7407748

[本文引用: 2]

FENG J, LIU H

An adaptive spatial-temporal method capturing for short-term bike-sharing prediction

[J]. IEEE Transactions on Intelligent Transportation Systems, 2024, 25 (11): 16761- 16774

DOI:10.1109/TITS.2024.3406682      [本文引用: 2]

HE S, SHIN K G. Towards fine-grained flow forecasting: a graph attention approach for bike sharing systems [C]// Proceedings of the Proceedings of The Web Conference 2020. [s.l.]: ACM, 2020: 88–98.

[本文引用: 2]

GALLOP C, TSE C, ZHAO J

A seasonal autoregressive model of Vancouver bicycle traffic using weather variables

[J]. I-manager’s Journal on Civil Engineering, 2011, 1 (4): 1694

[本文引用: 1]

KALTENBRUNNER A, MEZA R, GRIVOLLA J, et al

Urban cycles and mobility patterns: exploring and predicting trends in a bicycle-based public transport system

[J]. Pervasive and Mobile Computing, 2010, 6 (4): 455- 466

DOI:10.1016/j.pmcj.2010.07.002     

YOON J W, PINELLI F, CALABRESE F. Cityride: a predictive bike sharing journey advisor [C]// Proceedings of the IEEE 13th International Conference on Mobile Data Management. Bengaluru: IEEE, 2012: 306–311.

[本文引用: 2]

ASHQAR H I, ELHENAWY M, ALMANNAA M H, et al. Modeling bike availability in a bike-sharing system using machine learning [C]// Proceedings of the 5th IEEE International Conference on Models and Technologies for Intelligent Transportation Systems. Naples: IEEE, 2017: 374–378.

[本文引用: 1]

SATHISHKUMAR V E, PARK J, CHO Y

Using data mining techniques for bike sharing demand prediction in metropolitan city

[J]. Computer Communications, 2020, 153: 353- 366

DOI:10.1016/j.comcom.2020.02.007      [本文引用: 1]

JIA R, CHAMOUN R, WALLENBRING A, et al

A spatio-temporal deep learning model for short-term bike-sharing demand prediction

[J]. Electronic Research Archive, 2023, 31 (2): 1031- 1047

DOI:10.3934/era.2023051      [本文引用: 3]

LIN L, HE Z, PEETA S

Predicting station-level hourly demand in a large-scale bike-sharing network: a graph convolutional neural network approach

[J]. Transportation Research Part C: Emerging Technologies, 2018, 97: 258- 276

DOI:10.1016/j.trc.2018.10.011      [本文引用: 1]

DU L, WANG Y, SONG G, et al. Dynamic network embedding: an extended approach for skip-gram based network embedding [C]// Proceedings of the 27th International Joint Conference on Artificial Intelligence. Stockholm: International Joint Conferences on Artificial Intelligence Organization, 2018: 2086–2092.

[本文引用: 1]

PAREJA A, DOMENICONI G, CHEN J, et al. EvolveGCN: evolving graph convolutional networks for dynamic graphs [C]// 34th AAAI Conference on Artificial Intelligence. New York: Elsevier, 2020: 5363–5370.

WEN Z, FANG Y. TREND: temporal event and node dynamics for graph representation learning [C]// Proceedings of the ACM Web Conference 2022. [s.l.]: ACM, 2022: 1159–1169.

YOU J, DU T, LESKOVEC J. ROLAND: graph learning framework for dynamic graphs [C]// Proceedings of the 28th ACM SIGKDD Conference on Knowledge Discovery and Data Mining. Washington DC: ACM, 2022: 2358–2366.

[本文引用: 1]

PAN Y, ZHENG R C, ZHANG J, et al

Predicting bike sharing demand using recurrent neural networks

[J]. Procedia Computer Science, 2019, 147: 562- 566

DOI:10.1016/j.procs.2019.01.217      [本文引用: 1]

MEHDIZADEH DASTJERDI A, MORENCY C

Bike-sharing demand prediction at community level under COVID-19 using deep learning

[J]. Sensors, 2022, 22 (3): 1060

DOI:10.3390/s22031060      [本文引用: 3]

VASWANI A, SHAZEER N, PARMAR N, et al. Attention is All you Need [C]// 31st Conference on Neural Information Processing Systems. Long Beach: 2017 : 6000–6010.

[本文引用: 3]

LIU Z, GOKON H, SEKIMOTO Y

Long-term demand prediction for public bicycle sharing system: a spatio-temporal attentional graph convolution networks approach

[J]. IEEE Transactions on Intelligent Transportation Systems, 2024, 25 (12): 21515- 21527

DOI:10.1109/TITS.2024.3469169      [本文引用: 2]

LI X, ZHANG G, CUI H, et al

MCANet: a joint semantic segmentation framework of optical and SAR images for land use classification

[J]. International Journal of Applied Earth Observation and Geoinformation, 2022, 106: 102638

DOI:10.1016/j.jag.2021.102638      [本文引用: 1]

KHAN M, GUEAIEB W, EL SADDIK A, et al

MSER: multimodal speech emotion recognition using cross-attention with deep fusion

[J]. Expert Systems with Applications, 2024, 245: 122946

DOI:10.1016/j.eswa.2023.122946      [本文引用: 1]

GU J, ZHOU Q, YANG J, et al

Exploiting interpretable patterns for flow prediction in dockless bike sharing systems

[J]. IEEE Transactions on Knowledge and Data Engineering, 2022, 34 (2): 640- 652

DOI:10.1109/TKDE.2020.2988008      [本文引用: 1]

HUA M, CHEN J, CHEN X, et al

Forecasting usage and bike distribution of dockless bike-sharing using journey data

[J]. IET Intelligent Transport Systems, 2020, 14 (12): 1647- 1656

DOI:10.1049/iet-its.2020.0305      [本文引用: 2]

AI Y, LI Z, GAN M, et al

Retraction note: a deep learning approach on short-term spatiotemporal distribution forecasting of dockless bike-sharing system

[J]. Neural Computing and Applications, 2024, 36 (25): 15927

DOI:10.1007/s00521-024-10079-4      [本文引用: 1]

LIU Z, SHEN Y, ZHU Y. Inferring dockless shared bike distribution in new cities [C]// Proceedings of the 11th ACM International Conference on Web Search and Data Mining. Marina Del Rey: ACM, 2018: 378–386.

[本文引用: 1]

ZHANG J, ZHENG Y, QI D, et al. DNN-based prediction model for spatio-temporal data [C]// Proceedings of the 24th ACM SIGSPATIAL International Conference on Advances in Geographic Information Systems. Burlingame: ACM, 2016: 1–4.

[本文引用: 1]

LIU Y, HU T, ZHANG H, et al. iTransformer: inverted transformers are effective for time series forecasting [EB/OL]. (2023-10-10)[2024-10-15]. https://arxiv.org/abs/2310.06625.

[本文引用: 1]

/