2019-Exploring Trajectory Prediction through Machine Learning Methods

[17] Wang, C., Ma, L., Li, R., Durrani, T. S., & Zhang, H. (2019). Exploring Trajectory Prediction through Machine Learning Methods. IEEE Access, 1–1. doi:10.1109/access.2019.2929430.

Abstract

Human mobility prediction is of great importance in a wide range of modern applications in different fields such as personalized recommendation systems, the fifth-generation (5G) mobile communication systems, and etc. Generally, the prediction goal varies from different application scenarios. For the applications of 5G network including resource allocation and mobility management, it is essential to predict the positions of mobile users in the near future from dozens of seconds to a few minutes so as to make preparation in advance, which is actually a trajectory prediction problem. In this paper, with the particular focus on multi-user multi-step trajectory prediction, we first design a basic deep learning-based prediction framework where the Long ShortTerm Memory (LSTM) network is directly applied as the most critical component to learn user-specific mobility pattern from the user’s historical trajectories and predict his/her movement trends in the future. Motivated by the related findings after testifying and analyzing this basic framework on a model-based dataset, we extend it to a region-oriented prediction scheme and propose a multi-user multi-step trajectory prediction framework by further incorporating the Sequence-to-Sequence (Seq2Seq) learning. Experimental results on a realistic dataset demonstrate that the proposed framework has significant improvements on generalization ability and reduces error-accumulation effect for multi-step prediction.

  • 本文的重点是 多 用 户 多 步 轨 迹 预 测 \color {red} {多用户多步轨迹预测} (multi-user multi-step)
  • 首先设计一个基本的基于深度学习的预测框架,LSTM网络直接应用于特定于用户(user-specific)的移动模式的学习,从 单 个 用 户 的 历 史 轨 迹 学 习 并 预 测 他 / 她 的 运 动 趋 势 \color {green} {单个用户的历史轨迹学习并预测他/她的运动趋势} /
  • 然后在基于模型的数据集上验证和分析了该基本框架的相关结果后,我们将其扩展为 面 向 区 域 \color {green} {面向区域} 的预测方案,并进一步 结 合 序 列 到 序 列 ( S e q 2 S e q ) \color {green} {结合序列到序列(Seq2Seq)} (Seq2Seq)学习,提出了一个 多 用 户 多 步 轨 迹 预 测 框 架 \color {green} {多用户多步轨迹预测框架}
  • 在一个真实数据集上的实验结果表明,该框架对多步预测的泛化能力有显著的提高,减少了误差累积效应

个人小结:

  • 任 务 : 多 用 户 多 步 轨 迹 预 测 \color {tomato} {任务:多用户多步轨迹预测}
  • 方 法 : L S T M 、 S e q 2 S e q \color {tomato} {方法:LSTM、Seq2Seq} LSTMSeq2Seq
  • 思路:先通过基于LSTM的模型预测单个用户的多步轨迹,然后分析不足,进而用基于Seq2Seq的预测框架进行改进,预测多用户的多步轨迹

Index terms

  • Trajectory Prediction
  • Multi-Step Prediction
  • Long Short-Term Memory
  • Sequence-to-Sequence
  • Machine Learning

1. Introduction

  • 以往方法:Frequent pattern mining, Markov-based methods, maching learning methods…大多是离散的位置预测,因此实质上是一个多分类问题
  • 问题所在:这些方法不适合有固定采样间隔的轨迹预测。因为1. 采样间隔过小/过大;2. 轨迹点的粒度 都会影响到预测精度。
  • 本文做的是连续坐标的轨迹预测问题,实质上是时间序列的回归问题。

创新点

  1. 首先用LSTM做单用户的轨迹预测,发现存在问题:泛化能力差(因为是用户特定的,所以框架对其他用户的预测能力差);误差累积效应大(随着预测步长的加大,误差也不断增大)
  2. 针对上述问题做了改进:设计了面向区域的多用户多步长轨迹预测框架(seq2seq-based)
  3. 实验表明,所提出的多用户多步轨迹预测框架能够有效地缓解误差累积效应,提高对真实数据集的泛化能力。

3. 数学背景

A. 定义:

  1. 轨迹 T r = { p 1 p 2 . . . } Tr = \{p_1p_2... \} Tr={p1p2...}, 其中 p i = ( p i . x , p i . y ) p_i= ({p_i}.x, {p_i}.y) pi=pi.x,pi.y, 两个相邻轨迹点的采样的时间间隔表示为 Δ \Delta Δ
  2. 轨迹预测:给定长度为 T T T的轨迹 T r = { p 1 p 2 . . . p T } Tr = \{p_1p_2... p_T\} Tr={p1p2...pT}, 我们的目标是预测接下来的 K K K步的轨迹点的序列。问题可以表述为:

