简单易学的机器学习算法——梯度提升决策树GBDT

Posted zhiyong_will

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了简单易学的机器学习算法——梯度提升决策树GBDT相关的知识,希望对你有一定的参考价值。

梯度提升决策树(Gradient Boosting Decision Tree,GBDT)算法是近年来被提及比较多的一个算法,这主要得益于其算法的性能,以及该算法在各类数据挖掘以及机器学习比赛中的卓越表现,有很多人对GBDT算法进行了开源代码的开发,比较火的是陈天奇的XGBoost和微软的LightGBM。

一、监督学习

1、监督学习的主要任务

监督学习是机器学习算法中重要的一种,对于监督学习,假设有 m 个训练样本:

(X(1),y(1)),(X(2),y(2)),,(X(m),y(m))

其中, X(i)=x(i)1,x(i)2,,x(i)m 称为第 i 个样本的特征,y(1)称为第 i 个样本的标签,样本标签可以为离散值,如分类问题;也可以为连续值,如回归问题。在监督学习中,利用训练样本训练出模型,该模型能够实现从样本特征X(i)到样本标签 y(1) 的映射,即:

X(i)Fy(i)

为了能够对映射 F(X) 进行求解,通常对模型设置损失函数 L(y,F(X)) ,并求得在损失函数最小的情况下的映射为最好的映射:

F=argminF(X)L(y,F(X))

对于一个具体的问题,如线性回归问题,其映射函数的形式为:

F(X;W)=WX=w0+w1x1+w2x2++wnxn

此时对于最优映射函数 F(X;W) 的求解,实质是对映射函数中的参数 W 的求解。对于参数的求解方法有很多,如梯度下降法。

2、梯度下降法

梯度下降法(Gradient Descent,GD)算法是求解最优化问题最简单、最直接的方法。梯度下降法是一种迭代的优化算法,对于优化问题:

minf(w)

其基本步骤为:

  • 随机选择一个初始点 w0
  • 重复以下过程:
    • 决定下降的方向: di=wf(w)wi
    • 选择步长 ρ
    • 更新: wi+1=wi+ρdi
  • 直到满足终止条件

梯度下降法的具体过程如下图所示:

由以上的过程,我们可以看出,对于最终的最优解 w ,是由初始值 wSpark2.0机器学习系列之6:GBDT(梯度提升决策树)GBDT与随机森林差异参数调试及Scikit代码分析

GBDT —— 梯度提升决策树

GBDT:梯度提升决策树

GBDT算法简述

机器学习 | GBDT

机器学习 | GBDT