集成学习
随机森林
随机森林(Random Forest)是利用多棵树对样本进行训练并预测的一种分类器。简单地说,随机森林就是由多棵CART(Classification and Regression Tree)构成的。
对于每棵树而言,它们使用的训练集是从总的训练集中通过有放回采样得到的,这意味着总的训练集中的有些样本可能会多次出现于一棵树的训练集中,也可能从未出现于一棵树的训练集中。
在训练每棵树的节点时,使用的特征是从所有特征中按照一定比例通过无放回随机抽样方法获得的。
GBDT
梯度提升决策树(Gradient Boost Decision Tree,GBDT)的应用很广泛,可用来进行分类和回归,并表现出了很好的效果。
梯度提升(Gradient Boost)是一个框架,里面可以嵌入很多不同的算法,Boost指的是提升,Boosting算法一般都包括迭代过程,每一次新的训练都是为了改进上一次的结果。
原始的Boost算法是在算法开始的时候,为每一个样本赋予一个相同的权重。也就是说,开始的时候,每个样本同样重要。
在每一步模型训练时,通过结果发现数据点的估计有对有错,那么,就在训练结束时,增加分错的点的权重,减少分对的点的权重。如果某些点老是被分错,那么就会被赋予一个很高的权重。
在N次迭代之后,就得到了N个简单的基础分类器,将它们组合起来就得到了一个最终分类模型,比如通过加权方法。
Gradient Boost与传统Boost的区别是,每一次训练是为了减少上一次的残差(residual)。为了消除残差,可以在残差减少的梯度方向上建立一个新的模型。
因此,在Gradient Boost中,建立新的模型是为了使之前模型的残差朝着梯度方向减少,这与传统Boost单纯增加错误权重、减少正确权重有很大的区别。
AdaBoost
AdaBoos