自适应均衡学习的端到端类人驾驶控制决策网络

李少青,朱洪林,黄海波,王海英,丁渭平

(1.西南交通大学,成都 610031;
2.通标标准技术服务(天津)有限公司,天津 300457)

随着深度学习的不断发展,利用深度神经网络构建基于端到端自动驾驶预测的方法得到越来越广泛的关注和研究应用[1]。2016年,BOJARSKI等[2-3]提出了PiloNet端到端网络架构,根据前方道路图像直接映射出转向角度,能够实现在标准和非标准路面,以及高速公路等场景下的车道保持;
CHOWDHURI等[4]根据跟车、换道、转弯、停车等不同场景设计了不同的CNN网络,通过切换不同场景下的网络,使自动驾驶在多场景下的方向盘转角和车速均能得到较好的控制决策。Codevilla等[5]将CNN层与不同的全连接网络分支结合,可以实现导航功能。但是上述CNN网络的输入为单帧图片,未考虑到实际驾驶中前后图像之间的时序关系。XU等[6]考虑到车辆运动的连续性,在全卷积神经网络(Fully Convolutional Networks,FCN)的基础上引入具有记忆效应的LSTM网络,同时加入语义分割作为辅助任务来提高算法性能增强了网络对场景的理解能力,然而控制决策过程是将卷积层提取到的空间特征输入给LSTM提取时序依赖特征,即提取到的仅仅是空间特征的时序依赖特征,对类人思维特征考虑欠缺。YANG等[6-8]受多模态学习及多任务学习的启发,提出一种多模态多任务的自动驾驶控制决策网络,将历史驾驶速度作为网络的反馈输入,与卷积网络所提取到的空间特征进行融合,实现对方向盘转角及车速的决策控制,但是仅将速度作为反馈输入不足以对速度和转向角进行很好的控制决策。赵祥模等[9]提出MM-STConv网络,该网络基于时空卷积构建多模态特征融合,提高了自动驾驶行为控制决策的准确率和稳定性,但是其纵横向权重系数是通过手动调节,所以该权重系数会伴随整个网络训练过程,无法做到与各任务学习速度的匹配,存在任务偏移的风险,无法实现纵横向控制参数都达到较好的学习效果。

以上研究均属于基于行为克隆[10]的自动驾驶方法,即克隆人类驾驶行为,而人类驾驶行为应当属于一种“瞻前顾后”的行为,而上述研究对类人驾驶行为与思维特征模拟不足。因此,为充分模拟类人驾驶特征,从以下两方面开展研究:

(1)从人类驾驶行为和思维特征出发,将前方道路视觉感知图像时间序列,以及车辆历史连续运动状态序列作为网络输入,进行纵横向控制决策,将预测车辆连续未来状态序列作为辅助任务,从损失函数角度对预测当前时刻方向盘转角和车速的主任务进行干预和监督,以提高主任务的控制决策精度。

(2)为使纵横向控制参数能均衡学习,引入动态加权平均方法[11],并加以改进,使纵横向控制参数的Loss权重可根据各个任务的收敛速度以及学习难易程度进行动态调整,从而实现纵横向控制参数的均衡学习。此外,提出一种综合衡量纵横向控制决策准确性与学习均衡性的评价指标,并依此评价指标指导网络正确进化学习,以提高网络的综合性能。

自适应均衡学习的端到端类人驾驶控制决策网络架构分为3个功能互补的子网络,分别是时空特征提取子网络、历史状态特征提取子网络和纵横向控制决策子网络,整体网络架构如图1所示。时空特征对序列图像进行时间和空间特征的综合提取;
历史状态特征提取子网络对车辆的历史状态序列信息提取时间上的上下文特征;
纵横向控制决策子网络通过融合时空特征及历史状态特征进行车辆的方向盘转角与速度的控制决策,利用增加辅助任务的手段,将预测未来序列任务学习到的特征作为未来特征,通过监督主任务学习的方式提高主任务的学习效率。

