APP下载

基于随机森林的船舶避台失败原因分析

2021-10-08王元栋盛进路刘琴

上海海事大学学报 2021年3期
关键词:随机森林决策树

王元栋 盛进路 刘琴

摘要:为提高船舶避台成功率,采用随机森林对船舶避台失败的原因进行分析,并与决策树进行对比。结果表明:随机森林和决策树对船舶避台失败事故的平均诊断率分别为84.23%和75.56%;随机森林对一般事故和重大事故具有更高的诊断率,分别达到90.0%和96.1%。事故原因分析表明:造成船舶避台失败的首要原因是船员责任感不强;船员责任感不强、决策出现差池和船舶日常管理混乱极易导致船舶避台失败事故。本文研究可为船舶实施合理避台措施提供一定的参考。

关键词:  船舶避台失败事故; 决策树; 随机森林

中图分类号:  U698.6

文献标志码:  A

Meeting of the Waterborne Transport Division, World Transport Convention 2021 (WTC 2021)

Analysis on failure reasons of ship avoiding typhoon

based on random forest

WANG Yuandonga, SHENG Jinlub, LIU Qinb

(a.School of Shipping and Naval Architecture; b.College of Traffic & Transportation,

Chongqing Jiaotong University, Chongqing 400074, China)

Abstract: In order to improve the success rate of ship avoiding typhoon, the random forest is adopted to analyze the failure reasons of ship avoiding typhoon, and is

compared with  the decision tree. The results show that: the average diagnostic rates of the random forest and the decision tree for the failure accidents of ship avoiding typhoon are 84.23% and 75.56%, respectively; the random forest is of higher diagnostic rate for general accidents and serious accidents, and the diagnostic rates reach 90.0% and 96.1%, respectively. The analysis on accident reasons shows that: the primary reason for the failure of ship avoiding typhoon is the lack of crews responsibility; the lack of crews responsibility, the incorrect decision-making, and the chaotic daily management for ships can easily lead to the failure accidents of ship avoiding typhoon.It can provide reference for the implementation of reasonable measures for ship avoiding typhoon.

Key words: typhoon avoidance failure accident of ship; decision tree; random forest

收稿日期: 2021-03-28

修回日期: 2021-06-29

作者簡介:

王元栋(1992—),男,青海海东人,硕士研究生,研究方向为海事安全与环境工程,(E-mail)1774980941@qq.com;

盛进路(1976—),男,山东烟台人,教授,博士,研究方向为港航企业运行与管理,(E-mail)forwardlulu@163.com

0 引 言

据德国安联保险集团发布的《2020年安全与航运报告》,2019年100总吨以上船舶近五分之一的全损事故是由恶劣天气和海况(如台风、寒潮、浓雾)造成的,其中由台风造成的约占75%。往往由台风造成的事故损失巨大,救援极为困难,影响范围广,在威胁船舶安全航行的同时,还带来极大的生命财产损失,甚至对海洋生态环境造成严重污染。因此,为给船舶安全航行提供有力的保障,研究船舶避台失败的原因极为重要。

船舶事故分析主要采用事故树、故障树、贝叶斯网络等方法。杨威[1]应用事故树对典型船舶避台失败事故原因进行了分析,缺乏一般性。吴郁等[2]以长江干线江苏段945起碰撞事故为研究对象,采用随机森林对缺失数据进行插补,与Logistic回归、Probit回归、朴素贝叶斯等方法进行对比得出,所采用的随机森林误分率最低。WAN等[3]在人因分析与分类系统(human factors analysis and classification system,HFACS)模型基础上,根据事故统计分析结果和专家判断结果,利用故障树对碰撞事故基本风险因素进行定性分析,并制订风险控制措施。李奕良[4]基于贝叶斯网络对干散货船自沉事故进行致因分析,挖掘事故致因链,并有针对性地提出相关风险控制措施。贺立敏等[5]应用随机森林对船舶柴油机故障数据进行降维处理后,再采用支持向量机进行分类,并未完全发挥随机森林的优点。方匡南等[6]对随机森林从原理、性质、应用等方面做了全面的分析。

