基于XGBoost算法的道路交通事故严重程度预测
2022-05-26王延安刘庆芳
王延安,刘庆芳,成 卫
(1.玉溪市公安局交通警察支队,云南玉溪 653100;2.昆明理工大学交通工程学院,云南昆明 650000)
0 引言
2019 年,我国出台大力发展智慧交通相关政策,强调在交通行业中要广泛且深度地应用大数据、人工智能等前沿技术,在2035 年基本建成交通强国[1]。在2020 年进一步明确了要建设交通强国,加快新型基础设施建设的步伐[2]。然而,近几年来我国交通安全事故频发,严重阻碍了我国交通行业的健康发展。2019 年国家统计局数据显示[3],共发生247 646 起交通事故,造成134 618 万元的直接财产损失,其中包含215 009 起机动车事故。如今人们的衣食住行都和交通行业紧密地联系在一起,一旦发生交通事故,轻则仅在钱财上有所损失,严重情况下生命和财产都保不住。因此,对交通事故严重程度进行分析和预测,准确找出交通事故严重程度的关键影响因素值得探究。
国内外对于交通事故严重程度问题的研究已开展多年。Dapilah 等[4]基于美国加纳摩托车交通事故记录,指出道路交通事故的严重程度与摩托车驾驶者的交通行为有着紧密关系;Shinohara 等[5]基于卡方检验验证了安全带使用情况和汽车车型这两个因素对交通事故人员伤亡程度的影响;Yau 等[6]将交通事故严重程度分为轻微事故和严重/致命事故两种,基于1999-2000 年的香港多车碰撞事故数据集,利用逐步Logistic 回归模型得出事故发生时间、驾驶员性别、车辆类型、道路类型等为重要的交通事故严重程度影响因素;Olutayo 等[7]基于美国尼日利亚交通最为繁忙街道的历史交通事故集,分别采用决策树和神经网络算法对交通事故严重程度进行预测,实验结果显示在此案例中决策树性能要优于神经网络,并对事故的主要原因进行总结,分别为:车辆爆胎、车辆失控及超速;Hassan 等[8]基于利雅得2004-2011 年的交通事故伤亡记录数据,发现交通事故严重程度最重要的影响因素是道路因素;马壮林等[9]基于高速典型事故历史统计资料,使用累积Logistic模型分析得出季节、事故时间段等是重要的事故严重程度影响因素;马柱等[10]在二项Logistic 模型的基础上,对城市道路交通事故严重程度进行相关预测分析;杨京帅等[11]将智能群体建模、鱼骨图法和试验测试法进行结合,基于此结合方法对碰撞事故的主要原因和重要影响因素进行分析;陈艳艳等[12]在二元logistic 回归模型的基础上对特大城市的道路交通事故影响因素进行研究分析,指出能见度、照明条件以及交通信号方式的影响作用最大;戢晓峰等[13]基于2014-2016 年深圳市的历史交通数据记录,利用广义有序Logit 回归模型对夜间超大城市的交通事故严重程度影响因素进行分析;曹弋等[14]在现有的交通事故严重等级划分基础上,加入第三方经济损害,构建对应的评价体系并对交通事故严重程度进行判别,以大连市的实际案例进行分析说明;林庆丰等[15]在所收集的2017 年广东省机—非交通事故集上,利用Logistic 模型进行严重程度预测分析;董傲然等[16]在部分优势比分析模型的基础上,使用弹性分析法得出行人及机动车驾驶员的性别、道路类型等对行人伤害的严重程度有着非常重要的影响;王立晓等[17]在传统的二项Logit 模型上,增加了偏斜系数,从而构建出Scobit 模型,并将其用于交通事故的受伤严重程度预判。
综上所述,目前对于交通事故严重程度的影响因素分析角度比较单一,很多研究仅从车辆、驾驶员、道路及环境中的单一方面进行研究,对影响因素的考虑不够全面。同时,后续建模过程中输入特征和预测方法的选择需进一步加强研究,从而提升模型预测准确性。鉴于此,本文从车辆、驾驶员、道路及环境4 个方面考虑交通事故严重程度的影响因素,并利用随机森林模型选择出重要影响因素,然后基于重要影响因素采用XGBoost算法对交通事故严重程度进行预测。
1 道路交通事故数据描述
1.1 数据来源
本文选取我国某省2014-2019 年的城市道路交通事故数据进行研究,基于数据记录完整、准确的原则,利用python 中的pandas 对数据集进行缺失数据检测及删除处理后,最终得到22 896 条交通事故数据。该交通事故数据包含车辆、驾驶员、道路及环境4 个方面的影响因素,本文基于这些影响因素展开研究。
1.2 道路交通事故严重程度分类
在不同的国家对于道路交通事故严重程度分类标准都有所不同。在美国,划分成无人员受伤事故、轻微受伤事故、人员非致残性事故、人员致残性事故及死亡事故5种类型;在日本,划分成轻伤、重伤及死亡3 种类型;在德国,划分成仅物体损失人员未受伤事故、人员受轻伤事故、人员受重伤事故及人员死亡事故4 种类型;在我国,划分成人员轻伤1~2 人的轻微事故、人员重伤1~2 人的一般事故、人员死亡1~2 人的重大事故以及人员死亡3 人以上的特大事故4 种类型。对本文的交通事故数据集进行分析后可以得知,人员轻伤1~2 人的轻微事故和人员重伤1~2人的一般事故记录较多,而人员死亡1~2 人的重大事故以及人员死亡3 人以上的特大事故只有很少的记录,故将人员轻伤1~2 人的轻微事故和人员重伤1~2 人的一般事故合并为一般事故,人员死亡1~2 人的重大事故以及人员死亡3人以上的特大事故合并为严重事故。
2 数据预处理及特征工程
2.1 数据预处理
2.1.1 不平衡数据处理
对合并后的数据集进行分析可知,在22 896 条城市交通事故数据中,一般事故占97.34%,严重事故仅占2.66%,两个类别的比例存在严重的不平衡现象。对于这样的数据,不能直接进行建模,本文利用SMOTE 算法[18]将不平衡数据转换为相对平衡的数据,使一般事故和严重事故各占50%。
2.1.2 数据标准化处理
对数据进行标准化处理,公式如下:
2.2 模型输入特征
2.2.1 特征编码
本文从车辆、驾驶员、道路及环境4 个方面构造变量,具体的变量说明如表1所示。
Table 1 Variable description表1 变量说明
当某个分类自变量的类型超过2 种时,需要引入虚拟变量,将该自变量转换为0 -1 变量。若为m个分类时,需要引入m-1 个虚拟变量。以道路缺陷变量为例,变量为4分类,在其中引入3个虚拟变量,则如表2所示。
2.2.2 特征选择
好的模型输入特征可以有效提升模型预测性能,本文通过随机森林算法选择出重要的模型输入特征。在2001年,Breiman[19]在Bagging 集成学习方法的基础上构建出随机森林算法,该算法包含多棵决策树模型。随机森林因具有预测准确度高和计算速率快等优点,已成为目前最热门的算法之一。随机森林有mean decrease impurity 和mean decrease accuracy 这两种特征选择依据,将特征子集输入随机森林进行选择,最终根据重要性排序,选取事故车辆数x14、小时x15、周几x16、月份x17、年龄x19、驾驶员视野是否有遮挡x22、驾驶员身体健康情况是否正常x23、汽车生产年份x24、照明条件x5、是否为道路交叉口x11、汽车档位变换类型x26、是否超速x29作为输入特征。
Table 2 Dummy variables for road defects表2 道路缺陷的虚拟变量
3 预测模型建立及实验结果对比
3.1 XGBoost模型
XGBoost[20]是Extreme Gradient Boosting 的缩写,是在传统的GBDT[21]模型上发展而得到。主要改进如下:不但可以使用CART 决策树,而且能使用线性基础模型;在损失函数中加入了一个正则项,防止了模型的过拟合并控制了模型的复杂度;基于随机森林的思想,对字段实行抽样处理,既降低了模型计算量,又防止了过拟合。
基于XGBoost 算法的交通事故严重程度预测模型,其预测结果为:
使用二阶泰勒展开Obj(k),可得:
将式(5)中的常量去除后,则损失函数为:
此时,式(10)为新的目标函数,对其进行模型寻优,可以看出其十分依赖Ph和Qh。因为Ph和Qh是由损失函数以及该结构下树的预测结果共同决定,且K通过树结构决定,因此对目标函数Obj进行最小化求解,即为对最佳树结构进行求解。
XGBoost 是如今非常热门的机器学习算法之一,在交通事故严重程度预测上还未有应用。鉴于此,本文基于XGBoost算法构建交通事故严重程度预测模型,并与KNN、Logistic、随机森林算法进行结果对比分析。
3.2 模型评价指标
本文利用准确率及AUC 值对预测模型的性能进行评价。
(1)准确率。准确率是分类问题中使用最多的性能评价指标,表示被正确分类的样本数量在总样本数量中的占比,计算如下:
(2)AUC(Area Under Curve)。AUC 用来表示ROC 曲线下的面积大小。在分类模型中,其AUC 值越大,则代表该模型的分类性能越优。
3.3 实验结果与对比分析
在本次实验中,“正样本”为严重故事,“负样本”为一般故事。将实验交通事故数据集划分为训练集和测试集,其中训练数据占总数据集的3/4,其余数据作为测试集。在XGBoost、KNN、Logistic 及随机森林模型分别进行训练和测试。
各模型对交通事故严重程度预测的准确率如表3 所示,可以看出XGBoost 模型预测性能在4 种算法中表现最优。
Table 3 Prediction accuracy of each model表3 各模型预测准确率
各模型的ROC 曲线如图1 所示,可以得知XGBoost 模型AUC 的值比随机森林、KNN 及Logistic 模型的值都要高,即XGBoost 模型分类效果要比随机森林、KNN 及Logistics模型表现更好。
Fig.1 ROC curves of each model图1 各模型ROC曲线
4 结语
本文在我国某省的城市道路交通事故集基础上,通过分析得出驾驶员身体健康状况、事故发生时间、照明条件以及是否超速等是交通事故严重程度的重要影响因素。因此,在今后的道路交通安全管理工作中,可以着重对以上因素进行考虑,从而进一步预防交通事故的发生并降低交通事故的严重程度。
本文只使用了随机森林、XGBoost、KNN 及Logistic 4 种单一算法进行预测,后续可对单一预测模型进行组合从而形成融合模型,以期进一步提升预测准确性。