图1 自适应均衡学习的端到端类人驾驶控制决策网络架构

1.1 关键特征定义

特征指的是一个或一组客体所拥有的特性抽象出来的一种概念,神经网络的参数是在损失函数的监督下进行更新的,与损失函数直接相关的数据特性或关系便是神经网络提取到的特征。

人类驾驶车辆时首要考虑现在和过去的道路情况,具体表现在包含当前和过去道路图像的空间特征与时序依赖特征,这种新的特征变为时空特征,这种特征不是简单地将空间特征和时序依赖特征相加或者级联,而是通过特别设计的模块使网络在提取空间特征的同时提取连续数据之间的时序依赖特征。

人类驾驶车辆,不仅考虑了当前及过去的道路情况,还综合考虑了车辆的历史状态变化情况来控制决策,而历史状态特征指的是能够影响端到端驾驶的车辆自车历史状态趋势变化的特征。

人类驾驶车辆时,影响控制决策的因素不仅有当前时刻与过去时刻的道路情况,还有对前方道路情况的一种预判,而未来特征便指的是智能车端到端驾驶中的一种包含能够对未来的控制决策量进行预判的特征。

1.2 时空特征提取子网络

现有端到端网络多采用单帧图像作为输入,利用深度卷积神经网络进行特征提取,此做法一方面缺乏图像前后时间的时序关联信息,不符合人类驾驶车辆时需要考虑前后图像之间关联的习惯,所以需要采用序列图像输入,利用Conv-LSTM[12]进行时空特征综合提取;
另一方面,采用深度神经网络,可以提取出高层的语义信息,但是随着网络深度的增加,不可避免地会丢失掉浅层的空间信息。因此,为补充高层语义特征对空间特征的丢失,需要采用多尺度的结构,融合低层的空间信息以及丰富的高层语义信息。

时空特征提取子网络的具体参数见表1。

表1 时空特征提取子网络参数

1.2.1 编码器

编码器为整个网络当中的主干网络,主要负责输入图像的特征提取及压缩。编码器部分总共包含5个子层,除第1层外,每个子层包含降采样层或若干个改进后的残差单元,各子层的组成见表2。

表2 编码器结构

降采样单元。此单元的目的在于减少特征图尺寸,同时提高通道数,从而扩大感受野。降采样单元是将特征图分为两个分支,一个分支为卷积核为3×3,步长为2的卷积操作,另一个分支为卷积核大小2×2,步长为2的池化操作,最后将这两个分支进行级联。

改进的残差单元。假设卷积过程中,输入特征图的尺寸为Nin×hin×win,卷积核尺寸为Nout×Nin×kh×kw,输出特征图尺寸为Nout×hout×wout,则对于正常卷积而言,其计算量为:

而对于深度可分离卷积[13]而言,分组卷积计算量为Nin×kh×kw×hout×wout,逐点卷积运算量为Nout×Nin×hout×wout,总计算量为:

所以深度可分离卷积与正常卷积的计算量之比为:

由此可知,利用深度可分离卷积,可以减少卷积网络的计算量。由式(1)~(3)可知,如果要进一步减少卷积网络运算量,需减少通道数和卷积核尺寸,因此,改进的残差单元如图2所示。

图2 改进的残差单元

首先将输入进行通道拆分,分为左右两个分支,将原有残差模块中的两个3×3卷积分别改为3×3深度可分离卷积[13],以及3×3的深度可分离空洞卷积[14],用于扩大网络感受野。最后将两路卷积进行级联,为保证通道间的交流,最后再进行通道重组。假设输入和输出尺寸及通道相同,改进前的残差模块计算量为:

而改进后的残差模块计算量为:

改进后将减少网络参数量,可接受更大尺度的输入,从而提高网络精度。

1.2.2 时空特征提取模块