B. 数据集和预处理

两种:1.基于模型的数据集 2.真实世界的数据集
本文中基于模型的数据集是根据Self-Similar Least-Action Human Walk(SLAW)[20]和SMOOTH模型生成的移动数据。real-world数据集是微软亚洲研究所GeoLife项目中的GPS轨迹数据集。


对于轨迹数据的预处理

  • 将地理坐标转化为二维坐标
  • 去噪(滑动窗口)
  • 轨迹压缩(采样)
  • 轨迹分割为固定长度

C.LSTM和Seq2Seq

4. 基于LSTM的单用户预测框架和仿真结果

第4节总览:我们研究了用于轨迹预测问题的用户特定方案。提出了一个基于LSTM的轨迹预测框架,并在基于模型的数据集上对其进行评估,以帮助找到一些直观的指导。


基于LSTM的单用户预测框架

在基于模型的数据集中,不同的用户通常有不同的移动模式,这使得移动预测问题是特定于用户的。因此,要对用户的移动进行预测,最关键的一步就是建立一个特定的移动模型,从用户的历史轨迹出发,充分代表用户的移动模式。

图5给出了基于LSTM的单用户预测框架。

预测过程包括三个主要步骤:

  Step 1: 由128个神经元组成的全连接(FC)输入层对给定的轨迹进行处理,这样二维坐标映射到一个128维的特征张量。
  Step 2: 将处理后的序列送到移动模型的主体部分,即由3层LSTM层组成的深度RNN,每层128个神经元。每个LSTM层将前一层的输出作为输入,并将其输出提供给下一层。
  Step 3: 一个包含2个神经元的FC输出层将最后一个LSTM层在每一个时间步 i i i的输出映射到一个二维坐标 p ~ i + 1 \tilde p_{i + 1} p~i+1作为下一个时间步的预测位置。我们可以得到预测序列 { p ~ = p ~ 2 p ~ 3 . . . p ~ T + 1 } \{\tilde p = \tilde p_2\tilde p_3...\tilde p_{T + 1}\} {p~=p~2p~3...p~T+1}

模型训练

a).训练的目标是最小化预测位置和实际位置之间的距离误差。因此,我们选择均方误差(Mean Square Error, MSE)作为损失函数,
b).采用时间向后传播(Backward Propagation Through Time, BPTT)算法来更新网络参数。
c).完整的训练算法在算法1中给出。


分析仿真结果

  • 这两种方法(基于LSTM的单用户预测框架和线性回归方法)都不能捕捉到这一初始趋势,最终误差会随着预测步骤的增加而大幅增加。但是LSTM在时间序列上的可扩展性使其能够学习用户在其移动周期(即360min)内的完整移动模式,在多步预测中表现得比线性回归好得多。

  • 该框架存在的问题:
    a. 首先,所提出的用户特定移动模型泛化能力较差。在实际应用中,通常需要同时预测多用户的运动轨迹。因此,我们需要为每个感兴趣的用户训练特定的预测模型,这不是一个明智的方法。一方面,它带来了巨大的计算开销。另一方面,训练这样的模型通常需要大量的用户历史数据,导致训练数据不足的用户出现冷启动问题。
    b. 二是多步预测的误差累积效应。当位置测量暂停时,预测很快就不能准确地跟踪轨迹的实际演变,对实际应用产生负面影响。


5. 多用户多步预测框架和仿真结果

