作者:雪伦_
链接:http://blog.csdn.net/a819825294
提升方法实际采用加法模型(即基函数的线性组合)与前向分布算法。以决策树为基函数的提升方法称为提升树(boosting tree)。对分类问题决策树是二叉分类树,对回归问题决策树是二叉决策树。提升树模型可以表示为决策树的加法模型:
其中,T(x;Sm)表示决策树;Sm为决策树的参数;M为树的个数.
回归问题提升树使用以下前向分布算法:
在前向分布算法的第m步,给定当前模型,需求解
即第m棵树的参数。当采用平方误差损失函数时,
其中,r=y-fm-1(x)是当前模型拟合数据的残差(residual)。对于平方损失函数,拟合的就是残差;对于一般损失函数(梯度下降),拟合的就是残差的近似值。
输入:训练数据集
输出:提升树fM(x)
算法流程:
非递归建树
节点的存放
终止条件
树的节点数
树的深度
没有适合分割的节点
特征值排序
在对每个节点进行分割的时候,首先需要遍历所有的特征,然后对每个样本的特征的值进行枚举计算。(CART)
在对单个特征量进行枚举取值之前,我们可以先将该特征量的所有取值进行排序,然后再进行排序。
优点
避免计算重复的value值
方便更佳分割值的确定
减少信息的重复计算
多线程/MPI并行化的实现
主线程
其他线程