受深度瓶颈结构[15]的启发,为减少网络参数量及加速神经网络训练,采用3层卷积加1层Conv-LSTM组合的方式进行,即提取到的空间特征序列,首先经过1×1的卷积进行降维,而后经过Conv-LSTM进行时空特征提取,提取到的特征后接3×3的卷积层进行尺度缩小,最后经过1×1的卷积进行降维。

1.3 历史状态特征提取子网络

直接从图像映射到方向盘转角的成功证明了直接从前视摄像头生成车辆直接控制指令的可行性,但其映射过程并不完全符合人类驾驶车辆的整个过程,即人类驾驶车辆的过程中不仅要根据前向视角观察情况,做出驾驶意图判断,也需要考虑自车的历史状态情况。因此,需要提取自车历史状态特征对前文多提取到的时空特征做补充。

为捕捉车辆历史状态在时间序列上的变化特征,需引入LSTM网络,其具有强大的时序信息挖掘能力和深度表征能力,适用于处理时间序列数据[16]。

因此,对方向盘转角及车速序列,先利用两层一维卷积进行特征提取,后接LSTM作时序特征提取,将提取到的历史状态特征与时空特征向量进行融合。

1.4 纵横向控制决策子网络

1.4.1 纵横向控制决策机理与具体架构设计

在端到端自动驾驶控制决策方法中,方向盘及车速控制决策属于多任务学习。多任务学习属于推荐任务的思想,是指通过在相关任务间共享表示信息,使网络更好地概括初始任务,改进泛化能力[8]。受多任务学习思想的启发,又根据人类驾驶车辆的过程,提出的纵横向控制决策子网络中,横向转角及纵向车速既跟通过序列图像所提取出来的时空特征相关,又跟车辆历史特征以及未来特征紧密相关。

因此使用参数共享的方式进行多驾驶任务学习,将时空特征与历史状态特征相融合,作为驾驶控制决策共享层,从而输出各自的驾驶任务。提出的纵横向控制决策子网络如图3所示。.

图3 纵横向控制决策子网络

1.4.2 未来特征提取方法

人类驾驶车辆过程中不仅要考虑前向视角观察情况、自车的历史状态情况,还需要对未来车辆动作做出预期判断。因此,需增加对未来序列的控制决策任务作为辅助任务,从损失函数角度对网络训练进行合理监督,迫使网络学习到有用的特征。

对未来序列的方向盘转角及车速学习过程中隐含的特征即为未来特征,具体实现如下。

单独的子任务损失函数定义为:

式中:采用均方误差MSE作为Loss表达式。

则总的网络训练损失函数为:

2.1 数据集

2.1.1 数据集描述

2019年,Comma.ai发布了Comma2k19数据集[17],该数据集包含在加利福尼亚州180高速路上驾驶覆盖白天及黑夜各种天气下的超过33 h的驾驶数据。Comma2k19数据集中部分摄像头采集到的图像示例如图4所示。

图4 Comma2k19部分数据集展示

2.1.2 数据集整理与预处理

Comma2k19数据集分为2 019个驾驶片段,每段驾驶时长约为1 min,共选取100个片段数据,其中,白天和夜晚驾驶数据各为50段,按照8∶1∶1的划分原则,总共获得包含95 951组训练集,11 998组验证集,以及12 012组测试集。

Comma2k19数据集所采集的原始驾驶图像尺寸为1 164 pt×874 pt,为减少输入图像上非必要的干扰像素,选择将图像中的天空以及车辆发动机盖部分进行裁剪,最终获得800 pt×300 pt的驾驶图像,裁剪后的图像更接近人类驾驶所观察到的有效视角,裁剪过程如图5所示。

图5 图像裁剪示例

原始数据集中相机的采样频率为20 Hz,而通过CAN总线保存的方向盘转角和车速信息采样频率为80 Hz,为确保图像数据与车辆控制参数在时间戳上一一对应,故采用三次样条算法对方向盘转角与车速做插值处理。同时,为将数据去量纲化,避免数值问题,采取最大最小法将方向盘转角和车速进行归一化前处理。

