基于机器学习算法的船舶碰撞事故等级预测研究

2022-02-26 00:02杨欣怡李为为
微型电脑应用 2022年2期
关键词:神经网络船舶事故

杨欣怡, 李为为

(重庆交通大学,交通运输学院, 重庆 400074)

0 引言

近年来我国专家学者逐渐对水上交通展开研究,但由于研究起步较晚,水上交通安全还有不少问题亟待解决。而在水上交通事故中,碰撞事故发生率居于首位,在过去五年里,长江干线的船舶碰撞事故约占总事故发生数的44.2%。对于水上交通事故的预测,专家学者主要从2个方面进行研究。

一方面对事故的发生趋势进行预测。比如Zhao等[1]对灰色模型进行不同方法的改进,对事故发展趋势进行预测;王当利等[2]将灰色模型和SARIMA模型利用IOWA算子结合,利用近十年的水上交通事故数来预测水上交通事故发生数;李玲[3]利用遗传算法优化BP(Back Propagation)神经网络模型的参数,预测天气和风险之间的关系,预测事故是否发生;祝方天[4]利用改进IWRAP模型研究不同船舶在不同情况下碰撞的概率。

另一方面对事故险情等级进行预测。比如汪飞翔[5]提出基于GA-SVM-RFE的船舶事故影响因素筛选,再利用有序非线性模型进行预测事故等级;陈克嘉[6]将互信息和贝叶斯网络结合,对事故等级进行预测。

现在专家学者研究方向更偏向于后者,即对船舶碰撞事故等级的预测。在人工智能飞速发展的今天,需要对事件危险等级进行快速准确预测,而机器学习算法对于事件危险等级的预测比传统算法更加迅速精确[7]。因此本文将随机森林算法(Random Forest,RF)和BP神经网络模型结合,提出一种新算法。随机森林对缺省数据和高维数据都有很好的处理效果,并能够对影响因素重要程度进行排序,因此将随机森林和BP神经网络模型结合预测事故等级,期望能够降低水上交通预测数据的冗余程度,减少预测时间。下文介绍此模型和基本应用。

1 RF-BP神经网络预测模型概述

1.1 随机森林算法原理

随机森林算法是利用随机理论建立一片由决策树组成的“森林”,它是一种常见的用于分类的机器学习算法。随机森林算法是随机子空间(Random Subspace)算法和装袋(Bagging)算法的组合,不但能够用于数据的分类和回归,也能够用于对变量的重要性进行度量并排序[8]。

考虑到水上船舶碰撞的影响因素变量过多,模型复杂度较高,不是所有的数据都具有共线性,因此随着数据量的增大,仅仅只是单纯的预测模型可能会导致运算速度过慢。利用随机森林的重要性排序功能,判断事故等级和影响因素之间的相关关系,筛选出重要度最高的几个变量。

利用随机森林算法对水上交通影响因素的重要性进行排序,其主要步骤包括:

(1) 利用拔靴法(Bootstrapping)从整体船舶碰撞数据案例样本中随机且可放回地抽取N个数据,此N个数据为构建一棵决策树的基础;

(2) 从决策树的每个节点随机但不重复地选择K个影响因素,从K个影响因素中选取最优度量值的影响因素,以此为节点进行分裂,重复此步骤,直到生成决策树;

(3) 重复(1)、(2)两步骤H次,生成由H棵决策树组成的随机森林;

(4) 用基尼指数或者袋外数据错误率为指标,评价特征对决策树的重要度,根据重要度对特征变量排序,将得到对水上交通船舶碰撞事故等级影响最大的几个因素。

1.2 BP神经网络预测模型原理

水上交通事故的数据量较小,常常存在部分数据丢失的情况。而BP神经网络模型具有良好的自学习和自适应性,能够处理非线性问题,且具有良好的容错性[9-10],因此在水上交通事故预测中被广泛的运用。在船舶碰撞事故等级的研究中,也优先考虑使用BP神经网络预测模型。

