APP下载

基于XGBoost的装备体系效能预测方法

2021-06-24钱晓超陆营波

空天防御 2021年2期
关键词:效能指标体系样本

祝 颂,钱晓超,陆营波,刘 飞

(1.华南理工大学软件学院,广东广州 510006;2.上海机电工程研究所,上海 201109)

0 引言

武器装备体系,是指在一定的战略指导、作战指挥和保障条件下,为完成一定作战任务,由功能上互相联系、相互作用的各种武器装备系统组成的更高层次系统[1]。武器装备体系的复杂性对效能评估问题的求解带来了极大的困难和计算消耗[2],大数据及机器学习技术的兴起有望为武器装备效能评估提供全新、有效的解决方法。目前,国内外学者已开展了初步的研究,如基于机器学习进行效能评估,其基本思想是将仿真效能评估转化为一个分类或预测问题。曹星平[3]使用支持向量机方法对武器系统建立了效能预测模型,并以导弹武器系统为例,对其支持向量机模型得出的结果进行了分析。陈侠等[4]提出了基于粒子群算法优化的支持向量机模型,并将该模型应用到侦察无人机的作战效能评估中,仿真实验结果表明此模型可以准确有效地对侦察无人机进行作战效能评估。王静岩等[5]通过对合成旅作战过程中主要因素的分析,针对作战方案评估,提出基于弹性反向传播(resilient backpropagation,RPROP)和基于神经网络集成的两种作战方案评估方法,降低了评价过程中人为因素的影响。田成祥等[6]在对工程兵桥梁爆破影响因素分析的基础上,构建了以爆破人员、爆破目标、爆破工具为主的桥梁爆破方案评估指标体系,并确立了基于BP 神经网络的军用桥梁爆破方案评估模型。刘东亮等[7]以新型作战单元航空兵旅为研究对象,以夺取岛屿制空权为研究背景,综合考虑天、电、网对作战效能的影响,采用决策树法建立了航空兵旅作战效能评估指标体系。

虽然支持向量机、人工神经网络、决策树等方法可以很好地处理非线性分类与回归问题,并可融合更多的评估信息,但支持向量机在解决多指标预测问题时存在困难,神经网络则对训练样本数量要求较高,而决策树依赖于预剪枝,泛化能力差,并且这些方法的解释性差,无法解释预测结果。此外,单一的模型容易出现过拟合现象,可能严重影响效能预测结果。相比之下,极端梯度提升(extreme gradient boosting,XGBoost)[8]是一种基于梯度Boosting 的集成学习算法,以树模型作为基分类器,通过集成多个基分类器形成一个强分类器,弥补了单一决策树模型容易过拟合的弱点,在分类任务中具有高效、准确的优势,并且能够分析不同特征的重要程度,具有良好的可解释性。此外,XGBoost 已在其他领域多个预测问题中取得了良好的效果[9-12]。

本文基于XGBoost 算法,提出了一种新的装备效能预测方法,并给出了具体的预测流程。通过多种测试条件下与决策树模型的对比分析,验证了XGBoost模型在装备效能预测中具有更好的性能。

1 问题描述预测

武器装备的效能预测模型构建实质是在一组样本空间中寻找模型输出误差最小的解,这一问题可转化为求解一个多目标输入的非线性方程,可描述为如下的数学模型:

式中:X=(x1,x2,…,xn)T∈Rn为评估指标集,该指标集来自于针对一个效能问题构建的评估指标体系;Rn为n维实数向量空间;F(X)为n维指标空间的非线性目标函数;gi(X)、hj(X)分别为目标函数的不等式约束(数量为m)和等式约束(数量为p),此处主要是指每个评估指标的取值范围。

对于武器装备体系来说,效能评估的目标函数空间F(X)十分复杂,通常无法用具体数学表达式进行描述,是一个典型的“黑箱系统”。传统的数学解析法不能准确地描述这一“黑箱系统”,需要考虑其他科学可行且置信度高的方法。

基于数据挖掘与机器学习的方法,通过对训练样本的学习,能够挖掘评估指标集中潜在的关联信息,自动构造F(X),并且在这个过程中由于没有人为因素的影响,保证了其客观性。

2 基于XGBoost的效能预测方法

2.1 XGBoost原理

XGBoost 算法由Chen 和Guestrin 于2011年首次提出[8],是基于提升树模型的学习框架,许多学者在后续研究中对其进行了优化和改进。传统的提升树模型仅使用一阶导数信息,在训练第m棵树时,由于使用了前(m-1)棵树的残差,因此难以实施分布式训练。XGBoost 对损失函数执行二阶泰勒展开,并且可以自动使用CPU 的多线程进行并行计算。此外,XGBoost使用了多种方法来避免过拟合。以下对其进行简要介绍。