2.2 自适应纵横向控制参数耦合权重设计

在多任务损失函数中损失函数的一般形式为:

在传统的端到端自动驾驶网络中ωi的取值通常采用的是试凑法,通过试验获得使网络拟合效果较好的值作为ωi,但是该权重系数会以定值的形式伴随整个训练过程,而在训练中梯度小的Loss在训练过程中被梯度大的Loss所影响,这个现象称为梯度主宰。尤其在各个任务难易程度不同的情况下,简单的任务出现过拟合,复杂的任务还是欠拟合状态,为了减缓这种现象的影响,引入动态加权平均方法[11],使纵横向控制参数学习的Loss权重可根据各个任务的收敛速度以及学习难易程度进行动态调整,从而实现纵横向控制参数的均衡学习。其具体表达式为:

式中:ri(t-1)为第i个任务的学习速度;
N为任务数量。直观来看,Loss缩小快的任务,则权重会变小,反之权重会变大。

但是,动态加权平均方法仅仅从学习速度上进行考虑,没有考虑到不同任务的Loss量级,而在实际研究当中,纵横向控制参数Loss量级关系对于神经网络学习至关重要。因此,提出一种平衡Loss量级和学习速度的方法。其具体表达式为:

式中:表达式左边为平衡不同任务Loss量级的关系式,即纵横向控制参数自适应学习中,Loss小的任务就需要大的权重,Loss大的任务需要分配小的权重;
表达式右边为平衡学习速度,即学习速度快的任务,权重会变小,学习速度慢的任务,权重会变大。此方法在下文将给出具体对比试验结果。

2.3 训练环境与参数设置

网络训练在NVIDIA GeForce RTX2080Ti GPU上进行,使用Pytorch深度学习框架构建网络训练。显存位宽352 bit,显存容量为11 GB,运行内存16 GB。操作系统为Ubuntu 16.04.7。

采用Poly优化策略[18]对学习率进行优化调整。当前时刻的学习率可表示为:

式中:lr为当前学习率;
lr0为初始学习率;
iter为当前训练步长;
itermax为设置的训练迭代周期;
p为衰减系数,用于控制衰减曲线形状。

在全连接层添加随机丢弃(Dropout)以提高网络泛化能力,连同其他超参数,具体设置见表3。

表3 网络训练超参数设置

3.1 网络性能评价指标

3.1.1 准确率Acc

为评判端到端自动驾驶控制决策网络所预测的方向盘转角和车速的精确性,引入准确率这一标准进行衡量,与深度学习中的分类问题不同,利用深度神经网络进行实际数值预测学习属于回归问题,当预测值与真实值的误差在一定的范围之内即可视为预测准确。

因此,引入容差阈值[19](Steering_threhold、Speend_threhold),单个方向盘转角和车速的预测准确性可表示为:

网络控制决策准确率的计算公式为:

式中:n为控制决策值与真实值的误差小于容差阈值的测试样本数量;
N为测试样本总数量。

为确定方向盘和车速的准确率容差阈值[20]。在网络只有RGB图像输入的情况下,采用NVIDIA PiloNet网络[2]作为基准网络,将其单控制决策改为纵横向控制决策,并且任务权重使用3.2小节提出的动态权重法,分别对转角和车速进行控制决策。选取不同的容差阈值对网络进行8 000次步长的训练,得到网络控制决策值准确率相对于容差阈值的变化趋势,如图6所示。

图6 PiloNet网络控制决策精确度与容差阈值变化趋势

由图可知,当方向盘转角容差阈值大于1.93°,车速容差阈值大于1.55 m/s时,网络控制决策的准确率已达到0.6左右。为将PiloNet作为后续试验的对比基础网络,选择Steeringthrehold=1.93°,Speedthrehold=1.55 m/s,作为评价网络准确率的容差阈值。

3.1.2 网络精确度综合评价指标Score