事故树起源于决策树,是按事故发展的时间顺序由初始事件开始推论可能的后果,而决策树恰好相反。决策树按一定的程序步骤可以向贝叶斯网络转化,换言之,贝叶斯网络具有决策树和事故树的功能。贝叶斯网络表达形式简单,其繁杂程度随着问题复杂程度呈线性增长,而事故树的繁杂程度随问题复杂程度呈指数形式增长。贝叶斯网络是一个优缺点并重的算法模型,在独立分布的前提下,贝叶斯网络优于其他算法且需要的样本量少。随机森林是一种集成算法模型,集成学习的目的是通过结合多个基础学习器的分析结果,改善单个基础学习器的鲁棒性和泛化性能,其最大的优点在于训练时不太可能出现过拟合现象。

通过上述事故分析模型关系与特征的分析,本文采用随机森林与决策树对比的方法,对船舶避台失败原因进行分析。首先根据事故报告按事故致因、事故等级形成二进制数据库,其次对数据进行预处理,剔除个别事故的罕见致因,最终形成450×11的矩阵,最后应用随机森林和决策树进行结果分析,寻出船舶避台失败的关键致因。

1 随机森林算法

1.1 随机森林算法思路

随机森林将多个决策树进行有效组合,组建成一个学习系统,其中每个决策树是这个系统的组成单元,随机森林的学习能力在系统中所占的权重根据训练可能会有所不同,但其泛化性能优于其中任何一棵决策树[7-8]。

集成算法有两个流派,Bagging流派和Booting流派,两者最为明显的区别是前者各学习器之间有依赖关系,而后者没有[9]。通常将Bagging的集成思想与决策树的结合称为随机森林,其基本思路见图1。

1.2 随机森林算法流程

相对于事故树单分类器,随机森林算法具有更好的诊断性能,但由于该算法本身的随机性,诊断结果存在波动性[10]。针对这个问题,

首先对采集的数据进行预处理和降维处理,以减少训练时间;再根据事故等级划分和变量确定,形成完备的二进制数据库;然后计算数据库中事故等级的一阶原点矩,确保一阶原点矩周围事故诊断率达到90%以上,并进行交叉验证确定最佳决策树和最少叶子节点数;最后通过随机森林模型得出最终决策树。本文随机森林算法流程见图2。

2 基于隨机森林的船舶避台失败原因分析

数据挖掘分析中最为重要的是数据源的科学性、合理性和准确性。本文数据来源于中国海事局船舶避台失败事故报告(www.msa.gov.cn/)。

2.1 事故等级划分

依据《中华人民共和国统计法》、《中华人民共和国海上交通安全法》和《中华人民共和国内河交通安全管理条例》,将水上交通事故按照人员伤亡和直接经济损失情况,分为5个等级:小事故、一般事故、大事故、重大事故和特大事故。对事故等级进行量化处理,

上述5个等级量化值依次为1、2、3、4、5。本文数据来自450份船舶避台失败事故报告,其中有小事故6起、一般事故146起、大事故229起、重大事故45起和特大事故24起。

2.2 事故原因确定

对事故报告进行系统全面的分析,发现船舶避台失败的原因有11项,见表1。在统计时,若该项为某起船舶避台失败事故的原因,则记为1,否则记为0。

事故原因统计概率见图3。从图3可知,台风风速及影响范围不规律变化(x11)占比78%,准备工作不足(x6)占比74%,决策失误(x5)占比66%。

3 分析过程

(1)读取数据。应用MATLAB自带函数xlsread读取二进制数据库,然后应用unifrnd产生450×1的均匀矩阵,并用round函数对矩阵进行整数化处理,最后应用randperm产生一个均匀随机的数字序列,为后续抽样做准备。

(2)计算事故等级原点矩。对事故等级进行统计概率分析,结果见表2。由原点矩可知,总体样本事故等级的期望为2.85,因此样本的总体事故等级在一般事故与大事故之间。

(3)留一法抽样。为保证每组数据既能作训练集也能作测试集,采用留一法抽样:先把总样本(共450起事故)均匀分成10组,然后利用Bootstrap重采样,任选一组为测试集,剩下的9组为训练集,接着再选1组为测试集(选过的不再选择),剩下的9组为训练集,以此类推。这样不仅能保证每组数据既作为训练集又作为测试集,而且便于决策树交叉验证。

(4)创建随机森林分类器进行仿真测试。应用R语言中的随机森林工具包Class RF _ train和Class RF _ predict创建随机森林分类器进行仿真测试。