A. 框架

   多 用 户 多 步 预 测 有 很 多 显 著 的 优 点 \color {tomato} {多用户多步预测有很多显著的优点} 。首先,它允许更实用的近实时资源预分配。但它必须处理恼人的误差累积效应。其次,预测模型具有跨用户的泛化能力,可以快速对任意用户进行轨迹预测。第三,可以显著降低每个用户单独训练模型的计算开销

  虽然轨迹来自不同的用户,但在有限的轨迹持续时间(本文小于10分钟)下,大多数轨迹在小区域的地理约束下具有相似的短期特征。这启发我们在为多个用户做预测时,关注特定区域的共享移动模式(例如,3到5个宏观基站),而不是单个移动模式。此外,为了减少多步预测的误差累积效应,我们提出了一种Seq2Seq框架,该框架可以将轨迹特征提取过程和预测过程解耦,从而使解码器更加关注输入序列的全局信息而忽略局部误差。


  因此,我们将针对单个用户的特定用户预测方案扩展为面向区域的多用户预测方案

  我们建立了一个基于LSTM编码器-解码器架构的Seq2Seq框架,以捕获轨迹内的时间关联,如速度或方向。该网络利用特定区域内的所有轨迹,获取由地理限制造成的共享短期移动模式。具体来说,输入序列为观测轨迹 { p 1 p 2 … p T } \{p_1p_2…p_T\} {p1p2pT},输出序列为目标轨迹 { p T + 1 … p T + K } \{p_{T+1}…p_{T + K}\} {pT+1pT+K}


  我们混合两种不同的方法确定最终的training策略, 以充分利用移动训练数据中包含的信息:

  • (1)第一种方法与自回归模型相同。将不精确的前一步的输出作为下一个步骤的输入。这样,解码器可以更加关注输入轨迹的全局信息,而忽略局部的预测误差,从而增强整个网络的协调性。
  • (2)另一种是将目标序列向前移动一步作为解码器的输入,以获取更多的运动信息和潜在的地理特征。

  为了使预测效果最大化,我们 引入了teacher ritio 变量来平衡这两种情况


多用户多步预测框架:

1) Encoder网络:
  它由一个全连接输入层(128个神经元)和两个LSTM层(每个层有128个神经元堆叠)组成。输入序列是给定的轨迹 { p 1 p 2 … p T } \{p_1p_2…p_T\} {p1p2pT}。输入层负责将二维地点 p i p_i pi转换为一个128维的特征张量,以捕获轨迹数据的复杂结构。然后输出被送入两层的LSTM。在两个LSTM层进行递归更新后,它们最新的单元状态(cell state)被确定并传递给decoder。

1) Decoder网络:
  它由一个全连接输入层(有128个神经元)、两个堆叠的LSTM层(每个有128个神经元)和一个全连接输出层(有2个神经元)组成。LSTM层由编码器的状态向量 ( h T , c T ) (h_T, c_T) (hT,cT)初始化。Decoder网络的第一个输入是 p T p_T pT,是Encoder网络输入序列的最后一个值。对于training过程,我们使用teacher ritio变量来控制下一步的输入。


使用teacher ritio变量来控制下一步的输入:
  具体来说,我们生成一个0到1之间的随机数random number。
if random number > teacher ritio:
   then 接下来的K−1步的输入= { p ~ T + 1 p ~ T + 2 … p ~ T + K − 1 } \{\tilde p_{T+1} \tilde p_{T+2}…\tilde p_{T + K-1}\} {p~T+1p~T+2p~T+K1},图7中红色箭头所示的前面步骤的预测值。
else
   接下来的K−1步的输入=目标输出序列向前移动一步的值 { p T + 1 p T + 2 … p T + K − 1 } \{p_{T+1} p_{T+2}…p_{T + K-1}\} {pT+1pT+2pT+K1},如图7中的蓝色箭头所示。

  对于测试过程,上一步的预测值将被用作下一步的输入。


训练算法:

B. 实验

  我们在一个真实的数据集(GeoLife)上评估提出的多用户多步预测框架的性能。为简单起见,轨迹被分割为15个点的时间序列,采样时间间隔为∆,其中前10个点 { p 1 p 2 … p 10 } \{p_1p_2…p_{10}\} {p1p2p10}作为输入序列,最后5个点作为目标序列。我们将轨迹数据按80%、10%、10%的比例划分,生成训练集、验证集和测试集。训练设置如表2所示。

部分结果:

6. 结论和未来工作

  在本文中,我们研究了轨迹预测的意义,并从单用户和多用户的角度探索了可行的方法。对于单用户轨迹预测,我们提出了一个基本的LSTM框架,在基于模型的移动数据集上的实验结果表明了LSTM基于用户特定移动模式的预学习进行预测的优越性。对于多用户多步预测,我们进一步提出了面向区域的预测方案,并提出了基于LSTM的Seq2Seq框架。在一个真实数据集上的实验表明,该框架优于其他竞争方法,显示了其出色的多用户预测泛化能力以及多步预测的鲁棒性和稳定性。   由于数据的限制,我们目前的工作并没有考虑像兴趣点这样的轨迹中的语义上下文。在未来的工作中,我们计划将我们的算法与一些语义信息结合起来,以提高预测性能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值