2. 河北省高速公路延崇筹建处, 张家口 075400
2. Yanchong Preparation Office of Hebei Express Group Limited, Zhangjiakou 075400, China
随着城市化进程的加快和人民生活水平日益改善, 车辆在全球普及迅速, 已经成为人们出行必不可少的工具. 车辆给人们生活带来便利的同时, 也带来了一系列安全和环境问题. 我国的交通事故率一直居高不下, 造成了越来越多的经济损失和人员伤亡, 所以预防交通事故势在必行. 研究表明, 大多数交通事故是由驾驶员人为因素引起的[1], 驾驶员在不良状态下可能会无意中突然加减速和横向驾驶[2], 从而产生急加速、急减速、蛇形驾驶和异常换道等异常驾驶行为, 从而导致交通事故的发生. 因此, 准确识别车辆异常驾驶行为对于减少交通事故发生率有着重要作用.
当前大量的研究集中于驾驶员意图和状态的检测. Lee等人[3]提出了一种基于两层聚类的框架, 以评估大规模驾驶记录, 识别潜在的侵略性驾驶行为. Li等人[4]受语音识别技术启发, 使用一种结合隐马尔可夫模型贝叶斯滤波技术的算法对驾驶员换道意图进行识别. 祝俪菱等人[5]建立了基于支持向量机的驾驶行为识别模型, 利用真实车辆轨迹数据进行训练和测试, 取得了不错的效果. Suzdaleva等人[6]利用贝叶斯方法和递归算法建立一种混合模型用来对驾驶员驾驶风格进行分类和在线估计. Wu等人[7]收集公交车的行驶数据, 训练了朴素的贝叶斯分类器用于检测和识别异常驾驶行为. Johnson等人[8]提出一种基于动态时间规划(DTW)的系统, 该系统使用传感器融合检测、识别异常驾驶行为. 以上研究都是基于聚类或者隐马尔可夫等方法, 虽然能够识别出异常驾驶行为, 但是很难从中甄别出不同类型的异常驾驶行为.
近年来, 神经网络由于其强大的非线性映射能力和自学习能力为被广泛应用于交通领域. Huang等人[9]受密集卷积网络(DenseNet)的启发, 建立了3种新的神经网络融合模型, 首次实现了基于视频的异常驾驶行为检测任务. 卫星等人[10]引入双卷积网络对监控视频数据关键帧的特征信息进行分析, 再利用LSTM网络对提取出的特性信息进行序列建模, 通过输出的预测得分判断出车辆行为类别. 毛其超等人[11]针对交通视频监控场景复杂、视频单帧图像分辨率高的特点, 提出一种基于Faster R-CNN的车辆检测改进算法. 通过对比以上研究发现现有基于神经网络的研究多结合图像视频信息, 但是图像视频信息受场景天气影响较大, 且无法捕捉驾驶行为的时间特征. 与图像视频数据相比, 速度、加速度等车辆轨迹数据不仅具有更好的精确性, 并且保留了前后时刻数据的时间相关性.
基于以上方法所存在的问题, 本文使用车辆轨迹信息, 建立一种拓展神经网络LSTM-att模型对异常驾驶行为进行识别. 该网络有两层结构: 第1层是带有注意力层的长短期记忆人工神经网络LSTM-att. 利用LSTM在处理时间序列上的优势对车辆数据信息进行处理, 加入attention层突出异常行驶数据的特征, 提高识别的准确率. 第2层用全连接神经网络, 将上一层的输出当作输入, 用于对驾驶行为的识别和分类. 模型具体流程如图1所示.
论文其余章节安排如下: 第1节对原始数据进行介绍和预处理, 以及对异常驾驶行为数据集的标记与建立, 第2节介绍了神经网络模块的工作原理, 第3节通过实验确定模型的识别率, 并与多个神经网络进行对比, 第4节对全文进行总结.
1 数据处理 1.1 数据获取与预处理本文所使用的相关行车数据是NGSIM (next generation simulation)数据集, 它是来自美国FHWA搜集的美国高速公路行车数据信息. NGSIM主要包括I80、US-101、Lankershim和Peactree 4个路段的车辆轨迹数据, 数据均是采用摄像头获取并记录为轨迹点. 作为开源的数据集, NGSIM以10 Hz的频率采集路段上每个车辆的数据信息, 这样的频率能够捕捉到驾驶行为发生变化的过程, 适合用于对车辆轨迹信息的研究.
本研究使用了其中位于US-101公路南段, 时间为2005年6月15日的30辆车辆轨迹信息, 其中包含200万条原始数据信息, 每条信息有当前时刻车辆的速度、加速度、车道和经纬度等18项驾驶信息, 驾驶信息数据如表1. 虽然原数据中没有横向加速度, 但是可以根据车辆与相邻车道之间的距离计算出横向加速度. 由于在传输过程中会有外界因素影响, 所以不可避免会出现数据的缺失, 重复等问题, 所以对数据进行预处理. 对缺失的数据利用缺失时刻的前后数据平均值进行填补, 重复数据进行删除.
经过预处理得到76辆车的260次出行, 表2是随即挑选一次出行的相关运动特征与车辆参数的统计量.
1.2 异常驾驶行为分析
驾驶员在驾驶过程中, 由于自身驾驶风格和外部环境影响可能会产生异常驾驶行为. 不加制止的异常驾驶行为极易引发交通事故, 甚至预示着某些交通事故的发生. 因此从大量轨迹信息中提取出异常驾驶行为是有必要的. 现有的研究多利用手机传感器判定或者人工判定的方法[12, 13]来寻找异常驾驶行为, 但前者受传感器性能影响, 后者主观性过强. 针对这些问题, 本文提取驾驶数据异常点, 再依据不同异常驾驶行为的特征提取出数据段作为异常驾驶行为, 可以有效提取出可靠的异常驾驶行为.
在正常的驾驶过程中车辆处于稳定状态, 车辆的行驶数据不会在短时间内出现大幅度的变化. 当驾驶员出现一些错误操作时会导致车辆异常行驶, 行驶数据在较短的时间内有突变的过程. 根据这一规律, 利用数据信息中的异常点分割出驾驶员的异常驾驶行为.
文献[14–16]利用大量轨迹数据的统计量, 通过反复实验和研究后发现, 驾驶员的加速减速行为特性是与车速相关的, 在给定的速度下, 选15%的比例可以有效的从所有加速度中分割出异常加速度点. 结合这一分布和实际情况, 对在这一概率内的纵向加速度、横向加速度等数据标记为异常点. 如图2所示为随机选取10辆车在整个行驶过程中的加速度沿速度的分布情况, 图2(a)和图2(b)中, 横坐标为速度, 纵坐标分别为纵向加速度与横向加速度, 蓝点为正常加速度, 红点为异常加速度.
零星异常点的出现有可能是车辆摇晃或者传输异常导致的, 而驾驶行为通常会持续一段时间, 因此将车辆行程数据按照采集时间进行排序, 在已排序的数据中添加一个时间窗口, 并根据时间顺序移动截取合适大小的数据段作为异常驾驶行为. 本文采集数据的频率是10 Hz, 大多数驾驶动作完成时间小于3 s[17], 故时间窗口大小为30. 根据对不同异常驾驶行为特征的分析, 找到拥有符合特征的异常点的数据段后, 滑动窗口截取数据段构成异常驾驶数据集.
1.2.1 急加速驾驶车辆在正常驾驶过程中, 通常需要灵活的加速去应对复杂的交通状况.正常加速的过程平稳且不会产生危险. 然而在实际的交通行驶过程中, 有时会出现短时间内纵向加速度明显异常的增大[18], 根据这一特征截取时间窗口内纵向加速度全为异常点且为正的片段作为急加速行为, 急加速行为如图3(a)所示. 随机截取20段正常加速行驶数据与急加速行驶进行对比, 如图3(b)可以明显观察到正常加速过程中, 加速度曲线增长趋势较平缓, 急加速时车辆的纵向加速度急剧上升且值域明显大于正常值.
1.2.2 急减速驾驶
驾驶员驾驶过程中紧急制动常常会引起急减速, 急减速发生时, 车辆纵向速度急速减小甚至降至零[18], 根据这一特征截取时间窗口内纵向加速度全为异常点且为负的片段作为急减速行为, 急减速行行驶如图4(a)所示. 随机截取20段正常减速行驶数据与急减速行驶进行对比, 如图4(b)可以观察到正常减速过程中纵向加速度曲线下降缓慢, 急加速时车辆的纵向加速度变化较快且值域变大.
1.2.3 蛇形驾驶蛇形驾驶是指车辆在行驶过程中不正常的横向摆动. 在实际生活中, 车辆的蛇形驾驶不仅会对本车的安全驾驶产生影响, 也有可能会影响到其他车道的车辆, 导致相邻车道车辆相撞. 蛇形驾驶行为如图5(a)所示, 当蛇形驾驶发生时, 车辆横向加速度出现较大波动, 值域变大, 并且由于车辆的左右晃动, 横向加速度交替出现正负值, 加速度的均值近于零 [19]. 根据这一规律截取相应的数据段作为蛇形驾驶行为. 随机截取20段正常行驶数据与蛇形行驶进行对比, 如图5(b)可以明显观察到正常行驶过程中横向加速度基本接近于零, 只有小范围的波动. 蛇形驾驶过程中横向加速度值域变大且波动明显.
1.2.4 异常换道驾驶
由于前方车辆的行驶状态无法符合驾驶员的期望导致的换道在日常中是很常见行为. 正常的换道行为时横向加速度会发生变化, 但一般持续时间比较长, 且值域不会很大. 而如图6(a)所示的异常换道是一种短时间的突然和瞬间的换道行为. 发生异常换道时, 车辆横向加速度会突然变化[20]. 利用这一特征截取时间窗口内横向加速度全为异常点的数据段作为异常换道行为.随机截取20段正常换道数据与异常换道进行对比, 如图6(b)可以观察到正常换道时横向加速度变换缓慢而异常换道时横向加速度变化值域变大且变化快速.
1.3 异常驾驶行为数据的建立
根据对异常驾驶行为数据特征的分析, 找到符合特征的异常点后, 利用滑动窗口截取30个数据, 每条数据拥有18个特征, 将其记录为30×18的矩阵作为异常驾驶数据集. 少量的数据训练神经网络难以得到精确的识别率, 因此本文截取2 000个数据段, 其中正常驾驶800段, 急加速300段, 急减速300段, 蛇形驾驶300段以及异常换道300段. 选取2 000个数据段中80%作为训练神经网络的训练集, 剩下20%作为测试集, 其中各驾驶行为在训练集和测试集中所占的比例相同.
2 LSTM-att+FC模型构建本文用作模型训练的轨迹信息是时间序列, 每一刻的数据前后互相关联. 在处理时间序列过程中如果保留它们的时间连续性, 可以更好的保存重要的数据信息. 长短记忆网络(LSTM)自发明以来就在时间序列数据的识别和预测方面表现出了优异性能, 因此本文将训练集输入到LSTM网络中进行特征提取, 将历史数据与当前数据联系起来. 同时LSTM中的遗忘门可以选择性的遗忘对结果不重要的数据.
为了更加突出数据的特征信息, 在LSTM中加入attention层. Attention能够突出有用信息, 对于更重要的信息给与更高的权重. 当识别急加速时, 加速度数据比车道数据重要性高, 加入attention层可以减少对车道数据的权重, 提高加速度数据的权重. 从关键部分进行特征提取, 得到重要的信息, 可以有效的提高识别率.
LSTM-att神经网络获取原始数据中的驾驶行为特征, 将其中有用的数据信息进行记忆保存, 没用的信息进行遗忘, 所得的输出作为下一层全连接神经网络的输入, 全连接神经网络对驾驶行为进行处理识别, 得到最终结果.
整个识别模型和数据流的架构如图7所示. 首先检测车辆行驶过程中的数据异常点, 根据不同类型异常驾驶特征将行驶数据分割为训练样本集. 处理好的训练集长度为30, 每一条数据包含速度、加速度、经纬度等18个特征值, 将数据集整理为30×18的矩阵, 输入到拥有一层隐藏层且加入一层attention层的LSTM-att网络中进行特征提取, LSTM-att的输出再次作为全连接神经网络的输入, 最后使用全连接神经网络识别异常驾驶行为. 过于复杂的神经网络结构可能会导致造成梯度消失或者梯度爆炸, 所以本文中全连接神经网络加入两层隐藏层以保证模型效果.
2.1 LSTM-att模块
LSTM是一类以序列数据为输入, 并且随着序列的不断推进, 前面的隐层将会影响后面的隐层的递归神经网络. 相较于RNN, LSTM通过细胞状态记忆信息, 不仅能处理长期依赖问题, 并且在长期神经元中仍能保存有效信息的特性, 不会失去学习连接过远的信息的能力, 非常适合用于处理本文所用到的驾驶数据信息. 基本的LSTM如图8所示, 可以看到LSTM利用细胞状态传输, 使用输入门、遗忘门、输出门3种门来保持和控制信息, 不仅承载了之前状态的信息, 储存当前的状态的信息, 还决定丢弃上一个时刻中的哪一部分的信息. 通过3个门对信息进行添加和删除操作, 信息特性会被储存利用. 本文利用LSTM处理预处理过后的时间序列, 可以最大限度地考虑序列中数据的时间相关性. 本文中的输入为分割好的大小为30×18异常驾驶行为数据矩阵.
LSTM可以看作是一个数据编码和解码的过程, 如图9所示, 输入通过隐藏层的编码转化为一个固定长度的向量c, 固定向量c再通过解码处理转化成输出序列. 这种编码-解码的框架在处理序列信息时有着强大的优势, 但是也有一定的弊端, 由于隐藏向量的长度是一定的, 这就意味先输入的内容携带的信息会被后输入的信息稀释掉, 解码的准确度就会降低. 当输入序列越长时, 这种弊端就越明显. 在LSTM中加入attention层对该问题做出改善.
Attention的原理是模仿人类的注意力, 人在观察一幅人物画像时, 大脑会将更多的注意力放在人脸上而不是旁边无用的信息上. Attention原理如图10所示, 隐藏层不再生成一个固定长度的向量, 而是将信息按照不同的权重储存到多个向量再进行解码. 语义向量c不只是对输入序列的简单编码, 而是各个元素按照重要程度的加权和. 随着深度学习的发展, 注意力机制因其优异的表现而得到广泛应用, 最早是用于图像处理领域[21], 随后以时序序列为代表的领域也开始引入注意力机制进行相关的研究[22, 23]. 本研究在LSTM中加入attention层, 给予重要的数据信息更大的权重, 提高识别精度.
带注意层的LSTM (LSTM-att)是LSTM和注意层的组合. LSTM-att不会像LSTM那样集中于所有的信息, 而是给予了不同隐藏层不同的权重, 可以将更多的注意力集中在一些有用特征上, 以增加有用部分的权重, 提高有用部分对整体的影响, 而非重要部分可以被忽略. 对更重要的数据分配更大的权重, 识别精度和准确度都会上升. LSTM-attention的模型如图11所示, 其中, xi为输入, hi是LSTM的隐藏层, 引入attention, attention通过自动学习更新计算每个隐藏层的权重aii, aii计算公式如下:
$ {a_i}_i = \frac{{\exp ({e_i})\;\;\;}}{{\displaystyle\sum\limits_1^n {\exp ({e_i})} }} $ | (1) |
其中, ei表示第i个状态隐藏层输出在所有输出中所占的比重, ei越大, 证明这个时刻的输入所占的注意力越大, 它的计算公式如下:
$ {e_i} = \;{w^{\rm{T}}}\tanh (W{h_t} + U{h_j} + b) $ | (2) |
其中, w, W, U为权重函数, b为偏置量, tanh是非线性激活函数. 得到每一步的权重进行归一化, 然后利用加权和生成特征向量ci, 计算公式如下:
$ {c_i} = \;\sum\limits_{i = 1}^n {{a_{ii}}{h_i}} $ | (3) |
在解码区, 语义向量ci参与生成解码区的转换函数hi′, 最后输出yi.
2.2 全连接神经网络
全连接神经网络是一种较为简单的神经网络, 强大的非线性拟合能力使它在多参数融合时表现良好, 因此本文利用它进行驾驶行为的分类. 全连接神经网络结构图如图12所示, 网络分为3层, 分别是输入层, 隐含层, 输出层. 经过特征提取的驾驶数据矩阵信息通过LSTM-att模块输出, 作为全连接神经网络的输入X输入层视为第0层, 其输出为:
$ {Y_0} = X $ | (4) |
经过隐藏层激活后输出H1, 公式如下:
$ {H_1} = f({Y_0}{W_1} + {B_1}) $ | (5) |
其中, W1是输入层映射到隐藏层的权重矩阵, B1是偏置向量, f是激活函数.
数据从隐藏层通过输入层, 公式如下:
$ {Y_2} = {{\textit{Softmax}}}({Y_1}{W_2} + {B_2}) $ | (6) |
其中, W2是隐藏层映射到输出层的权重矩阵, B2是偏置向量, Softmax为激活函数. 利用Softmax进行分类. 结果分为急加速、急减速、蛇形行驶、异常换道和正常行驶, 输出维度为5.
3 实验结果
本文所使用的算法是在Keras框架中使用Python 3.7构建的. 建立好模型后, 输入训练集进行训练模型, 再输入测试集进行验证. 为了验证本模型的先进性, 利用相同的数据分别对LSTM和BiLSTM进行训练验证, 用识别率和损失函数作为鉴别模型好坏的重要参数. 识别率越高, 损失函数越低, 模型识别异常越准确, 模型越优越.
如图13所示为LSTM-att的识别率图和损失函数图, 其中蓝色线段是训练集的结果, 红色线段是测试集的结果, 可以看出经过500次迭代后, 识别率和损失函数都趋于稳定且效果理想. 如图14所示为其他模型的识别率图和损失函数图, 图14(a)为LSTM模型, 图14(b)为BiLSTM模型, 其中蓝色线段是训练集的结果, 红色线段是测试集的结果, 可以看到, LSTM模型结果虽然随着训练次数的增加结果逐渐收敛, 但是识别效果一般, 识别率没有LSTM-att高. BiLSTM相较于LSTM识别率更好, 但是结果会出现明显的波动且效果不如LSTM-att. 对模型进行5次实验, 取平均识别率进行对比, 对比结果如表3所示, LSTM的平均识别率为95.2%, BiLSTM的平均识别率为96.1%, LSTM-att识别率达到98.4%. 可以看出, 本文所介绍的模型有一定的优越性.
4 结论识别异常行为驾驶在现实中有着实际意义, 是保证交通安全的重要措施之一. 以往研究中注重对驾驶视频和驾驶员状态的研究. 本文提出了一个拓展神经网络实现对异常驾驶行为的准确识别. 首先将经过预处理的车辆轨迹信息中的异常点标记, 根据分析不同类型异常驾驶行为特征截取相应的数据段作为异常驾驶, 建立异常驾驶行为数据集. 再建立识别神经网络. 网络分为两层. 第1层是LSTM-att神经网络, 对时间序列的数据进行处理, 提取不同行为的特征. 第2层利用全连接神经网络进行分类. 最后, 5种异常驾驶行为的识别率达到98%. 并设置多个对比模型, 实验结果表明本文提出的网络均优于LSTM和BiLSTM, 说明能够有效的识别异常驾驶行为, 对有可能发生的交通事故进行预警.
[1] |
Ellison AB, Greaves SP, Bliemer MCJ. Driver behaviour profiles for road safety analysis. Accident Analysis & Prevention, 2015, 76: 118-132. |
[2] |
Hu J, Zhang XQ, Maybank S. Abnormal driving detection with normalized driving behavior data: A deep learning approach. IEEE Transactions on Vehicular Technology, 2020, 69(7): 6943-6951. DOI:10.1109/TVT.2020.2993247 |
[3] |
Lee J, Jang K. A framework for evaluating aggressive driving behaviors based on in-vehicle driving records. Transportation Research Part F: Traffic Psychology and Behaviour, 2019, 65: 610-619. DOI:10.1016/j.trf.2017.11.021 |
[4] |
Li KQ, Wang X, Xu YC, et al. Lane changing intention recognition based on speech recognition models. Transportation Research Part C: Emerging Technologies, 2016, 69: 497-514. DOI:10.1016/j.trc.2015.11.007 |
[5] |
祝俪菱, 刘澜, 赵新朋, 等. 基于支持向量机的车辆驾驶行为识别研究. 交通运输系统工程与信息, 2017, 17(1): 91-97. |
[6] |
Suzdaleva E, Nagy I. An online estimation of driving style using data-dependent pointer model. Transportation Research Part C: Emerging Technologies, 2018, 86: 23-36. DOI:10.1016/j.trc.2017.11.001 |
[7] |
Wu XR, Zhou JW, An JH, et al. Abnormal driving behavior detection for bus based on the Bayesian classifier. Proceedings of 2018 10th International Conference on Advanced Computational Intelligence (ICACI). Xiamen: IEEE, 2018. 266–272.
|
[8] |
Johnson DA, Trivedi MM. Driving style recognition using a smartphone as a sensor platform. Proceedings of the 14th International IEEE Conference on Intelligent Transportation Systems (ITSC). Washington: IEEE, 2011. 1609–1615.
|
[9] |
Huang W, Liu X, Luo MY, et al. Video-based abnormal driving behavior detection via deep learning fusions. IEEE Access, 2019, 7: 64571-64582. DOI:10.1109/ACCESS.2019.2917213 |
[10] |
卫星, 乐越, 韩江洪, 等. 基于长短期记忆的车辆行为动态识别网络. 计算机应用, 2019, 39(7): 1894-1898. DOI:10.11772/j.issn.1001-9081.2018122448 |
[11] |
毛其超, 贾瑞生, 左羚群, 等. 基于深度学习的交通监控视频车辆检测算法. 计算机应用与软件, 2020, 37(9): 111-117, 164. DOI:10.3969/j.issn.1000-386x.2020.09.019 |
[12] |
Yu JD, Chen ZY, Zhu YM, et al. Fine-grained abnormal driving behaviors detection and identification with smartphones. IEEE Transactions on Mobile Computing, 2017, 16(8): 2198-2212. DOI:10.1109/TMC.2016.2618873 |
[13] |
胡松, 吴仲城, 张俊. 基于车载手机数据深度特征的驾驶行为识别. 计算机应用与软件, 2019, 36(1): 59-66, 87. DOI:10.3969/j.issn.1000-386x.2019.01.011 |
[14] |
刘瑞, 朱西产. 驾驶员加速度分布特性及其应用. 汽车安全与节能学报, 2019, 10(1): 37-45. DOI:10.3969/j.issn.1674-8484.2019.01.004 |
[15] |
Wang X, Khattak AJ, Liu J, et al. What is the level of volatility in instantaneous driving decisions?. Transportation Research Part C: Emerging Technologies, 2015, 58: 413-427. DOI:10.1016/j.trc.2014.12.014 |
[16] |
Jia S, Hui F, Li SN, et al. LSTM-CNN for abnormal driving behavior recognition. IET Intelligent Transport Systems, 2020, 14(5): 306–312.
|
[17] |
丁琛. 基于车辆动态监控数据的异常驾驶行为识别技术研究[硕士学位论文]. 北京: 北京交通大学, 2015.
|
[18] |
王可, 陆键, 蒋愚明. 基于车辆行驶轨迹的道路不良驾驶行为谱构建与特征值计算方法. 交通运输工程学报, 2020, 20(6): 236–249.
|
[19] |
陈中阳. 基于智能终端传感器的车辆异常驾驶行为检测和识别研究[硕士学位论文]. 上海: 上海交通大学, 2016.
|
[20] |
孙超, 陈小鸿, 张红军, 等. 基于海量车辆轨迹数据的机动车驾驶员驾驶行为评价(英文). 东南大学学报, 2019, 35(4): 502–508.
|
[21] |
Mnih V, Heess N, Graves A, et al. Recurrent models of visual attention. Proceedings of the 27th International Conference on Neural Information Processing Systems. Montreal: MIT Press, 2014. 2204–2212.
|
[22] |
Rush AM, Chopra S, Weston J. A neural attention model for abstractive sentence summarization. Proceedings of the 2015 Conference on Empirical Methods in Natural Language Processing. Lisbon: Association for Computational Linguistics, 2015. 379–389.
|
[23] |
Chorowski J, Bahdanau D, Serdyuk D, et al. Attention-based models for speech recognition. Proceedings of the 28th International Conference on Neural Information Processing Systems. Montreal: MIT Press, 2015. 577–585.
|