BP神经网络模型的原理可以看作是由数据信号的正向传播和误差的反向传播两部分组成。数据样本从输入层传入,经过某种非线性可导函数,逐层处理后传向输出层,输出层结果如果和实际结果有差异,将误差反向传递,逐层调整权重和偏置值。

BP神经网络模型的构建需要从以下几点考虑。

(1) 网络层数节点的选取。在本文中,主要构建的BP神经网络模型为三层神经网络模型。神经网络的输入层的节点个数为影响因素类别数,输出层仅考虑事故等级这一个结果,因此可以明确输出层节点数为1。其中隐含层节点个数可具体根据神经网络输入层和输出层的个数决定,其隐含层节点个数由式(1)确定,

(1)

式中,l表示隐含层节点的个数,n是输入层节点个数,m是输出层节点个数,a是1-10中任意数值。

(2) BP神经网络模型激活函数的选取。典型的激活函数包括Sigmoid函数、线性函数、Relu函数等。不同激活函数具有不同的优缺点。本文在输入层和隐含层之间使用Relu函数,Relu函数相比传统的Sigmoid函数而言,具有更快的收敛速度和更小的操作开销。Relu函数的计算式为式(2):

(2)

式中,输入的值小于0时,输出数为0;输入的值大于0时,输出值不变。

(3) BP神经网络需要利用误差来调整每层之间的权重和偏置,本文采用最常用的梯度下降法来优化损失函数。

(4) BP神经网络模型初始权值的选择。对于BP神经网络初始权值的设置,一般会选择-1到1之间的服从正态分布的随机数。但是如果权值初始值过大将导致神经元过饱和,权值初始值过小又将导致学习过程过慢。为了优化初始权值,本文将初始权值的标准差设置为式(3),

(3)

其中,n表示为输入神经元的个数。

此方法比-1到1之间选择初始权值的方法,速度最高提升四倍[8]。

1.3 RF-BP神经网络模型的建立

为了更加快捷准确地预测船舶碰撞事故等级,建立基于RF-BP神经网络预测模型进行预测。其建模过程如下。

(1) 明确数据集。X={x1,x2,……,xi}设为包含有i个样本数据的水上交通碰撞事故数据集,每个样本数据都有j个数据属性Y={y1,y2,……,yj},这里的数据属性为碰撞事故的影响因素。

(2) 建立随机森林模型。将数据集X导入随机森林模型,随机森林模型将碰撞事故影响因素的重要性由高到低依次排列,筛选出最重要的s个影响因素Z={z1,z2,……,zs},数据集为X1。

(3) 利用BP神经网络对数据预测。将船舶碰撞事故数据集X1中70%左右的数据作为训练集,30%左右的数据进行测试集,利用绝对误差、均方根误差评价RF-BP神经网络预测模型在水上交通碰撞事故等级预测的准确性和快速性。

2 RF-BP神经网络模型的应用

2.1 数据基本介绍

为验证本文提出的RF-BP神经网络组合预测模型在水上船舶碰撞事故分析预测中的高效性和准确性,以2001—2020年之间全国长江干线的部分典型水上交通事故案例为样本进行实验计算,并将RF-BP神经网络模型与BP神经网络模型的计算结果进行对比。本文的数据来源包括长江水上交通事故案例分析报告、海事局官网开源的事故调查报告等,共包含54个典型船舶碰撞事故案例。

水上交通事故的影响因素分别从人员、船舶、环境和管理4个方面进行综合考虑,提出身心状态、技术水平、船舶类型、天气、能见度等29个影响因素。具体影响因素[11]如表1所示。

根据《水上交通事故统计办法》中的定义,两艘以上船舶之间发生撞击造成损害均属于碰撞事故,本文会对碰撞事故双方的人员、船舶情况进行分析。其中,碰撞的船编号为1,被碰撞的船编号为2,因此每个样本数据有包括事故等级的47个属性数据。

2.2 数据分析

利用RF-BP神经网络预测模型进行预测。首先需要基于随机森林模型对47个属性数据的重要性进行排序,如图1所示。

表1 船舶碰撞事故因素表

