STGAT: Modeling Spatial-Temporal Interactions for Human Trajectory
摘要
1 引言
2 相关工作
3 Method
4 实验
5 结论
STGAT:为人类轨迹建模时空交互作用
收录于ICCV 2019
作者:Huang Y, Bi H K, Li Z, et al.
论文地址:ICCV 2019
发表时间:ICCV2019
备注:
论文解析
开源 √ :https://github.com/huang-xx/STGAT
代码解析√ :https://blog.csdn.net/u010730851/article/details/106580342
摘要
大多数现有方法都忽略了与场景中其他行人交互的时间相关性。
在这项工作中,我们提出了一种时空图注意力网络(STGAT),该网络基于序列到序列的体系结构来预测行人的未来轨迹。
除了图注意力机制在每个时间步长捕获的空间交互作用之外,
我们还采用了额外的LSTM来编码交互作用的时间相关性。
人群数据集(ETH和UCY)上实现了卓越的性能
引言
与局部邻域假设的限制不同,“注意”机制有助于对行人之间的相对影响和潜在的空间相互作用进行编码,因为相邻行人对轨迹预测的重要性不同。
与“合并”方案相比,通过为行人分配不同的适应性重要性,基于注意力的模型可以基于空间交互作用更好地了解人群的行为。
然而,尽管已经对各个方面进行了充分的研究,但在先前的工作中却忽略了一个因素。
除了在同一时间步长进行空间交互之外,人群中交互的时间连续性也是必需的。
如图1所示,在现有的轨迹预测工作中,已经很好地考虑了行人B和C在时间点的空间相互作用的影响。
但是,由于人类运动的连续性和前瞻性,行人需要考虑其他人的历史运动来确定他们当前的运动行为,以避免将来发生潜在的碰撞。
例如,当行人A计划轨迹时,应考虑行人B和C从t−∆t到t的相互作用。因此,人群中相互作用的时间相关性起着重要的作用。
为了解决上述局限性,我们构建了一个新颖的时空图注意力网络(称为STGA T),在该网络中分别对行人之间的时空交互进行了编码。
1.图注意力(GAT)方案[32]捕获了一个时间步的空间相互作用,该方案对场景中涉及的所有行人建模。
2.为行人分配了不同的重要性后,使用一个额外的LSTM来捕获交互的时间相关性。
3.汇总所有行人之间的所有时空相互作用,未来的轨迹将由我们的序列到序列(seq2seq)体系结构生成。为
4.了模拟多式联运,我们采用品种损失[12]来产生多个社会上合理的输出。
贡献:
我们提出了一个新颖的框架(称为STGAT)来预测人类的轨迹。
1.首先,我们通过采用额外的LSTM显式建模交互作用的时间相关性。
2.其次,我们通过使用GAT汇总LSTM的隐藏状态来模拟行人之间的空间相互作用。
本文是在对行人运动进行建模的背景下,将GAT(图形注意力网络)与LSTM结合起来的首次尝试。
实验结果表明,图注意力网络可以合理地重视邻居,并且我们的模型可以预测不同场景下的合理轨迹。
相关工作
2.1 Crowd Interaction(人群互动)
Helbing等人提出了行人动力学的开创性模型。 [14]。 他们的“社会力量”模型使用吸引力来引导行人前往目的地,并使用排斥力来避免碰撞。 在过去的几十年中,该模型已经通过多种方法进行了扩展和修改[20,39,21]。
这些基于社会力量的模型中的大多数尝试从现实世界的人群数据集中学习力量函数的参数。 但是[1]中的实验表明,只有吸引力和排斥力无法模拟复杂的人群互动。 还有其他基于模型的手工特征,例如Antonini等。 使用了Discrete Choice框架[3],Treuille等。 提出了连续体动力学[31],此外,还有一系列主题模型[35、15、9]。 但是,上述所有这些模型都依赖于手工制作的能量势函数,这限制了预测准确性的性能。 最近,有很多基于深度学习的模型,Yi等。 [41]提出了行为-CNN,它使用CNN来建模人群互动。 Alahi等。 [2]将人与人之间的互动编码为“社交”描述符。 Vemula等。 [33]提出了一种新颖的时空图,该图使用注意力模块来合并来自不同edgeRNN的信息。 徐等。 [38]使用softmax方法基于空间亲和力为其他行人分配不同的权重。 在过去的两年中,基于RNN的模型取得了巨大的成功[1、33、12、13、16、38],所有这些方法都使用不同的方式共享RNN的隐藏状态,以模拟拥挤场景中行人之间的交互 。
2.2 Recurrent Neural Networks for Sequence Prediction(递归神经网络的序列预测)
序列预测问题涉及使用历史序列信息来预测序列中的将来值。 循环神经网络(如长期短期记忆(LSTM)网络)旨在解决序列预测问题。 他们在许多序列预测任务中都取得了巨大的成功,例如语音识别[7,11],机器翻译[4,6,30]和图像字幕[8,26,37]。 [1,29,38]的方法证明了LSTM在建模每个行人运动模式方面的成功。 但是,香草LSTM忽略了人群相互作用。 为了解决这个问题,已经进行了多种尝试以在多个人之间共同推理。
Alahi等。 [1]使用“社交”池化层,该池允许空间近端序列的LSTM共享其隐藏状态。 Gupta等。 [12]在生成器中使用了一个“池模块”来汇总跨人的信息。 徐等。 [38]使用LSTM作为“运动编码器模块”来仅处理时间信息,另一个名为“位置编码器模块”的模块被用来模拟空间相互作用。
2.3 Sequence to Sequence Model(序列到序列模型)
Seq2seq模型由Sutskeveret等人介绍。 [30]。 它旨在将固定长度的输入与固定长度的输出进行映射,其中两个长度可能不同。 seq2seq模型及其变体被认为是许多复杂任务的最佳解决方案,例如机器翻译[36],语音识别[22]和视频字幕[34]。 我们的问题是在给定观察到的轨迹的情况下预测所有行人的未来轨迹,而seq2seq模型旨在根据现有序列生成新序列,这正好适合我们的问题。 因此,我们采用seq2seq作为主要架构。
2.4 Graph Neural Network(图神经网络)
图神经网络(GNN)是强大的神经网络架构,用于图上的机器学习。 近年来,基于图卷积网络(GCN)[25]和门控图卷积神经网络(GGNN)[18]的系统已在许多任务(例如建模物理系统,学习分子指纹,预测蛋白质界面[43])上展示了突破性的性能。 ]。 最近,通过将GNN应用于时空,一些动作识别领域的方法[27] [40]取得了重大进展。数据。 在这些方法中,Veličković等人。 [32]提出了图注意力网络(GAT)。 它允许(隐式)为邻域内的不同节点分配不同的重要性,而无需进行昂贵的矩阵操作。
GAT已在与图形相关的任务的多个基准中达到或匹配了最先进的结果。 对于我们的问题,可以使用GAT对复杂的交互进行建模,其中拥挤场景中的行人可以在每个时间步被视为图上的节点,而行人之间的交互存在可以描述为图边。
Method
编码器中包含三个组件:
1.基于LSTM的行人轨迹编码模块,
2.用于对空间交互进行建模的基于GAT的模块
3.用于捕获交互的时间相关性的基于LSTM的模块。
3.1. Problem Definition
场景中N个行人:,
行人pi(i∈[1,N])在时间步t的位置:在这里插入图片描述
已知:行人i= 1,2,…,N,在时间步t=1,2,…,Tobs 的位置Sit
求 :行人i= 1,2,…,N,在时间步t=Tobs+1,…,Tpred 的位置Sit
3.2. Trajectory Encoding for One Pedestrian(一个行人的轨迹编码)
以下为提取单个行人在观察时间步内的信息
1.首先计算每个行人与上一个时间步的相对位置
在这里插入图片描述
2.在每个时间步长中,并将这些向量即M-LSTM单元的输入
在这里插入图片描述
φ(·):嵌入函数
Wee:嵌入权重
mti:是时间步t处MLSTM的隐藏状态
Wm:M-LSTM单元的权重
这些参数在场景中的所有行人之间共享
3.3. 基于GAT的人群交互建模(基于GAT的人群交互建模)
以下为处理每个时刻(即每帧),共T个时间步(帧)的信息。
GAT对图结构化数据进行操作,并遵循自我关注策略,通过参与每个图节点的邻居来计算每个图节点的特征。 GAT是通过堆叠图注意层来构造的。我们在图4中说明了一个图关注层。
图片
图4 图形注意层,允许节点为邻域内的不同节点分配不同的重要性,并从中聚合特征。
图关注层的输入:在这里插入图片描述
N:节点数
在这里插入图片描述
F:每个节点的特征维数
图关注层的输出:在这里插入图片描述
节点输入输出的特征维数可以不相等。
在观察时间步中
图形关注层输入:在这里插入图片描述
节点对(i,j)的注意力机制中的系数(图4的边)可以通过以下公式计算:
在这里插入图片描述
||:串联运算
·T:表示换位
αtij:是时间步t处节点j对i的关注系数
Ni:图上节点i的邻居
在这里插入图片描述:应用于每个节点的共享线性变换的权重矩阵
(F为mti的维数,F’为输出的维数)
a∈R2F0:单层前馈的权向量神经网络。
LeakyReLU的softmax函数标准化。
得到归一化的注意力系数后.
节点i在t时刻的一个图注意层输出为:
在这里插入图片描述
σ:非线性函数
等式4和等式5显示了单个图形注意层的工作方式。
在我们的实现中,采用了两个图形注意层。
在这里插入图片描述(两个图关注层之后的结果)是行人i在t处的聚集隐藏状态,其中包含来自其他行人的空间影响。
3.4. Fusion of Spatial and Temporal Information(时空信息融合)
使用另一个LSTM显式地建模交互之间的时间相关性。我们将此LSTM称为G-LSTM:
公式5
Wg:G-LSTM权重,在所有序列之间共享
编码器组件中,两个LSTM
M-LSTM:模拟每个行人的运动模式
GLSTM:交互的时间相关性
在时间步Tobs处,每个行人的两个LSTM中有两个隐藏变量(mTobs i,gTobs i)
在我们的实现中,这两个变量在连接之前被馈送到两个不同的多层感知器(δ1(·)和δ2(·)):
在这里插入图片描述
3.5. Future Trajectory Prediction(未来轨迹预测)
先前的大多数工作[1、33、13]通过学习高斯分布的参数来体现这种不确定性,然后获得从分布中采样的未来位置。
在训练阶段,这些模型在预测的高斯分布下最大程度地降低了真实位置的负对数似然损失。
然而,由于采样过程不可微分,这种方法在反向传播中带来了困难[12]。
Gupta等[12]提出了一种多样性损失,以鼓励网络产生各种样本,并验证了其方法的有效性。我们遵循他们的策略来模拟行人运动的多峰特性。
我们模型的中间状态向量包括三个部分:M-LSTM的隐藏变量,G-LSTM的隐藏变量和添加的噪声(如图2所示)。中间状态向量的计算公式为:
z:噪声
hi:等式9
中间状态矢量dTobs i充当解码器LSTM(称为D-LSTM)的初始隐藏状态。
预测的相对位置:
在这里插入图片描述
Wd: D-LSTM权重
δ3(·):线性层,
e Tobs :等式 2.
在获得时间步Tobs + 1的预测相对位置后,根据上式根据等式计算D-LSTM的后续输入。
而且很容易将相对位置转换为绝对位置以计算损失。
文献[12]中的损失如下:对于每个行人,模型通过从N(0,1)(标准正态分布)中随机采样z来产生多个预测轨迹。然后,它选择与真值差距最小的轨迹作为模型输出来计算损耗:
在这里插入图片描述
Yi:真实轨迹,
yk:模型产生的轨迹,k是超参数。
3.6. Implementation Details
所有LSTM都只有一层
维数=16
t iin方程的维数=32
图4中,
第一图注意层的形状:16×16
第二层图的形状为:16×32,
第一图关注层 在这里插入图片描述维数=32
第二层=64。
批归一化应用于图关注层的输入
=32在这里插入图片描述公式7包含3个具有ReLU激活功能的层,隐藏节点=32、64和24图8包含3个具有ReLU激活功能的层,隐藏节点的数量=32、64、1610设置为=16我们使用Adam优化器以0.01的学习率和64的批量大小训练网络。
实验
数据集:ETH 和UCY
评估指标:
1.平均位移误差(ADE):预测轨迹中所有估计位置的均方误差(MSE),以及地面真相轨迹。
2.最终位移误差(FDE):在Tpred处预测的最终目标与真实最终目标之间的距离。
Baselines.
LSTM:
S-LSTM:
Social Attention:
CIDNN:
SGAN:
对于消融研究,我们使用与[12]类似的符号研究具有不同控制设置的模型。
我们将完整方法表示为STGAT-kV-N,k表示用于计算品种损失的输出数量(如等式13所示),k = 1表示没有品种损失,N表示采样期间的采样次数 测试时间(我们模型中的k和N的定义与SGAN模型中的k和N相同,SGAN中的p表示“池模块”的用法)。 并且,我们使用L 2意义上的最佳预测进行定量评估。
除了具有不同控制设置的模型外,我们还研究了STGAT的变体,以捕获模型不同部分的贡献。 在这种情况下,我们忽略了互动的时间相关性,仅使用 LSTM对编码器中的每个行人执行一次。 最后观察时间步长的隐藏状态由GAT处理(GAT仅对每个行人使用一次)。 其余型号(包括品种损失,噪声等)与STGAT-20V-20相同。 我们将此变化称为SGAT(即 STGAT模型,而不考虑相互作用的时间相关性。
评估方法 在先前的工作[12,1,38]之后,采用了留一法。 该模型在4个数据集上训练,并在其余数据集上进行测试。
我们观察到轨迹为3.2秒(8个时间步长),然后预测接下来的3.2秒(8个时间步长)和4.8秒(12个时间步长)。
4.1. Quantitative Evaluation(定量评估)
按照SGAN [12],我们将完整的方法称为STGAT-20V-20。 在表1中,我们针对所有基线模型以及具有多个控制设置的模型评估了我们的模型。 结果表明,就ADE和FDE而言,我们的方法在所有数据集上均优于所有比较方法。 平均预测误差最低的最佳基线方法是SGAN-20V-20。 与之相比,当预测未来的8、12个时间步长时,我们的方法在ADE中的平均错误率分别降低了25.8%和34.9%。 对于FDE,性能分别提高了25.8%和42.2%。 这些结果表明,与其他方法相比,我们的模型具有优势,尤其是在较长的预测情况下(T pred = 12)。
GAT评估 SGAT模型仅对每个行人使用一个LSTM,并且在T obs采用GAT。
它的架构类似于SGAN-20VP-20 [12],但是利用了GAT来聚合来自其他人的信息。 SGAT的结果显示出GAT能够对行人之间的行动。 如表1所示,与SGAN-20VP-20相比,对于两个预测长度,SGAT的SGAT平均错误率分别降低了13.9%和29.8%,而FDE的平均误差率分别降低了17.4%和31.5%。 。 与香草LSTM相比,ADE的性能分别提高了19.4%和48.9%。 而对于FDE,性能分别提高了31.8%和65.2%。 这些结果验证了GAT组件的有效性。
G-LSTM的评估。 SGAT可以看作是我们完整模型的简化版本。 唯一的区别是STGAT在GAT模块之后具有G-LSTM。 如表1所示,STGAT-20V-20型号平均优于SGAT型号。 具体而言,STGAT-20V-20的ADE平均错误率分别降低了16.1%和9.3%。 在FDE方面,平均错误率分别降低了11.3%,10.8%。 显然,对交互作用的时间相关性进行建模有助于提高性能。
评估品种损失。 由于行人运动的多态性,我们使用品种损失[12]来产生多种社会上可接受的轨迹。 我们在表1中表示模型的三种不同的控制设置。STGAT-1V-20和STGAT-20V-20都可以生成多个未来轨迹。 通过使用品种损失,ADE中STGAT-20V-20的平均错误率分别降低了22.6%和16.3%。 对于FDE,平均错误率分别降低了27.4%,26.5%。
时间和空间消耗。 我们将我们的方法与两个基线SGAN [12]和SocialAttention [33] 1进行比较。
如表2所示,STGAT比SGAN慢。 这是由我们的“ GAT”方案导致的,该方案比SGAN的“ Pooling”模块更耗时。 表4比较了在训练和评估阶段每个模型的CUDA内存使用情况。 在训练过程中,STGAT的内存使用量是SGAN的2.5倍。 SGAT和STGAT的比较表明,考虑交互的连续性不会影响时间。
4.2 定性评估
行人轨迹预测是一个复杂的问题,因为我们必须考虑场景中每个行人的时空特性。
在拥挤场景中的行人可能具有复杂的交互作用,代表着不同的运动模式,包括组队,跟随其他行人,改变方向以避免碰撞等。定性结果如图5所示。我们选择了包含不同运动模式和避免碰撞的场景 。 图5显示,在大多数情况下,SGAN(SGAN-20VP-20)模型可以捕获交互,并生成社会可接受的轨迹。 但是,与STGAT产生的轨迹相比,它们的轨迹更接近线性。 当我们生成更接近地面的轨迹时,我们的模型优于SGAN,尤其是当人群朝相反方向移动时。
图6示出了各种预测的示例。 我们代表了一个挑战性的场景,有多个行人和复杂的互动。 图6(b)(c)(d)显示了由我们的模型生成的三个不同的预测,其中(d)代表最接近地面真实性的样本(我们将此预测称为最佳预测)。 作为比较,我们显示SGAN在图6(a)中得出的最佳预测。 从图6(a)和图6(d)可以看出,在这样复杂的环境中,没有一个模型可以预测准确的未来轨迹。
图7给出了两种情况下SGAT模型的预测轨迹。 通过比较图5的对应场景,可以观察到SGAT模型比STGAT模型更差,这与定量结果是一致的。 通过将图7(a)与图5(b),图7(b)与图5(e)进行比较,我们可以看到SGAT模型产生的轨迹在社会上是合理的,但准确性差于 STGAT模型。 这些定性结果从视觉上证明了,当考虑相互作用的时间相关性时,预测的轨迹更加准确并且在社会上可以接受。
我们在图8中可视化了学习到的注意力权重。
如图8(a)-(e)所示,我们的模型成功地了解了在这些情况下周围行人的相对重要性。 在这些成功的案例中,GAT将较高的权重分配给某些邻居,例如沿相反的方向移动和位置接近。 另外,当周围环境朝同一方向移动时,前方的行人比后方的行人的影响更大。 该模型为远离目标的行人分配了几乎相等的注意力权重。 由于我们模型的输入是每个行人相对于前一瞬间的相对位移,因此这些学习的权重基于每个行人的运动状态。 在此过程中,不采用全球或本地位置信息。 这些成功的案例表明,GAT可以通过邻居的运动状态为邻居赋予合理的重要性。
如图8(f)(i)所示,还有很多故障案例。 在图8(f)中,只有部分权重是合理的。 在图8(g)中,静止的行人具有不合理的高影响力。 在图8(h)(i)中,学习到的注意力权重非常混乱。 在这些失败的案例中,(g)和(i)非常具有代表性。 我们的模型通常会给静止的行人带来很大的影响,并且当场景中包含许多行人时,分配的权重会造成混淆。 第一个问题的原因可能是我们使用相对位移作为模型输入。 第二个问题的可能原因是考虑了场景中的所有行人。
我们将在以后的工作中解决这些问题。
结论
在这项工作中,提出了一个新颖的seq2seq框架,该框架可以共同预测场景中所有行人的未来轨迹。我们对每个轨迹使用一个LSTM来捕获每个行人的历史轨迹信息,并采用图注意力网络对每个人群在每个时间步的交互进行建模。此外,采用了另一个LSTM来显式地建模交互之间的时间相关性。在两个可公开获得的数据集上,我们提出的方法优于最新方法。定性实验表明,图注意力网络可以根据邻居的运动状态为邻居赋予合理的重要性,并且我们的模型可以预测不同场景下的准确轨迹
原作者https://blog.csdn.net/Sun_ZD/article/details/110916188