XGBoost 使用加法将多个树模型整合。假设总共有K棵树,并使用Φ表示基本树模型,则有

式中:φk(⋅)为第k个树模型;为XGBoost模型对输入xi的预测结果。

目标函数为

式中:l(⋅)是损失函数,代表预测值和真实值之间的误差;Ω(·)是用于防止过拟合的正则化项,计算式为

式中:γ和λ为超参数;T表示每棵树的叶子节点数量;w表示每棵树的叶子的权重。记为第t次迭代之后的预测值,其计算方式为

将式(4)代入式(3),则目标函数可表示为

再将目标函数二次泰勒展开可得

式中:

忽略常数项,式(7)可改写为

定义第j个叶子结点为Ij={i|q(xi)=j},则式(10)可写为

令目标函数导数为0,可得最优的权重为

XGBoost 使用贪心算法而不是简单的枚举来提高计算效率。用IL代表每次拆分后所有左节点的集合,IR代表每次拆分后所有右节点的集合,那么在每次拆分之后,目标函数的信息增益为

式中:参数γ有分割阈值的作用,当且仅当信息增益大于γ时,才允许拆分叶节点,以抑制树的深度。

为防止过拟合,本文采用了以下3种策略:

1)设定一个权重阈值,当所有样本在某个叶子结点上的权重之和小于该阈值时,停止划分该叶子节点,该策略可防止模型受到特殊训练样本的影响;

2)在每次迭代中,随机选取一定比例的样本而非所有样本进行训练;

3)构建每棵树时,随机选取一定比例的特征而非所有特征进行训练。

2.2 基于XGBoost的装备效能预测流程

本文利用XGBoost 来建立装备效能与其评估指标之间的关系,具体流程如图1所示。对于一个武器装备系统,需要针对其评估指标体系,建立XGBoost模型,并完成模型的训练与优化,然后以指标值为训练好的模型输入,求出效能评估值。该模型主要包含以下5个步骤。

图1 基于XGBoost的效能评估流程Fig.1 Effectiveness evaluation process based on XGBoost

1)设计仿真想定。根据效能评估对象、评估任务及作战场景需求,设计作战仿真想定,以模拟待评估装备的执行某项作战任务过程,为获取效能评估数据奠定基础。

2)建立评估指标体系。评估指标体系的意义在于指导仿真评估输入输出指标的实验设计。通过分析评估任务、待评估对象及装备作战对抗过程机理,确定对抗条件下影响武器装备效能的指标要素及效能结果输出形式,从而构建出层次化的评估指标体系。

3)仿真实验设计。实验设计的目的在于获取分布均匀,能遍历效能评估过程所有可能情况的评估指标参数组合,为效能评估元模型构建提供包含普遍规律的训练样本和测试样本数据。

4)训练模型。根据效能评估问题特点及评估指标体系结构,开展XGBoost模型训练。

5)效能评估。根据训练得到的XGBoost 效能预测模型,开展装备效能评估。

3 应用案例

3.1 案例背景

依托防空作战想定,分析评估任务需求,基于能力视角构建评估指标体系,如图2所示。在防空导弹武器系统评估任务分析中重点考察探测跟踪能力、系统反应能力、火力拦截能力、目标突防能力。其中,探测跟踪能力向下可分解为雷达探测距离、雷达发现概率;系统反应能力向下可分解为战斗准备时间、单发弹发射时间间隔;火力拦截能力向下可分解为拦截斜距、单目标发射导弹数量、单发拦截概率、使用火力通道数;目标突防能力向下可分解为来袭敌导弹数量、发射导弹时间间隔、来袭导弹目标雷达散射截面积(radar cross section,RCS)值、敌目标突袭速度、敌目标巡航高度。基于上述层次化指标体系及参数取值范围,重点研究{I12,I21,I22,I31,I32,I34,I42,I43}共8 项指标因子取值范围的不确定性,研究这些指标对防空导弹武器系统作战效能的影响情况,构建XGBoost模型。

图2 某型防空导弹武器系统效能评估指标体系Fig.2 The effectiveness evaluation index system of a certain type of air defense missile weapon system

3.2 数据集与预处理

依据评估指标体系,通过仿真实验获取550 组样本数据。每个样本有8 个评估指标作为特征值以及1个需要预测的效能值,特征值与效能值都是连续变量,表1给出了评估指标值的取值范围。

表1 评估指标取值范围Tab.1 Value range of evaluation index

由表1可见,不同特征的数值范围相差较大,在将数据输入模型前,需要对数据进行归一化处理。归一化后的部分样本数据值见表2。

