浙江大学学报(工学版), 2025, 59(6): 1211-1218 doi: 10.3785/j.issn.1008-973X.2025.06.012

计算机技术

面向目的地预测的层次化空间嵌入BiGRU模型

周翔宇,, 刘毅志,, 赵肄江, 廖祝华, 张德城

1. 湖南科技大学 计算机科学与工程学院,湖南 湘潭 411201

2. 湖南科技大学 服务计算与软件服务新技术湖南省重点实验室,湖南 湘潭 411201

Hierarchical spatial embedding BiGRU model for destination prediction

ZHOU Xiangyu,, LIU Yizhi,, ZHAO Yijiang, LIAO Zhuhua, ZHANG Decheng

1. School of Computer Science and Engineering, Hunan University of Science and Technology, Xiangtan 411201, China

2. Hunan Key Laboratory for Service Computing and Novel Software Technology, Hunan University of Science and Technology, Xiangtan 411201, China

通讯作者: 刘毅志,男,副教授,博士. orcid.org/0000-0002-5052-2582. E-mail:yizhi_liu@sina.cn

收稿日期: 2024-06-5  

基金资助: 2024年教育部人文社会科学研究规划基金资助项目(24YJAZH237);2023年湖南省重点研发计划资助项目(2023sk2081);湖南省自然科学基金资助项目(2024JJ5163) ;湖南省教育厅科学研究重点资助项目(22A0341).

Received: 2024-06-5  

Fund supported: 2024年教育部人文社会科学研究规划基金资助项目(24YJAZH237);2023年湖南省重点研发计划资助项目(2023sk2081);湖南省自然科学基金资助项目(2024JJ5163);湖南省教育厅科学研究重点资助项目(22A0341).

作者简介 About authors

周翔宇(1999—),男,硕士生,从事轨迹数据挖掘研究.orcid.org/0009-0009-5658-5734.E-mail:z_xy24@sina.cn , E-mail:z_xy24@sina.cn

摘要

结合空间嵌入和神经网络目的地的预测方法在预测精度和时间性能之间存在权衡,并且面临长期依赖的问题. 为此,提出面向目的地预测的层次化空间嵌入双向门控循环单元 (HSE-BiGRU) 模型. 该模型采用层次化架构:第1层通过粗粒度网格嵌入技术,将GPS轨迹数据转换为网格嵌入序列,利用带注意力的BiGRU网络捕获网格嵌入序列中的时空依赖关系,预测目的地所在的网格区域;第2层采用四叉树嵌入技术将网格区域内的轨迹数据转换为四叉树嵌入序列,运用带注意力的BiGRU网络聚焦关键位置节点以提取四叉树嵌入序列的运动特征;结合2层提取的特征信息精准预测目的地. 使用波尔图市的出租车数据集进行性能评估,结果表明,所提方法在预测精度和时间性能上均优于CNN、T-CONV、CNN-LSTM等基线模型.

关键词: 目的地预测 ; 层次化架构 ; 网格嵌入 ; 四叉树嵌入 ; 双向门控循环单元(BiGRU) ; 注意力机制

Abstract

At present, most destination prediction methods that combine spatial embedding and neural networks faced the trade-off between prediction accuracy and time performance, as well as the long-term dependence problem. Therefore, a hierarchical spatial embedding bidirectional gate recurrent unit (HSE-BiGRU) model for destination prediction was proposed. The proposed HSE-BiGRU model adopted a hierarchical architecture consisting of two stages. In the first stage, a coarse-grained grid embedding technique was employed to convert the GPS trajectory data into a grid embedding sequence. An attention-equipped BiGRU network was used to capture the spatiotemporal dependencies within the sequence and predict the destination’s grid region. In the second stage, a quadtree embedding technique was utilized to transform the trajectory data within the predicted grid region into a quadtree embedding sequence. Subsequently, the attention-equipped BiGRU network was applied to focus on critical location nodes within the quadtree embedding sequence, thereby extracting its motion characteristics. Finally, the destination was accurately predicted by integrating the features extracted from both stages. The performance of the proposed method was evaluated on the taxi dataset in Porto, and the experimental results showed that the proposed method was superior to the baseline models, for example CNN, T-CONV, and CNN-LSTM, in terms of prediction accuracy and time performance.

Keywords: destination prediction ; hierarchical architecture ; grid embedding ; quadtree embedding ; bidirectional gate recurrent unit (BiGRU) ; attention mechanism

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

本文引用格式

周翔宇, 刘毅志, 赵肄江, 廖祝华, 张德城. 面向目的地预测的层次化空间嵌入BiGRU模型. 浙江大学学报(工学版)[J], 2025, 59(6): 1211-1218 doi:10.3785/j.issn.1008-973X.2025.06.012

ZHOU Xiangyu, LIU Yizhi, ZHAO Yijiang, LIAO Zhuhua, ZHANG Decheng. Hierarchical spatial embedding BiGRU model for destination prediction. Journal of Zhejiang University(Engineering Science)[J], 2025, 59(6): 1211-1218 doi:10.3785/j.issn.1008-973X.2025.06.012

