Leetcode、Kaggle、JavaEE、图像处理、深度学|

ZzUuOo666

园龄:7年6个月粉丝:94关注:0

极限梯度提升 (XGBoost, eXtreme Gradient Boosting)

极限梯度提升 (XGBoost, eXtreme Gradient Boosting)

训练数据集 D=[(xi,yi)], 其中 xi=(x1,x2,..xm)T,xiRm,yiR,|D|=n,
决策树模型

(1)f(x)=wq(x)

其中,q:RT{1,...,T} 是由输入x向叶子节点编号的映射, wRT,w=(w1,w2,..wm)T 是叶子节点向量,w存储的是当前叶子节点存储的输出值,T为决策树叶子节点数。
给一个向量可以通过q映射到那个叶子节点下。
假设树已经生成,如何生成在下面。

提升决策树模型输出

(2)y^i=ϕ(xi)=k=1Kfk(xi)

其中,fk(x) 为第k棵决策树。
加了正则化目标函数

(3)τ(ϕ)=il(y^i,yi)+kΩ(ft)

fk 是一棵树。正则化项表征当前模型的复杂程度(模型复杂度是指非确定模型的假设空间的大小,假设空间越大,模型越复杂)[1]

(4)Ω(f)=γT+12λw2=γT+12λjTwj2

T是当前这颗树的叶子节点个数,表征当前模型的复杂程度。叶子节点约少模型约简单。
第t轮目标函数

(5)ι(t)=i=1nl(yi,y^i(t1)+ft(xi))+Ω(ft)

第t轮目标函数L(t)y^(t1)的二阶泰勒展开

(6)f(xt)=f(xt1+Δx)=f(xt1)+f(xt1)Δx+12f(xt1)Δ2xy^i(t1)=xt1,ft(xi)=Δx

(7)ι(t)i=1n[l(yi,y^t1)+lyt1(yi,y^t1)ft(xi)+12lyt1(yi,y^t1ft2(xi))]+Ω(ft)=i=1n[l(yi,y^t1)+gifi(xi)+12hifi2(xi)]+Ω(ft)

其中, gi=ly^t1(y,y^t1),hi=ly^t1(y,y^t1)
第t轮目标函数 ι(t) 的二阶泰勒展开,并移除关于ft(xt)常数项
从第t轮看t-1轮 yt1 是已知的,所以剔除 l(yi,yt1)

(8)ι(t)=i=1n[gifi(xi)+12hifi2(xi)]+Ω(ft)=i=1n[gifi(xi)+12hifi2(xi)]+γT+12γj=1Twj2

n是数据集的个数,第一个累加符号是在整个数据集中计算这个式子。第二个累加符号是在叶子节点累加。

定义叶子节点j上的样本的下标集合 Ij={i|q(Xi)=j} (关键),则目标函数可表示为按叶子节点累加的形式。
例如遍历一个花名册,念完每个人都遍历到了,或者每个人都被编入到每个小组里面,那么我想要遍历每个人,可以变成我对每个小组里的人进行遍历。两次遍历的结果是一样的。

(9)ι(t)=j=1T[(iIjgi)wj+12(iIjhj+λ)wj2]+λT

为什么 fi(xi)=wj2 见公式(20) (精髓啊)
目标函数写完以后,最优解就是使目标函数最小的映射输出。
由于 wj=argminwjι^(t)
ι^(t)wj=0

(10)wj=iIjgiiIjhi+λ

在将这个最优w(每个叶子节点j的最优分数),得到最优化目标函数值:

(11)ι^(t)(q)=12j=1T[(iILgi)2iILhi+λ]+γT

假设 ILIR 分别为分裂后左右节点的实例集,令 I=ILIR , 则分裂后损失减少量由下式得出

(12)ιsplit=12[(iILgi)2iILhi+λ+(iIRgi)2iIRhi+λ(iIIgi)2iIIhi+λ]γ

左子树的损失值+右子树的损失值-整棵树的损失值,表征当前特征分裂的重要依据

算法:分裂查找的精确贪婪算法

  • 输入:当前节点实例集 I;特征维度d = M
  • 输出:根据最大分值分裂
    (1) gain0
    (2) GiIgi,HiIhi
    (3) for k = 1 to d do
    (3.1) G0,HL0
    (3.2) for j in sorted(I, by Xjk) do
    (3.2.1) GLGL+gj,HLHL+hj
    (3.2.2) GRGGL,HR=HHL
    (3.2.3) score max(score,GL2HL+λ+GR2HR+λ+G2H+λ)
    (3.3) end
    (4)end

参考文献

【机器学习基础】一文说透正则项与模型复杂度
markdown中公式编辑教程
markdown 数学公式符号大全
【机器学习】经验风险最小化与结构风险最小化
Gradient Boosting 原理、推导及代码实现

本文作者:ZzUuOo666

本文链接:https://www.cnblogs.com/zzuuoo666/p/14160475.html

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   ZzUuOo666  阅读(690)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起