机器学习小实战(六) XGBoost基本原理

一、xgboost原理

1. 实践证明,tree boosting(树提升)可以有效地用于分类和回归任务中,提升方法是一种非常有效的机器学习方法,xgboost是提升的强化版本。

2. 和决策树相关,集成了多个弱学习器。

3. 提升算法,相当于一棵树一棵树地加,每加一棵树要使得总体的效果得到提升。

4. 严谨地讲解:

(1)如下图,这里用到了两棵树,第一棵树说小男孩去玩游戏的权是2,第二棵树说是0.9,于是综合起来,小男孩对应的就是2+0.9=2.9

机器学习小实战(六) XGBoost基本原理

(2)数学表示

预测结果可以表示为机器学习小实战(六) XGBoost基本原理

机器学习小实战(六) XGBoost基本原理

(3)提升的过程如下图,其中,t表示有几棵树。可以看出,就是在原来的基础上,一棵一棵地往上加吼。

机器学习小实战(六) XGBoost基本原理

(4)正则惩罚项/损失值的计算:其中,γ是惩罚系数,T是叶子节点数目,后面一项是权值w的L2模平方

由经验知,叶子节点数太多,容易过拟合

意义:损失值越小,树的结构越好

机器学习小实战(六) XGBoost基本原理

损失值计算示例:

机器学习小实战(六) XGBoost基本原理

(5)笔记和脑子都比较乱啦,先记录下来 

梯度提升决策树,又叫做残差决策树~

机器学习小实战(六) XGBoost基本原理

机器学习小实战(六) XGBoost基本原理

 

二、求解

机器学习小实战(六) XGBoost基本原理

把从样本遍历转换为从叶子节点上遍历

机器学习小实战(六) XGBoost基本原理

机器学习小实战(六) XGBoost基本原理

机器学习小实战(六) XGBoost基本原理

机器学习小实战(六) XGBoost基本原理

机器学习小实战(六) XGBoost基本原理

 

三、安装xgboost

1. 使用anconda prompt安装,只需输入命令行:pip install xgboost即可

2. 在pycharm中选择

在setting中选择

机器学习小实战(六) XGBoost基本原理

然后点击右侧窗口中的加号,添加库

机器学习小实战(六) XGBoost基本原理

选择install即可