Page 63 - 2023年第54卷第10期
P. 63
式中g和h分别为损失函数 l的一阶和二阶导数。
i i
进一步地,将目标函数转换为一个关于 w的一元二次方程求最小值的问题,即
j
T 1
(t)
∑
Obj = [ Gw+ ( i 2 ]
H +λ ) w +γ T
i j
j
j =1 2
i ∑
G= g i (5)
i ∈I j
H= h i
i ∑
i ∈I j
(t)
将目标函数Obj 对 w求一阶导数,则可获得第 j个叶子节点输出分数的最优值 w ,如下所示:
j
j
G i
w =- (6)
j
H+ λ
i
(t)
将 w 代入目标函数Obj 中,即可计算出最优目标值Obj为
j
1 T G 2
i
Obj=- ∑ +γ T (7)
2 j =1 H +λ
i
XGBoost算法集成了若干棵回归树,其中每棵树的叶子节点都在做特征分裂,通过统计每个特征
被用于分裂的总次数 Fcount,可获得特征的重要性排序。此外,特征平均增益值Gain和特征平均覆盖
率Cover也是 XGBoost中常用的特征重要性度量指标,其计算公式分别如式(8)和式(9)所示:
∑ Gain 1 G 2 G 2 (G +G ) 2
L
R
R
L
Gain= ,Gain= [ + - ] -γ (8)
Fcount 2 H +λ H +λ (H +H )+λ
L R L R
∑ Cover
Cover = (9)
Fcount
式中:Gain为特 征 分 裂 时 的 信 息 增 益 值;Cover为 特 征 分 裂 时 落 在 叶 子 节 点 上 的 样 本 个 数;G =
L
∑ g;G = g;H = h;H = h;I和 I分别为左子树和右子树的样本组。
L ∑
R ∑
R ∑
i
R
L
i
i
i
i ∈I L i ∈I R i ∈I L i ∈I R
3.2 基于 IAO算法改进的 XGBoost集成学习模型 XGBoost超参数较多,超参数设置不准确将导致
大坝渗流性态指标预测效率低下、精度降低。然而,超参数优化过程实质上是一个黑盒函数优化问
题,若优化参数过多,则容易使模型冗余,导致计算复杂性增加,并影响系统整体性能 [21] 。因此,本
文仅选取对 XGBoost算法预测性能影响较大的关键参数,如 n_estimators、max_depth和 learning_rate等
超参数进行优化。其中,n_estimators为集成算法中弱评估器的数量,此参数值越大,模型的学习能力
越强,但模型也越容易过拟合;max_depth控制模型中树的最大深度,其值越大模型越复杂,且模型
容易过拟合;learning_rate参数控制迭代速率,可以防止模型过拟合 [26] 。
现有研究大多根据人工经验或网格搜索方法搜寻 XGBoost的最佳超参数。然而,依靠人工经验寻
找超参数需要丰富的专业背景知识和大量的实验 [21] ,而网格搜索方法容易受到维度约束,搜索范围有
限,难以找到最优参数 [27] 。采用智能优化算法对超参数进行调整不仅能够获得最优参数组合,还可以
减少时间,提升效率。
3.2.1 改进的天鹰优化算法 天鹰优化器(AquilaOptimizer,AO)是 Abualigah等 [22] 于 2021年提出的
一种新型智能优化算法,具有较强的全局搜索能力和较快的收敛速度。天鹰优化算法的灵感来自于天
鹰的狩猎行为。天鹰主要有四种狩猎行为,即高空翱翔和垂直俯冲攻击、等高线飞行和短滑翔攻击、
低空飞行和慢速下降攻击以及行走攻击并捕获猎物。这四种狩猎行为分别属于扩大搜索、缩小搜索、
扩大开发和缩小开发的四个阶段。然而,AO算法采用简单的随机方式对种群初始化,难以保证初始
化种群分布的均匀性和多样性,并且在开发阶段容易陷入局部最优。针对上述问题,本文采用混沌理
论中搜素速度较快的 Tent混沌映射代替传统天鹰优化算法中的随机初始化,以增强种群的均匀性和多
样性;然后,引入非线性飞行速率更新策略替代原来的线性飞行速率更新策略,以提高天鹰优化算法
1
— 1 9 9 —