在3.1.1节中已经定义了方向盘转角与车速控制决策准确率的评价方法,但在纵横向控制参数学习中,为全面评判网络性能,须定义一个评价指标来衡量网络控制决策的综合性能,该指标一方面必须能代表纵横向控制决策的准确性,另一方面也应能代表纵横向控制决策的均衡性。因此,提出一个新的评价指标,将其命名为Score,具体表达式为:

Score的大小范围为[0,1],值越大,表明网络效果控制决策越佳,并将Score作为评判最佳网络的指标。

3.2 自适应均衡学习的端到端类人驾驶控制决策网络效果验证

采用自适应均衡学习的端到端类人驾驶控制决策网络对数据集进行训练,得到最佳网络,测试集表现如图7所示。

图7 自适应均衡学习的端到端类人驾驶控制决策网络在Comma2k19数据集中连续4 000帧图像上的方向盘转角及车速预测曲线

由图可知,自适应均衡学习的端到端类人驾驶控制决策网络所预测的方向盘转角及车速与各自的真实值曲线基本吻合,且预测曲线较为平稳,可保证车辆行驶的安全性和舒适性。

图8为自适应均衡学习的端到端类人驾驶控制决策网络在部分Commai2k19测试集的预测可视化效果图。其中:蓝色标线为真实的方向盘转角线,红色为预测的方向盘转角线;
车速的真实值与预测值以文字形式展示在图例下方。由图8可知,网络预测的方向盘转角及车速基本接近真实值,且预测值与真实值的误差均在方向盘转角和车速的容差阈值范围之内,可保证行车过程中的安全性和舒适性。

图8 自适应均衡学习的端到端类人驾驶控制决策网络在Comma2k19数据集预测可视化效果

表4为所构建的控制决策网络分别在训练集、验证集及测试集上的测试结果,在训练集的测试结果稍高,而验证集和测试集的结果相差不大,表明所构建的网络具有良好的泛化性。

表4 训练集、验证集、测试集对比结果

3.3 同类网络对比与分析

为验证对比自适应均衡学习的端到端类人驾驶控制决策网络与其他同类型网络的性能,选择3种网络进行对比,分别为PiloNet[2]、CgNet[21]和STLSTM Network[22],测试对比结果见表5,加粗为各项指标的最佳结果。

由表5可知,自适应均衡学习的端到端类人驾驶控制决策网络,相较于PiloNet、CgNet和STLSTM Network,综合性能分别提升45%、42%、28%,可较好地提升端到端自动驾驶纵横向控制决策精度,提高驾驶安全性。

表5 同类网络对比结果

此外,网络在NVIDIA GeForce RTX2080Ti GPU上的控制决策速度为43 fps,文献[23]指出,人类开车反应时间为0.5 s左右,可满足无人驾驶系统运行过程中的实时性要求,在更高算力的GPU下实时性会更佳。

3.4 纵横向控制参数Loss权重试验对比结果

为加速试验进行,利用PiloNet网络进行试验,采用不同的任务损失函数权重,利用3.1.2提出的评价指标选择最佳网络,在测试集上试验结果见表6,加粗字体为各项指标最佳结果。

表6中,1~10组为手动调节权重取得的试验结果,只有第2组取得了较好的训练精度;
11组为3.2节提出的纵横向控制参数自适应权重取得的试验结果,其综合性能优于以上所有结果。由此可知,在纵横向控制参数学习当中,动态优化算法是优于手动调节权重参数的,不仅整体训练效果优秀,且省去了多次试验的成本。

表6 纵横向控制参数Loss权重试验结果

3.5 网络性能验证与分析

为验证自适应均衡学习的端到端类人驾驶控制决策网络各部分模块对于整体网络的性能影响,分别设计7种不同网络,在Comma2k19数据集上进行训练及测试,测试结果见表7,加粗字体为各项指标的最佳结果。

表7 消融试验结果