从图1中可以看出前面9项和后面的刚好形成一个拐点,因此,将前9项作为BP神经网络预测模型的输入数据。前9项数据包括安全体制、船舶类型、天气、监督管理等。企业和政府从宏观上掌控着水上交通的运行情况,管理情况的好坏对事故等级有着重要影响;其次,事故等级与伤亡人数、经济损失有直接联系,客船造成的水上交通碰撞事故可能导致较大损失的人员伤亡;最后,天气的好坏对船舶碰撞的严重程度也有影响,能见度较差可能导致船舶操作不及时,碰撞角度、力度无法很好地控制,将造成更加严重的后果。

利用RF模型将影响较小的变量剔除后,将新数据输入BP神经网络模型,其中40个数据将作为训练数据,14个数据作为测试数据。模型初始权值标准差设置为0.15,隐含层激活函数采用Relu函数,其中最大迭代次数为300,网络使用随机梯度下降算法进行优化,学习率为0.01。BP神经网络的隐含层节点数为5,输入层节点数为9,输出层节点数为1,输出结果下面将进行具体分析。

3 实验结果分析

利用Python软件建立RF-BP神经网络预测模型。将40组数据训练之后,RF-BP神经网络预测模型对另外的14组样本进行检测,将检测样本结果和随机森林模型预测数据、BP神经网络模型预测数据、实际情况碰撞事故等级数据进行对比。结果如表2和图2所示。其中随机森林一指利用未经过筛选的数据进行预测的模型,随机森林二指经过相关性排序筛选后,利用数据进行预测的模型。

图1 与船舶碰撞相关的影响因素排序

图2 船舶碰撞事故等级预测图

为了进一步验证RF-BP神经网络模型的准确性和快速性,本文从平均绝对误差、均方差和训练时间3个方面对BP神经网络模型和RF-BP神经网络模型进行对比,具体如表3所示。

实验结果显示,随机森林能够比BP神经网络更快达到预测精度上限,但是随机森林模型的精确度没有BP神经网络模型的精确度高。因此BP神经网络更适合需要高精度数据的情况,对船舶碰撞等级的预测,优先选用BP神经网络。

而且数据显示,不论是随机森林还是BP神经网络模型,经过优化后的模型比未经过优化模型具有更短的训练时间,但绝对误差和均方根误差数值并未下降,因此RF-BP神经网络模型适合水上交通船舶碰撞等级预测研究。

优化后训练时间减少的原因在于:优化后模型的复杂度没有优化前的高,随着模型复杂度的降低,将获得更高的训练速度,而且随着数据量增大,训练速度减少将会更加明显。

表2 预测模型测试结果对比

表3 预测模型参数对比

训练的精准度并未下降主要原因在于:模型优化后,选择剔除掉的是一些重要度不高的因素,剔除的因素对训练结果影响不大;其次,部分变量之间存在共线性关系,舍去某些变量对整体影响不大;最后,部分变量对结果有负影响作用,化繁为简对计算结果的准确性而言,并不是完全为负面效果。

4 总结

本文从人、船、环境和管理4个方面,综合考虑了可能对长江干线船舶碰撞产生影响的变量,结合随机森林的重要度的筛选功能和BP神经网络的预测功能,建立了RF-BP神经网络模型,得出以下2个结论。

与单纯的BP神经网络模型相比,RF-BP神经网络模型降低了船舶碰撞事故因素样本数据的空间维度,减少了模型的复杂度,提高了训练效率;与单纯的随机森林模型相比,RF-BP神经网络模型预测精度更高。

RF-BP神经网络模型的研究,为水上交通船舶碰撞的安全预防的方案制定、资金投入措施提供了科学依据。但本文的实验样本有限,如果需要探究更深层次的长江干线船舶碰撞影响因素,需要更多的实验样本和更加深入的研究。

猜你喜欢
神经网络船舶事故
大数据分析的船舶航迹拟合研究
基于递归模糊神经网络的风电平滑控制策略
《船舶》2022 年度征订启事
学中文
神经网络抑制无线通信干扰探究
船舶自动识别系统对船舶救助的影响
BOG压缩机在小型LNG船舶上的应用
废弃泄漏事故
基于神经网络的中小学生情感分析
小恍惚 大事故