(5)分析过程。初始决策树为500棵,叶子节点数为9。为每个非叶子节点选择事故原因前,从11个事故原因中随机抽取9个作为当前节点的分裂属性,并以这9个属性中最好的分裂方式对该节点进行分裂,在整个森林生长过程中,每棵树都完整生长不进行剪枝;然后采用投票的方法,将训练集决策树输出最多的类别作为测试集所属类别;对测试集中的每个决策树进行训练,得到对应的类别;最后采用投票的方法,将训练集决策树输出最多的类别作为测试集样本所属类别。

(6)最佳决策树数量与最少叶子节点数确定。在保证一般事故和大事故的诊断率不小于90%的条件下,通过叶子节点含有的最小样本数与交叉验证误差的关系(见图4)和随机森林中决策树数量与诊断率的关系(见图5),确定最少叶子节点数为14和最佳决策树数量为150棵左右。

4 结果对比分析

4.1 随机森林分析

采用随机森林对船舶避台失败原因进行分析,结果见表3。

由于受样本数量限制,小事故、重大事故和特大事故的诊断率呈现特殊情况:由于小事故样本数为6,选取的测试集中未包含小事故,因此诊断失效。

由于事故等级是根据人员伤亡和直接经济损失两个指标划分的,一些事故的人员伤亡指标隶属于大事故但直接经济损失指标隶属于重大事故,因此最终将其确定为重大事故。

最终决策树见图6。由图6可知:最终决策树叶子节点数为14,其中一般事故、大事故、重大事故、特大事故对应的叶子节点数分别为4、8、1、1。

船舶避台失败的原因从主要到次要分为5个层级,一层级中有x4(船员责任感不强),二层级中有x3、x5(船员职业技能低、决策失误),三层级中有x1、x2、x11(海务监管不力、船舶日常管理混乱、台风风速及影响范围不规律变化),四层级中有x2、x5、x8(船舶日常管理混乱、决策失误、船舶船龄长),五层级中有x3、x7(船员职业技能低、船体结构差)。

x4—x3—x11—x5—2是最终决策树的左边枝,x4—x5—x1—x2—5是最终决策树的右边枝,而x4、x5、x1、x2造成的事故后果比x4、x3、x11、x5的更严重;最短枝有x4—x3—x11—3、x4—x3—x1—3、x4—x5—x2—2和x4—x5—x2—3:因此,若同时存在这5类问题x1、x2、x3、x4、x5(海务监管不力、船舶日常管理混乱、船员职业技能低、船员责任感不强、决策失误),则极易引发船舶避台失败事故。

4.2 决策树分析

根据决策树对船舶避台失败原因进行分析,结果见图7。从图7可知:修剪后的决策树含有35个叶子节点,其中小事故、一般事故、大事故、重大事故、特大事故对应的叶子节点数分别为1、12、15、3、4。

船舶避台失败的原因从主要到次要分为10个层级,一层级中有x4(船员责任感不强),二层级中有x3、x1(船员职业技能低、海务监管不力),三级层中有x1、x2、x9、x11(海务监管不力、船舶日常管理混乱、船舶技术状况差、台风风速及影响范围不规律变化),四层级中有x2、x3、x5、x6、x7、x8(船舶日常管理混乱、船员职业技能低、决策失误、准备工作不足、船体结构差、船舶船龄长),五层级中有x3、x5、x6、x7、x8、x9(船舶日常管理混乱、决策失误、准备工作不足、船体结构差、船舶船龄长、船舶技术状况差),六层级中有x5、x6、x10(决策失误、准备工作不足、台风路径不规律),七层级中有x10(台风路径不规律),八层级中有x1、x2(船员职业技能低、船舶日常管理混乱),九层级中有x9(船舶技术状况差),十层级中有x2(船舶日常管理混乱)。

x4—x3—x11—x5—2是最终决策树的左边枝(事故致因链),x4—x1—x2—x5—4(5)是最终决策树的右边枝,而x4、x1、x2、x5造成的事故后果比x4、x3、x11、x5的更严重;最长事故致因链为x4—x3—x11—x7—x6—x5—x10—x1—x9—x2—3(2)。

4.3 对比分析

随机森林与决策树对船舶避台失败事故的诊断结果对比见表4。从表4可知,随机森林的诊断率明显比决策树的高,而且得到的最终决策树的层级和叶子节点更简洁。