表7中,(1)1、2组对照试验表明在相同网络输入下,更深层次的网络的性能更佳、表现更优,较PiloNet性能提升2.6%;
(2)2、3对照组试验结果表明,序列图像输入相较于单帧图像输入有着更好的性能,第3组较PiloNet性能提升10.1%,且其控制决策方式也更加符合人类驾驶经验,符合预期效果;
(3)3、4组对照试验结果表明,利用多尺度网络结构可在一定程度上补充到可利用的浅层信息,提高网络性能,第4组网络较PiloNet性能提升12%;
(4)4、5组对照试验结果表明,将控制决策未来时序的驾驶动作作为辅助任务,可以促进网络学习到更有用的特征信息,从而提高网络上限,第5组网络较PiloNet性能提升16.8%;
(5)5、6组对照试验结果表明,与人类驾驶经验相类似,神经网络在考虑到历史状态信息之后,所控制决策到的驾驶动作更加准确,第6组网络较PiloNet性能提升25.3%;
(6)6、7组对照试验为验证所改进的残差结构在更大尺寸的输入下,是否对网络性能有提升效果,结果表明,更大尺寸图像,意味着更丰富的信息输入,在轻量级网络的加持下,可以表现出较好的性能,较PiloNet性能提升45.2%。

通过以上7组对照试验,表明本文所构建的控制决策网络各模块对于整体网络性能有着更好的提升,同时在一定程度上增加了网络的可解释性。

为验证所提关键特征的参数对于网络的整体效果影响情况,分别设计7组试验进行对比,试验结果见表8,加粗字体为最佳结果。

表8 关键特征调参试验结果

1、2、3、4组试验表明,输入步长越长时,网络实时性会变差,且当输入步长为5时网络整体性能最佳,因此,选择步长5作为网络的输入步长;
3、5、6、7组试验表明,输出步长的大小几乎不影响网络的实时性,且当输出步长为5时,网络整体性能最佳,因此,选择步长5作为网络的输出步长。

以研究智能驾驶端到端控制决策技术为目的,从类人驾驶行为特征出发,设计了一种包含时空特征、历史状态特征、未来特征的端到端自动驾驶控制决策网络,通过设计合理的神经网络结构,得到方向盘转角及车速的控制决策量。考虑到纵横向控制参数学习中的损失函数难以确定问题,引入动态优化权重的方法并加以改进,使网络训练可以同时兼顾纵横向控制参数损失的量级与学习速度之间的协调关系。提出一种量化评价纵横向控制参数控制决策准确率及学习均衡性的指标,经试验验证,得出以下主要结论:

(1)从类人驾驶行为和思维特征出发构建的控制决策网络,较现有其他图像输入的端到端控制决策方法,在控制决策精度上有所提升,增加了网络的可解释性,保证了行车过程中的安全性和舒适性。

(2)所构建的纵横向耦合学习权重方法优于手动调节损失函数权重的方法,且能够实现纵横向控制参数的自适应均衡学习,保证学习过程兼顾纵横向耦合关系,增加网络均衡耦合学习的可解释性,从而确保安全性和舒适性。

猜你喜欢 控制参数方向盘转角 玩转角的平分线中学生数理化·七年级数学人教版(2021年9期)2021-11-20侧围外板转角深拉伸起皱缺陷研究模具制造(2019年10期)2020-01-06把握好直销的方向盘知识经济·中国直销(2018年3期)2018-04-12把准方向盘 握紧指向灯 走好创新路传媒评论(2017年8期)2017-11-08三次“转角”遇到爱解放军健康(2017年5期)2017-08-01PCB线路板含镍废水处理工艺研究科学与财富(2017年15期)2017-06-03基于模糊控制的一阶倒立摆系统稳定控制研究科技创新与应用(2017年1期)2017-05-11浅析铁路工务类LKJ数据管理科技与创新(2017年3期)2017-03-17INS/GPS组合系统初始滚转角空中粗对准方法探测与控制学报(2015年4期)2015-12-15某型轿车方向盘抖动的分析与改进汽车零部件(2014年5期)2014-11-11

推荐访问:均衡 自适应 端到