挖掘车辆轨迹数据以预测目的地可优化出行体验,还能为交通调度、商业活动提供数据支持[1-2]. 当前深度学习方法主要分为2类.1)空间特性建模方法:将轨迹数据映射为网格图像,随后采用卷积神经网络(CNN)来提取轨迹图像的空间特征(如直线、曲率),进而预测目的地. 例如,江倩等[3]将轨迹分段处理,再转化为轨迹图像,并使用CNN进行特征提取和目的地预测. Lv等[4]提出可以从轨迹图像捕获多尺度空间特征的模型T-CONV,并在此基础上进行更多的扩展. 李冰荣等[5]将轨迹分段并转化为轨迹图像后,先使用CNN提取轨迹的空间特征再借助长短期记忆网络(LSTM)模型提取轨迹的上下文信息预测目的地. 但此类方法不能展现轨迹的时间顺序信息. 2)时间序列分析方法:通常使用基于循环神经网络(RNN)的网络对轨迹点进行序列化建模. 例如,崔淑敏等[6]提出采用滑动窗口改进的LSTM模型(DLDP),此模型利用滑动窗口提取包括速度变化、时间变化、转角变化在内的高层特征,将这些特征与原始特征相结合,供LSTM模型用于目的地预测. Dan等[7]提出基于树形存储模块的TMM-LSTM目的地预测模型. 但此类方法在提取空间特征方面仍面临挑战.

近年来,诸多学者通过空间嵌入技术将GPS轨迹点转化为表征轨迹的空间背景的空间向量,使得RNN能够同时捕获时间和空间信息. 例如,Liao 等[8]将GPS轨迹转化为2种嵌入序列,使用基于注意力的双向LSTM模型捕获目的地与访问位置的上下文之间的关系. 晋广印等[9]使用Geohash算法和降维处理将轨迹数据转化为低维嵌入向量,并引入自注意力机制到LSTM网络,提出SATN-LSTM模型. 此类方法可以同时捕获轨迹的时间和空间信息以预测目的地. 但是也面临以下问题:1) 预测精度与时间的权衡问题. 空间嵌入丰富了轨迹的空间信息内容,但也增加了计算负担. 2)长期依赖问题. 基于RNN的序列分析模型在长距离信息传输过程中会出现信息损失、梯度消失的情况,影响模型的预测准确性.

针对上述问题,本研究提出面向目的地预测的层次化空间嵌入双向门控循环单元(hierarchical spatial embedding bidirectional gate recurrent unit,HSE-BiGRU). 主要贡献如下:1)针对预测精度与时间性能权衡问题,提出层次化空间嵌入方法. 使用粗粒度的网格嵌入,将 GPS轨迹数据转化为网格嵌入序列;通过预测模型,预测目的地所在的网格区域;采用细粒度的四叉树嵌入技术,将预选出的网格区域内轨迹数据转化为四叉树嵌入序列;通过预测模型提取特征信息预测最终目的地. 这种先粗略后精细的嵌入方法不仅能有效提升预测准确性,还能优化计算资源分配,提升时间性能. 2)针对长期依赖问题,提出带有注意力的双向门控循环单元(BiGRU)网络. BiGRU网络具有双向结构,能够同时从正向和反向捕捉轨迹的时间顺序信息. 门控机制可以防止信息遗忘,注意力机制则能够进一步筛选关键信息.

1. 问题描述

整个车辆的目的地预测问题可以看作预测车辆到每个候选目的地的概率问题. 给定部分轨迹${T^p}$和候选目的地集合$ {\mathrm{CPD}} $,根据${T^p}$计算车辆开往$ {\mathrm{CPD}} $中每个候选目的地${d_i}$的概率,即$\hat p(y = {d_i}|{T^p}), {d_i} \in {\mathrm{CPD}}$,然后返回预测概率最高的前k个候选目的地[8].

定义1 轨迹. 轨迹T为出租车从上车位置$ {l_1} $到下车位置$ {l_n} $的完整行程,由一系列GPS轨迹点组成. $ T = \{{l_1},{l_2},\cdots,{l_i},\cdots,{l_n}\} $,其中$i \leqslant n$$ {l_i} = (x_{_i}^{{\mathrm{lon}}},x_{_i}^{{\mathrm{lat}}}) $表示轨迹中第i个GPS轨迹点的经度、纬度.

定义2 部分轨迹. 部分轨迹是轨迹的前一部分,即从上车位置$ {l}_{1} $开始,到出租车当前记录的位置 $ {l}_{m} $结束,可以表示为${T^p} = \{{l_1},{l_2},\cdots ,{l_m}\}(1 \leqslant m \leqslant n, p = m/n)$p表示轨迹的完成度,取值为0~100%.

定义3  候选目的地. 候选目的地是通过对所有出租车轨迹的下车位置进行聚类分析得到的一组聚类簇. 每个聚类簇代表一组具有相似特征的下车位置. 候选目的地可以表示为$ {\mathrm{CPD}} = \{{d_1},{d_2},\cdots,{d_M}\} $,其中M为聚类簇的个数.

定义4  分层网格单元. 分层网格单元将实验区域划分为$g \times g$的网格单元,其中$g = {2^q}(q \geqslant 1)$$q$为城市划分层级. 这种划分方法允许在不同层次上对区域进行细分,以适应不同尺度的空间分析需求.

定义5  层次化空间嵌入. 其具体工作原理如图1 所示,采用先粗略后精细的思想将轨迹数据层次化构建为空间嵌入序列. 将实验区域划分为粗粒度的网格单元,这些单元对应于城市划分层级$h$较小的分层网格;使用网格嵌入技术将当前粗粒度网格下的轨迹数据编码为网格嵌入序列;将网格嵌入序列输入预测模型以预测目的地所在的区域;将预测得到的目的地区域划分成细粒度的网格单元,这些单元对应于城市划分层级$q$较大的分层网格;使用四叉树嵌入技术将这些更细粒度的网格单元中的轨迹数据编码为四叉树嵌入序列.

图 1

图 1   层次化空间嵌入工作原理

Fig.1   Principle of hierarchical spatial embedding