综合表4,并对比图6、7得出以下结论:(1)在训练样本与测试样本数量相同的情况下,相比于决策树,随机森林的平均诊断率更高,收敛性更强。(2)从随机森林和决策树得出的最终决策树可以看出,随机森林的最终决策树更加简明,各层级之间事故致因交叉少,更符合逻辑;而决策树得出的最终决策树的事故致因链较长,各层级之间事故致因交织在一起,逻辑结构不够简明。(3)船舶在防抗台风过程中,避台失败事故的主要致因是人的因素。由随机森林和决策树得出的最终决策树显示,船员责任感不强是所有事故的首要致因;从最短事故链看,海务监管不力、船舶日常管理混乱、船员职业技能低、船员责任感不强和决策失误,极易引发船舶避台失败事故。

5 结 论

本文提出一种基于随机森林的船舶避台失败原因分析方法,与决策树相对比,随机森林具有快速学习且不需要剪枝的优势。在确保诊断率的情况下,随机森林对一般事故和大事故有良好的诊断效果。当决策树的叶子节点为14时交叉验证误差最小,当决策树为150棵左右时既能保证较高的诊断率又能提高诊断效率。最终决策树显示,海务监管不力、船舶日常管理混乱、船员职业技能低、船员责任感不强、决策失误、准备工作不足是脆弱性致因,船员责任感不强是船舶避台失败的导火索,其他5项(船体结构差、船舶船龄长、船舶技术状况差、台风路径不规律、台风风速及影响范围不規律变化)为从属致因。

参考文献:

[1]杨威. 基于事故树的船舶避台失败原因分析[D]. 大连: 大连海事大学, 2017.

[2]吴郁, 张金奋, 范存龙, 等. 基于随机森林的船舶碰撞事故缺失数据插补[J]. 武汉理工大学学报(交通科学与工程版), 2019, 43(6): 1120-1124. DOI: 10.3963/j.issn.2095-3844.2019.06.026.

[3]WAN Yaoyi, XIA Haibo. Application of HFACS model in marine traffic accident field[J]. International Core Journal of Engineering, 2021, 7(3): 135-140. DOI: 10.6919/ICJE.202103_7(3).0019.

[4]李奕良. 基于贝叶斯网络的干散货船舶自沉事故致因分析[D]. 大连: 大连海事大学, 2020.

[5]贺立敏, 王岘昕, 韩冰. 基于随机森林和支持向量机的船舶柴油机故障诊断[J]. 中国航海, 2017, 40(2): 29-33.

[6]方匡南, 吴见彬, 朱建平, 等. 随机森林方法研究综述[J]. 统计与信息论坛, 2011, 26(3): 32-38.

[7]MUTANGA O, ADAM E, CHO M A. High density biomass estimation for wetland vegetation using WorldView-2 imagery and random forest regression algorithm[J]. International Journal of Applied Earth Observation and Geoinformation, 2012, 18: 399-406. DOI: 10.1016/j.jag.2012.03.012.

[8]谢宏, 杨环. 一种随机森林与深度学习结合的室内定位方法[J]. 上海海事大学学报, 2020, 41(3): 117-121. DOI: 10.13340/j.jsmu.2020.03.019.

[9]牟小辉, 袁裕鹏, 严新平, 等. 基于随机森林算法的内河船舶油耗预测模型[J]. 交通信息与安全, 2017, 35(4): 100-105.

[10]CHEN Jiangguo, LI Kenli, TANG Zhou, et al. A parallel random forest algorithm for big data in a spark cloud computing environment[J]. IEEE Transactions on Parallel and Distributed Systems, 2016, 28(4): 919-933. DOI: 10.1109/TPDS.2016.2603511.

(编辑 赵勉)

猜你喜欢

随机森林决策树
简述一种基于C4.5的随机决策树集成分类算法设计
一种改进的MEP决策树剪枝算法
决策树学习的剪枝方法
随机森林在棉蚜虫害等级预测中的应用
基于二次随机森林的不平衡数据分类算法
拱坝变形监测预报的随机森林模型及应用
基于随机森林算法的飞机发动机故障诊断方法的研究
基于随机森林算法的B2B客户分级系统的设计
基于多视角特征融合与随机森林的蛋白质结晶预测
决策树在施工项目管理中的应用