摘要:

        vectorNet是一种层次图神经网络

        利用向量表示的单个道路组件的空间局部性,然后对所有组件之间的高阶相互作用进行建模。

        最近的方法是将移动主体的轨迹和道路环境信息呈现为鸟瞰图,并用卷积神经网络(ConvNets)对其进行编码,

        我们的方法是在矢量表示上操作的。通过对矢量化的高清地图和智能体轨迹进行操作,我们避免了有损渲染和计算密集型的卷积神经网络编码步骤。

        我们提出了一种新的辅助任务,基于上下文来恢复随机屏蔽的地图实体和智能体轨迹。

        节省了70%以上的模型参数

1.Introduction

        找到一个统一的表示,将感知系统(如对象检测和跟踪)获得的agent动态与场景上下文(通常以高清地图的形式作为先验知识提供)集成在一起。

        高精地图是高度结构化的。

        大多数方法选择将高精地图呈现为颜色编码属性,图1左使用接受域有限的卷积神经网络对场景上下文信息进行编码

        我们怎么做的:

        道路特征的地理范围可以是地理坐标中的点、多边形或曲线。例如,车道边界包含多个控制点,这些控制点构建样条;人行横道是由几个点定义的多边形;停车标志由一个点表示。所有这些地理实体都可以近似为由多个控制点及其属性定义的折线。类似地,agent的动力学也可以通过基于其运动轨迹的折线来近似。所有这些折线都可以表示为向量集。

         并用GNN来处理这些向量集。

        将每个向量视为图中的一个节点,节点特征为:向量起始位置和结束位置、其他属性(属于哪个polyline,和语义标签)

        来自高清地图的上下文信息,以及其他移动代理的轨迹,通过GNN传播到目标代理节点。然后,我们可以使用与目标智能体对应的输出节点特征来解码其未来的轨迹。

        基于节点的的空间和语义接近性来约束图的连通性是很重要的。

        我们提出了一种分层图架构,将具有相同语义标签属于相同折线的向量连接并嵌入到折线特征中,然后所有折线相互完全连接以交换信息。我们用多层感知器实现局部图,用自关注实现全局图。

        在行为预测目标之外,新加了一个任务,提出了一个辅助的图完成目标我们随机屏蔽掉属于场景上下文或智能体轨迹的输入节点特征,并要求模型重建被屏蔽的特征。

        这样作是希望鼓励图网络更好地捕捉代理动态和场景上下文之间的交互

        贡献

        •我们首次展示了如何直接将矢量化的场景上下文和智能体动态信息结合起来进行行为预测。

        •提出了层次图网络VectorNet和节点补全辅助任务。

        •在公开数据集以及内部数据集上获得了很好的效果,节省70%的模型大小降低了FLOPs(浮点运算次数)的数量级

2.Related Work

行为预测:

        高精地图已被广泛用于提供提供上下文信息,IntentNet提出通过激光雷达点和渲染的高清地图联合检测车辆并预测其轨迹

        Mutilpath也使用ConvNets作为编码器,但采用预定义的轨迹锚点来回归多个可能的未来轨迹。

预测多智能体交互:

        Social LSTM将单个智能体的轨迹建模为单独的LSTM网络,并根据智能体的空间接近度聚合LSTM隐藏状态,以模拟它们之间的相互作用。

        Social GAN简化了交互模块,并提出了一个对抗性鉴别器来预测不同的未来。

实体集合的表示学习:

        高清地图上的实体和代理轨迹是封闭形状的或定向,它们也可能与属性信息相关联。因此,我们建议通过向量化输入来保留这些信息,并将属性编码为图结构中的节点特征。

自监督上下文:

        受NLP领域自监督方法的启发,我们提出了一种用于图表示的辅助损失方法,该方法学习从其邻居中预测缺失的节点特征。目标是激励模型更好地捕获节点之间的交互。

3.VectorNet方法

3.1轨迹和地图的矢量化表示

        高清地图上的大多数注释都是样条:车道、十字路口区域、交通灯等等

        轨迹是关于时间的有向的样条

        将这些所有的元素近似为向量序列:

        对于地图特征:选择一个起始点和方向,在相同的空间距离上从样条中均匀地采样关键点,并将相邻的关键点依次连接成向量;

        对于轨迹,我们可以用固定的时间间隔(0.1秒)采样关键点,从t = 0开始,并将它们连接到向量中。

        将属于折线Pj的每个向量vi视为图中的一个节点,其节点特征为:

        其中ds和de是向量的起点和终点的坐标本身可以表示为(xy)二维坐标或(xyz)为三维坐标;ai对应于属性特征例如对象类型、轨迹的时间戳、道路特征类型或车道的速度限制;j为Pj的整数id,表示vi属于pj。

        为了使输入节点特征与目标智能体的位置保持不变,我们将所有向量的坐标归一化,使其在目标智能体的最后一个观测时间步的位置为中心。(agent-centric)