2. 本研究方法

预测模型HSE-BiGRU架构如图2所示. 该模型主要有4个阶段:1) 构造候选目的地;2)预测目的地网格区域;3)提取目的地区域中GPS轨迹点的运动特征;4)计算每个候选目的地的概率.

图 2

图 2   HSE-BiGRU架构

Fig.2   Architecture of HSE-BiGRU


从轨迹数据中提取所有的下车位置,并对这些位置进行聚类分析,将相似的下车位置分组,形成具有代表性的候选目的地集合$ {\mathrm{CPD}} $. 利用粗略的网格嵌入将轨迹数据编码为表示轨迹地理邻接性的网格嵌入序列,并采用带注意力的BiGRU网络预测目的地最有可能存在的网格区域. 从目的地网格区域中提取存在的GPS轨迹点,运用精细的四叉树嵌入方法,将GPS轨迹点构建成四叉树嵌入序列,以表示GPS轨迹点的多尺度空间背景,并利用带注意力的BiGRU网络提取轨迹的运动特征. 将提取到的特征通过全连接层进行连接和融合,采用Softmax分类器输出候选目的地的概率,并返回概率排名前k的候选目的地作为预测目的地.

2.1. 候选目的地构造

为了从轨迹数据中提取乘客的潜在目的地,从每一条轨迹中提取每一次行程的终点位置,将这些终点位置组成一个终点集合;使用 Mean-Shift 聚类算法对终点集合中相似的终点进行聚类,以形成候选目的地集合CPD. Mean-Shift 算法是通过迭代更新寻找数据集中的高密度区域的方法. 该算法的核心在于计算当前目标点与当前概率密度局部极大值之间的偏移均值向量,并让目标点沿着该偏移均值向量的方向移动,直至满足最优条件. 当前目标点与当前概率密度局部极大值之间的偏移均值向量表达式如下:

$ {{\boldsymbol{M}}_o}\left( {\boldsymbol{x}} \right) = \dfrac{{\displaystyle{\sum}_{i = 1}^c {G\left( {{{\left\| {\dfrac{{{{\boldsymbol{x}}_i} - {\boldsymbol{x}}}}{o}} \right\|}^2}} \right)} w\left( {{{\boldsymbol{x}}_i}} \right){{\boldsymbol{x}}_i}}}{{\displaystyle{\sum}_{i = 1}^c {G\left( {\dfrac{{{{\boldsymbol{x}}_i} - {\boldsymbol{x}}}}{o}} \right)} w\left( {{{\boldsymbol{x}}_i}} \right)}} - {\boldsymbol{x}}. $

式中:x为中心点的坐标,${{\boldsymbol{x}}_i}$为带宽范围内的点,c为带宽范围内轨迹目的地地点数量,G(x)为估算数据集密度的核函数,o为计算带宽范围,$w\left( {{{\boldsymbol{x}}_i}} \right)$为每一个点的权重.

2.2. 预测目的地网格区域

为了预测目的地网格区域,对部分轨迹数据${T^p}$进行粗略的网格嵌入,将其转换为网格嵌入序列;利用带有注意力的BiGRU模型预测目的地所在的网格区域.

2.2.1. 网格嵌入

将实验区域划分为粗粒度的$g \times g$网格单元,每个GPS轨迹点$ {l_i} $都位于某个网格单元${c_{uv}}$内,uv分别表示该网格单元在整个网格空间的横坐标和纵坐标$\left( {1 \leqslant u \leqslant g,\,\,1 \leqslant v \leqslant g} \right)$. 为了增强GPS表示的鲁棒性,将单个单元网格内的所有GPS轨迹点视为统一的整体. 这样,每个GPS轨迹点都可以用其所在网格单元的笛卡尔坐标表示,即将原始GPS轨迹点$ {l_i} = (x_{_i}^{{\mathrm{lon}}},x_{_i}^{{\mathrm{lat}}}) $转化为网格嵌入向量${{\boldsymbol{e}}_i}$${{\boldsymbol{e}}_i} = \left[ {u,v} \right]$.

2.2.2. 带有注意力的BiGRU

在采用粗略的网格嵌入描述轨迹的地理邻近关系后,设计带有注意力的BiGRU网络预测目的地所在的网格区域. BiGRU模型是能够捕捉序列数据中的前后依赖关系的神经网络结构,注意力机制的引入使得模型能够关注轨迹中的重要部分,从而提高预测的准确性.

1) BiGRU. BiGRU是RNN的变体网络,同时包含正向和反向的传播路径,可以捕捉到序列数据中的前后关系. 与标准 RNN 相比,GRU引入门控机制来控制信息的流动,从而解决了长期依赖问题. GRU 结构包含更新门和重置门,这2个门控机制可以帮助网络选择性地保留或丢弃信息,以更好地捕捉序列中的长期依赖关系. 与标准GRU相比,BiGRU在结构上更加复杂,因为它须同时处理正向和反向的序列信息. 这种双向设计使得BiGRU能够更全面地捕捉到序列数据中的时间依赖性,从而在处理轨迹数据时能够更好地保留时间信息. 在实际应用中,可以将BiGRU网络应用于GPS嵌入序列上,以提取序列中的时空特征,其工作机制如图3所示. 每个输入的网格嵌入序列可以表示为${\boldsymbol{x }}= \;\left[ {{{\boldsymbol{e}}_1},{{\boldsymbol{e}}_2}, \cdots ,{\boldsymbol{e}}_n} \right]^{\mathrm{T}}$,其正向过程表达式如下:

图 3

图 3   BiGRU工作示意图