表2 数据集样本归一化结果Tab.2 Normalization results of data set samples

3.3 XGBoost参数设置

XGBoost 有多个可调节的参数,本文将XGBoost模型应用于装备效能预测时,对其进行了优化,即使用网格搜索[13]确定最优模型参数。涉及的参数有min_child_weight、 subsample、 colsample_bytree、n_estimators、max_depth、gamma、objective、learning_rate,对这些参数介绍如下。

1)min_child_weight:权重阈值。当所有训练样本在叶子节点上的权重之和小于min_child_weight时,将停止划分节点。

2)subsample:每次迭代选取样本的比例。

3)colsample_bytree:构建每棵树时选取特征的比例。

4)n_estimators:训练中的迭代次数。n_estimator太小会导致模型拟合不足,无法充分发挥模型的学习能力,而n_estimators太大则容易导致过拟合。

5)max_depth:树的最大深度。训练过程中,树的深度不能超过max_depth。树的深度越大,树模型越复杂,拟合能力越强,但是与此同时,模型更容易过拟合,限制树的深度可避免模型陷入局部最优。

6)gamma:划分结点所需的最小损失函数下降值。若划分一个节点使损失函数值下降的量小于gamma,将不会划分节点。

7)objective:需要最小化的损失函数。本文的装备效能预测属于回归问题,采用平方误差,其定义为

8)learning_rate:学习速率。与通常的机器学习算法相同,XGBoost 也需要设置合适的学习速率。降低学习速率会减慢模型收敛的速度,但可以增强模型的鲁棒性。

使用网格搜索得到的最优参数见表3。

表3 XGBoost模型最优参数值Tab.3 Optimal parameter values of XGBoost model

3.4 实验分析

本文使用XGBoost 模型实现武器效能预测。首先选取前500 组样本作为训练集,剩余50 组样本作为测试集,使用网格搜索寻找XGBoost 最优参数设置。图3给出了最优参数设置下XGBoost模型的训练过程曲线。当训练至第13 个epoch 时,均方根误差(root mean square error,RMSE)为0.052 6,平均绝对误差(mean absolute error,MAE)为0.030 9,达到了最优训练效果。

图3 XGBoost回归分析Fig.3 XGBoost regression analysis

图4 给出了50 组测试样本的验证结果,可见XGBoost 模型的预测效能值与测试样本效能值吻合程度良好。

图4 测试样本验证曲线Fig.4 Test sample validation curve

图5 给出了XGBoost 模型预测效能偏差绝对值。由此可知,绝大多数测试样本的预测偏差绝对值都小于0.1,说明XGBoost 效能预测模型具有较高的精度,满足预期要求。至此,效能预测模型构造完毕,可用于评估新的样本。

图5 效能预测偏差绝对值Fig.5 Absolute value of performance prediction deviation

表4 给出了8 个评估指标在XGBoost 模型中的重要程度。由表4 中数据可知,对该防空导弹武器系统效能影响最大的是单目标发射导弹数量I32,其次是使用火力通道数I34与拦截斜距I31,而影响最小的是单发弹发射时间间隔I22。

表4 评估指标重要程度Tab.4 The importance of the evaluation index

将最优模型参数的XGBoost 与决策树模型进行对比,采用K折交叉验证和随机选取固定比例测试集两种方式划分训练集和测试集,对比效能预测两种算法的精度,结果见表5。

表5 在装备效能预测数据集上的评估效果Tab.5 Evaluation effect on equipment effectiveness prediction data set

由表5 可知,XGBoost 在交叉验证及固定测试集两种方式下的MAE 和RMSE 都低于决策树的MAE和RMSE,体现了XGBoost 具有更高的准确度以及更强的泛化能力。

4 结束语

本文提出了一种基于XGBoost 的装备体系效能预测方法。以某防空导弹武器系统效能预测为例,采用XGBoost 构建该防空导弹武器系统的效能预测模型,在预测效能值的同时,可以给出不同指标在模型中的重要程度,为装备效能评估建模提供了良好的可解释性。该方法可为武器装备体系效能预测提供可靠的支持,并为评估结果的人工分析提供方向。

猜你喜欢

效能指标体系样本
2022城市商业魅力指标体系
立足优化设计提高作业效能
交通强国建设评价指标体系
公路工程造价管理绩效评价指标体系研究
基于改进TOPSIS有人/无人机协同作战效能评估
构建市(区)人才发展管理服务水平评价指标体系
地方机构改革“+”与“-”——减的是机构,加的是效能
规划·样本
油田三相分离器效能分析
油田三相分离器效能分析