Social-STGCNN A Social Spatio-Temporal Graph Convolutional Neural Network for Human Trajectory Prediction
# Social-STGCNN: A Social Spatio-Temporal Graph Convolutional Neural Network for Human Trajectory Prediction
# 作者:
# 发表:CVPR 2020
# 摘要
对行人行为有更好的机器理解,可以使自主车辆和人类等代理人之间的互动建模取得更快的进展。行人的轨迹不仅受到行人本身的影响,而且还受到与周围物体互动的影响。以前的方法通过使用各种整合不同的行人状态的聚合方法对这些互动进行建模。我们提出了社会时空图卷积神经网络(Social-STGCNN),它通过将交互建模为一个图来代替聚合方法的需要。我们的结果显示,最终位移误差(FDE)比现有技术水平提高了20%,平均位移误差(ADE)提高了8.5倍,推理速度比以前报道的方法快48倍。此外,我们的模型数据效率高,仅用20%的训练数据就超过了以往的ADE指标。我们提出了一个核函数,将行人之间的社会互动嵌入到邻接矩阵中。通过定性分析,我们表明我们的模型继承了行人轨迹之间可以预期的社会行为。
# 阅读
# 论文的目的及结论
# 论文的实验
该模型是在两个人类轨迹预测数据集上训练的。ETH[21]和UCY[11]。ETH包含名为ETH和HOTEL的两个场景,而UCY包含名为ZARA1、ZARA2和UNIV的三个场景。每0.4秒对数据集中的轨迹进行一次采样,实验设置follow了Social-LSTM论文,在Social-LSTM中,模型是在特定数据集的一部分上训练的,并针对其余数据集进行了测试,并与其他四个数据集进行了验证。在进行评估时,模型会观察到与8帧相对应的3.2秒轨迹,并预测接下来的4.8秒(即12帧)的轨迹。
两个指标被用来评估模型性能:方程6中定义的平均位移误差(ADE)[21]和方程7中定义的最终位移误差(FDE)[1]。 由于Social-STGCNN生成了一个双变量的高斯分布作为预测,为了比较一个分布与特定的目标值,我们遵循Social-LSTM[1]中使用的评估方法,即根据预测的分布生成20个样本。 然后用最接近地面真相的样本来计算ADE和FDE。这种评估方法被一些作品所采用,如Social-GAN[6]和其他许多作品。
# 论文的方法
由两部分组成,时空图卷积网络 ST-GCNN 以及 时间外推卷积神经网络 TXP-CNN。ST-GCNN 对行人轨迹的图形表示进行空间-时间卷积运算以提取特征,这些特征是观察到的行人轨迹历史的紧凑表示。TXP-CNN将这些特征作为输入,并预测所有行人的未来轨迹。我们使用时间外推器这个名字,是因为TXP-CNN有望通过卷积操作来外推未来轨迹。图2展示了该模型的概况。
# 论文的背景
# 总结
# 论文的贡献
# 论文的不足
# 论文如何讲故事
# 参考资料
https://arxiv.org/abs/2002.11927
https://github.com/abduallahmohamed/Social-STGCNN
# 代码释义
model.py
查看 forward
函数:主要是传入v,a,然后顺序是
st_gcns -> tpcnns[0] + prelus[0] -> tpcnns[1:n_txpcnn-1] + prelus[1:n_txpcnn-1] -> tpcnn_ouput
分模块解析
CUDA_VISIBLE_DEVICES=0 python3 train.py --lr 0.01 --n_stgcnn 1 --n_txpcnn 5 --dataset eth --tag social-stgcnn-eth --use_lrschd --num_epochs 250
st_gcns: st_gcn模型,原版的 n_stgcnn 为1,是 1 层 st_gcn
input_feat 为 2,output_feat 为 5
tp_cnns: tp_cnn模型,其实也就是几层卷积层,原版的 n_txpcnn 为5,就是5层卷积层
seq_len 为 8,pred_seq_len 为 12
prelus 就是 一些 PReLU() 函数
改模型的话
1、重点解析 st_gcns 模型
2、tp_cnns 没有加残差结构
3、tp_cnns 没有加注意力机制
4、没有加环境输入
- 02
- README 美化05-20
- 03
- 常见 Tricks 代码片段05-12