Fig.3   Working schematic of BiGRU


$ {\boldsymbol{z}}_{_n}^{\rm{f}} = \sigma \left( {{\boldsymbol{W}}_{z}^{\rm{f}} \cdot \left[ {{\boldsymbol{h}}_{_{n - 1}}^{\rm{f}},{\boldsymbol{e}}_n^{\rm{f}}} \right]} \right), $

$ {\boldsymbol{r}}_n^{\rm{f}} = \sigma \left( {{\boldsymbol{W}}_r^{\rm{f}} \cdot \left[ {{\boldsymbol{h}}_{n - 1}^{\rm{f}},{\boldsymbol{e}}_n^{\rm{f}}} \right]} \right), $

$ {\boldsymbol{g}}_n^{\rm{f}} = \tanh \left( {{\boldsymbol{W}}_h^{\rm{f}} \cdot \left[ {{\boldsymbol{r}}_h^{\rm{f}} * {\boldsymbol{h}}_{n - 1}^{\rm{f}},{\boldsymbol{e}}_n^{\rm{f}}} \right]} \right), $

$ {\boldsymbol{h}}_n^{\rm{f}} = \left( {{\text{1}}- {\boldsymbol{z}}_n^{\rm{f}}} \right) * {\boldsymbol{h}}_{n - 1}^{\rm{f}}+{\boldsymbol{z}}_n^{\rm{f}} * {\boldsymbol{g}}_n^{\rm{f}}. $

式中:${\mathrm{f}}$代表正向过程,$\sigma $为Sigmoid函数,${{\boldsymbol{z}}_n}$${{\boldsymbol{r}}_n}$${{\boldsymbol{g}}_n}$${{\boldsymbol{h}}_n}$分别表示GRU处理第n步数据时的重置门、更新门、候选记忆单元、当前时刻的记忆单元,W表示状态变化的权重矩阵. 由于BiGRU的正向过程和反向过程基本一样 ,只是序列数据提取方向相反,可以使用上标${\mathrm{b}}$替代正向过程公式的${\mathrm{f}}$作为反向过程公式. 输入序列${\boldsymbol{x}} = \;\left[ {{{\boldsymbol{e}}_1},{{\boldsymbol{e}}_2}, \cdots ,{{\boldsymbol{e}}_n}} \right]^{\mathrm{T}}$经BiGRU输出可以表示正向的隐藏特征$ {{\boldsymbol{H}}^{\rm{f}}} = \big[ {\boldsymbol{h}}_1^{\rm{f}}, {\boldsymbol{h}}_2^{\rm{f}},\cdots,{\boldsymbol{h}}_n^{\rm{f}} \big]^{\mathrm{T}} $和反向的隐藏特征$ {{\boldsymbol{H}}^{\rm{b}}} = \left[ {{\boldsymbol{h}}_1^{\rm{b}},{\boldsymbol{h}}_2^{\rm{b}},\cdots,{\boldsymbol{h}}_n^{\rm{b}}} \right]^{\mathrm{T}} $.

2) 注意力. 在 BiGRU网络之后加入注意力机制,注意力机制的基本思想是在输入序列的不同位置赋予不同的权重,以便模型能够关注到输入序列中最相关的部分,从而更好地捕捉序列中的关键信息,增强模型预测能力. 如图4所示为本研究所提注意力机制工作机理. 将2个分别表示正向和反向的隐藏特征$ {{\boldsymbol{H}}^{\mathrm{f}}} $$ {{\boldsymbol{H}}^{\mathrm{b}}} $发送到同一个感知机中,将每一步的结果整合到$ {{\boldsymbol{m}}_i}\left( {1 \leqslant i \leqslant n} \right) $中. 对$ \left[ {{{\boldsymbol{m}}_1},{{\boldsymbol{m}}_2},\cdots,{{\boldsymbol{m}}_n}} \right]^{\mathrm{T}} $采用Softmax函数推导每个嵌入向量的注意力强度${\boldsymbol{\alpha}} $,并和对应的隐藏特征相乘再累加得到最后的运动特征${\boldsymbol{R}}$. ${\boldsymbol{R}}$包含运动轨迹数据${T^p}$中的地理邻近信息和时间变化,根据${\boldsymbol{R}}$预测目的地所处的网格区域. 过程表达式如下:

图 4

图 4   注意力机制工作机理

Fig.4   Working schematic of attention mechanism


$ {{\boldsymbol{m}}_i} = \tanh \left( {{{\boldsymbol{W}}_h}{\boldsymbol{h}}_i^{\mathrm{f}}+{{\boldsymbol{b}}_h}} \right)+\tanh \left( {{{\boldsymbol{W}}_h}{\boldsymbol{h}}_i^{\mathrm{b}}+{{\boldsymbol{b}}_h}} \right)\;, $

$ {\boldsymbol{R}} = \sum\limits_{i = 1}^N {{\alpha _i}\left[ {{\boldsymbol{h}}_i^{\mathrm{f}},{\boldsymbol{h}}_i^{\mathrm{b}}} \right]} . $

式中:bh为函数偏置项.

2.3. 提取目的地区域中轨迹点的运动特征

在预测到目的地区域后,首先确定该区域的范围,并从${T^p}$中提取该范围内的GPS轨迹点,构成目的地区域轨迹${T^{_{\mathrm{d}}}} = \{{l_1},{l_2},\cdots,{l_j}\}(1 \leqslant j \leqslant {\mathrm{len}}\,\,({T^p})$$,{T^{_{\mathrm{d}}}} \subset {T^p})$,接着对${T_{}^{\mathrm{d}}}$进行四叉树嵌入,以获得表征GPS轨迹点在不同尺度下空间特征的四叉树嵌入序列,并利用带注意力的BiGRU网络挖掘四叉树序列的运动特征.

