网站怎么在百度做推广方案,重庆网上房地产信息网官网,kunkka wordpress,网站开发公司 苏州以下通过案例#xff08;根据行为习惯预测年龄#xff09;帮助我们深入理解梯度提升决策树#xff08;GBDT#xff09;的训练过程
假设训练集有4个人#xff08;A、B、C、D#xff09;#xff0c;他们的年龄分别是14、16、24、26。其中A、B分别是高一和高三学生#x… 以下通过案例根据行为习惯预测年龄帮助我们深入理解梯度提升决策树GBDT的训练过程
假设训练集有4个人A、B、C、D他们的年龄分别是14、16、24、26。其中A、B分别是高一和高三学生C、D分别是应届毕业生和工作两年的员工
下面我们将分别使用回归树和GBDT通过他们的日常行为习惯购物、上网等预测每个人的年龄
1、使用回归树训练
回归树训练得到的结果如图所示 2、使用GBDT训练
由于我们的样本数据较少所以我们限定叶子节点最多为2即每棵树都只有一个分枝并且限定树的棵树为2
梯度提升决策树GBDT的训练过程如下
1 第一棵树假设初始值为平均年龄20得到的结果如图所示 上图中A、B的购物金额不超过1kC、D的购物金额超过1k因此被分为左右两个分支每个分支使用平均年龄作为预测值
分别计算A、B、C、D的残差实际值减预测值
A残差 14 − 15 − 1 \tt 14-15-1 14−15−1B残差 16 − 15 1 \tt 16-151 16−151C残差 24 − 25 − 1 \tt 24-25-1 24−25−1D残差 26 − 25 1 \tt 26-251 26−251
以A为例这里A的预测值是指前面所有树预测结果的累加和当前由于只有一棵树所以直接是15其他同理
2 第二棵树拟合前一棵树的残差-1、1、-1、1得到的结果如图所示 上图中A、C的上网时间超过1hB、D的上网时间不超过1h因此被分为左右两个分支每个分支使用平均残差作为预测值
分别计算A、B、C、D的残差实际值减预测值
A残差 − 1 − ( − 1 ) 0 \tt -1-(-1)0 −1−(−1)0B残差 1 − 1 0 \tt 1-10 1−10C残差 − 1 − ( − 1 ) 0 \tt -1-(-1)0 −1−(−1)0D残差 1 − 1 0 \tt 1-10 1−10
第二棵树学习第一棵树的残差在当前这个简单场景下已经能够保证预测值与实际值上一轮残差相等了此时停止迭代
3 迭代终止后最后就是集成累加所有决策树的预测结果作为最终GBDT的预测结果 本案例中我们最终得到GBDT的预测结果为第一棵树的预测结果加第二棵树的预测结果
A真实年龄14岁预测年龄 15 ( − 1 ) 14 \tt 15(-1)14 15(−1)14B真实年龄16岁预测年龄 15 1 16 \tt 15116 15116C真实年龄24岁预测年龄 25 ( − 1 ) 24 \tt 25(-1)24 25(−1)24D真实年龄26岁预测年龄 25 1 26 \tt 25126 25126
综上所述GBDT需要将多棵树的预测结果累加得到最终的预测结果且每轮迭代都是在当前树的基础上增加一棵新树去拟合前一个树预测值与真实值之间的残差