3.2构造折线子图

        采用分层方法:

        首先在向量级构造子图,其中属于同一折线的所有向量节点彼此连接。考虑一条折线P,其节点为{v1;v2;:::;vp},我们定义了一个单层子图传播操作为

        为子图网络第 l 层的节点特征,为输入特征vi。函数genc(·)变换单个节点的特征,聚合来自vi所有相邻节点的信息,是节点vi与其相邻节点之间的关系运算符。

        本文种genc(·)是一个多层感知器(MLP),其权重在所有节点上共享;具体来说,MLP包含单个全连接层,然后是层归一化[3],然后是ReLU。

        (·)是最大池化操作,是一个简单的拼接。图3显示了一个示例。我们将子图网络的多个层堆叠起来,其中genc(·)的权重是不同的。最后,通过计算得到折线级别的特征:

        这里也是最大池化

        我们的折线子图网络可以看作是PointNet的推广:当我们设d s = d e,令a和l为空时,我们的网络与PointNet具有相同的输入和计算流程。然而,通过将排序信息嵌入到向量中,基于折线分组约束子图的连通性,并将属性编码为节点特征,我们的方法特别适合编码结构化地图注释和智能体轨迹。

3.3高阶交互的全局图

        在折线节点特征上通过全局交互图建模高阶相互作用:

        折线节点特征集GNN代表图神经网络的单层,A对应折线节点集的邻接矩阵、

        邻接矩阵A可以提供一个启发式,例如使用节点之间的空间距离[2]。

        这里假设A是一个全连通图

        我们的图网络被实现为自关注操作:

        其中P为节点特征矩阵,Pq、k、v、为其的先行投影

        然后,我们从移动代理对应的节点解码未来的轨迹:

        其中Lt为GNN的总层数,

        为轨迹解码器(本文使用MLP作为解码器)

        在我们的实现中,我们使用了单一的GNN层,因此在推理期间,只需要计算目标agent对应的节点特征。然而,我们也可以在需要时堆叠多层GNN(·)来建模高阶相互作用。

        为了鼓励我们的全局交互图更好地捕获不同轨迹和地图折线之间的交互,我们引入了一个辅助的图补全任务。

        在训练期间,我们随机屏蔽掉一部分折线节点的特征,例如pi。然后我们尝试恢复其被掩盖的特征为:

        其中“node(·)”是作为MLP实现的节点特征解码器。在推理期间不使用这些节点特征解码器。

        pi是全连接无序图中的一个节点。为了识别一个单独的折线节点,当其对应的特征被遮挡时,我们从它的所有所包含的向量中计算起始坐标的最小值,以获得嵌入标识符。输入节点的特征变成

3.4整体框架

        损失函数:

        其中Ltraj是groundtruth与预测未来轨迹的负高斯对数似然,Lnode是预测节点特征和groundtruth屏蔽节点特征之间的Huber损失,α = 1.0是平衡两个损失项的标量。为了通过降低节点特征的大小来避免Lnode的不重要解,我们在将折线节点特征馈送到全局图网络之前对它们进行了L2归一化。

        我们根据目标车辆在最后观察位置的航向旋转坐标系。Agent-centric

4.实验

(这里由于内容较多,笔者简化了很多)

        数据集:Argoverse和内部数据集

        评价指标:ADE

        Baseline选择:利用Conv对光栅化的图像进行编码,架构与Intent相当

        该模型在8个gpu上进行优化,并进行同步训练。我们使用Adam优化器[17],每5个epoch将学习率衰减0.3倍。我们以0.001的初始学习率训练模型共25个epoch。

        VectorNet:我们为折线子图使用三个图层,为全局交互图使用一个图层。所有mlp中的隐藏单位数量固定为64。mlp之后是层归一化和ReLU非线性。

        VectorNet在8个gpu上与Adam优化器同步训练。学习率每5个epoch衰减0.3倍,我们训练模型共25个epoch,初始学习率为0.001。

baseline的消融研究:

        感受野:如表所示,感受野越大越好,但是感受野变大也导致了计算成本的增加,沿着观察到的轨迹进行特征裁剪也会带来更好的性能。

        分辨率:分辨率越大,性能越好

        我们可以看到,将分辨率从200×200增加到400×400会导致性能略有下降,这可以通过固定3×3内核的有效接受场大小减少来解释。

VectorNet的消融研究:

        输入节点类型的影响:添加地图信息显著提高了弹道预测性能。

        有无辅助任务的影响:添加这个目标始终有助于提高性能,特别是在较长的时间范围内

        图架构:于折线子图,三层给出了最好的性能,而对于全局图,只需要一层。使mlp更宽并不会带来更好的性能,而且对Argoverse不利,可能是因为它的训练数据集更小。

        与ConvNets的比较:VectorNet用了更小的模型取得了优于最好的ConvNets模型的效果;大概是由于它能够通过分层图网络捕获远距离上下文信息。

5.Conclusion and future work

        我们提出用矢量化表示高清地图和智能体动态。我们设计了一种新的分层图网络,其中第一级聚合了折线内向量之间的信息,第二级建模了折线之间的高阶关系。同时大大降低了计算成本。下一步自然是将VectorNet编码器与多模态轨迹解码器结合起来,以生成不同的未来轨迹。

Logo

更多推荐