2.3.1. 四叉树嵌入

四叉树结构作为典型的空间数据结构,其每一层都有4个分支附着在一个点上,可以通过将二维空间递归分解为4个等面积的块来描述一个位置的多尺度属性[10]. 通过将分层网格单元转换为四叉树结构,可以逐层描述每个GPS轨迹点在不同层级空间下的城市位置,揭示车辆轨迹的多尺度空间特性.

不同层级的网格单元用不同层的四叉树节点表示. 如图5(a)所示,给定GPS轨迹$ (T = \{{l_1},{l_2},{l_3},{l_4},{l_5}\}) $的分层层级q=3的网格区域. 将图5(a)实验区域用黑线划分为等分的4个网格单元,按照方向位置分为$ \{ {\text{NW}},{\text{NE}},{\text{SW,}} $${\text{SE}}\} $,这是分层网格的第1层;每个网格单元还可以进一步使用绿线细分为4个同等大小的网格构成分层网格的第2层,网格名称和上一层的4个网格单元一样;按照以上步骤用蓝线划分出第3层网格.

图 5

图 5   基于四叉树结构的空间嵌入

Fig.5   Spatial embedding based on Quadtree spatial structure


对应的四叉树结构如图5(b)所示,矩形中每个节点都代表当前层级网格四等分后的下一层级网格的方向,所有GPS轨迹点都可以通过查询自己从根到叶子的方向信息来分层描述自己在城市空间的位置. 例如上车位置$ {l}_{1} $的四叉树嵌入可以描述为${\boldsymbol{e}}'_1 = [{\text{NW, SE, NW}}]$. 为了将嵌入数据输入到神经网络,采用数值描述这种分层的位置信息,使用one-hot编码将4个网格单元$ \{ {\text{NW}},{\text{NE}},{\text{SW,SE\} }} $编码为$ \{ {\text{1000}},{\text{ 0100, 0010, 0001 }}\} $ [11]. 从而可以将图5中的轨迹$T$转为为如下四叉树嵌入序列:

$ {\boldsymbol{T }}= \left[ {\begin{array}{*{20}{c}} {{\boldsymbol{e}}'_1} \\ {{\boldsymbol{e}}'_2} \\ {{\boldsymbol{e}}'_3} \\ {{\boldsymbol{e}}'_4} \\ {{\boldsymbol{e}}'_5} \end{array}} \right] = \left[ {\begin{array}{*{20}{c}} {1000,}&{0001,}&{1000,}&{\cdots} \\ {0010,}&{0100,}&{1000,}&{\cdots} \\ {0010,}&{0100,}&{0100,}&{\cdots} \\ {\begin{array}{*{20}{c}} {0001,} \\ {0001,} \end{array}}&{\begin{array}{*{20}{c}} {1000,} \\ {0100,} \end{array}}&{\begin{array}{*{20}{c}} {0001,} \\ {0001,} \end{array}}&{\begin{array}{*{20}{c}} {\cdots} \\ {\cdots} \end{array}} \end{array}} \right]. $

通过上述四叉树嵌入方法,可以将目的地区域中的${T^{_d}} = \{{l_1},{l_2},\cdots,{l_j}\}$转化成四叉树嵌入序列${{\boldsymbol{x}}'} = [{\boldsymbol{e}}'_1,{\boldsymbol{e}}'_2,\cdots,{\boldsymbol{e}}'_j]^{\mathrm{T}}$.

2.3.2. 提取运动特征

经四叉树嵌入得到描述GPS轨迹点多尺度空间特性的四叉树嵌入序列${{\boldsymbol{x}}'} = [{\boldsymbol{e}}'_1,{\boldsymbol{e}}'_2,\cdots,{\boldsymbol{e}}'_j]^{\mathrm{T}}$,随后采用带注意力的BiGRU网络从${{\boldsymbol{x}}'}$中提取轨迹中包含多尺度空间变化和时间变化的运动特征.

针对输入的四叉树嵌入序列${{\boldsymbol{x}}'} = [{\boldsymbol{e}}'_1,{\boldsymbol{e}}'_2,\cdots,{\boldsymbol{e}}'_j]^{\mathrm{T}}$,使用BiGRU网络从正向和反向提取表示正向的隐藏特征${\boldsymbol{H}}^{\mathrm{f}}=\left[{\boldsymbol{h}}_1^{{\prime}{\mathrm{f}}}, {\boldsymbol{h}}_2^{{\prime}{\mathrm{f}}}, \cdots, {\boldsymbol{h}}_j^{{\prime}{\mathrm{f}}}\right]^{\mathrm{T}}$和反向的隐藏特征$ {{\boldsymbol{H}}^{{\prime}{\mathrm{b}}}} = \left[ {{\boldsymbol{h}}_1^{{\prime}{\mathrm{b}}},{\boldsymbol{h}}_2^{{\prime}{\mathrm{b}}},\cdots,{\boldsymbol{h}}_j^{{\prime}{\mathrm{b}}}} \right]^{\mathrm{T}} $. 为了进一步从输入四叉树序列中提取重点信息,在BiGRU网络之后加入注意力机制,从隐藏特征$ {{\boldsymbol{H}}^{{\mathrm{f}}}} $$ {{\boldsymbol{H}}^{{\prime}{\mathrm{b}}}} $中提取重要信息并整合得到运动特征${{\boldsymbol{R}}^{\prime}}$. ${{\boldsymbol{R}}^{\prime}}$包含目的地区域轨迹${{{T}}^{{\mathrm{d}}}}$中多尺度空间变化和时间变化的信息.

2.4. 计算每个候选目的地的概率

使用全连接层和Softmax分类器融合特征并输出最后的候选目的地概率分布. 将运动特征${\boldsymbol{R}}$${{\boldsymbol{R}}^{\prime}}$进行拼接融合后送入全连接网络中进行非线性变换得到原始输出:

$ {{\boldsymbol{z}}}=\operatorname{ReL}{\mathrm{U}} \left({\boldsymbol{W}}_{\mathrm{FC}}\left[\boldsymbol{R}, \boldsymbol{R}^{\prime}\right]+\boldsymbol{b}_{\mathrm{FC}}\right) . $

使用Softmax分类器整合原始输出${\boldsymbol{z}}$获得候选目的地概率分布,得到第$ i $个候选目的地是真正目的地的概率$\hat p$,最终返回$ \hat{p} $最大的候选目的地作为最终输出$ \hat{y} $

$ \hat p(y = {d_i}|{T^p}) = \dfrac{{{{\mathrm{e}}^{{z_i}}}}}{{\displaystyle\sum\nolimits_{t = 1}^{\left| D \right|} {{{\mathrm{e}}^{{z_t}}}} }};\,\, 1 \leqslant i \leqslant \left| D \right|. $

$ \hat{{y}} = \arg \max \,\, \left( {\hat p(y = {d_i}|{T^p})} \right). $

式中:$|{{D}}| $为候选目的地的数量,$z_{i} $表示第i个候选目的地的原始输出.

采用交叉熵作为损失函数,以计算softmax分类器中预测概率分布与真实概率分布之间的距离:

$ L = - \dfrac{1}{{ N }}\displaystyle\sum\limits_{i = 1}^{N} {{s_i}\log \,\, {\hat y} } . $

式中:${s_i}$为真实目的地,N为训练集数量.

3. 实验结果

3.1. 实验数据集与实验环境

实验数据来源于Kaggle-ECML/PKDD竞赛中的真实轨迹数据集. 该数据集提供了葡萄牙波尔图市442辆出租车1 a (2013−07−01—2014−06−30)的轨迹数据. 训练集包含170多万条数据,每条数据都对应一个完整的行程,行程包含车辆ID、时间戳、出租车轨迹等9个属性. 从训练集中随机选取5万条数据作为样本数据,并按照6∶2∶2的比值划分训练集、验证集和测试集.

硬件平台:AMD Ryzen 75800H,内存为16 G. 软件配置:Windows 10操作系统,Anaconda3资源管理,Pycharm IDE,Pytorch 1.12.1深度学习框架,Python语言开发.

3.2. 评估指标

1) 准确率A. 在测试过程中,模型输出概率排名前k的候选目的地,如果输出的k个候选目的地中包含真正的目的地即可视为预测成功. 表达式如下:

$ A = \dfrac{{N({\mathrm{test}}@{\text{true}})}}{{N({\mathrm{test}})}}. $

式中:$N({\mathrm{test}}@{\text{true}})$表示模型测试时预测成功的数量,$N({\mathrm{test}})$表示测试集数据总数.

2) 平均绝对误差MAE. MAE表示概率排名第1的候选目的地和实际目的地的距离误差的绝对值的平均值,可以精确反映预测值与实际值之间的偏差:

$ {\mathrm{MAE}} = \dfrac{1}{N} \displaystyle\sum\limits_{i = 0}^N {\left\| {d\left( {{{{y}}_i},{{\hat {{y}} }_i}} \right)} \right\|} , $

$ d\left( {{{{y}}_i},{{\hat {{y}}}_i}} \right) = 2R\arctan\,\, \left( {\sqrt {\dfrac{\alpha }{{1 - \alpha }}} } \right), $

$ \begin{split} \alpha =& {\sin ^2}\left( {\dfrac{{{y_{\mathrm{lat}}} - {{\hat y}_{\mathrm{lat}}}}}{2}} \right)+(\cos \,\, {{y_{\mathrm{lat}}}} )\times \\ &(\cos \,\,{{{\hat y}_{\mathrm{lat}}}} )\times {\sin ^2}\,\,\left( {\dfrac{{{y_{\mathrm{lon}}} - {{\hat y}_{\mathrm{lon}}}}}{2}} \right). \end{split} $

式中:d为采用Haversine距离计算的实际目的地和预测目的地之间的距离偏差,R为地球半径,$ {y_{{\mathrm{lon}}}} $$ {y_{{\mathrm{lat}}}} $分别表示目的地点的经度、纬度,$\hat y_{{\text{lon}}} $$\hat y_{{\text{lat}}} $分别表示目的地点经度、维度预测值.

3) 响应时间RT. 响应时间RT是模型运行过程中从数据输入至模型中到输出预测结果的时间,反映模型时间性能与对计算资源的使用.

3.3. 实验结果对比与分析

3.3.1. 不同轨迹完成度下的模型性能表现

在真实的出租车行驶场景中,随着出租车行驶进程的深入,轨迹的完成度越高,能够提供的信息越多,目的地预测更为准确. 为了验证这一观点,调整轨迹完成度参数p,模拟基于已采集的GPS轨迹预测出租车的目的地. 相应的实验结果如表1所示. 可以看出,随着轨迹完成度的提高,在相同的k下,预测准确率呈现上升趋势,MAE呈现下降趋势,响应时间呈现上升趋势. 表明轨迹的完整程度对于目的地预测任务的性能有显著的影响. 轨迹完成度越高,模型能够接收到的序列信息越完整,从而能够更准确地预测出租车的目的地,而越完整的序列信息也需要更多的处理时间. 这一发现与直觉相符,即更多的数据提供了更多的信息,有助于提高预测的准确性,但也增加了模型的处理时间.

表 1   不同轨迹完成度下的模型性能比较

Tab.1  Comparison of model performance at different trajectory completions

p/%A/%MAE/mRT/ms
k=1k=2k=3k=4k=5
3023.933.240.346.450.52364.32.15
5040.353.161.767.470.61301.02.22
7054.667.876.581.685.2754.92.33
9071.486.291.894.395.4486.72.43

新窗口打开| 下载CSV


3.3.2. 层次化网格划分参数分析实验

为了探究网格划分参数对实验结果的影响,在p=70%的${T^p}$条件下进行实验. 在实验开始时,借鉴文献[8]的研究成果,即当整个实验区域的城市划分层级$q = 7$时,实验结果最佳. 在此基础上,进一步探讨层次化网格划分参数对模型性能的影响. 设置在第1层粗粒度网格嵌入的城市划分层级为$q_1$,第2层较精细的四叉树嵌入的城市划分层级为$q_2$,且两者之间满足 $q_1+q_2 = 7$以及$q_1 < q_2$的关系. 实验结果如表2所示. 可以看出, 在$q_1 = 2$$q_2 = 5$的情况下,模型在准确率和MAE上表现良好,虽然略逊$q_1 = 1$$q_2 = 6$的情况,但差异不大,并且响应时间更优. 尽管$q_1 = 3$$q_2 = 4$在时间性能上表现最佳,但精度性能大幅下降. 因此,综合考虑预测精度和时间性能,选择$q_1 = 2$$q_2 = 5$作为其他实验的参数设置,以确保较高的精度和良好的时间性能.

表 2   网格划分参数设置比较

Tab.2  Comparison of meshing parameter settings

网格划分参数A/%MAE/mRT/ms
k=1k=2k=3k=4k=5
$q_1$=1,$q_2$=655.168.876.882.385.4740.82.76
$q_1$=2,$q_2$=554.667.876.581.685.2754.92.33
$q_1$=3,$q_2$=443.359.170.176.180.6987.12.11

新窗口打开| 下载CSV


3.3.3. 消融实验

为了探究网格嵌入和四叉树嵌入的作用,设计对比实验. 在不使用层次化方法的基础上,分别单独应用网格嵌入和四叉树嵌入方法,并且在轨迹完成度p=70%的${T^p}$条件下进行实验. 具体的实验结果如表3所示. 结果表明,1)与网格嵌入方法相比,本研究所提方法有明显的优势;2)与四叉树嵌入方法相比,在预测准确率相近的情况下,本研究所提方法的MAE增加了4.8%,但响应时间缩短了24.0%. 这是因为本研究方法首先预测一个目的地区域,然后对区域内的轨迹点进行精细的四叉树嵌入,减少了整体处理的数据量,提高了预测速度. 尽管处理的轨迹点数量减少,但重点保留了目的地区域内部的轨迹点,这些点对于目的地的选择至关重要,因此仍能保持较高的预测准确率. 通过这种方式,本研究方法能够在保证预测精度的同时,提升预测速度,这对于实时目的地预测具有重要意义.

表 3   空间嵌入方法消融实验

Tab.3  Ablation experiments with spatial embedding method

消融模型A/%MAE/mRT/ms
k=1k=2k=3k=4k=5
网格嵌入34.751.563.871.477.51094.41.42
四叉树嵌入56.169.478.182.685.7718.82.89
HSE-BiGRU54.667.876.581.685.2754.92.33

新窗口打开| 下载CSV


3.3.4. 对比实验

为了检验HSE-BiGRU模型的性能,选取CNN、T-CONV、 CNN-LSTM、BiLSTM+Attention、STAN-LSTM等基线模型进行比较,并且在轨迹完成度p=70%的条件下进行对比实验. 实验结果如表4所示. 表中模型定义如下. 1)CNN[3]:将轨迹数据转化为轨迹图像并提取轨迹的空间特征进行目的地预测. 2)T-CONV[4]:将轨迹数据转化为轨迹图像,提取不同尺度下的空间信息,并进行信息增强,进行目的地预测. 3)CNN-LSTM[5]:将轨迹数据转化为轨迹图像,先由CNN提取轨迹的空间特征再由LSTM提取轨迹的上下文信息进行目的地预测. 4)BiLSTM+Attention [8]:使用2种GPS嵌入方法将轨迹的地理邻近性和多尺度空间表示为2个嵌入序列,并使用BiLSTM+ Attention机制进一步挖掘运动特征预测目的地. 5)STAN-LSTM[9]: 使用 Geohash 算法将轨迹数据划分为网格并进行独热编码,随后降维成包含地理拓扑关系的低维嵌入向量,再使用带有自注意力机制的 LSTM 网络挖掘其中的特征信息以预测目的地. 对表4中的实验结果进行分析,可以发现,HSE-BiGRU模型在准确率和MAE方面优于其他基线模型,尤其是CNN、T-CONV和CNN-LSTM这3个基线模型. 在时间性能方面,HSE-BiGRU模型优于除CNN之外的其他模型,尤其是BiLSTM+Attention和STAN-LSTM这2个基线模型(在精度上,也优于这2个模型). 这表明HSE-BiGRU模型在处理轨迹数据和捕捉出租车运动特征方面具有卓越的性能,并且具备良好的时间性能.

表 4   对比模型性能比较

Tab.4  Performance comparison of comparative models

对比模型A/%MAE/mRT/ms
k=1k=2k=3k=4k=5
CNN31.147.458.164.871.41483.30.96
T-CONV35.750.561.268.875.51276.12.57
CNN-LSTM41.358.169.375.580.11065.72.89
BiLSTM+Attention52.966.875.280.184.1796.35.52
SATN-LSTM46.660.771.979.182.1870.84.21
HSE-BiGRU54.667.876.581.685.2754.92.33

新窗口打开| 下载CSV


4. 结 语

本研究提出HSE-BiGRU目的地预测方法,融合了层次化空间嵌入和带注意力的BiGRU网络. 在实际数据集上的实验验证表明,所提模型在预测乘客目的地方面表现出了显著的有效性,其较传统方法,如CNN、T-CONV、CNN-LSTM等,在准确性和效率上均有一定优势.

所提模型仍有较大的优化空间. 在未来研究中,计划探索以下几个方向:寻找新的嵌入方法,更有效地捕捉轨迹数据中的复杂信息;考虑将路网、道路属性、天气等外部特征纳入模型,以提高预测的准确性. 通过这些研究工作,进一步提升目的地预测模型的性能,为智能出行服务之类的领域提供更加精准和高效的技术支持.

参考文献

WU X, ZHU W, LIU Z, et al

A novel vehicle destination prediction model with expandable features using attention mechanism and variational autoencoder

[J]. IEEE Transactions on Intelligent Transportation Systems, 2022, 23 (9): 16548- 16557

[本文引用: 1]

余丹青, 邬群勇, 姚江涛, 等

融合卷积、注意力和MLP的出租车目的地预测

[J]. 计算机工程与应用, 2023, 59 (11): 302- 311

DOI:10.3778/j.issn.1002-8331.2203-0168      [本文引用: 1]

YU Danqing, WU Qunyong, YAO Jiangtao, et al

Taxi destination prediction based on convolution, attention and multilayer perceptron

[J]. Computer Engineering and Applications, 2023, 59 (11): 302- 311

DOI:10.3778/j.issn.1002-8331.2203-0168      [本文引用: 1]

江婧, 张怀峰, 皮德常

基于卷积神经网络的移动对象目的地预测

[J]. 小型微型计算机系统, 2019, 40 (12): 2519- 2525

DOI:10.3969/j.issn.1000-1220.2019.12.009      [本文引用: 2]

JIANG Jing, ZHANG Huaifeng, PI Dechang

Destination prediction of moving objects based on convolutional neural networks

[J]. Journal of Chinese Computer Systems, 2019, 40 (12): 2519- 2525

DOI:10.3969/j.issn.1000-1220.2019.12.009      [本文引用: 2]

LV J, SUN Q, LI Q, et al

Multi-scale and multi-scope convolutional neural networks for destination prediction of trajectories

[J]. IEEE Transactions on Intelligent Transportation Systems, 2019, 21 (8): 3184- 3195

[本文引用: 2]

李冰荣, 皮德常, 候梦如

基于CNN和LSTM的移动对象目的地预测

[J]. 计算机科学, 2021, 48 (4): 70- 77

DOI:10.11896/jsjkx.200200024      [本文引用: 2]

LI Bingrong, PI Dechang, HOU Mengru

Destination prediction of moving objects based on convolutional neural networks and long-short term memory

[J]. Computer Science, 2021, 48 (4): 70- 77

DOI:10.11896/jsjkx.200200024      [本文引用: 2]

崔淑敏, 张磊, 李允, 等

出租车目的地预测的深度学习方法

[J]. 计算机工程与科学, 2020, 42 (1): 185- 190

DOI:10.3969/j.issn.1007-130X.2020.01.024      [本文引用: 1]

CUI Shumin, ZHANG Lei, LI Yun, et al

A deep learning method for taxi destination prediction

[J]. Computer Engineering and Science, 2020, 42 (1): 185- 190

DOI:10.3969/j.issn.1007-130X.2020.01.024      [本文引用: 1]

SONG D, LI Y, ZHANG M, et al. Taxi destination prediction based on LSTM with tree memory module [C]// 5th International Conference on Computer Information Science and Artificial Intelligence. Chongqing: SPIE, 2023, 12566: 135–140.

[本文引用: 1]

LIAO C, CHEN C, XIANG C, et al

Taxi-passenger’s destination prediction via GPS embedding and attention-based BiLSTM model

[J]. IEEE Transactions on Intelligent Transportation Systems, 2022, 23 (5): 4460- 4473

[本文引用: 4]

晋广印, 赵旭俊, 龚艺璇

基于长短期记忆网络的移动轨迹目的地预测

[J]. 计算机工程与科学, 2024, 46 (3): 525- 534

DOI:10.3969/j.issn.1007-130X.2024.03.015      [本文引用: 2]

JIN Guangyin, ZHAO Xujun, GONG Yixuan

Moving trajectory destination prediction based on long short-term memory network

[J]. Computer Engineering and Science, 2024, 46 (3): 525- 534

DOI:10.3969/j.issn.1007-130X.2024.03.015      [本文引用: 2]

SPERBER M. Quadtree and Octree [M]// SHEKHAR S, XIONG H, ZHOU X. Encyclopedia of GIS. Cham: Springer, 2017: 1695–1700.

[本文引用: 1]

PEI Z, QI X, ZHANG Y, et al

Human trajectory prediction in crowded scene using social-affinity Long Short-Term Memory

[J]. Pattern Recognition, 2019, 93: 273- 282

[本文引用: 1]

/